Parallel API

Web APIs for AI agents — Search, Extract, Task/Deep Research, FindAll, Monitor, and OpenAI-compatible Chat Completions. OpenAPI 3.1, API-key auth.

OpenAPI Specification

parallel-openapi-original.json Raw ↑
{
  "openapi": "3.1.0",
  "info": {
    "title": "Parallel API",
    "description": "Parallel API",
    "contact": {
      "name": "Parallel Support",
      "url": "https://parallel.ai",
      "email": "support@parallel.ai"
    },
    "version": "0.1.2"
  },
  "paths": {
    "/v1/search": {
      "post": {
        "tags": [
          "Search"
        ],
        "summary": "Search",
        "description": "Searches the web.\n\nThe legacy Search API reference (`/v1beta/search` endpoint) is available\n[here](https://docs.parallel.ai/api-reference/legacy/search-beta/search), and\nmigration guide is [here](https://docs.parallel.ai/search/search-migration-guide).",
        "operationId": "v1_search_v1_search_post",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V1SearchRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V1SearchResponse"
                },
                "example": {
                  "search_id": "search_fcb2b4f3c75e418687bccaa1a8381331",
                  "results": [
                    {
                      "url": "https://www.example.com",
                      "title": "Sample webpage title",
                      "publish_date": "2024-01-15",
                      "excerpts": [
                        "Sample excerpt 1",
                        "Sample excerpt 2"
                      ]
                    }
                  ],
                  "session_id": "session_fcb2b4f3c75e418687bccaa1a8381331"
                }
              }
            }
          },
          "422": {
            "description": "Request validation error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                },
                "example": {
                  "type": "error",
                  "error": {
                    "ref_id": "search_fcb2b4f3c75e418687bccaa1a8381331",
                    "message": "Request validation error"
                  }
                }
              }
            }
          }
        },
        "x-code-samples": [
          {
            "lang": "Python",
            "source": "from parallel import Parallel\n\nclient = Parallel()\n\nsearch = client.search(\n    objective=\"Find latest information about Parallel Web Systems. Focus on new product releases, benchmarks, or company announcements.\",\n    search_queries=[\"Parallel Web Systems products\", \"Parallel Web Systems announcements\"],\n)\nprint(search.results)"
          },
          {
            "lang": "TypeScript",
            "source": "import Parallel from \"parallel-web\";\n\nconst client = new Parallel();\n\nconst search = await client.search({\n    objective: \"Find latest information about Parallel Web Systems. Focus on new product releases, benchmarks, or company announcements.\",\n    search_queries: [\"Parallel Web Systems products\", \"Parallel Web Systems announcements\"],\n});\nconsole.log(search.results);"
          },
          {
            "lang": "cURL",
            "source": "curl --request POST \\\n    --url https://api.parallel.ai/v1/search \\\n    --header 'Content-Type: application/json' \\\n    --header 'x-api-key: <api-key>' \\\n    --data '{\n    \"objective\": \"Find latest information about Parallel Web Systems. Focus on new product releases, benchmarks, or company announcements.\",\n    \"search_queries\": [\"Parallel Web Systems products\", \"Parallel Web Systems announcements\"]\n}'"
          }
        ]
      }
    },
    "/v1/extract": {
      "post": {
        "tags": [
          "Extract"
        ],
        "summary": "Extract",
        "description": "Extracts relevant content from specific web URLs.\n\nThe legacy Extract API reference (`/v1beta/extract` endpoint) is available\n[here](https://docs.parallel.ai/api-reference/legacy/extract-beta/extract), and\nmigration guide is [here](https://docs.parallel.ai/extract/extract-migration-guide).",
        "operationId": "extract_v1_extract_post",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V1ExtractRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V1ExtractResponse"
                },
                "example": {
                  "extract_id": "extract_8a911eb27c7a4afaa20d0d9dc98d07c0",
                  "results": [
                    {
                      "url": "https://www.example.com",
                      "title": "Example Title",
                      "excerpts": [
                        "Excerpted text ..."
                      ],
                      "full_content": "Full content ..."
                    }
                  ],
                  "errors": [
                    {
                      "url": "https://www.example.com",
                      "error_type": "fetch_error",
                      "http_status_code": 500,
                      "content": "Error fetching content from https://www.example.com"
                    }
                  ],
                  "session_id": "session_8a911eb27c7a4afaa20d0d9dc98d07c0"
                }
              }
            }
          },
          "422": {
            "description": "Request validation error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                },
                "example": {
                  "type": "error",
                  "error": {
                    "ref_id": "extract_8a911eb27c7a4afaa20d0d9dc98d07c0",
                    "message": "Request validation error"
                  }
                }
              }
            }
          }
        },
        "x-code-samples": [
          {
            "lang": "Python",
            "source": "from parallel import Parallel\n\nclient = Parallel()\n\nextract = client.extract(\n    urls=[\"https://www.example.com\"],\n    objective=\"Summarize the page\",\n)\nprint(extract.results)"
          },
          {
            "lang": "TypeScript",
            "source": "import Parallel from \"parallel-web\";\n\nconst client = new Parallel();\n\nconst extract = await client.extract({\n    urls: [\"https://www.example.com\"],\n    objective: \"Summarize the page\",\n});\nconsole.log(extract.results);"
          },
          {
            "lang": "cURL",
            "source": "curl --request POST \\\n    --url https://api.parallel.ai/v1/extract \\\n    --header 'Content-Type: application/json' \\\n    --header 'x-api-key: <api-key>' \\\n    --data '{\n    \"urls\": [\"https://www.example.com\"],\n    \"objective\": \"Summarize the page\"\n}'"
          }
        ]
      }
    },
    "/v1/tasks/groups": {
      "post": {
        "tags": [
          "Tasks"
        ],
        "summary": "Create Task Group",
        "description": "Initiates a TaskGroup to group and track multiple runs.",
        "operationId": "tasks_taskgroups_post_v1_tasks_groups_post",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTaskGroupRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TaskGroupResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        },
        "x-code-samples": [
          {
            "lang": "Python",
            "source": "from parallel import Parallel\n\nclient = Parallel()\n\ntask_group = client.task_group.create(metadata={\"key\": \"value\"})\nprint(task_group.task_group_id)"
          },
          {
            "lang": "TypeScript",
            "source": "import Parallel from \"parallel-web\";\n\nconst client = new Parallel();\n\nconst taskGroup = await client.taskGroup.create({\n    metadata: {'key': 'value'},\n});\nconsole.log(taskGroup.taskgroup_id);"
          }
        ]
      }
    },
    "/v1/tasks/groups/{taskgroup_id}": {
      "get": {
        "tags": [
          "Tasks"
        ],
        "summary": "Retrieve Task Group",
        "description": "Retrieves aggregated status across runs in a TaskGroup.",
        "operationId": "tasks_taskgroups_get_v1_tasks_groups__taskgroup_id__get",
        "parameters": [
          {
            "name": "taskgroup_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "title": "Taskgroup Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TaskGroupResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        },
        "x-code-samples": [
          {
            "lang": "Python",
            "source": "from parallel import Parallel\n\nclient = Parallel()\n\ntask_group = client.task_group.retrieve(\"taskgroup_id\")\nprint(task_group.status)"
          },
          {
            "lang": "TypeScript",
            "source": "import Parallel from \"parallel-web\";\n\nconst client = new Parallel();\n\nconst taskGroup = await client.taskGroup.retrieve(\n    'taskgroup_id',\n);\nconsole.log(taskGroup.status);"
          }
        ]
      }
    },
    "/v1/tasks/groups/{taskgroup_id}/events": {
      "get": {
        "tags": [
          "Tasks"
        ],
        "summary": "Stream Task Group Events",
        "description": "Streams events from a TaskGroup: status updates and run completions.\n\nThe connection will remain open for up to an hour as long as at least one run in the\ngroup is still active.",
        "operationId": "tasks_sessions_events_get_v1_tasks_groups__taskgroup_id__events_get",
        "parameters": [
          {
            "name": "taskgroup_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "title": "Taskgroup Id"
            }
          },
          {
            "name": "last_event_id",
            "in": "query",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Last Event Id"
            }
          },
          {
            "name": "timeout",
            "in": "query",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "number"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Timeout"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "text/event-stream": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/TaskGroupStatusEvent"
                    },
                    {
                      "$ref": "#/components/schemas/TaskRunEvent"
                    },
                    {
                      "$ref": "#/components/schemas/ErrorEvent"
                    }
                  ],
                  "discriminator": {
                    "propertyName": "type",
                    "mapping": {
                      "task_group_status": "#/components/schemas/TaskGroupStatusEvent",
                      "task_run.state": "#/components/schemas/TaskRunEvent",
                      "error": "#/components/schemas/ErrorEvent"
                    }
                  },
                  "title": "Response 200 Tasks Sessions Events Get V1 Tasks Groups  Taskgroup Id  Events Get"
                },
                "example": {
                  "type": "task_group_status",
                  "event_id": "123",
                  "status": {
                    "num_task_runs": 1,
                    "task_run_status_counts": {
                      "completed": 1
                    },
                    "is_active": false,
                    "status_message": "",
                    "modified_at": "2025-04-23T20:21:48.037943Z"
                  }
                }
              }
            }
          },
          "404": {
            "description": "TaskGroup not found",
            "content": {
              "application/json": {
                "example": {
                  "type": "error",
                  "error": {
                    "ref_id": "fcb2b4f3-c75e-4186-87bc-caa1a8381331",
                    "message": "TaskGroup not found"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        },
        "x-code-samples": [
          {
            "lang": "Python",
            "source": "from parallel import Parallel\n\nclient = Parallel()\n\ntask_group_events = client.task_group.events(\"taskgroup_id\")\nfor event in task_group_events:\n    print(event)\n"
          },
          {
            "lang": "TypeScript",
            "source": "import Parallel from \"parallel-web\";\n\nconst client = new Parallel();\n\nconst taskGroupEvents = await client.taskGroup.events(\n    'taskgroup_id',\n);\nfor await (const event of taskGroupEvents) {\n    console.log(event);\n}\n"
          }
        ]
      }
    },
    "/v1/tasks/groups/{taskgroup_id}/runs": {
      "post": {
        "tags": [
          "Tasks"
        ],
        "summary": "Add Runs to Task Group",
        "description": "Initiates multiple task runs within a TaskGroup.",
        "operationId": "tasks_taskgroups_runs_post_v1_tasks_groups__taskgroup_id__runs_post",
        "parameters": [
          {
            "name": "taskgroup_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "title": "Taskgroup Id"
            }
          },
          {
            "name": "refresh_status",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "default": true,
              "title": "Refresh Status"
            }
          },
          {
            "name": "parallel-beta",
            "in": "header",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Parallel-Beta",
              "x-stainless-override-schema": {
                "x-stainless-param": "betas",
                "x-stainless-extend-default": true,
                "type": "array",
                "description": "Optional header to specify the beta version(s) to enable.",
                "items": {
                  "$ref": "#/components/schemas/ParallelBeta"
                }
              }
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TaskGroupRunRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TaskGroupRunResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        },
        "x-code-samples": [
          {
            "lang": "Python",
            "source": "from parallel import Parallel\nfrom parallel.types import McpServerParam\nfrom parallel.types.run_input_param import RunInputParam\n\nclient = Parallel(api_key=\"API Key\")\ngroup_status = client.task_group.add_runs(\n    \"taskgroup_id\",\n    inputs=[\n        RunInputParam(\n            input=\"What was the GDP of France in 2023?\",\n            processor=\"base\",\n            enable_events=True,\n            mcp_servers=[McpServerParam(\n                type=\"url\",\n                name=\"parallel_web_search\",\n                url=\"https://mcp.parallel.ai/v1beta/search_mcp\",\n                headers={\"x-api-key\": \"API Key\"}\n            )]\n        )\n    ]\n)\nprint(group_status.status)\n"
          },
          {
            "lang": "TypeScript",
            "source": "import Parallel from \"parallel-web\";\n\nconst client = new Parallel();\n\nconst groupStatus = await client.taskGroup.addRuns(\n    'taskgroup_id',\n    {\n        inputs: [\n            {\n                input: 'What was the GDP of France in 2023?',\n                processor: 'base',\n                enable_events: true,\n                mcp_servers: [{\n                    type: 'url',\n                    name: 'parallel_web_search',\n                    url: 'https://mcp.parallel.ai/v1beta/search_mcp',\n                    headers: {'x-api-key': 'API Key'}\n                }]\n            }\n        ]\n    }\n);\nconsole.log(groupStatus.status);"
          }
        ]
      },
      "get": {
        "tags": [
          "Tasks"
        ],
        "summary": "Fetch Task Group Runs",
        "description": "Retrieves task runs in a TaskGroup and optionally their inputs and outputs.\n\nAll runs within a TaskGroup are returned as a stream. To get the inputs and/or\noutputs back in the stream, set the corresponding `include_input` and\n`include_output` parameters to `true`.\n\nThe stream is resumable using the `event_id` as the cursor. To resume a stream,\nspecify the `last_event_id` parameter with the `event_id` of the last event in the\nstream. The stream will resume from the next event after the `last_event_id`.",
        "operationId": "tasks_taskgroups_runs_get_v1_tasks_groups__taskgroup_id__runs_get",
        "parameters": [
          {
            "name": "taskgroup_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "title": "Taskgroup Id"
            }
          },
          {
            "name": "last_event_id",
            "in": "query",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Last Event Id"
            }
          },
          {
            "name": "status",
            "in": "query",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "enum": [
                    "queued",
                    "action_required",
                    "running",
                    "completed",
                    "failed",
                    "cancelling",
                    "cancelled"
                  ],
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Status"
            }
          },
          {
            "name": "include_input",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "default": false,
              "title": "Include Input"
            }
          },
          {
            "name": "include_output",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "default": false,
              "title": "Include Output"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "text/event-stream": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/TaskRunEvent"
                    },
                    {
                      "$ref": "#/components/schemas/ErrorEvent"
                    }
                  ],
                  "discriminator": {
                    "propertyName": "type",
                    "mapping": {
                      "task_run.state": "#/components/schemas/TaskRunEvent",
                      "error": "#/components/schemas/ErrorEvent"
                    }
                  },
                  "title": "Response 200 Tasks Taskgroups Runs Get V1 Tasks Groups  Taskgroup Id  Runs Get"
                },
                "example": {
                  "type": "task_run.state",
                  "event_id": "123",
                  "input": {
                    "processor": "core",
                    "metadata": {
                      "my_key": "my_value"
                    },
                    "input": {
                      "country": "France",
                      "year": 2023
                    }
                  },
                  "run": {
                    "run_id": "trun_9907962f83aa4d9d98fd7f4bf745d654",
                    "interaction_id": "trun_9907962f83aa4d9d98fd7f4bf745d654",
                    "status": "completed",
                    "is_active": false,
                    "processor": "core",
                    "metadata": {
                      "my_key": "my_value"
                    },
                    "created_at": "2025-04-23T20:21:48.037943Z",
                    "modified_at": "2025-04-23T20:21:48.037943Z"
                  }
                }
              }
            }
          },
          "404": {
            "description": "TaskGroup not found",
            "content": {
              "application/json": {
                "example": {
                  "type": "error",
                  "error": {
                    "ref_id": "fcb2b4f3-c75e-4186-87bc-caa1a8381331",
                    "message": "TaskGroup not found"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        },
        "x-code-samples": [
          {
            "lang": "Python",
            "source": "from parallel import Parallel\n\nclient = Parallel()\n\ntask_group_runs = client.task_group.get_runs(\"taskgroup_id\")\nfor run in task_group_runs:\n    print(run)\n"
          },
          {
            "lang": "TypeScript",
            "source": "import Parallel from \"parallel-web\";\n\nconst client = new Parallel();\n\nconst taskGroupRuns = await client.taskGroup.getRuns(\n    'taskgroup_id',\n);\nfor await (const run of taskGroupRuns) {\n    console.log(run);\n}\n"
          }
        ]
      }
    },
    "/v1/tasks/groups/{taskgroup_id}/runs/{run_id}": {
      "get": {
        "tags": [
          "Tasks"
        ],
        "summary": "Retrieve Task Group Run",
        "description": "Retrieves run status by run_id.\n\nThis endpoint is equivalent to fetching run status directly using the\n`retrieve()` method or the `tasks/runs` GET endpoint.\n\nThe run result is available from the `/result` endpoint.",
        "operationId": "tasks_taskgroups_runs_id_get_v1_tasks_groups__taskgroup_id__runs__run_id__get",
        "parameters": [
          {
            "name": "taskgroup_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "title": "Taskgroup Id"
            }
          },
          {
            "name": "run_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "title": "Run Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TaskRun"
                },
                "example": {
                  "run_id": "trun_9907962f83aa4d9d98fd7f4bf745d654",
                  "interaction_id": "trun_9907962f83aa4d9d98fd7f4bf745d654",
                  "status": "running",
                  "is_active": true,
                  "processor": "core",
                  "metadata": {
                    "my_key": "my_value"
                  },
                  "created_at": "2025-04-23T20:21:48.037943Z",
                  "modified_at": "2025-04-23T20:21:48.037943Z"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized: invalid or missing credentials",
            "content": {
              "application/json": {
                "example": {
                  "type": "error",
                  "error": {
                    "ref_id": "fcb2b4f3-c75e-4186-87bc-caa1a8381331",
                    "message": "Unauthorized: invalid or missing credentials"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            }
          },
          "404": {
            "description": "Run id not found",
            "content": {
              "application/json": {
                "example": {
                  "type": "error",
                  "error": {
                    "ref_id": "fcb2b4f3-c75e-4186-87bc-caa1a8381331",
                    "message": "Run id not found"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            }
          },
          "422": {
            "description": "Request validation error",
            "content": {
              "application/json": {
                "example": {
                  "type": "error",
                  "error": {
                    "ref_id": "fcb2b4f3-c75e-4186-87bc-caa1a8381331",
                    "message": "Request validation error"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            }
          }
        },
        "x-code-samples": [
          {
            "lang": "Python",
            "source": "from parallel import Parallel\n\nclient = Parallel()\n\ntask_run = client.task_run.retrieve(\"run_id\")\nprint(task_run.status)"
          },
          {
            "lang": "TypeScript",
            "source": "import Parallel from \"parallel-web\";\n\nconst client = new Parallel();\n\nconst taskRun = await client.taskRun.retrieve('run_id');\nconsole.log(taskRun.status);"
          }
        ]
      }
    },
    "/v1/tasks/runs": {
      "post": {
        "tags": [
          "Tasks"
        ],
        "summary": "Create Task Run",
        "description": "Initiates a task run.\n\nReturns immediately with a run object in status 'queued'.\n\nBeta features can be enabled by setting the 'parallel-beta' header.",
        "operationId": "tasks_runs_post_v1_tasks_runs_post",
        "parameters": [
          {
            "name": "parallel-beta",
            "in": "header",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Parallel-Beta",
              "x-stainless-override-schema": {
                "x-stainless-param": "betas",
                "x-stainless-extend-default": true,
                "type": "array",
                "description": "Optional header to specify the beta version(s) to enable.",
                "items": {
                  "$ref": "#/components/schemas/ParallelBeta"
                }
              }
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TaskRunInput"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TaskRun"
                },
                "example": {
                  "run_id": "trun_9907962f83aa4d9d98fd7f4bf745d654",
                  "interaction_id": "trun_9907962f83aa4d9d98fd7f4bf745d654",
                  "status": "queued",
                  "is_active": true,
                  "processor": "core",
                  "metadata": {
                    "my_key": "my_value"
                  },
                  "created_at": "2025-04-23T20:21:48.037943Z",
                  "modified_at": "2025-04-23T20:21:48.037943Z"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized: invalid or missing credentials",
            "content": {
              "application/json": {
                "example": {
                  "type": "error",
                  "error": {
                    "ref_id": "fcb2b4f3-c75e-4186-87bc-caa1a8381331",
                    "message": "Unauthorized: invalid or missing credentials"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            }
          },
          "402": {
            "description": "Payment required: insufficient credit in account",
            "content": {
              "application/json": {
                "example": {
                  "type": "error",
                  "error": {
                    "ref_id": "fcb2b4f3-c75e-4186-87bc-caa1a8381331",
                    "message": "Payment required: insufficient credit in account"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            }
          },
          "403": {
            "descripti

# --- truncated at 32 KB (296 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/parallel/refs/heads/main/openapi/parallel-openapi-original.json