Parallel
AI · AI
Deep research runs, live web search and extract, and entity discovery on their key.
Acts as the person, not as itself
Each user connects their own account. Every call carries both identities — the agent and the person it is acting for — so the agent can never reach past what that individual can already do.
Credentials never touch the agent
Tokens live in the vault and attach server-side at call time. The agent holds a session, not a secret, and revoking access does not mean rotating a key.
Every call on the record
Who asked, which agent acted, which action ran, and the verdict that let it through — one audit trail across every integration, not one per vendor.
What an agent can do
Each action is granted on its own. An agent allowed to read is not thereby allowed to write, and the scope beside each row is what the acting user must have connected for it to run at all.
parallel_get_v1_monitorsREADList Monitors -- List monitors ordered by creation time, newest first. Monitors are sorted by `created_at` descending. `limit` defaults to 100. Use `next_cursor` from the response and pass it as `cursor` to fetch the next page. Pagination ends when `next_cursor` is absent. By default only `active` monitors are returned. Pass `status=cancelled` or both values to include cancelled monitors. The legacy Monitor API (`/v1alpha/monitors` endpoints) is documented under the `Monitor (Alpha)` tag. via GET /v1/monitors
parallel_get_v1_monitors_by_monitor_idREADRetrieve Monitor -- Retrieve a monitor. Retrieves a specific monitor by `monitor_id`. Returns the monitor configuration including status, frequency, query, and webhook settings. via GET /v1/monitors/{monitor_id}
parallel_get_v1_monitors_by_monitor_id_eventsREADList Monitor Events -- List events for a monitor, newest first. Pass `event_group_id` to narrow results to a single execution. Otherwise returns all executions newest-first; use `next_cursor` to paginate. Set `include_completions=true` to also include no-change executions. via GET /v1/monitors/{monitor_id}/events
parallel_get_v1_tasks_groups_by_taskgroup_idREADRetrieve Task Group -- Retrieves aggregated status across runs in a TaskGroup. via GET /v1/tasks/groups/{taskgroup_id}
parallel_get_v1_tasks_groups_by_taskgroup_id_runs_by_run_idREADRetrieve Task Group Run -- Retrieves run status by run_id. This endpoint is equivalent to fetching run status directly using the `retrieve()` method or the `tasks/runs` GET endpoint. The run result is available from the `/result` endpoint. via GET /v1/tasks/groups/{taskgroup_id}/runs/{run_id}
parallel_get_v1_tasks_runs_by_run_idREADRetrieve Task Run -- Retrieves run status by run_id. The run result is available from the `/result` endpoint. via GET /v1/tasks/runs/{run_id}
parallel_get_v1_tasks_runs_by_run_id_inputREADRetrieve Task Run Input -- Retrieves the input of a run by run_id. via GET /v1/tasks/runs/{run_id}/input
parallel_get_v1_tasks_runs_by_run_id_resultREADRetrieve Task Run Result -- Retrieves a run result by run_id, blocking until the run is completed. via GET /v1/tasks/runs/{run_id}/result
parallel_get_v1beta_findall_runs_by_findall_idREADRetrieve FindAll Run Status -- Retrieve a FindAll run. via GET /v1beta/findall/runs/{findall_id}
parallel_get_v1beta_findall_runs_by_findall_id_resultREADFindAll Run Result -- Retrieve the FindAll run result at the time of the request. via GET /v1beta/findall/runs/{findall_id}/result
parallel_get_v1beta_findall_runs_by_findall_id_schemaREADGet FindAll Run Schema via GET /v1beta/findall/runs/{findall_id}/schema
parallel_post_v1_extractWRITEExtract -- Extracts relevant content from specific web URLs. The legacy Extract API reference (`/v1beta/extract` endpoint) is available [here](https://docs.parallel.ai/api-reference/legacy/extract-beta/extract), and migration guide is [here](https://docs.parallel.ai/extract/extract-migration-guide). via POST /v1/extract
parallel_post_v1_monitorsWRITECreate Monitor -- Create a monitor. Monitors run on a fixed frequency to detect material changes in web content. Set `type=event_stream` to monitor a search query, or `type=snapshot` to monitor a specific task run's output. The monitor runs once immediately at creation, then continues on the configured schedule. via POST /v1/monitors
parallel_post_v1_monitors_by_monitor_id_cancelWRITECancel Monitor -- Cancel a monitor. Permanently stops the monitor from running. Cancellation is irreversible — create a new monitor to resume monitoring. Cancelling an already-cancelled monitor is a no-op. via POST /v1/monitors/{monitor_id}/cancel. DESTRUCTIVE: Parallel's own words -- "Permanently stops the monitor from running. Cancellation is irreversible - create a new monitor to resume monitoring." A cancelled monitor can no longer be updated or triggered either.
parallel_post_v1_monitors_by_monitor_id_triggerWRITETrigger Monitor Run -- Trigger an immediate monitor run. Enqueues a one-off execution of the monitor outside its normal schedule. The monitor's regular schedule is not affected. An event is only emitted if the execution detects a material change. Cancelled monitors cannot be triggered. via POST /v1/monitors/{monitor_id}/trigger
parallel_post_v1_monitors_by_monitor_id_updateWRITEUpdate Monitor -- Update a monitor. Only fields explicitly included in the request body are changed. Pass `null` to clear `webhook`, `metadata`, or `settings.advanced_settings`; every other field rejects `null`, so omit it to leave it unchanged. Pass `type` and `settings` to update type-specific settings on an `event_stream` monitor. Pass `processor` to change the processor used by subsequent monitor runs. At least one field must be provided. Cancelled monitors cannot be updated. via POST /v1/monitors/{monitor_id}/update
parallel_post_v1_responsesWRITECreate Response -- Create a response. Generates an answer to the given input, grounded in live web research and annotated with URL citations. Set `model` to `parallel`; `reasoning.effort` (`low`/`medium`/`high`) controls how much research is performed, trading response time for answer quality. Returns an OpenAI-format `Response` as `application/json`, or a `text/event-stream` of OpenAI Responses SSE events when `stream=true`. via POST /v1/responses. Returns the complete JSON reply: Parallel's server-sent-event streaming mode is not offered through this tool, so the `stream` request field is not accepted
parallel_post_v1_searchWRITESearch -- Searches the web. The legacy Search API reference (`/v1beta/search` endpoint) is available [here](https://docs.parallel.ai/api-reference/legacy/search-beta/search), and migration guide is [here](https://docs.parallel.ai/search/search-migration-guide). via POST /v1/search
parallel_post_v1_tasks_groupsWRITECreate Task Group -- Initiates a TaskGroup to group and track multiple runs. via POST /v1/tasks/groups
parallel_post_v1_tasks_groups_by_taskgroup_id_runsWRITEAdd Runs to Task Group -- Initiates multiple task runs within a TaskGroup. via POST /v1/tasks/groups/{taskgroup_id}/runs
parallel_post_v1_tasks_runsWRITECreate Task Run -- Initiates a task run. Returns immediately with a run object in status 'queued'. Beta features can be enabled by setting the 'parallel-beta' header. via POST /v1/tasks/runs
parallel_post_v1beta_chat_completionsWRITEChat Completions -- Chat completions. This endpoint can be used to get realtime chat completions. It can also be used with the Task API processors to get structured, research outputs via a chat interface. via POST /v1beta/chat/completions. Returns the complete JSON reply: Parallel's server-sent-event streaming mode is not offered through this tool, so the `stream` request field is not accepted
parallel_post_v1beta_findall_entity_searchWRITEFast Entity Search -- Return ranked entities matching a natural language objective. This endpoint performs a best-effort search optimized for low latency. To keep responses fast, it returns a fixed set of attributes and supports queries of limited complexity. For comprehensive match evaluation and enrichment, use the [FindAll API](https://docs.parallel.ai/findall-api/findall-quickstart). via POST /v1beta/findall/entity-search
parallel_post_v1beta_findall_ingestWRITEIngest FindAll Run -- Transforms a natural language search objective into a structured FindAll spec. The generated specification serves as a suggested starting point and can be further customized by the user. via POST /v1beta/findall/ingest
parallel_post_v1beta_findall_runsWRITECreate FindAll Run -- Starts a FindAll run. This endpoint immediately returns a FindAll run object with status set to 'queued'. You can get the run result snapshot using the GET /v1beta/findall/runs/{findall_id}/result endpoint. You can track the progress of the run by: - Polling the status using the GET /v1beta/findall/runs/{findall_id} endpoint, - Subscribing to real-time updates via the /v1beta/findall/runs/{findall_id}/events endpoint, - Or specifying a webhook with relevant event types during run creation to receive notifications. via POST /v1beta/findall/runs
parallel_post_v1beta_findall_runs_by_findall_id_cancelWRITECancel FindAll Run -- Cancel a FindAll run. via POST /v1beta/findall/runs/{findall_id}/cancel. DESTRUCTIVE: terminates a FindAll run in flight. A terminated run cannot be cancelled again (409 "Cannot cancel a terminated FindAll run") and cannot be resumed; the work already billed is not recovered and continuing requires a new run.
parallel_post_v1beta_findall_runs_by_findall_id_enrichWRITEAdd Enrichment to FindAll Run -- Add an enrichment to a FindAll run. via POST /v1beta/findall/runs/{findall_id}/enrich
parallel_post_v1beta_findall_runs_by_findall_id_extendWRITEExtend FindAll Run -- Extend a FindAll run by adding additional matches to the current match limit. via POST /v1beta/findall/runs/{findall_id}/extend
parallel_post_v1beta_memory_clearWRITEClear Memory -- Clears all entries from the selected memory without deleting the underlying tasks, monitors, or FindAll runs. via POST /v1beta/memory/clear. DESTRUCTIVE: "Clears all entries from the selected memory" -- every entry, not a selection. The underlying tasks, monitors and FindAll runs survive, but the memory itself is not restorable from this API.
parallel_post_v1beta_memory_evictWRITEEvict from Memory -- Removes a task run, monitor, or FindAll run from the selected memory without deleting the original resource. via POST /v1beta/memory/evict. DESTRUCTIVE: "Removes a task run, monitor, or FindAll run from the selected memory". The original resource survives; its memory entry is not restorable from this API.
parallel_post_v1beta_memory_retrieveWRITERetrieve Memory -- Retrieves relevant or recent runs from the selected memory. Provide a query to rank results by relevance; leave it empty to return the most recent runs. via POST /v1beta/memory/retrieve
Often connected alongside
Put Parallel behind one governed endpoint.
Same permissions, same audit trail, whatever else you connect next.