# Duvo > Build, run, and monitor autonomous AI agents that execute real work. ## Docs - [Create agent folder](https://docs.duvo.ai/api-reference/agent-folders/create-agent-folder.md): Create a new agent folder. - [Delete agent folder](https://docs.duvo.ai/api-reference/agent-folders/delete-agent-folder.md): Delete an agent folder. If the folder contains assignments or subfolders, pass `force=true` to delete it and move the contained assignments to the root level. - [List agent folders](https://docs.duvo.ai/api-reference/agent-folders/list-agent-folders.md): List all agent folders for the authenticated team. - [Move agents to folder](https://docs.duvo.ai/api-reference/agent-folders/move-agents-to-folder.md): Move one or more agents (assignments) into a folder, or to the root level. - [Update agent folder](https://docs.duvo.ai/api-reference/agent-folders/update-agent-folder.md): Rename an agent folder or move it to a new parent. - [Create agent](https://docs.duvo.ai/api-reference/agents/create-agent.md): Create a new agent. Optionally include a build configuration to create the first build in the same request. - [Get agent](https://docs.duvo.ai/api-reference/agents/get-agent.md): Get an agent by ID. - [List agents](https://docs.duvo.ai/api-reference/agents/list-agents.md): List agents for your team. - [Update agent](https://docs.duvo.ai/api-reference/agents/update-agent.md): Update an agent's display name or delivery settings. - [Create queue](https://docs.duvo.ai/api-reference/case-queues/create-queue.md): Create a new case queue. - [Delete queue](https://docs.duvo.ai/api-reference/case-queues/delete-queue.md): Delete a case queue. Interrupts all associated running jobs first and returns the number of deleted cases plus the IDs of runs that were stopped. - [Get queue](https://docs.duvo.ai/api-reference/case-queues/get-queue.md): Get a case queue by ID. - [List agents on queue](https://docs.duvo.ai/api-reference/case-queues/list-agents-on-queue.md): List agents bound to a queue as producers (agents that push cases into the queue) or consumers (agents triggered by cases in the queue). - [List queues](https://docs.duvo.ai/api-reference/case-queues/list-queues.md): List case queues for your team. - [Update queue](https://docs.duvo.ai/api-reference/case-queues/update-queue.md): Update a case queue. - [Create case trigger](https://docs.duvo.ai/api-reference/case-triggers/create-case-trigger.md): Create a case trigger for an agent. An agent may have at most one case trigger; this returns 409 if one already exists. - [Delete case trigger](https://docs.duvo.ai/api-reference/case-triggers/delete-case-trigger.md): Delete a case trigger. Only the trigger creator or a builder/admin can delete it. - [Get case trigger](https://docs.duvo.ai/api-reference/case-triggers/get-case-trigger.md): Retrieve a single case trigger by id. - [List case triggers](https://docs.duvo.ai/api-reference/case-triggers/list-case-triggers.md): List the case triggers configured for an agent. Each trigger automatically dispatches the agent to run cases added to a queue. - [Preview trigger conflicts](https://docs.duvo.ai/api-reference/case-triggers/preview-trigger-conflicts.md): Preview which other agents would conflict with this agent's case trigger if it pointed at the given case queue. Does not modify the trigger. - [Update case trigger](https://docs.duvo.ai/api-reference/case-triggers/update-case-trigger.md): Update fields on a case trigger. Only the trigger creator or a builder/admin can disable an enabled trigger or change its queue. - [Assign labels to case](https://docs.duvo.ai/api-reference/cases/assign-labels-to-case.md): Assign one or more labels to a case. Creates the labels on the queue if they don't already exist. - [Bulk delegate cases](https://docs.duvo.ai/api-reference/cases/bulk-delegate-cases.md): Delegate multiple cases to a chosen agent, overriding the queue's default consumer. Any active runs on the selected cases are interrupted first; the cases are then reset to pending and assigned to the chosen agent for the next dispatcher tick. The chosen agent must already be connected to the queue… - [Bulk delete cases](https://docs.duvo.ai/api-reference/cases/bulk-delete-cases.md): Delete multiple cases from a queue. Any active runs are interrupted first. - [Bulk retry cases](https://docs.duvo.ai/api-reference/cases/bulk-retry-cases.md): Retry multiple cases by resetting them to pending. Any active runs are interrupted first. Cases already pending are skipped. - [Bulk update case status](https://docs.duvo.ai/api-reference/cases/bulk-update-case-status.md): Update the status of multiple cases to completed or failed. Interrupts any active runs and cancels pending human requests. - [Create case](https://docs.duvo.ai/api-reference/cases/create-case.md): Create one or more cases in a queue. Provide either a single `case` object or a `cases` array (1-100); providing both returns 400. Each case accepts a title (max 500 chars), optional free-form `data`, and optional labels that will be assigned to the case on creation (missing labels are created on th… - [Create queue label](https://docs.duvo.ai/api-reference/cases/create-queue-label.md): Create a label on a queue without assigning it to a case. - [Delete all cases in queue](https://docs.duvo.ai/api-reference/cases/delete-all-cases-in-queue.md): Delete every case in a queue. Interrupts any associated running jobs first. Destructive — not exposed via MCP. - [Delete case](https://docs.duvo.ai/api-reference/cases/delete-case.md): Delete a case. Interrupts any associated running jobs first. - [Delete queue label](https://docs.duvo.ai/api-reference/cases/delete-queue-label.md): Delete a label from a queue. Cascade-deletes all assignments of this label on existing cases. - [Get case](https://docs.duvo.ai/api-reference/cases/get-case.md): Get a case by ID. Returns the case, its event history, and every case-approval batch ever created on the case (newest first). - [List case runs](https://docs.duvo.ai/api-reference/cases/list-case-runs.md): List Jobs (agent runs) that have claimed or received handover of a case, newest first. Capped at 50 ownership events. - [List cases](https://docs.duvo.ai/api-reference/cases/list-cases.md): List cases in a queue. Supports status, date-range, and free-text filters via query params. For label filters, use POST /v1/queues/:queue_id/cases/search. - [List labels on case](https://docs.duvo.ai/api-reference/cases/list-labels-on-case.md): List all labels assigned to a case. - [List queue labels](https://docs.duvo.ai/api-reference/cases/list-queue-labels.md): List every label defined on a queue along with the count of cases each label is assigned to. - [List recent case run messages](https://docs.duvo.ai/api-reference/cases/list-recent-case-run-messages.md): Return the latest qualifying messages (assistant text + tool calls) for a Job on a case, newest last. Used to populate the live body of a running Job card in the case Activity timeline. - [Search cases](https://docs.duvo.ai/api-reference/cases/search-cases.md): Search cases in a queue with rich filters (multi-status, date ranges, label-based filters). Use this when the simple query-string filters on GET /v1/queues/:queue_id/cases aren't enough. - [Unlink labels from case](https://docs.duvo.ai/api-reference/cases/unlink-labels-from-case.md): Remove the given labels from a case. - [Update queue label](https://docs.duvo.ai/api-reference/cases/update-queue-label.md): Update a label's key, value, or color. Renaming key/value affects every case assigned to this label. - [Assign extra-capture request](https://docs.duvo.ai/api-reference/clarityv2/assign-extra-capture-request.md): Assign (or unassign, with `user_id: null`) a team member to fulfil an extra-capture request. Restricted to admins and managers. - [Build assignment from proposal](https://docs.duvo.ai/api-reference/clarityv2/build-assignment-from-proposal.md): Hand the latest transformation proposal for a v2 clarity process off to the workflow-builder pipeline. Returns 202 with the new run id; the LLM run completes asynchronously. - [Generate current-process snapshot](https://docs.duvo.ai/api-reference/clarityv2/generate-current-process-snapshot.md): Trigger the generateCurrentProcess pipeline for a v2 clarity process. Returns 202 immediately and finalises the snapshot asynchronously via the cc-server webhook stream. Visible through GET /v1/clarity-v2/processes/:process_id once complete. - [Generate transformation proposal](https://docs.duvo.ai/api-reference/clarityv2/generate-transformation-proposal.md): Trigger a transformation-proposal pipeline for a v2 clarity process. With no body or `current_process_id`, runs the generate pipeline against the chosen current-process snapshot (latest by default). With `regenerate_from: `, runs the regenerate pipeline anchored to the prior prop… - [Get current-process snapshot](https://docs.duvo.ai/api-reference/clarityv2/get-current-process-snapshot.md): Fetch the full payload of a single current-process snapshot, including the BPMN `data` JSONB. Lazy-loaded by the picker when the user selects a specific version. v2 only. - [Get process](https://docs.duvo.ai/api-reference/clarityv2/get-process.md): Get the v2 read model for a clarity process: the process row (with operational fields like generation_error, generation_progress, custom_prompt), its captures, and the lightweight version arrays for both snapshot tabs. The full payload of any specific snapshot is fetched lazily via the per-snapshot… - [Get transformation proposal](https://docs.duvo.ai/api-reference/clarityv2/get-transformation-proposal.md): Fetch the full payload of a single transformation-proposal snapshot, including the BPMN `data` JSONB. Lazy-loaded by the picker when the user selects a specific version. v2 only. - [List extra-capture requests](https://docs.duvo.ai/api-reference/clarityv2/list-extra-capture-requests.md): List active extra-capture requests for a given transformation proposal of a Clarity v2 process. The caller is expected to know the proposal id from the V2 read model and skip the call when no proposal exists yet. - [List processes](https://docs.duvo.ai/api-reference/clarityv2/list-processes.md): List Clarity processes for the current team, most recently created first. Returns lightweight metadata (capture counts, contributors, status) suitable for building a picker; the per-process read model is available via `GET /v1/clarity-v2/processes/:process_id`. Both v1 (legacy) and v2 processes are… - [Promote current-process snapshot](https://docs.duvo.ai/api-reference/clarityv2/promote-current-process-snapshot.md): Promote a draft or historic current-process snapshot to live. Demotes the previously live row to historic in the same transaction. No-op if the target is already live. v2 only. - [Promote transformation proposal](https://docs.duvo.ai/api-reference/clarityv2/promote-transformation-proposal.md): Promote a draft or historic transformation-proposal snapshot to live. Demotes the previously live row to historic in the same transaction. No-op if the target is already live. Live uniqueness is scoped to process_id (not the current-process anchor). v2 only. - [Re-run postprocess](https://docs.duvo.ai/api-reference/clarityv2/re-run-postprocess.md): Re-run postprocessing agents on an existing v2 clarity snapshot. Targets either the current-process snapshot or the transformation-proposal snapshot, identified by id in the body. Flips the process status to `generating` and returns 202 immediately; agents run asynchronously and flip the status back… - [Revert current-process snapshot](https://docs.duvo.ai/api-reference/clarityv2/revert-current-process-snapshot.md): Archive a current-process snapshot for a clarity v2 process. v2 only — returns 403 for v1 processes. - [Revert transformation proposal](https://docs.duvo.ai/api-reference/clarityv2/revert-transformation-proposal.md): Archive a transformation proposal for a clarity v2 process. v2 only — returns 403 for v1 processes. - [Stop transformation proposal](https://docs.duvo.ai/api-reference/clarityv2/stop-transformation-proposal.md): Stop an in-flight transformation-proposal generation. Reads the sandbox id from the process row, kills the sandbox, flips the process back to `review`, and clears the sandbox marker so any late webhook from the killed run is dropped as stale. - [Check MCP OAuth DCR](https://docs.duvo.ai/api-reference/connections/check-mcp-oauth-dcr.md): Probe an MCP server URL to discover whether it supports OAuth Dynamic Client Registration. Returns the authorization endpoint and required scopes when supported. Useful as a precursor to `/v1/connections/oauth/mcp/start` or `/v1/connections`. Performs no writes. - [Create connection](https://docs.duvo.ai/api-reference/connections/create-connection.md): Create a new user-provided connection (custom MCP server) for the current team. OAuth-based integrations (native, composio) require an interactive browser flow — start them with the dedicated OAuth endpoints (`/v1/connections/oauth/native/:provider/start`, `/v1/connections/oauth/mcp/start`, or `/v1/… - [Delete connection](https://docs.duvo.ai/api-reference/connections/delete-connection.md): Delete a connection (disconnects the user's connection and removes any triggers bound to it). - [Finalize Composio OAuth](https://docs.duvo.ai/api-reference/connections/finalize-composio-oauth.md): Finalize a Composio-backed connection after the start step (`/v1/connections/composio/start`) has produced a `connected_account_id`. Provisions a Composio MCP server bound to that account and persists the connection on the team. Works for both OAuth and non-OAuth start flows. Stale or invalid `conne… - [Get connection](https://docs.duvo.ai/api-reference/connections/get-connection.md): Get one of your connections by ID. - [Get connection credentials](https://docs.duvo.ai/api-reference/connections/get-connection-credentials.md): Get the header keys configured for a connection. Sensitive values (api keys, tokens, passwords) are returned as empty strings — the response only reveals which credential fields are set, never their values. - [List connections](https://docs.duvo.ai/api-reference/connections/list-connections.md): List the authenticated user's connections (connected integration instances) for the current team. Includes team-shared instances visible to the caller when the org-level Connections sharing setting is on. Filter by integration type with the `type` query parameter. - [Probe MCP server](https://docs.duvo.ai/api-reference/connections/probe-mcp-server.md): Probe an MCP server URL and list the tools it exposes. Useful as a dry-run before creating a connection — verifies the URL is reachable, that authentication headers (if any) are correct, and surfaces the tool catalog. Performs no writes; sits alongside `/v1/connections/oauth/mcp/check` (which probes… - [Start Composio OAuth](https://docs.duvo.ai/api-reference/connections/start-composio-oauth.md): Start a Composio-backed connection. Returns a `redirect_url` the user must open in a browser to complete the OAuth handshake (or `null` for non-OAuth schemes like API_KEY when the connection finalizes synchronously). After the user completes the flow, call `/v1/connections/composio/finalize` to prov… - [Start MCP OAuth](https://docs.duvo.ai/api-reference/connections/start-mcp-oauth.md): Start an OAuth-based connection with a remote MCP server using Dynamic Client Registration. Returns an authorization URL the user must open in a browser; once they grant consent, Duvo creates the matching connection and redirects the browser to the optional `returnUrl`. - [Start native OAuth](https://docs.duvo.ai/api-reference/connections/start-native-oauth.md): Start an OAuth-based connection with a native provider (Gmail, Google Sheets, Outlook, etc.). Returns an authorization URL that must be opened in a browser by a human end-user; once they grant consent, Duvo creates the matching connection and redirects the browser to the optional `return_url` (or th… - [Update connection](https://docs.duvo.ai/api-reference/connections/update-connection.md): Update an existing connection. For sensitive header values, sending an empty string keeps the existing value; send a new value to overwrite. Toggling `shared` moves the connection between personal and team-shared. - [Attach login to build](https://docs.duvo.ai/api-reference/credentials/attach-login-to-build.md): Attach a browser login to a revision so the browsing agent can use it during jobs spawned from that revision. Personal logins can only be attached by their owner; team-shared logins require builder permissions. - [Create browser login](https://docs.duvo.ai/api-reference/credentials/create-browser-login.md): Create a browser login. At least one of `password` or `otp_secret` must be provided. Personal by default; pass `shared: true` to create a team-shared login (requires manager role). - [Delete browser login](https://docs.duvo.ai/api-reference/credentials/delete-browser-login.md): Delete a browser login by id. Deleting a team-shared login requires manager role. - [Detach login from build](https://docs.duvo.ai/api-reference/credentials/detach-login-from-build.md): Detach a browser login from a revision. Personal logins can only be detached by their owner; team-shared logins require builder permissions. - [Get browser login](https://docs.duvo.ai/api-reference/credentials/get-browser-login.md): Get a browser login by id. Returns the encrypted password/otp_secret blobs — only the owner or team members can access it. - [List browser logins](https://docs.duvo.ai/api-reference/credentials/list-browser-logins.md): List browser-login credentials visible to the caller for the current team — team-shared (user_id IS NULL) plus the caller's own personal logins. Optionally filter by `domain`. Passwords and OTP secrets are never returned; only metadata flags indicating whether they are set. - [List build logins](https://docs.duvo.ai/api-reference/credentials/list-build-logins.md): List browser logins attached to a specific revision (build) of an assignment. Returns metadata only — passwords and OTP secrets are never exposed. - [Update browser login](https://docs.duvo.ai/api-reference/credentials/update-browser-login.md): Update a browser login by id. At least one of password or otp_secret must remain set after the update. Editing a team-shared login or toggling sharing requires manager role. - [Delete file](https://docs.duvo.ai/api-reference/files/delete-file.md): Delete a file from team storage. - [Get file content](https://docs.duvo.ai/api-reference/files/get-file-content.md): Get the content of a text file. - [Get file download URL](https://docs.duvo.ai/api-reference/files/get-file-download-url.md): Generate a signed download URL for a file. - [Get file upload URL](https://docs.duvo.ai/api-reference/files/get-file-upload-url.md): Generate a signed URL for uploading a file directly to GCS. - [List files](https://docs.duvo.ai/api-reference/files/list-files.md): List files for the current team. - [Update file content](https://docs.duvo.ai/api-reference/files/update-file-content.md): Update the content of a text file. - [Update file metadata](https://docs.duvo.ai/api-reference/files/update-file-metadata.md): Rename a file in team storage. - [Developer Platform API](https://docs.duvo.ai/api-reference/index.md): Use the Duvo Developer Platform API to start jobs, manage assignments, review cases, and integrate Duvo into your own code, scripts, and pipelines. - [Delete custom integration](https://docs.duvo.ai/api-reference/integrations/delete-custom-integration.md): Delete a custom integration type (team-level catalog entry) and cascade-remove related connections. Requires manager-or-above role. - [List integrations](https://docs.duvo.ai/api-reference/integrations/list-integrations.md): List the team's integration catalog: built-in integration types plus any custom connection types defined for the team. OAuth authorization flows are browser-based and cannot be performed via this API; use the Duvo dashboard to complete OAuth-based connections. - [Register custom integration](https://docs.duvo.ai/api-reference/integrations/register-custom-integration.md): Create a custom integration type (team-level catalog entry) that users can then connect as user-provided MCP connections. Requires manager-or-above role. - [MCP JSON-RPC endpoint](https://docs.duvo.ai/api-reference/mcp/mcp-json-rpc-endpoint.md): MCP JSON-RPC endpoint (Streamable HTTP transport). Exposes every public API route as an LLM-callable tool. - [List plugin catalog](https://docs.duvo.ai/api-reference/plugins/list-plugin-catalog.md): List plugins that can be referenced by name in a build's plugins array. Builds may also reference any public GitHub repository URL (https://github.com/owner/repo) as a plugin; those are not enumerated here. - [Attach integration to build](https://docs.duvo.ai/api-reference/revision-integrations/attach-integration-to-build.md): Attach one or more integrations to an agent revision. To pin specific connections after attachment, use POST /v1/agents/:agent_id/revisions/:build_id/integrations/:integration_id/connections. - [Detach integration from build](https://docs.duvo.ai/api-reference/revision-integrations/detach-integration-from-build.md): Remove an integration from an agent revision. Removes the slot for everyone on the revision, including all per-user connection pins. Requires edit permission on the agent. - [List build integration connections](https://docs.duvo.ai/api-reference/revision-integrations/list-build-integration-connections.md): List the connections you have pinned to this build's integration slot. Multi-pin is supported: you can pin multiple connections to the same slot. - [List build integration queues](https://docs.duvo.ai/api-reference/revision-integrations/list-build-integration-queues.md): List the case queues linked to this build's case-queue integration slot. Only meaningful for case-queue-producer and case-queue-consumer integrations. - [List build integrations](https://docs.duvo.ai/api-reference/revision-integrations/list-build-integrations.md): List integrations attached to an agent revision. - [Pin connection to build integration](https://docs.duvo.ai/api-reference/revision-integrations/pin-connection-to-build-integration.md): Pin one of your connections (from GET /v1/connections) to this build's integration slot. Multi-pin is supported: a single user can pin multiple connections to the same slot. - [Replace build integration queues](https://docs.duvo.ai/api-reference/revision-integrations/replace-build-integration-queues.md): Replace the set of case queues linked to this build's case-queue integration slot. Send the full desired queue list — any queues not in the list will be unlinked. Requires edit permission on the agent. - [Unpin connection from build integration](https://docs.duvo.ai/api-reference/revision-integrations/unpin-connection-from-build-integration.md): Unpin one of your connections from this build's integration slot. The connection itself is not deleted; only the binding to this slot is removed. - [Create revision](https://docs.duvo.ai/api-reference/revisions/create-revision.md): Create a new revision for an existing agent. - [Get revision](https://docs.duvo.ai/api-reference/revisions/get-revision.md): Get a revision by ID. - [List revisions](https://docs.duvo.ai/api-reference/revisions/list-revisions.md): List revisions for an agent. - [Promote revision](https://docs.duvo.ai/api-reference/revisions/promote-revision.md): Promote a draft or historic revision to the live version. The live revision is the one used by triggers and new runs. Fails if the revision is already live, or if a draft revision still has an active builder run. - [Update revision](https://docs.duvo.ai/api-reference/revisions/update-revision.md): Update a revision's configuration, name, description, or handover targets. Returns the updated revision. - [Create run](https://docs.duvo.ai/api-reference/runs/create-run.md): Start a new agent run. Returns immediately with run info - does not wait for completion. - [Get run](https://docs.duvo.ai/api-reference/runs/get-run.md): Get information about an agent run. Can be polled to check status. - [List run messages](https://docs.duvo.ai/api-reference/runs/list-run-messages.md): Get paginated messages for an agent run. Messages are returned in chronological order. - [List runs](https://docs.duvo.ai/api-reference/runs/list-runs.md): List runs for the current team. Supports filtering by agent, user, case queue, status, etc. Messages, evaluation data, and case-queue metadata are included where available. - [Respond to human request](https://docs.duvo.ai/api-reference/runs/respond-to-human-request.md): Respond to a human-in-the-loop request. Use 'approved' (true/false) for approval-type requests, or 'answers' ({question: answer}) for question-type requests. Only works when the run is in 'waiting' status. - [Send message to run](https://docs.duvo.ai/api-reference/runs/send-message-to-run.md): Post a message to an agent run. This will persist the message and resume the agent execution if the run is in a resumable state (waiting, completed, or interrupted). - [Stop run](https://docs.duvo.ai/api-reference/runs/stop-run.md): Stop an agent run. No-op if the run is not currently running. - [Create sandbox](https://docs.duvo.ai/api-reference/sandboxes/create-sandbox.md): Create a new sandbox for file uploads. The returned sandbox_id can be passed to POST /v1/runs to stage data for a run. - [Get sandbox upload URLs](https://docs.duvo.ai/api-reference/sandboxes/get-sandbox-upload-urls.md): Get a presigned URL for uploading a file into a sandbox. Use for files larger than 10MB; smaller files can be uploaded directly via POST /v1/sandboxes/:sandbox_id/files. - [List sandbox files](https://docs.duvo.ai/api-reference/sandboxes/list-sandbox-files.md): List files in a sandbox directory. - [Upload sandbox file](https://docs.duvo.ai/api-reference/sandboxes/upload-sandbox-file.md): Upload a file directly to the sandbox. Maximum file size is 10MB. For larger files, use POST /v1/sandboxes/:sandbox_id/upload-urls. - [List agent schedules](https://docs.duvo.ai/api-reference/schedules/list-agent-schedules.md): List all schedules configured for an agent. Returns the schedules you own on this agent. - [Attach secret to build](https://docs.duvo.ai/api-reference/secrets/attach-secret-to-build.md): Attach an env-var secret to a revision so its keys are injected into jobs spawned from that revision. Personal secrets can only be attached by their owner; team-shared secrets require builder permissions. - [Create secret](https://docs.duvo.ai/api-reference/secrets/create-secret.md): Create an env-var secret. Personal by default; pass `shared: true` to create a team-shared secret (requires manager role). - [Delete secret](https://docs.duvo.ai/api-reference/secrets/delete-secret.md): Soft-delete an env-var secret. Deleting a team-shared secret requires manager role. - [Detach secret from build](https://docs.duvo.ai/api-reference/secrets/detach-secret-from-build.md): Detach an env-var secret from a revision. Personal secrets can only be detached by their owner; team-shared secrets require builder permissions. - [Get secret](https://docs.duvo.ai/api-reference/secrets/get-secret.md): Get an env-var secret by id. Returns metadata and env var keys; secret values are never exposed. - [List build secrets](https://docs.duvo.ai/api-reference/secrets/list-build-secrets.md): List env-var secrets attached to a specific revision (build) of an assignment. Returns metadata and env-var keys only — secret values are never exposed. - [List secrets](https://docs.duvo.ai/api-reference/secrets/list-secrets.md): List env-var secrets visible to the caller — team-shared (user_id IS NULL) plus the caller's own personal entries. Returns metadata and env-var keys only; secret values are never exposed. - [Update secret](https://docs.duvo.ai/api-reference/secrets/update-secret.md): Update an env-var secret. Send `values` to replace all entries, or any of `rename_keys`, `remove_keys`, `add_values` for a non-destructive patch. Editing a team-shared secret or toggling sharing requires manager role. - [Create skill](https://docs.duvo.ai/api-reference/skills/create-skill.md): Create or update a skill from a JSON body. The server constructs SKILL.md from the provided fields and stores it. If a skill with the same name already exists in the team, it is updated. - [Delete skill](https://docs.duvo.ai/api-reference/skills/delete-skill.md): Delete a skill for the current team. - [Download skill archive](https://docs.duvo.ai/api-reference/skills/download-skill-archive.md): Download a custom skill as a ZIP archive. Only custom (team-owned) skills can be downloaded. - [Get skill file](https://docs.duvo.ai/api-reference/skills/get-skill-file.md): Get the content of a file in a skill. - [List assignments using skill](https://docs.duvo.ai/api-reference/skills/list-assignments-using-skill.md): List the assignments in the current team whose live build references the given skill. Used to warn users that editing a skill will affect every assignment that uses it. - [List skill files](https://docs.duvo.ai/api-reference/skills/list-skill-files.md): List all files in a skill. - [List skills](https://docs.duvo.ai/api-reference/skills/list-skills.md): List all skills for the current team, including system skills. - [List system skills](https://docs.duvo.ai/api-reference/skills/list-system-skills.md): List all system skills (skills available to all teams). - [Update skill file](https://docs.duvo.ai/api-reference/skills/update-skill-file.md): Update the content of a file in a skill. Only team skills can be edited. - [Upload skill](https://docs.duvo.ai/api-reference/skills/upload-skill.md): Create or update a skill by uploading a SKILL.md file or a ZIP archive containing SKILL.md at the root. If a skill with the same name exists in the team, it will be updated. - [Get profile](https://docs.duvo.ai/api-reference/team/get-profile.md): Get the profile of the authenticated user (the owner of the API key). - [Get team](https://docs.duvo.ai/api-reference/team/get-team.md): Get a team by ID. The API key must be scoped to the requested team. - [List members](https://docs.duvo.ai/api-reference/team/list-members.md): List members of a team. The authenticated session or API key must be scoped to the requested team. - [Advanced CLI Commands](https://docs.duvo.ai/cli/advanced.md) - [Cases and Queues (CLI)](https://docs.duvo.ai/cli/cases-and-queues.md) - [Inspecting Clarity Processes (CLI)](https://docs.duvo.ai/cli/clarity.md) - [Duvo CLI](https://docs.duvo.ai/cli/index.md): Install and use the Duvo CLI to manage assignments, run jobs, move files, and drive the Duvo API from your terminal or CI/CD pipelines. - [Managing Assignments (CLI)](https://docs.duvo.ai/cli/managing-assignments.md) - [Managing Connections (CLI)](https://docs.duvo.ai/cli/managing-connections.md) - [Managing Files and Skills (CLI)](https://docs.duvo.ai/cli/managing-files-and-skills.md) - [Running Jobs (CLI)](https://docs.duvo.ai/cli/running-jobs.md) - [Scripting and CI/CD Patterns](https://docs.duvo.ai/cli/scripting-and-ci.md) - [Slack bot identity](https://docs.duvo.ai/integrations/slack-bot-identity.md): Choose whether Duvo acts as itself or as you in Slack — and when each option matters. - [Available MCP Tools](https://docs.duvo.ai/mcp/available-tools.md): Complete reference for all tools exposed by the Duvo MCP server. - [Building an MCP Server for Duvo](https://docs.duvo.ai/mcp/building-mcp-servers.md): Build a custom MCP server that Duvo can connect to. Covers transport, authentication, tool design, and deployment requirements. - [Custom MCP Connections](https://docs.duvo.ai/mcp/custom-mcp-servers.md): Bring your own MCP server into Duvo. Let assignments call tools from internal systems, legacy platforms, or custom APIs alongside built-in connections. - [Connect to the Duvo MCP server](https://docs.duvo.ai/mcp/duvo-mcp-server.md): Connect Claude Desktop, Cursor, or ChatGPT to the Duvo MCP server. Every Public API endpoint becomes an LLM-callable tool. - [Duvo and the Model Context Protocol](https://docs.duvo.ai/mcp/overview.md): Connect Claude Desktop, Cursor, or ChatGPT to Duvo via MCP, or bring your own MCP servers into Duvo as custom connections. - [Assignment Versions](https://docs.duvo.ai/user-guide/advanced/assignment-versions.md) - [Model Selection](https://docs.duvo.ai/user-guide/advanced/model-selection.md) - [Team Insights](https://docs.duvo.ai/user-guide/analytics/team-insights-overview.md) - [Understanding Metrics](https://docs.duvo.ai/user-guide/analytics/understanding-metrics.md) - [Usage Tracking](https://docs.duvo.ai/user-guide/analytics/usage-tracking.md) - [Activity Inbox](https://docs.duvo.ai/user-guide/assignment-features/activity-inbox.md) - [Assignment Handover](https://docs.duvo.ai/user-guide/assignment-features/assignment-handover.md) - [Assignment Memory](https://docs.duvo.ai/user-guide/assignment-features/assignment-memory.md) - [Browsing Capabilities](https://docs.duvo.ai/user-guide/assignment-features/browsing.md) - [Case Queue](https://docs.duvo.ai/user-guide/assignment-features/case-queue.md) - [Clarity](https://docs.duvo.ai/user-guide/assignment-features/clarity.md) - [Event-Driven Triggers](https://docs.duvo.ai/user-guide/assignment-features/event-driven-triggers.md) - [File-Drop Triggers](https://docs.duvo.ai/user-guide/assignment-features/file-drop-triggers.md) - [Files](https://docs.duvo.ai/user-guide/assignment-features/files.md) - [Designing Human-in-the-Loop Workflows](https://docs.duvo.ai/user-guide/assignment-features/hitl-design.md) - [Human-in-the-Loop](https://docs.duvo.ai/user-guide/assignment-features/human-in-the-loop.md): Add human approval steps to Duvo assignments. Pause workflows for review, approval, or input before the assignment continues. - [Learning Feature](https://docs.duvo.ai/user-guide/assignment-features/learning-feature.md) - [Scheduling Assignments](https://docs.duvo.ai/user-guide/assignment-features/scheduling-assignments.md): Schedule Duvo assignments to run automatically on a recurring basis. Set up daily, weekly, or monthly jobs with cron-style flexibility. - [Slack Channel Triggers](https://docs.duvo.ai/user-guide/assignment-features/slack-channel-triggers.md) - [Status-Change Triggers](https://docs.duvo.ai/user-guide/assignment-features/status-change-triggers.md) - [Assignment Builder](https://docs.duvo.ai/user-guide/building-assignments/assignment-builder.md): Use the Duvo Assignment Builder to create automations by describing tasks in plain English. Build from templates or start from scratch. - [Assignment SOP](https://docs.duvo.ai/user-guide/building-assignments/assignment-sop.md) - [From Process Discovery to Working Assignment](https://docs.duvo.ai/user-guide/building-assignments/clarity-to-assignment.md): Turn a Clarity process analysis into a working Duvo assignment. Learn the handoff steps, decisions to make at each stage, and follow a complete worked example from discovery to deployment. - [Duplicating Assignments](https://docs.duvo.ai/user-guide/building-assignments/duplicating-assignments.md) - [Getting Started](https://docs.duvo.ai/user-guide/building-assignments/how-to-build-an-assignment.md): Build your first Duvo assignment step by step. Describe your workflow, connect your tools, and let the Assignment Builder create it for you. - [Multi-Assignment Process Decomposition](https://docs.duvo.ai/user-guide/building-assignments/process-decomposition.md): Decide when to keep a business process in one Assignment or split it across several, and how to wire the hand-offs — with pipeline, fan-out, and escalation patterns and a worked example. - [Refining Your Assignment](https://docs.duvo.ai/user-guide/building-assignments/refining-your-assignment.md) - [Amplitude](https://docs.duvo.ai/user-guide/connections/available-connections/amplitude.md) - [Asana](https://docs.duvo.ai/user-guide/connections/available-connections/asana.md) - [Attio](https://docs.duvo.ai/user-guide/connections/available-connections/attio.md) - [BambooHR](https://docs.duvo.ai/user-guide/connections/available-connections/bamboohr.md) - [Google BigQuery](https://docs.duvo.ai/user-guide/connections/available-connections/bigquery.md) - [Browser](https://docs.duvo.ai/user-guide/connections/available-connections/browser.md) - [Computer Use](https://docs.duvo.ai/user-guide/connections/available-connections/computer-use.md) - [Confluence](https://docs.duvo.ai/user-guide/connections/available-connections/confluence.md) - [Coupa](https://docs.duvo.ai/user-guide/connections/available-connections/coupa.md) - [Custom MCP](https://docs.duvo.ai/user-guide/connections/available-connections/custom-mcp.md) - [Databricks](https://docs.duvo.ai/user-guide/connections/available-connections/databricks.md) - [Deep Research](https://docs.duvo.ai/user-guide/connections/available-connections/deep-research.md) - [Dynamics 365 Business Central](https://docs.duvo.ai/user-guide/connections/available-connections/dynamics-365-business-central.md) - [Email Attachments Reader](https://docs.duvo.ai/user-guide/connections/available-connections/email-attachments-reader.md) - [EU Food Commodity Prices](https://docs.duvo.ai/user-guide/connections/available-connections/eu-food-commodity-prices.md) - [Exa](https://docs.duvo.ai/user-guide/connections/available-connections/exa.md) - [Firecrawl](https://docs.duvo.ai/user-guide/connections/available-connections/firecrawl.md) - [Forecasting](https://docs.duvo.ai/user-guide/connections/available-connections/forecasting.md) - [GitHub](https://docs.duvo.ai/user-guide/connections/available-connections/github.md) - [Gmail](https://docs.duvo.ai/user-guide/connections/available-connections/gmail.md) - [Google Calendar](https://docs.duvo.ai/user-guide/connections/available-connections/google-calendar.md) - [Google Docs](https://docs.duvo.ai/user-guide/connections/available-connections/google-docs.md) - [Google Drive](https://docs.duvo.ai/user-guide/connections/available-connections/google-drive.md) - [Google Sheets](https://docs.duvo.ai/user-guide/connections/available-connections/google-sheets.md) - [Granola](https://docs.duvo.ai/user-guide/connections/available-connections/granola.md) - [HubSpot](https://docs.duvo.ai/user-guide/connections/available-connections/hubspot.md) - [Human in the Loop](https://docs.duvo.ai/user-guide/connections/available-connections/human-in-the-loop.md) - [Image Generation](https://docs.duvo.ai/user-guide/connections/available-connections/image-generation.md) - [Available Connections](https://docs.duvo.ai/user-guide/connections/available-connections/index.md) - [Intelligent Document Reader](https://docs.duvo.ai/user-guide/connections/available-connections/intelligent-document-reader.md) - [Intercom](https://docs.duvo.ai/user-guide/connections/available-connections/intercom.md) - [Linear](https://docs.duvo.ai/user-guide/connections/available-connections/linear.md) - [Microsoft Calendar](https://docs.duvo.ai/user-guide/connections/available-connections/microsoft-calendar.md) - [Microsoft Dynamics 365 Finance & Operations](https://docs.duvo.ai/user-guide/connections/available-connections/microsoft-dynamics-365.md) - [Microsoft Excel](https://docs.duvo.ai/user-guide/connections/available-connections/microsoft-excel.md) - [Microsoft Outlook](https://docs.duvo.ai/user-guide/connections/available-connections/microsoft-outlook.md) - [Microsoft SharePoint](https://docs.duvo.ai/user-guide/connections/available-connections/microsoft-sharepoint.md) - [Microsoft Teams](https://docs.duvo.ai/user-guide/connections/available-connections/microsoft-teams.md) - [Microsoft Word](https://docs.duvo.ai/user-guide/connections/available-connections/microsoft-word.md) - [NetSuite](https://docs.duvo.ai/user-guide/connections/available-connections/netsuite.md) - [Notion](https://docs.duvo.ai/user-guide/connections/available-connections/notion.md) - [Microsoft OneDrive](https://docs.duvo.ai/user-guide/connections/available-connections/onedrive.md) - [Outbound Calls](https://docs.duvo.ai/user-guide/connections/available-connections/outbound-calls.md) - [Pipedrive](https://docs.duvo.ai/user-guide/connections/available-connections/pipedrive.md) - [Microsoft Power BI](https://docs.duvo.ai/user-guide/connections/available-connections/power-bi.md) - [Salesforce](https://docs.duvo.ai/user-guide/connections/available-connections/salesforce.md) - [SAP S/4HANA](https://docs.duvo.ai/user-guide/connections/available-connections/sap-s4hana.md) - [Shopify](https://docs.duvo.ai/user-guide/connections/available-connections/shopify.md) - [SAP Signavio](https://docs.duvo.ai/user-guide/connections/available-connections/signavio.md) - [Slack](https://docs.duvo.ai/user-guide/connections/available-connections/slack.md) - [Slack Workspace](https://docs.duvo.ai/user-guide/connections/available-connections/slack-workspace.md) - [Snowflake](https://docs.duvo.ai/user-guide/connections/available-connections/snowflake.md) - [SSH Server](https://docs.duvo.ai/user-guide/connections/available-connections/ssh-server.md) - [Supabase](https://docs.duvo.ai/user-guide/connections/available-connections/supabase.md) - [Tableau](https://docs.duvo.ai/user-guide/connections/available-connections/tableau.md) - [Web Scraper](https://docs.duvo.ai/user-guide/connections/available-connections/web-scraper.md) - [Websets](https://docs.duvo.ai/user-guide/connections/available-connections/websets.md) - [Windows Remote Desktop](https://docs.duvo.ai/user-guide/connections/available-connections/windows-remote-desktop.md) - [Workday](https://docs.duvo.ai/user-guide/connections/available-connections/workday.md) - [Zendesk](https://docs.duvo.ai/user-guide/connections/available-connections/zendesk.md) - [Building Custom Connections](https://docs.duvo.ai/user-guide/connections/building-custom-connections.md) - [Computer Use](https://docs.duvo.ai/user-guide/connections/computer-use-overview.md) - [Connections Overview](https://docs.duvo.ai/user-guide/connections/connections-overview.md): Connect Duvo to Gmail, Slack, Google Sheets, Salesforce, and 40+ other tools. All connections are built on the Model Context Protocol (MCP). - [How to Add a Connection](https://docs.duvo.ai/user-guide/connections/how-to-add-connection.md) - [Choosing the Right Connection Pattern](https://docs.duvo.ai/user-guide/connections/integration-patterns.md) - [Calendar Summary](https://docs.duvo.ai/user-guide/examples/calendar-summary.md) - [Customer Response Emails](https://docs.duvo.ai/user-guide/examples/customer-response-emails.md) - [Expense Report Approval](https://docs.duvo.ai/user-guide/examples/expense-report-approval.md) - [Gmail Workflows](https://docs.duvo.ai/user-guide/examples/gmail-workflows.md) - [Google Sheets Workflows](https://docs.duvo.ai/user-guide/examples/google-sheets-workflows.md) - [Assignment Tutorials](https://docs.duvo.ai/user-guide/examples/index.md) - [Purchase Order Processing](https://docs.duvo.ai/user-guide/examples/purchase-order-processing.md) - [Reviewing Drafts Before Sending](https://docs.duvo.ai/user-guide/examples/reviewing-drafts-before-sending.md) - [Shopify Product Feed](https://docs.duvo.ai/user-guide/examples/shopify-product-feed.md) - [Slack Mention Workflows](https://docs.duvo.ai/user-guide/examples/slack-mention-workflows.md) - [Snowflake Workflows](https://docs.duvo.ai/user-guide/examples/snowflake-workflows.md) - [Weekly Sales Report](https://docs.duvo.ai/user-guide/examples/weekly-sales-report.md) - [Assignment Overview](https://docs.duvo.ai/user-guide/getting-started/assignment-overview.md): Learn what Duvo assignments are, what they can automate, and how they work across your business systems and tools. - [Promote to Production](https://docs.duvo.ai/user-guide/getting-started/promote-to-production.md) - [Quick Start](https://docs.duvo.ai/user-guide/getting-started/quick-start.md): Create and run your first Duvo assignment in minutes. Step-by-step guide covering setup, connections, testing, and scheduling. - [Test Safely Before Going Live](https://docs.duvo.ai/user-guide/getting-started/test-safely.md) - [Duvo Documentation](https://docs.duvo.ai/user-guide/index.md): Duvo is an AI-powered assignment platform that automates repetitive business tasks across your systems and tools. Learn how to build, run, and manage assignments. - [Organizations Overview](https://docs.duvo.ai/user-guide/organizations/organizations-overview.md) - [Organization Roles and Permissions](https://docs.duvo.ai/user-guide/organizations/roles-and-permissions.md) - [Complaint Triage](https://docs.duvo.ai/user-guide/playbooks/customer-facing/complaint-triage.md) - [OCR Document Validation](https://docs.duvo.ai/user-guide/playbooks/documents/ocr-document-validation.md) - [Email Order Intake](https://docs.duvo.ai/user-guide/playbooks/inbound-intake/email-order-intake.md) - [Playbooks](https://docs.duvo.ai/user-guide/playbooks/index.md) - [Retries, Failures, and Skipped Steps](https://docs.duvo.ai/user-guide/reliability/retries-and-failures.md) - [Changelog](https://docs.duvo.ai/user-guide/resources/changelog.md) - [Logins and Secrets](https://docs.duvo.ai/user-guide/resources/my-logins.md) - [Secret Management](https://docs.duvo.ai/user-guide/resources/secret-management.md) - [Security & Privacy](https://docs.duvo.ai/user-guide/resources/security-and-privacy.md) - [Creating Assignments via API](https://docs.duvo.ai/user-guide/running-assignments/creating-assignments-via-api.md) - [How to Run Your Assignment](https://docs.duvo.ai/user-guide/running-assignments/how-to-run-your-assignment.md): Run Duvo assignments manually or on a schedule. Monitor jobs in real time, review results, and interact with running assignments. - [Jobs List](https://docs.duvo.ai/user-guide/running-assignments/jobs-list.md) - [Live Execution View](https://docs.duvo.ai/user-guide/running-assignments/live-view.md): Watch an Assignment work in real time across browser and Windows desktop sessions — catch issues as they happen, audit decisions, and take control to guide it through edge cases. - [Running Assignments via API](https://docs.duvo.ai/user-guide/running-assignments/running-assignments-via-api.md) - [Uploading Files to Jobs](https://docs.duvo.ai/user-guide/running-assignments/uploading-files.md) - [Audit Log and Activity Tracking](https://docs.duvo.ai/user-guide/security/audit-log.md) - [Guardrails for High-Risk Automations](https://docs.duvo.ai/user-guide/security/high-risk-guardrails.md) - [Auto-ordering](https://docs.duvo.ai/user-guide/skills/available-skills/auto-ordering.md) - [Competitor Intelligence](https://docs.duvo.ai/user-guide/skills/available-skills/competitor-intelligence.md) - [Document](https://docs.duvo.ai/user-guide/skills/available-skills/document.md) - [Google Sheets](https://docs.duvo.ai/user-guide/skills/available-skills/google-sheets.md) - [Available Skills](https://docs.duvo.ai/user-guide/skills/available-skills/index.md) - [Input Cost Monitor](https://docs.duvo.ai/user-guide/skills/available-skills/input-cost-monitor.md) - [Inventory Optimization](https://docs.duvo.ai/user-guide/skills/available-skills/inventory-optimization.md) - [Novelty Detector](https://docs.duvo.ai/user-guide/skills/available-skills/novelty-detector.md) - [PDF](https://docs.duvo.ai/user-guide/skills/available-skills/pdf.md) - [Power BI](https://docs.duvo.ai/user-guide/skills/available-skills/power-bi.md) - [Presentation](https://docs.duvo.ai/user-guide/skills/available-skills/presentation.md) - [Regulatory & Label Compliance Checker](https://docs.duvo.ai/user-guide/skills/available-skills/regulatory-compliance.md) - [Should Cost Grocery](https://docs.duvo.ai/user-guide/skills/available-skills/should-cost-grocery.md) - [Supplier Discovery](https://docs.duvo.ai/user-guide/skills/available-skills/supplier-discovery.md) - [Creating Custom Skills](https://docs.duvo.ai/user-guide/skills/creating-custom-skills.md) - [Recording Browsing Skills](https://docs.duvo.ai/user-guide/skills/recording-browsing-skills.md) - [Skills Overview](https://docs.duvo.ai/user-guide/skills/skills-overview.md): Extend Duvo assignments with reusable skills for PDFs, documents, presentations, spreadsheets, and more. Attach skills to add specialized capabilities. - [Solutions Catalog](https://docs.duvo.ai/user-guide/solutions/solutions-overview.md) - [Roles and Permissions](https://docs.duvo.ai/user-guide/teams/roles-and-permissions.md) - [Teams Overview](https://docs.duvo.ai/user-guide/teams/teams-overview.md) ## OpenAPI Specs - [openapi](https://docs.duvo.ai/api-reference/openapi.json)