> ## Documentation Index
> Fetch the complete documentation index at: https://veryfront.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# List conversation input requests

> List durable input requests belonging to a readable conversation.

export const McpToolCall = ({tool, initialArguments = {}, requiresConfirmation = false}) => {
  const validateCall = function validateReferenceToolCall(token, text, requiresConfirmation, confirmed) {
    if (!token.trim()) return {
      error: "Paste a bearer token first."
    };
    let value;
    try {
      value = JSON.parse(text.trim() || "{}");
    } catch {
      return {
        error: "Arguments must be valid JSON."
      };
    }
    if (!value || typeof value !== "object" || Array.isArray(value)) return {
      error: "Arguments must be a JSON object."
    };
    if (requiresConfirmation && !confirmed) return {
      error: "Confirm the tool call before running it."
    };
    return {
      arguments: value
    };
  };
  const endpoint = "https://api.veryfront.com/mcp";
  const tokenStorageKey = 'veryfront.docs.mcpBearerToken';
  const escapeHtml = value => value.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;');
  const highlightJson = value => {
    const escaped = escapeHtml(value);
    return escaped.replace(/("(?:\\u[a-fA-F0-9]{4}|\\[^u]|[^\\"])*"(\s*:)?|\btrue\b|\bfalse\b|\bnull\b|-?\d+(?:\.\d+)?(?:[eE][+\-]?\d+)?)/g, match => {
      let color = '#f3f4f6';
      if (match.endsWith(':')) {
        color = '#7dd3fc';
      } else if (match.startsWith('"')) {
        color = '#86efac';
      } else if ((/true|false/).test(match)) {
        color = '#c4b5fd';
      } else if ((/null/).test(match)) {
        color = '#fcd34d';
      } else {
        color = '#67e8f9';
      }
      return `<span style="color: ${color}">${match}</span>`;
    });
  };
  const expandJsonStrings = value => {
    if (typeof value === 'string') {
      const trimmed = value.trim();
      if (trimmed.startsWith('{') && trimmed.endsWith('}') || trimmed.startsWith('[') && trimmed.endsWith(']')) {
        try {
          return expandJsonStrings(JSON.parse(trimmed));
        } catch {}
      }
      return value;
    }
    if (Array.isArray(value)) {
      return value.map(expandJsonStrings);
    }
    if (value && typeof value === 'object') {
      return Object.fromEntries(Object.entries(value).map(([key, nestedValue]) => [key, expandJsonStrings(nestedValue)]));
    }
    return value;
  };
  const formatJson = value => {
    try {
      return JSON.stringify(expandJsonStrings(value), null, 2);
    } catch {
      return String(value);
    }
  };
  const formatResponseText = text => {
    const trimmed = text.trim();
    if (!trimmed) return 'No response body.';
    try {
      return formatJson(JSON.parse(trimmed));
    } catch {}
    const ssePayloads = trimmed.split(/\n\n+/).flatMap(chunk => chunk.split('\n').filter(line => line.startsWith('data:')).map(line => line.slice(5).trim()).filter(Boolean));
    for (let index = ssePayloads.length - 1; index >= 0; index -= 1) {
      try {
        return formatJson(JSON.parse(ssePayloads[index]));
      } catch {}
    }
    return trimmed;
  };
  const readStoredToken = () => {
    if (typeof window === 'undefined') return '';
    try {
      return window.sessionStorage.getItem(tokenStorageKey) || '';
    } catch {
      return '';
    }
  };
  const writeStoredToken = value => {
    if (typeof window === 'undefined') return;
    try {
      if (value) {
        window.sessionStorage.setItem(tokenStorageKey, value);
      } else {
        window.sessionStorage.removeItem(tokenStorageKey);
      }
    } catch {}
  };
  const [token, setToken] = useState(readStoredToken);
  const [argumentText, setArgumentText] = useState(formatJson(initialArguments));
  const [status, setStatus] = useState('Ready');
  const [response, setResponse] = useState('No response yet.');
  const [copied, setCopied] = useState(false);
  const [confirmed, setConfirmed] = useState(false);
  const callTool = async () => {
    const validation = validateCall(token, argumentText, requiresConfirmation, confirmed);
    if (('error' in validation)) {
      setStatus(validation.error);
      return;
    }
    const parsedArguments = validation.arguments;
    setConfirmed(false);
    const body = {
      jsonrpc: '2.0',
      id: Date.now(),
      method: 'tools/call',
      params: {
        name: tool,
        arguments: parsedArguments
      }
    };
    setStatus('Calling tool...');
    setResponse(formatJson(body));
    try {
      const result = await fetch(endpoint, {
        method: 'POST',
        headers: {
          accept: 'application/json, text/event-stream',
          'content-type': 'application/json',
          authorization: `Bearer ${token.trim()}`,
          'x-veryfront-origin': 'docs-mcp-tool-page'
        },
        body: JSON.stringify(body)
      });
      const text = await result.text();
      setStatus(result.ok ? 'Response received.' : `Request failed with HTTP ${result.status}.`);
      setResponse(formatResponseText(text));
    } catch (error) {
      setStatus('Request failed.');
      setResponse(error instanceof Error ? error.message : String(error));
    }
  };
  const copyResponse = async () => {
    try {
      await navigator.clipboard.writeText(response);
      setCopied(true);
      setTimeout(() => setCopied(false), 1500);
    } catch {
      setStatus('Copy failed.');
    }
  };
  return <details className="api-try-operation not-prose">
    <summary>Try this tool</summary>
    <p>Replace sample arguments with values for your project or connected account. Calls run only when you select Run tool.</p>
    <div className="api-request-playground not-prose my-6 rounded-xl border border-gray-200 bg-white p-4 dark:border-gray-800 dark:bg-gray-950">
      <div className="mb-4">
        <div className="text-sm font-semibold text-gray-900 dark:text-gray-100">MCP tool call</div>
        <div className="mt-1 text-sm text-gray-600 dark:text-gray-400">
          Call <code>{tool}</code> against the Veryfront MCP endpoint.
        </div>
      </div>

      <label className="mb-2 block text-sm font-medium text-gray-900 dark:text-gray-100" htmlFor={`${tool}-token`}>
        Bearer token or API key
      </label>
      <input id={`${tool}-token`} className="mb-4 w-full rounded-md border border-gray-300 bg-white px-3 py-2 text-sm text-gray-900 dark:border-gray-700 dark:bg-gray-900 dark:text-gray-100" type="password" value={token} onChange={event => {
    const value = event.target.value;
    setToken(value);
    setConfirmed(false);
    writeStoredToken(value);
  }} placeholder="Paste API key or JWT" />

      <label className="mb-2 block text-sm font-medium text-gray-900 dark:text-gray-100" htmlFor={`${tool}-arguments`}>
        Arguments (JSON)
      </label>
      <textarea id={`${tool}-arguments`} className="mb-4 min-h-40 w-full rounded-md border border-gray-300 bg-white px-3 py-2 font-mono text-sm text-gray-900 dark:border-gray-700 dark:bg-gray-900 dark:text-gray-100" value={argumentText} onChange={event => {
    setArgumentText(event.target.value);
    setConfirmed(false);
  }} spellCheck={false} />

      {requiresConfirmation && <label className="api-request-confirmation mb-4 flex items-start gap-2 text-sm">
        <input type="checkbox" checked={confirmed} onChange={event => setConfirmed(event.target.checked)} />
        <span>{tool === 'veryfront__set_project_inference_policy' ? 'Replace the project inference policy with these arguments. Omitted constraints will be removed.' : 'Run this tool with these arguments.'}</span>
      </label>}
      <button disabled={status === 'Calling tool...' || requiresConfirmation && !confirmed} className="disabled:opacity-50 disabled:cursor-not-allowed rounded-md bg-gray-900 px-3 py-2 text-sm font-medium text-white hover:bg-gray-700 dark:bg-gray-100 dark:text-gray-950 dark:hover:bg-gray-300" type="button" onClick={callTool}>
        Run tool
      </button>

      <div className="mt-4 text-sm font-medium text-gray-900 dark:text-gray-100">{status}</div>
      <div className="mt-3 overflow-hidden rounded-md border border-gray-300 dark:border-gray-700">
        <div className="flex items-center justify-between bg-gray-100 px-3 py-2 text-sm font-medium text-gray-900 dark:bg-gray-900 dark:text-gray-100">
          <span>Output JSON</span>
          <button className="rounded border border-gray-300 bg-white px-2 py-1 text-xs text-gray-900 hover:bg-gray-50 dark:border-gray-700 dark:bg-gray-950 dark:text-gray-100 dark:hover:bg-gray-800" type="button" onClick={copyResponse}>
            {copied ? 'Copied' : 'Copy'}
          </button>
        </div>
      <pre className="max-h-96 overflow-auto whitespace-pre-wrap break-words bg-gray-950 p-4 text-sm text-gray-100">
        <code dangerouslySetInnerHTML={{
    __html: highlightJson(response)
  }} />
      </pre>
      </div>
    </div>
    </details>;
};

<div className="api-operation-signature">
  `veryfront__list_conversation_input_requests`
</div>

## Access

No external-service connection is required. Use a Veryfront credential with access to the requested resources.

**Call type:** Read-only.

## Arguments

| Field | Type | Required | Description and constraints |
| - | - | - | - |
| `conversation_id` | `string` | Yes | Conversation identifier that scopes the request. Format: `uuid`. |
| `status` | `string` | No | Lifecycle status for the target record. Values: `"open"`, `"submitted"`, `"cancelled"`, `"expired"`. |
| `run_id` | `string` | No | Run identifier that scopes the request. Format: `uuid`. |
| `cursor` | `string` | No | Opaque pagination cursor returned by a previous response. |
| `limit` | `integer` | No | Maximum number of results to return. Default: `20`. Minimum: `1`. Maximum: `100`. |

## Example request

Send this JSON-RPC request through an initialized MCP client. Replace sample identifiers and values before calling the tool. See [MCP client setup](/docs/cloud/getting-started/connect-mcp).

```json title="request.json" theme={null}
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "veryfront__list_conversation_input_requests",
    "arguments": {
      "conversation_id": "00000000-0000-4000-8000-000000000000"
    }
  }
}
```

## Result

The published output shape is summarized below. Inspect both the MCP response content and `isError` when handling a call.

| Field | Type | Required | Description and constraints |
| - | - | - | - |
| `data` | `object[]` | Yes | Primary result records returned by the tool. |
| `page_info` | `object` | Yes | Opaque cursor for the next page; null means there are no more results. |

## Full schemas

<CodeGroup>
  ```json title="input-schema.json" theme={null}
  {
    "type": "object",
    "properties": {
      "conversation_id": {
        "type": "string",
        "format": "uuid",
        "description": "Conversation identifier that scopes the request."
      },
      "status": {
        "type": "string",
        "enum": [
          "open",
          "submitted",
          "cancelled",
          "expired"
        ],
        "description": "Lifecycle status for the target record."
      },
      "run_id": {
        "type": "string",
        "format": "uuid",
        "description": "Run identifier that scopes the request."
      },
      "cursor": {
        "type": "string",
        "description": "Opaque pagination cursor returned by a previous response."
      },
      "limit": {
        "type": "integer",
        "minimum": 1,
        "maximum": 100,
        "default": 20,
        "description": "Maximum number of results to return."
      }
    },
    "required": [
      "conversation_id"
    ],
    "additionalProperties": false,
    "$schema": "http://json-schema.org/draft-07/schema#",
    "description": "Arguments for the list_conversation_input_requests tool."
  }
  ```

  ```json title="output-schema.json" theme={null}
  {
    "type": "object",
    "properties": {
      "data": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "input_request_id": {
              "type": "string",
              "format": "uuid",
              "description": "Unique input request ID."
            },
            "project_id": {
              "type": "string",
              "format": "uuid",
              "description": "Project inherited from the run."
            },
            "run_id": {
              "type": "string",
              "format": "uuid",
              "description": "Run waiting for this input."
            },
            "title": {
              "type": "string",
              "minLength": 1,
              "maxLength": 1000,
              "description": "Question or decision shown to the responder."
            },
            "fields": {
              "type": "array",
              "items": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "name": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "description": "Human-readable name for the returned record."
                      },
                      "label": {
                        "type": "string",
                        "maxLength": 1000,
                        "description": "The label returned by the tool."
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 4000,
                        "description": "Human-readable description returned by the tool."
                      },
                      "required": {
                        "type": "boolean",
                        "default": false,
                        "description": "The required returned by the tool."
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "password"
                        ],
                        "description": "The type returned by the tool."
                      }
                    },
                    "required": [
                      "name",
                      "type"
                    ],
                    "additionalProperties": false,
                    "description": "One field item returned by the tool."
                  },
                  {
                    "type": "object",
                    "properties": {
                      "name": {
                        "$ref": "#/properties/data/items/properties/fields/items/anyOf/0/properties/name",
                        "description": "Human-readable name for the returned record."
                      },
                      "label": {
                        "$ref": "#/properties/data/items/properties/fields/items/anyOf/0/properties/label",
                        "description": "The label returned by the tool."
                      },
                      "description": {
                        "$ref": "#/properties/data/items/properties/fields/items/anyOf/0/properties/description",
                        "description": "Human-readable description returned by the tool."
                      },
                      "required": {
                        "$ref": "#/properties/data/items/properties/fields/items/anyOf/0/properties/required",
                        "description": "The required returned by the tool."
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "text",
                          "textarea",
                          "email",
                          "url"
                        ],
                        "description": "The type returned by the tool."
                      },
                      "default": {
                        "type": "string",
                        "description": "The default returned by the tool."
                      }
                    },
                    "required": [
                      "name",
                      "type"
                    ],
                    "additionalProperties": false,
                    "description": "One field item returned by the tool."
                  },
                  {
                    "type": "object",
                    "properties": {
                      "name": {
                        "$ref": "#/properties/data/items/properties/fields/items/anyOf/0/properties/name",
                        "description": "Human-readable name for the returned record."
                      },
                      "label": {
                        "$ref": "#/properties/data/items/properties/fields/items/anyOf/0/properties/label",
                        "description": "The label returned by the tool."
                      },
                      "description": {
                        "$ref": "#/properties/data/items/properties/fields/items/anyOf/0/properties/description",
                        "description": "Human-readable description returned by the tool."
                      },
                      "required": {
                        "$ref": "#/properties/data/items/properties/fields/items/anyOf/0/properties/required",
                        "description": "The required returned by the tool."
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "number"
                        ],
                        "description": "The type returned by the tool."
                      },
                      "default": {
                        "type": "number",
                        "description": "The default returned by the tool."
                      }
                    },
                    "required": [
                      "name",
                      "type"
                    ],
                    "additionalProperties": false,
                    "description": "One field item returned by the tool."
                  },
                  {
                    "type": "object",
                    "properties": {
                      "name": {
                        "$ref": "#/properties/data/items/properties/fields/items/anyOf/0/properties/name",
                        "description": "Human-readable name for the returned record."
                      },
                      "label": {
                        "$ref": "#/properties/data/items/properties/fields/items/anyOf/0/properties/label",
                        "description": "The label returned by the tool."
                      },
                      "description": {
                        "$ref": "#/properties/data/items/properties/fields/items/anyOf/0/properties/description",
                        "description": "Human-readable description returned by the tool."
                      },
                      "required": {
                        "$ref": "#/properties/data/items/properties/fields/items/anyOf/0/properties/required",
                        "description": "The required returned by the tool."
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "checkbox",
                          "confirm"
                        ],
                        "description": "The type returned by the tool."
                      },
                      "default": {
                        "type": "boolean",
                        "description": "The default returned by the tool."
                      }
                    },
                    "required": [
                      "name",
                      "type"
                    ],
                    "additionalProperties": false,
                    "description": "One field item returned by the tool."
                  },
                  {
                    "type": "object",
                    "properties": {
                      "name": {
                        "$ref": "#/properties/data/items/properties/fields/items/anyOf/0/properties/name",
                        "description": "Human-readable name for the returned record."
                      },
                      "label": {
                        "$ref": "#/properties/data/items/properties/fields/items/anyOf/0/properties/label",
                        "description": "The label returned by the tool."
                      },
                      "description": {
                        "$ref": "#/properties/data/items/properties/fields/items/anyOf/0/properties/description",
                        "description": "Human-readable description returned by the tool."
                      },
                      "required": {
                        "$ref": "#/properties/data/items/properties/fields/items/anyOf/0/properties/required",
                        "description": "The required returned by the tool."
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "select",
                          "radio"
                        ],
                        "description": "The type returned by the tool."
                      },
                      "options": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "value": {
                              "type": "string",
                              "minLength": 1,
                              "description": "The value returned by the tool."
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "description": "The label returned by the tool."
                            },
                            "description": {
                              "type": "string",
                              "description": "Human-readable description returned by the tool."
                            },
                            "recommended": {
                              "type": "boolean",
                              "description": "The recommended returned by the tool."
                            }
                          },
                          "required": [
                            "value",
                            "label"
                          ],
                          "additionalProperties": false,
                          "description": "One option item returned by the tool."
                        },
                        "minItems": 1,
                        "maxItems": 100,
                        "description": "List of options returned by the tool."
                      },
                      "default": {
                        "type": "string",
                        "description": "The default returned by the tool."
                      }
                    },
                    "required": [
                      "name",
                      "type",
                      "options"
                    ],
                    "additionalProperties": false,
                    "description": "One field item returned by the tool."
                  }
                ],
                "description": "One field item returned by the tool."
              },
              "description": "Fields the responder can fill in."
            },
            "status": {
              "type": "string",
              "enum": [
                "open",
                "submitted",
                "cancelled",
                "expired"
              ],
              "description": "Current resolution state."
            },
            "requested_responder_type": {
              "type": "string",
              "enum": [
                "human",
                "agent",
                "system"
              ],
              "description": "Required responder role; the authenticated actor identifies who actually responded."
            },
            "response": {
              "anyOf": [
                {
                  "type": "object",
                  "properties": {
                    "response_id": {
                      "type": "string",
                      "format": "uuid",
                      "description": "Unique response ID."
                    },
                    "values": {
                      "type": "object",
                      "additionalProperties": {
                        "type": [
                          "string",
                          "number",
                          "boolean",
                          "null"
                        ],
                        "description": "Additional structured values returned by the tool."
                      },
                      "description": "Structured values returned by the tool."
                    },
                    "actor": {
                      "anyOf": [
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "user",
                                "api_key",
                                "service_account",
                                "system"
                              ],
                              "description": "The type returned by the tool."
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 128,
                              "description": "Unique identifier for the returned record."
                            }
                          },
                          "required": [
                            "type",
                            "id"
                          ],
                          "additionalProperties": false,
                          "description": "Immediate authenticated initiator, recorded by the server; execution credentials identify their issuing service account, not the original caller."
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "unavailable"
                              ],
                              "description": "The type returned by the tool."
                            },
                            "reason": {
                              "type": "string",
                              "enum": [
                                "not_recorded",
                                "identity_removed"
                              ],
                              "description": "`not_recorded`: the server never stored the submitting credential. `identity_removed`: the recorded identity was later revoked or deleted."
                            },
                            "legacy_role": {
                              "type": "string",
                              "enum": [
                                "human",
                                "agent",
                                "integration",
                                "system",
                                "user",
                                "api_key",
                                "service_account"
                              ],
                              "description": "Role tag stored with the response. It is not an authenticated actor type."
                            },
                            "legacy_id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255,
                              "description": "Actor ID stored with the response. It is not promoted to an authenticated actor."
                            }
                          },
                          "required": [
                            "type",
                            "reason"
                          ],
                          "additionalProperties": false,
                          "description": "A historical response without authoritative submitting-credential provenance. The server never infers or looks up a replacement actor."
                        }
                      ],
                      "description": "Authenticated principal that submitted the response, or `unavailable` for a historical response without authoritative provenance."
                    },
                    "redacted_fields": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "description": "One redacted field item returned by the tool."
                      },
                      "description": "Names of submitted secret fields omitted from values."
                    },
                    "created_at": {
                      "type": "string",
                      "format": "date-time",
                      "description": "When the response was submitted."
                    }
                  },
                  "required": [
                    "response_id",
                    "values",
                    "actor",
                    "created_at"
                  ],
                  "additionalProperties": false,
                  "description": "Structured response details returned by the tool."
                },
                {
                  "type": "null",
                  "description": "The response returned by the tool."
                }
              ],
              "description": "Submitted response, or null before submission or after cancellation or expiry."
            },
            "created_at": {
              "type": "string",
              "format": "date-time",
              "description": "When the request was created."
            },
            "expires_at": {
              "type": "string",
              "format": "date-time",
              "description": "When the request expires."
            },
            "resolved_at": {
              "type": "string",
              "format": "date-time",
              "description": "When the request was submitted, cancelled or expired."
            },
            "tool_call_id": {
              "type": "string",
              "minLength": 1,
              "maxLength": 128,
              "description": "Tool invocation waiting for the response."
            },
            "conversation_id": {
              "type": "string",
              "format": "uuid",
              "description": "Conversation inherited from the run."
            },
            "description": {
              "type": "string",
              "description": "Additional instructions for the responder."
            },
            "metadata": {
              "type": "object",
              "additionalProperties": {
                "description": "A JSON value."
              },
              "description": "Additional resource metadata."
            }
          },
          "required": [
            "input_request_id",
            "project_id",
            "run_id",
            "title",
            "fields",
            "status",
            "requested_responder_type",
            "response",
            "created_at"
          ],
          "additionalProperties": false,
          "description": "One data item returned by the tool."
        },
        "description": "Primary result records returned by the tool."
      },
      "page_info": {
        "type": "object",
        "properties": {
          "next": {
            "type": [
              "string",
              "null"
            ],
            "description": "Cursor for the next page when pagination is available."
          }
        },
        "required": [
          "next"
        ],
        "additionalProperties": false,
        "description": "Opaque cursor for the next page; null means there are no more results."
      }
    },
    "required": [
      "data",
      "page_info"
    ],
    "additionalProperties": false,
    "$schema": "http://json-schema.org/draft-07/schema#",
    "description": "Structured result returned by the list_conversation_input_requests tool."
  }
  ```
</CodeGroup>

<McpToolCall
  tool="veryfront__list_conversation_input_requests"
  initialArguments={{
"conversation_id": "00000000-0000-4000-8000-000000000000"
}}
/>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.