API version 2026-10-10, 460 operations. This page is generated from the OpenAPI 3.1 document the API serves, so it lists every operation. Read the document itself, with every request and response schema, from GET /v1/openapi.json or with overlane api openapi --full --json; the SDK reference shows the typed method for each operation. Send Authorization: Bearer <token>, and pin a version with the Overlane-Version header (see API versions). Every tenant path carries the team ID.
Each endpoint is one operation. A few public endpoints are not operations of the document: see Endpoints outside the SDK.
Access is the token scope the call needs: Read, Write, or No token for a public route. A call marked “a person” is refused for an agent token.
Try it
This sample runs in the docs tests against the real contracts:
const body = CreateProjectRequest.parse({ repository: { host: "github.com", owner: "acme", name: "app" }, name: "App" });
assert.equal(apiPaths.project("t1", "p1"), "/v1/tenants/t1/projects/p1");
assert.equal(body.repository.owner, "acme");Agent
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/agent/approvals/{approvalId} |
Read an agent approval card | Read, a person | agentApprovalGet |
GET /v1/tenants/{tenantId}/agent/audit |
The Overlane Agent’s audit trail | Write, a person | agentAudit |
GET /v1/tenants/{tenantId}/agent/config |
The Overlane Agent’s configuration for the team | Read, a person | agentConfig |
GET /v1/tenants/{tenantId}/agent/conversations/{conversationId} |
Read an agent conversation | Read, a person | agentConversation |
POST /v1/tenants/{tenantId}/agent/approvals/{approvalId}/decide |
Approve or deny an agent action | Write, a person | agentApprovalDecide |
POST /v1/tenants/{tenantId}/agent/approvals/{approvalId}/undo |
Undo an approved agent action | Write, a person | agentApprovalUndo |
POST /v1/tenants/{tenantId}/agent/chat |
Send the Overlane Agent a message | Read, a person | agentChat |
POST /v1/tenants/{tenantId}/agent/feedback |
Rate an agent answer | Read, a person | agentFeedback |
PUT /v1/tenants/{tenantId}/agent/readonly |
Turn the Overlane Agent’s read-only mode on or off | Write, a person | agentReadonly |
API keys
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/api-keys/{apiKeyId} |
Revoke an API key; the next call with it fails (secrets class) | Write | apikeysRevoke |
GET /v1/tenants/{tenantId}/api-keys |
List the team’s API keys; a key shows its prefix, never the secret | Write | apikeysList |
POST /v1/tenants/{tenantId}/api-keys |
Create an API key; the secret is shown once (secrets class) | Write | apikeysCreate |
POST /v1/tenants/{tenantId}/api-keys/{apiKeyId}/rotate |
Rotate an API key: a new key with the same settings, the old one revoked (secrets class) | Write | apikeysRotate |
Approvals
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/projects/{projectId}/approvals |
List a project’s task approvals | Read | approvalsList |
GET /v1/tenants/{tenantId}/projects/{projectId}/approvals/{approvalId} |
Read one task approval | Read | approvalsGet |
POST /v1/tenants/{tenantId}/projects/{projectId}/approvals/{approvalId}/answer |
Answer a task approval | Write | approvalsAnswer |
Audit
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/audit |
The team’s audit log | Write | auditList |
GET /v1/tenants/{tenantId}/audit/export |
Export the audit log | Write | auditExport |
GET /v1/tenants/{tenantId}/audit/verify |
Verify the audit log’s hash chain | Write | auditVerify |
Auth
| Operation | Summary | Access | SDK method |
|---|---|---|---|
POST /v1/auth/logout |
End the CLI session that makes the call | Read | authLogout |
POST /v1/auth/switch |
Act in another team you belong to (a person does this) | Read, a person | authSwitch |
Autonomy
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/autonomy |
The team’s autonomy mode, its overrides and what each action class asks for | Read | autonomyGet |
GET /v1/tenants/{tenantId}/autonomy/approvals |
Approvals, with who asked, who answered, the evidence and the reason | Read | autonomyApprovalsList |
GET /v1/tenants/{tenantId}/autonomy/approvals/{approvalId} |
Read one approval | Read | autonomyApprovalsGet |
POST /v1/tenants/{tenantId}/autonomy/approvals |
Ask an independent agent or a person to approve an action in an action class | Write | autonomyApprovalsCreate |
POST /v1/tenants/{tenantId}/autonomy/approvals/{approvalId}/answer |
Approve or deny; an agent lists the evidence it checked and why, and cannot answer its own request | Write | autonomyApprovalsAnswer |
PUT /v1/tenants/{tenantId}/autonomy |
Change the autonomy mode (a safety class: an agent needs an independent approval) | Write | autonomyPut |
Billing
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/billing/caps |
Remove a spending cap | Write, a person | billingCapsDelete |
GET /v1/tenants/{tenantId}/billing |
Plan, seats and billing state | Read | billingStatus |
GET /v1/tenants/{tenantId}/billing/caps |
Spending caps | Read | billingCapsGet |
GET /v1/tenants/{tenantId}/billing/invoices |
Invoices | Read | billingInvoices |
GET /v1/tenants/{tenantId}/billing/limits |
Plan limits and what is left | Read | billingLimits |
GET /v1/tenants/{tenantId}/billing/pool |
What is left of the pooled allowance and each member’s fair share of it | Read | billingPool |
GET /v1/tenants/{tenantId}/billing/usage |
Metered usage | Read | billingUsageGet |
GET /v1/tenants/{tenantId}/projects/{projectId}/billing/usage |
What one project used this period, per meter, for a token limited to that project | Read | billingProjectUsage |
POST /v1/tenants/{tenantId}/billing/cancel |
Cancel the subscription (a person does this: payments are human only) | Write, a person | billingCancel |
POST /v1/tenants/{tenantId}/billing/checkout |
Start a checkout (a person does this: payments are human only) | Write, a person | billingCheckout |
POST /v1/tenants/{tenantId}/billing/plan |
Change plan (a person does this: payments are human only) | Write, a person | billingPlan |
POST /v1/tenants/{tenantId}/billing/portal |
Open the billing portal (a person does this: payments are human only) | Write, a person | billingPortal |
POST /v1/tenants/{tenantId}/billing/seats |
Change seats (a person does this: payments are human only) | Write, a person | billingSeats |
POST /v1/tenants/{tenantId}/billing/usage |
Record metered usage | Write | billingUsageRecord |
POST /v1/tenants/{tenantId}/billing/usage/decision |
Whether metered use may go ahead | Read | billingUsageDecision |
PUT /v1/tenants/{tenantId}/billing/caps |
Set a spending cap (spend class) | Write, a person | billingCapsPut |
Bots
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/bots/{botId} |
Revoke a bot | Write | botsRevoke |
GET /v1/tenants/{tenantId}/bots |
List registered bots | Read | botsList |
POST /v1/tenants/{tenantId}/bots |
Register a bot; the signing secret is shown once | Write | botsCreate |
POST /v1/tenants/{tenantId}/bots/{botId}/redeliver |
Send a bot’s pending events again, in order | Write | botsRedeliver |
POST /v1/tenants/{tenantId}/bots/{botId}/rotate-key |
Rotate a bot’s signing secret; shown once | Write | botsRotate |
POST /v1/tenants/{tenantId}/bots/{botId}/users |
Link a bot’s user to a team member, so the project assistant answers them with that member’s role (policy class) | Write | botsUsersMap |
Budgets
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/budgets |
Remove a budget limit | Write | budgetsDelete |
GET /v1/tenants/{tenantId}/budgets |
The team’s run budgets and what is spent | Read | budgetsGet |
GET /v1/tenants/{tenantId}/budgets/stops |
Stop records written when a budget refused a call | Read | budgetsStops |
POST /v1/tenants/{tenantId}/budgets/check |
Ask whether a spend may go ahead; a refusal stores a stop record | Write | budgetsCheck |
POST /v1/tenants/{tenantId}/budgets/spend |
Record spend against the budgets | Write | budgetsSpend |
PUT /v1/tenants/{tenantId}/budgets |
Set a budget limit (spend class when it raises a limit) | Write | budgetsPut |
CI
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/projects/{projectId}/ci/secrets/{secretId} |
Delete a CI secret (secrets class) | Write | ciSecretsDelete |
GET /v1/tenants/{tenantId}/projects/{projectId}/ci/channels |
Release channels: the build each channel runs, holds, the schedule setting and recent promotions | Read | ciChannelsGet |
GET /v1/tenants/{tenantId}/projects/{projectId}/ci/checks |
The project’s check registry | Read | ciChecksList |
GET /v1/tenants/{tenantId}/projects/{projectId}/ci/checks/{checkId} |
One registered check and its definition digest | Read | ciChecksGet |
GET /v1/tenants/{tenantId}/projects/{projectId}/ci/runs |
List CI runs | Read | ciRunsList |
GET /v1/tenants/{tenantId}/projects/{projectId}/ci/runs/{runId} |
Read one CI run | Read | ciRunGet |
GET /v1/tenants/{tenantId}/projects/{projectId}/ci/runs/{runId}/logs |
A CI run’s logs, with secrets masked | Read | ciRunLogs |
GET /v1/tenants/{tenantId}/projects/{projectId}/ci/runs/{runId}/receipts |
A CI run’s check receipts: commit, source fingerprint, definition digest, outcome, and whether the service signed it | Read | ciRunReceipts |
GET /v1/tenants/{tenantId}/projects/{projectId}/ci/schedules |
List a project’s scheduled pipelines with the next time each runs | Read | ciSchedulesList |
GET /v1/tenants/{tenantId}/projects/{projectId}/ci/secrets |
List a project’s CI secrets by name, never their values | Read | ciSecretsList |
GET /v1/tenants/{tenantId}/projects/{projectId}/ci/settings |
Read a project’s CI settings | Read | ciSettingsGet |
GET /v1/tenants/{tenantId}/projects/{projectId}/ci/usage |
CI minutes used this period | Read | ciUsage |
POST /v1/tenants/{tenantId}/projects/{projectId}/ci/channels/{channel}/hold |
Hold a channel: no build is promoted into it until the hold is released | Write | ciChannelsHold |
POST /v1/tenants/{tenantId}/projects/{projectId}/ci/channels/{channel}/promote |
Promote the newest build that passes the channel’s gates now; refused with the failed gates | Write | ciChannelsPromote |
POST /v1/tenants/{tenantId}/projects/{projectId}/ci/channels/{channel}/release-hold |
Release a channel’s hold | Write | ciChannelsReleaseHold |
POST /v1/tenants/{tenantId}/projects/{projectId}/ci/channels/{channel}/rollback |
Put the build a channel ran before back on it and hold the channel | Write | ciChannelsRollback |
POST /v1/tenants/{tenantId}/projects/{projectId}/ci/release |
Start a release now: bring in the latest main, then verify and deploy what changed since the last release | Write | ciReleaseStart |
POST /v1/tenants/{tenantId}/projects/{projectId}/ci/runs |
Start a CI run | Write | ciRunsStart |
POST /v1/tenants/{tenantId}/projects/{projectId}/ci/runs/{runId}/cancel |
Cancel a CI run | Write | ciRunCancel |
POST /v1/tenants/{tenantId}/projects/{projectId}/ci/runs/{runId}/rerun |
Run a CI run again | Write | ciRunRerun |
POST /v1/tenants/{tenantId}/projects/{projectId}/ci/validate |
Validate a workflow file | Read | ciValidate |
PUT /v1/tenants/{tenantId}/projects/{projectId}/ci/channels/preset |
Apply a channel preset to the project: set each channel’s name, image tag, deploy environment and data choice | Write | ciChannelsPresetPut |
PUT /v1/tenants/{tenantId}/projects/{projectId}/ci/channels/settings |
Switch scheduled channel promotions on or off; while off, the schedule records what it would promote and changes nothing | Write | ciChannelsSettingsPut |
PUT /v1/tenants/{tenantId}/projects/{projectId}/ci/checks/{checkId} |
Register or replace a check definition (policy class); evidence under an older definition stops counting | Write | ciChecksPut |
PUT /v1/tenants/{tenantId}/projects/{projectId}/ci/secrets |
Set a CI secret (secrets class) | Write | ciSecretsPut |
PUT /v1/tenants/{tenantId}/projects/{projectId}/ci/settings |
Change a project’s CI settings (spend class) | Write | ciSettingsPut |
Claims
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/projects/{projectId}/claims |
List claims on paths in a project | Read | claimsList |
GET /v1/tenants/{tenantId}/projects/{projectId}/claims/merge-checks |
List recorded merge-tree checks between branches | Read | claimsChecksList |
GET /v1/tenants/{tenantId}/projects/{projectId}/claims/merge-checks/pending |
Branch pairs that still need a merge-tree check | Read | claimsChecksPending |
GET /v1/tenants/{tenantId}/projects/{projectId}/claims/settings |
Read a project’s claim settings | Read | claimsSettingsGet |
GET /v1/tenants/{tenantId}/projects/{projectId}/claims/{claimId} |
Read one claim | Read | claimsGet |
GET /v1/tenants/{tenantId}/projects/{projectId}/claims/{claimId}/readiness |
Whether a claim’s branch is ready to merge | Read | claimsReadiness |
POST /v1/tenants/{tenantId}/projects/{projectId}/claims |
Claim paths for a task so parallel agents do not collide | Write | claimsAcquire |
POST /v1/tenants/{tenantId}/projects/{projectId}/claims/merge-checks |
Record a merge-tree check between two branches | Write | claimsChecksRecord |
POST /v1/tenants/{tenantId}/projects/{projectId}/claims/merge-checks/run |
Run a merge-tree check between two branches | Write | claimsChecksRun |
POST /v1/tenants/{tenantId}/projects/{projectId}/claims/{claimId}/release |
Release a claim | Write | claimsRelease |
POST /v1/tenants/{tenantId}/projects/{projectId}/claims/{claimId}/renew |
Renew a claim before it lapses | Write | claimsRenew |
PUT /v1/tenants/{tenantId}/projects/{projectId}/claims/settings |
Change a project’s claim settings | Write | claimsSettingsPut |
Code
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/projects/{projectId}/snapshots |
Upload and manage code index snapshots by project | Write | codeProjectUploadDelete |
DELETE /v1/tenants/{tenantId}/repos/{owner}/{repo}/snapshots |
Upload and manage code index snapshots by repository | Write | codeUploadDelete |
GET /v1/tenants/{tenantId}/code/links |
Whether code lookups follow links into the team’s other repositories (on by default) | Read | codeLinksGet |
GET /v1/tenants/{tenantId}/projects/{projectId}/code/{tool} |
Query the code index by project | Read | codeProjectQueryGet |
GET /v1/tenants/{tenantId}/repos/{owner}/{repo}/code/{tool} |
Query the code index by repository (find_symbol, trace_calls and the other tools) | Read | codeQueryGet |
PATCH /v1/tenants/{tenantId}/projects/{projectId}/snapshots |
Upload and manage code index snapshots by project | Write | codeProjectUploadPatch |
PATCH /v1/tenants/{tenantId}/repos/{owner}/{repo}/snapshots |
Upload and manage code index snapshots by repository | Write | codeUploadPatch |
POST /v1/tenants/{tenantId}/projects/{projectId}/code/{tool} |
Query the code index by project | Read | codeProjectQueryPost |
POST /v1/tenants/{tenantId}/projects/{projectId}/snapshots |
Upload and manage code index snapshots by project | Write | codeProjectUploadPost |
POST /v1/tenants/{tenantId}/repos/{owner}/{repo}/code/{tool} |
Query the code index by repository (find_symbol, trace_calls and the other tools) | Read | codeQueryPost |
POST /v1/tenants/{tenantId}/repos/{owner}/{repo}/snapshots |
Upload and manage code index snapshots by repository | Write | codeUploadPost |
PUT /v1/tenants/{tenantId}/code/links |
Turn links between the team’s repositories on or off for code lookups; a caller sees linked code only from repositories it can read | Write | codeLinksPut |
PUT /v1/tenants/{tenantId}/projects/{projectId}/snapshots |
Upload and manage code index snapshots by project | Write | codeProjectUploadPut |
PUT /v1/tenants/{tenantId}/repos/{owner}/{repo}/snapshots |
Upload and manage code index snapshots by repository | Write | codeUploadPut |
Code map
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/projects/{projectId}/code-map/status |
Code map status for a project | Read | codemapStatus |
Connectors
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/connectors/connections/{connectionId} |
Revoke a connection and delete its stored secret (secrets class) | Write | connectorsRevoke |
DELETE /v1/tenants/{tenantId}/connectors/mcp/servers/{serverId} |
Remove a passthrough MCP server (policy class) | Write | connectorsMcpRemove |
GET /v1/tenants/{tenantId}/connectors |
The connectors Overlane offers, each with its auth, scopes, typed actions and events | Read | connectorsList |
GET /v1/tenants/{tenantId}/connectors/connections |
The team’s connections; a connection shows its vault entry, never the secret | Read | connectorsConnectionsList |
GET /v1/tenants/{tenantId}/connectors/mcp/servers |
The team’s allowlisted passthrough MCP servers | Read | connectorsMcpList |
GET /v1/tenants/{tenantId}/connectors/{connectorId} |
One connector’s declaration | Read | connectorsShow |
GET /v1/tenants/{tenantId}/connectors/{provider}/events |
Verified inbound events from a connector, each labelled as data | Read | connectorsEvents |
POST /v1/tenants/{tenantId}/connectors/connections |
Store a connector credential in the tenant vault (secrets class) | Write | connectorsConnect |
POST /v1/tenants/{tenantId}/connectors/mcp/servers |
Allow a passthrough MCP server (https, public DNS name; policy class) | Write | connectorsMcpAdd |
POST /v1/tenants/{tenantId}/connectors/{provider}/actions/{action} |
Run a connector action; a write or destructive action follows the autonomy class it declares | Write | connectorsAction |
POST /v1/tenants/{tenantId}/connectors/{provider}/approvals |
Post an approval request to a chat connector’s channel | Write | connectorsApprovalsRequest |
POST /v1/tenants/{tenantId}/connectors/{provider}/chat-users |
Map a chat user to a team member who may answer approvals there (policy class) | Write | connectorsChatUsersMap |
POST /v1/tenants/{tenantId}/connectors/{provider}/chat-users/link |
Link the signed-in member to a chat account with the code the assistant showed there | Write, a person | connectorsChatUsersLink |
POST /v1/tenants/{tenantId}/connectors/{provider}/oauth/start |
Start connecting a provider by signing in with it; the answer is the URL to open (secrets class) | Write | connectorsOauthStart |
Cycles
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/projects/{projectId}/cycles/{cycleId} |
Delete a cycle: it is archived and can be restored for 30 days, then removed; refused while issues use it | Write | cyclesDelete |
GET /v1/tenants/{tenantId}/projects/{projectId}/cycles |
List cycles; archived=true lists the archived ones that can still be restored | Read | cyclesList |
PATCH /v1/tenants/{tenantId}/projects/{projectId}/cycles/{cycleId} |
Rename a cycle or move its dates | Write | cyclesUpdate |
POST /v1/tenants/{tenantId}/projects/{projectId}/cycles |
Create a cycle | Write | cyclesCreate |
POST /v1/tenants/{tenantId}/projects/{projectId}/cycles/{cycleId}/archive |
Archive a cycle; refused while issues use it | Write | cyclesArchive |
POST /v1/tenants/{tenantId}/projects/{projectId}/cycles/{cycleId}/restore |
Restore an archived cycle within 30 days | Write | cyclesRestore |
Decision
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/decision/settings |
Decision model settings | Read | decisionSettingsGet |
PUT /v1/tenants/{tenantId}/decision/settings/{use} |
Change a decision model use | Write | decisionSettingsPut |
Deploy
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/projects/{projectId}/deploy/environments/{environmentId}/secrets/{name} |
Delete an environment secret (secrets class) | Write | deployEnvironmentsSecretDelete |
DELETE /v1/tenants/{tenantId}/projects/{projectId}/deploy/targets/{target} |
Remove a deploy target and its stored token (deletion class). Refused with target_in_use while an environment deploys to it | Write | deployTargetsDelete |
GET /v1/tenants/{tenantId}/projects/{projectId}/deploy/environments |
List deploy environments | Read | deployEnvironmentsList |
GET /v1/tenants/{tenantId}/projects/{projectId}/deploy/providers |
List the deploy services this project can use, whether each is available, and prices for hosting on Overlane | Read | deployProvidersList |
GET /v1/tenants/{tenantId}/projects/{projectId}/deploy/releases |
List deploys | Read | deployReleasesList |
GET /v1/tenants/{tenantId}/projects/{projectId}/deploy/targets |
List deploy targets | Read | deployTargetsList |
PATCH /v1/tenants/{tenantId}/projects/{projectId}/deploy/targets/{target} |
Rename a deploy target, change its settings or replace its provider token (secrets class). The kind never changes; the token is write-only | Write | deployTargetsUpdate |
POST /v1/tenants/{tenantId}/projects/{projectId}/deploy/environments |
Create a deploy environment (policy class) | Write | deployEnvironmentsCreate |
POST /v1/tenants/{tenantId}/projects/{projectId}/deploy/environments/{environmentId}/rollback |
Roll an environment back to its previous release | Write | deployEnvironmentsRollback |
POST /v1/tenants/{tenantId}/projects/{projectId}/deploy/previews |
Deploy a branch preview | Write | deployPreviewsCreate |
POST /v1/tenants/{tenantId}/projects/{projectId}/deploy/releases |
Deploy a built artifact to an environment | Write | deployReleasesCreate |
POST /v1/tenants/{tenantId}/projects/{projectId}/deploy/targets |
Add a deploy target (secrets class). The provider token is write-only; a target hosted on Overlane takes none | Write | deployTargetsCreate |
PUT /v1/tenants/{tenantId}/projects/{projectId}/deploy/environments/{environmentId}/secrets |
Set an environment secret (secrets class) | Write | deployEnvironmentsSecret |
Docs
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/docs/libraries |
Library versions the team has indexed, with their age | Read | docsLibraries |
GET /v1/tenants/{tenantId}/docs/usage |
This month’s library docs calls against the team allowance | Read | docsUsage |
GET /v1/tenants/{tenantId}/projects/{projectId}/docs/dependencies |
The project’s pinned libraries: indexed, stale, private and missing | Read | docsDependencies |
POST /v1/tenants/{tenantId}/docs/index |
Fetch and index a library’s official docs, or refresh an existing index | Write | docsIndex |
POST /v1/tenants/{tenantId}/docs/private |
Index the team’s own docs as a private library | Write | docsPrivate |
POST /v1/tenants/{tenantId}/docs/query |
Look up library docs at the pinned version; fetches and indexes the library on first use | Read | docsQuery |
PUT /v1/tenants/{tenantId}/projects/{projectId}/docs/pins |
Read version pins from the project’s lockfiles (npm, pnpm, yarn, pip, uv, cargo, go) | Write | docsPins |
Egress
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/projects/{projectId}/egress/events |
Egress decisions recorded for the project | Read | egressEvents |
GET /v1/tenants/{tenantId}/projects/{projectId}/egress/grants |
List per-task credential grants | Read | egressGrantsList |
GET /v1/tenants/{tenantId}/projects/{projectId}/egress/grants/{grantId} |
Read one credential grant | Read | egressGrantsGet |
GET /v1/tenants/{tenantId}/projects/{projectId}/egress/policy |
Read the egress allowlist policy | Read | egressPolicyGet |
POST /v1/tenants/{tenantId}/projects/{projectId}/egress/evaluate |
Ask whether a host may be reached; the answer is recorded | Write | egressEvaluate |
POST /v1/tenants/{tenantId}/projects/{projectId}/egress/grants |
Grant a task one secret for one host | Write | egressGrantsCreate |
POST /v1/tenants/{tenantId}/projects/{projectId}/egress/grants/{grantId}/revoke |
Revoke a credential grant | Write | egressGrantsRevoke |
POST /v1/tenants/{tenantId}/projects/{projectId}/egress/leak-scan |
Scan files for credentials before they leave | Write | egressLeakscan |
PUT /v1/tenants/{tenantId}/projects/{projectId}/egress/policy |
Change the egress allowlist policy | Write | egressPolicyPut |
Enterprise
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/enterprise/audit-streams/{auditStreamId} |
Remove a SIEM stream target | Write | enterpriseStreamsDelete |
DELETE /v1/tenants/{tenantId}/enterprise/byok/keys/{keyId} |
Revoke a key and delete its stored value (secrets class) | Write | enterpriseByokRevoke |
GET /v1/tenants/{tenantId}/enterprise/audit-streams |
SIEM stream targets | Write | enterpriseStreamsList |
GET /v1/tenants/{tenantId}/enterprise/byok/keys |
Inference keys by alias and status; a value is never returned | Write | enterpriseByokList |
GET /v1/tenants/{tenantId}/enterprise/entitlements |
Which enterprise features the team’s plan includes | Read | enterpriseEntitlements |
GET /v1/tenants/{tenantId}/enterprise/evidence-pack |
The security review evidence pack: chain state, agent action counts and controls | Write | enterpriseEvidencePack |
GET /v1/tenants/{tenantId}/enterprise/identity |
Single sign-on and directory sync status | Write | enterpriseIdentityGet |
GET /v1/tenants/{tenantId}/enterprise/identity/group-mappings |
Identity provider groups mapped to roles, and the cap | Write | enterpriseIdentityMappingsGet |
GET /v1/tenants/{tenantId}/enterprise/mcp-allowlist |
The MCP server allowlist for the team’s agents | Write | enterpriseMcpAllowlistGet |
GET /v1/tenants/{tenantId}/enterprise/residency |
The pinned data region and the supported regions | Write | enterpriseResidencyGet |
GET /v1/tenants/{tenantId}/enterprise/residency/stores |
Where each store holds the team’s data | Write | enterpriseResidencyStores |
GET /v1/tenants/{tenantId}/enterprise/retention |
Retention rules per data class | Write | enterpriseRetentionGet |
GET /v1/tenants/{tenantId}/enterprise/retention/reports |
Purge reports, newest first | Write | enterpriseRetentionReports |
POST /v1/tenants/{tenantId}/enterprise/audit-exports |
Export the tamper-evident audit log as CSV with a manifest; the export is itself audited | Write | enterpriseAuditExportsCreate |
POST /v1/tenants/{tenantId}/enterprise/audit-streams |
Add a SIEM stream target; the signing secret is write-only (secrets class) | Write | enterpriseStreamsCreate |
POST /v1/tenants/{tenantId}/enterprise/audit-streams/{auditStreamId}/run |
Send the rows after the target’s cursor now | Write | enterpriseStreamsRun |
POST /v1/tenants/{tenantId}/enterprise/backups/drill |
Snapshot, restore into a scratch target and compare record counts | Write | enterpriseBackupsDrill |
POST /v1/tenants/{tenantId}/enterprise/byok/keys |
Add an inference key; the value is write-only (secrets class) | Write | enterpriseByokCreate |
POST /v1/tenants/{tenantId}/enterprise/byok/keys/{keyId}/rotate |
Replace a key’s value under the same alias (secrets class) | Write | enterpriseByokRotate |
POST /v1/tenants/{tenantId}/enterprise/byok/keys/{keyId}/test |
Test a key against its provider | Write | enterpriseByokTest |
POST /v1/tenants/{tenantId}/enterprise/data/delete |
Delete the team’s, a project’s or a user’s data from every store (deletion class, every plan) | Write | enterpriseDataDelete |
POST /v1/tenants/{tenantId}/enterprise/data/export |
Export the team’s, a project’s or a user’s data as NDJSON (every plan) | Write | enterpriseDataExport |
POST /v1/tenants/{tenantId}/enterprise/identity/portal-link |
A short-lived link to the identity provider’s hosted setup portal | Write | enterpriseIdentityPortalLink |
POST /v1/tenants/{tenantId}/enterprise/identity/sync |
Sync the directory now: apply group roles and deprovision removed people | Write | enterpriseIdentitySync |
POST /v1/tenants/{tenantId}/enterprise/identity/test |
Test the single sign-on or directory connection | Write | enterpriseIdentityTest |
POST /v1/tenants/{tenantId}/enterprise/residency/migrations |
Move a pinned team to another region as an audited migration (policy class) | Write | enterpriseResidencyMigrate |
POST /v1/tenants/{tenantId}/enterprise/retention/purge |
Run the retention purge now and return the report (deletion class) | Write | enterpriseRetentionPurge |
PUT /v1/tenants/{tenantId}/enterprise/identity/group-mappings |
Replace the group to role mappings; a role above the cap is refused (policy class) | Write | enterpriseIdentityMappingsPut |
PUT /v1/tenants/{tenantId}/enterprise/mcp-allowlist |
Set the MCP server allowlist (policy class) | Write | enterpriseMcpAllowlistPut |
PUT /v1/tenants/{tenantId}/enterprise/residency |
Pin the team to a region; a region the stores cannot hold is refused with the supported list | Write | enterpriseResidencyPut |
PUT /v1/tenants/{tenantId}/enterprise/retention |
Replace the retention rules (policy class) | Write | enterpriseRetentionPut |
Events
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/projects/{projectId}/events |
A project’s domain events | Read | eventsList |
GET /v1/tenants/{tenantId}/projects/{projectId}/events/stream |
A project’s domain events as a server-sent event stream: replays from since (or the Last-Event-ID header) in sequence order, then streams live with a heartbeat; the stream ends after a few minutes and the reader reconnects with its last id | Read | eventsStream |
Features
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/features/{featureId}/override |
Remove the workspace’s switch for a feature | Write | featuresOverrideDelete |
GET /v1/tenants/{tenantId}/features |
List features and whether each is on for the workspace | Read | featuresList |
PUT /v1/tenants/{tenantId}/features/{featureId}/override |
Switch a feature on or off for the workspace | Write | featuresOverridePut |
Git
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId} |
Delete a repository (deletion class) | Write | gitRepoDelete |
DELETE /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/access/{repo} |
Clear a member’s repository role so the team role applies again | Write | gitAccessClear |
DELETE /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/branches/{repo} |
Delete a branch | Write | gitBranchesDelete |
DELETE /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/tokens/{repo} |
Revoke a git token | Write | gitTokensRevoke |
GET /v1/tenants/{tenantId}/projects/{projectId}/repos |
List a project’s native repositories | Read | gitReposList |
GET /v1/tenants/{tenantId}/projects/{projectId}/repos/capability |
What the native git host offers on this deployment | Read | gitReposCapability |
GET /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId} |
Read one repository | Read | gitRepoGet |
GET /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/access |
List the members whose access is narrowed on a repository | Read | gitAccessList |
GET /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/branches |
List a repository’s branches | Read | gitBranchesList |
GET /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/commits/{repo}/diff |
Read a commit’s full diff against its first parent | Read | gitCommitDiff |
GET /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/compare |
Read the full diff between two refs (base…head) | Read | gitCompare |
GET /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/diff/file |
Read one file’s diff in full, including a large file the listing did not show | Read | gitDiffFile |
GET /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/events |
A repository’s git events | Read | gitEventsList |
GET /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/index |
Index status for a repository | Read | gitRepoIndexGet |
GET /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/protection |
Read a repository’s branch protection | Read | gitProtectionGet |
GET /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/pulls |
List pull requests | Read | gitPullsList |
GET /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/pulls/{repo} |
Read one pull request | Read | gitPullGet |
GET /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/pulls/{repo}/files |
Read a pull request’s full diff | Read | gitPullFiles |
GET /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/tokens |
List a repository’s git tokens (never the secrets) | Read | gitTokensList |
POST /v1/tenants/{tenantId}/projects/{projectId}/repos |
Create a native repository | Write | gitReposCreate |
POST /v1/tenants/{tenantId}/projects/{projectId}/repos/import |
Import a repository from another host into a native one | Write | gitReposImport |
POST /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/branches |
Create a branch | Write | gitBranchesCreate |
POST /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/index |
Queue an index run for a repository | Write | gitRepoIndexRun |
POST /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/pulls |
Open a pull request | Write | gitPullsOpen |
POST /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/pulls/{repo}/close |
Close a pull request | Write | gitPullClose |
POST /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/pulls/{repo}/merge |
Merge a pull request | Write | gitPullMerge |
POST /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/pulls/{repo}/reviews |
Review a pull request | Write | gitPullReview |
POST /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/push |
Push a commit to a branch through the API | Write | gitPush |
POST /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/push-check |
Check what a push would do without writing | Write | gitPushCheck |
POST /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/sync |
Sync a mirrored repository now | Write | gitRepoSync |
POST /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/tokens |
Mint a git token; the secret is shown once | Write | gitTokensMint |
PUT /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/access/{repo} |
Narrow one member’s role on a repository (never above their team role) | Write | gitAccessPut |
PUT /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/mirror |
Set the mirror direction and single writer for a repository (policy class) | Write | gitRepoMirror |
PUT /v1/tenants/{tenantId}/projects/{projectId}/repos/{repoId}/protection |
Set a repository’s branch protection (policy class) | Write | gitProtectionPut |
Github
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/github/installations |
GitHub App installations connected to the team, and requests waiting for an organization owner | Read | githubInstallations |
GET /v1/tenants/{tenantId}/github/installations/{installationId}/repositories |
Repositories a connected GitHub App installation reaches | Read | githubRepositories |
POST /v1/tenants/{tenantId}/github/install-link |
A one-time link to the GitHub App’s install page for the caller, which opens on any device and expires after 15 minutes | Write | githubInstallLink |
Guard
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/guard/approvals |
List guardrail approvals | Read | guardApprovalsList |
GET /v1/tenants/{tenantId}/guard/approvals/{approvalId} |
Read one guardrail approval | Read | guardApprovalsGet |
GET /v1/tenants/{tenantId}/guard/rules |
Read the guardrail rule layers | Read | guardRulesGet |
POST /v1/tenants/{tenantId}/guard/approvals/{approvalId}/answer |
Answer a guardrail approval | Write | guardApprovalsAnswer |
POST /v1/tenants/{tenantId}/guard/evaluate |
Evaluate an action against the rules | Write | guardEvaluate |
POST /v1/tenants/{tenantId}/guard/scan |
Scan text for secrets | Write | guardScan |
PUT /v1/tenants/{tenantId}/guard/rules |
Replace a guardrail rule layer | Write | guardRulesPut |
Imports
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/projects/{projectId}/imports |
Show the import of a project’s connected GitHub repository: one job per kind with its count, rate and estimate | Read | importsList |
POST /v1/tenants/{tenantId}/projects/{projectId}/imports |
Queue the import of a project’s connected GitHub repository, or queue it again; reading only, safe to repeat | Write | importsStart |
Inbox
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/me/inbox |
Your notification inbox, newest first, with the unread count | Read, a person | inboxList |
GET /v1/me/notification-preferences |
How you are told about each kind of event: in the app, by email or not at all | Read, a person | inboxPreferencesGet |
POST /v1/me/inbox/read-all |
Mark every item in your inbox read | Read, a person | inboxReadAll |
POST /v1/me/inbox/{inboxId}/read |
Mark one inbox item read | Read, a person | inboxRead |
POST /v1/me/inbox/{inboxId}/snooze |
Hide one inbox item until a time you give | Read, a person | inboxSnooze |
PUT /v1/me/notification-preferences |
Set how you are told about the kinds of event you name | Read, a person | inboxPreferencesPut |
Intent
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/projects/{projectId}/intent |
The project’s current intent revision | Read | intentGet |
GET /v1/tenants/{tenantId}/projects/{projectId}/intent/revisions |
List intent revisions with their status, newest first | Read | intentRevisionsList |
GET /v1/tenants/{tenantId}/projects/{projectId}/intent/revisions/{revision} |
Read one intent revision, its status and its impact | Read | intentRevisionGet |
POST /v1/tenants/{tenantId}/projects/{projectId}/intent/briefs/{taskId} |
Compile a task’s content-addressed agent brief from a context manifest | Read | intentBrief |
POST /v1/tenants/{tenantId}/projects/{projectId}/intent/revisions |
Propose an immutable intent revision against the current one | Write | intentRevisionsPropose |
POST /v1/tenants/{tenantId}/projects/{projectId}/intent/revisions/{revision}/decision |
Accept (make current and apply to the affected tasks) or reject an intent revision | Write | intentRevisionDecide |
Invitations
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/invitations/{invitationId} |
Revoke an invitation | Write | invitationsRevoke |
GET /v1/tenants/{tenantId}/invitations |
List open invitations | Write | invitationsList |
POST /v1/invitations/accept |
Accept a team invitation (a person does this) | Read, a person | invitationsAccept |
POST /v1/tenants/{tenantId}/invitations |
Invite someone to the team (policy class) | Write | invitationsCreate |
Issues
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/projects/{projectId}/issues |
List a project’s issues; archived=true lists the archived ones that can still be restored | Read | issuesList |
GET /v1/tenants/{tenantId}/projects/{projectId}/issues/{issueId} |
Read an issue | Read | issuesGet |
GET /v1/tenants/{tenantId}/projects/{projectId}/issues/{issueId}/events |
The audit trail of an issue | Read | issuesEvents |
PATCH /v1/tenants/{tenantId}/projects/{projectId}/issues/{issueId} |
Change an issue’s fields; status can never be set to done | Write | issuesUpdate |
POST /v1/tenants/{tenantId}/projects/{projectId}/issues |
Create an issue | Write | issuesCreate |
POST /v1/tenants/{tenantId}/projects/{projectId}/issues-import |
Import issues from a Linear, Jira or GitHub Projects export | Write | issuesImport |
POST /v1/tenants/{tenantId}/projects/{projectId}/issues-pull |
Pull issues from a connected Linear workspace or GitHub repository; read only at the tracker, idempotent by the tracker’s own ID, with dryRun to check first | Write | issuesPull |
POST /v1/tenants/{tenantId}/projects/{projectId}/issues/{issueId}/archive |
Archive an issue: hidden from lists, restorable for 30 days, then removed; refused while its task holds a lease | Write | issuesArchive |
POST /v1/tenants/{tenantId}/projects/{projectId}/issues/{issueId}/assign |
Assign an issue to a person, agent or bot; agents and bots get the issue’s one task | Write | issuesAssign |
POST /v1/tenants/{tenantId}/projects/{projectId}/issues/{issueId}/restore |
Restore an archived issue within 30 days | Write | issuesRestore |
Issue sync
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/projects/{projectId}/issue-sync |
GitHub issue sync settings | Read | issuesyncGet |
PUT /v1/tenants/{tenantId}/projects/{projectId}/issue-sync |
Set GitHub sync to off, read_only or write_back (issue triage class) | Write | issuesyncPut |
Jobs
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/me/background-jobs |
The background jobs of your team that are queued or running, and those that finished in the last day, each with an estimate | Read, a person | jobsMine |
Kit
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/projects/{projectId}/kit/usage-events |
Delete the caller’s loop usage events in a project | Write, a person | kitUsageEventsDelete |
GET /v1/tenants/{tenantId}/projects/{projectId}/kit/next |
The next task a run should take | Read | kitNext |
GET /v1/tenants/{tenantId}/projects/{projectId}/kit/overview |
A project’s run overview | Read | kitOverview |
GET /v1/tenants/{tenantId}/projects/{projectId}/kit/policy |
Read a project’s run policy | Read | kitPolicyGet |
GET /v1/tenants/{tenantId}/projects/{projectId}/kit/report |
The morning report for a window | Read | kitReport |
GET /v1/tenants/{tenantId}/projects/{projectId}/kit/runs |
List runs | Read | kitRunsList |
GET /v1/tenants/{tenantId}/projects/{projectId}/kit/runs/{runId} |
Read a run | Read | kitRunGet |
GET /v1/tenants/{tenantId}/projects/{projectId}/kit/usage-events |
The caller’s loop usage events in a project | Read | kitUsageEventsList |
GET /v1/tenants/{tenantId}/projects/{projectId}/kit/usage-policy |
A project’s usage policy, the caller’s own caps, the cap that applies and each client’s eligibility | Read | kitUsagePolicyGet |
POST /v1/tenants/{tenantId}/projects/{projectId}/kit/attempts |
Record a finished loop iteration and judge the task | Write | kitAttemptsRecord |
POST /v1/tenants/{tenantId}/projects/{projectId}/kit/plan/sync |
Sync a plan into tasks | Write | kitPlanSync |
POST /v1/tenants/{tenantId}/projects/{projectId}/kit/report/deliver |
Put the morning report for the last report time in the team inbox, once | Write | kitReportDeliver |
POST /v1/tenants/{tenantId}/projects/{projectId}/kit/runs |
Start a run | Write | kitRunsStart |
POST /v1/tenants/{tenantId}/projects/{projectId}/kit/runs/{runId}/claim-next |
Claim the next runnable task under a run, in one step | Write | kitRunClaimNext |
POST /v1/tenants/{tenantId}/projects/{projectId}/kit/runs/{runId}/decisions |
Record a decision in a run | Write | kitRunDecision |
POST /v1/tenants/{tenantId}/projects/{projectId}/kit/runs/{runId}/end |
End a run | Write | kitRunEnd |
POST /v1/tenants/{tenantId}/projects/{projectId}/kit/runs/{runId}/pull |
Open the pull request for a task the run claimed | Write | kitRunPull |
PUT /v1/tenants/{tenantId}/projects/{projectId}/kit/policy |
Set a project’s run policy (policy class) | Write | kitPolicyPut |
PUT /v1/tenants/{tenantId}/projects/{projectId}/kit/usage-policy/project |
Set a project’s usage policy (policy class) | Write | kitUsagePolicyProjectPut |
PUT /v1/tenants/{tenantId}/projects/{projectId}/kit/usage-policy/user |
Set the caller’s own usage caps and whether usage events may be shared | Write, a person | kitUsagePolicyUserPut |
Labels
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/projects/{projectId}/labels/{labelId} |
Delete a label: it is archived and can be restored for 30 days, then removed; refused while issues use it | Write | labelsDelete |
GET /v1/tenants/{tenantId}/projects/{projectId}/labels |
List labels; archived=true lists the archived ones that can still be restored | Read | labelsList |
PATCH /v1/tenants/{tenantId}/projects/{projectId}/labels/{labelId} |
Rename a label or change its colour | Write | labelsUpdate |
POST /v1/tenants/{tenantId}/projects/{projectId}/labels |
Create a label | Write | labelsCreate |
POST /v1/tenants/{tenantId}/projects/{projectId}/labels/{labelId}/archive |
Archive a label; refused while issues use it | Write | labelsArchive |
POST /v1/tenants/{tenantId}/projects/{projectId}/labels/{labelId}/restore |
Restore an archived label within 30 days | Write | labelsRestore |
Links
| Operation | Summary | Access | SDK method |
|---|---|---|---|
POST /v1/auth/links/confirm |
Confirm linking a sign-in method to the account (a person does this) | Read, a person | linksConfirm |
Loops
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/projects/{projectId}/loops/{loopId} |
Delete a loop: it is archived and can be restored for 30 days, then removed (issue triage class) | Write | loopsDelete |
GET /v1/tenants/{tenantId}/projects/{projectId}/loops |
List loops; archived=true lists the archived ones that can still be restored | Read | loopsList |
PATCH /v1/tenants/{tenantId}/projects/{projectId}/loops/{loopId} |
Change a loop (issue triage class) | Write | loopsUpdate |
POST /v1/tenants/{tenantId}/projects/{projectId}/loops |
Define a scheduled or event-triggered loop (issue triage class) | Write | loopsCreate |
POST /v1/tenants/{tenantId}/projects/{projectId}/loops/{loopId}/archive |
Archive a loop so it stops firing (issue triage class) | Write | loopsArchive |
POST /v1/tenants/{tenantId}/projects/{projectId}/loops/{loopId}/fire |
Run a loop now through a bounded kit run | Write | loopsFire |
POST /v1/tenants/{tenantId}/projects/{projectId}/loops/{loopId}/restore |
Restore an archived loop within 30 days (issue triage class) | Write | loopsRestore |
MCP
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/mcp/surface |
The MCP tools, prompts and resources Overlane offers | Read | mcpSurface |
POST /mcp |
Model Context Protocol endpoint (Streamable HTTP) | Read | mcp |
Your account
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/me/account |
Delete the caller’s own account: leaves every team, removes personal rows and returns a receipt with counts per table (a person does this; refused while the caller is the last owner of a team that still has other members) | Read, a person | meDelete |
GET /v1/me |
Who the bearer token belongs to | Read | meGet |
GET /v1/me/channel |
Which build of the hosted app the caller sees and why: their own pick, the team’s channel and lock | Read | meChannelGet |
PUT /v1/me/channel |
Pick the build you see: follow the team, stable or beta; the internal build is for Overlane staff only | Read, a person | meChannelPut |
Members
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/members/{memberId} |
Remove a member from the team (deletion class) | Write | membersRemove |
GET /v1/tenants/{tenantId}/members |
List the team’s members | Read | membersList |
PATCH /v1/tenants/{tenantId}/members/{memberId} |
Change a member’s role (policy class) | Write | membersRole |
Memory
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/memory/{memoryId} |
Delete one memory (deletion class) | Write | memoryDelete |
GET /v1/memory/search |
Search memories across scopes, in precedence order | Read | memorySearch |
GET /v1/tenants/{tenantId}/memory |
List memories | Read | memoryList |
GET /v1/tenants/{tenantId}/memory/export |
Export every memory the caller can see | Read | memoryExport |
GET /v1/tenants/{tenantId}/memory/settings |
Read the team’s memory settings | Read | memorySettingsGet |
GET /v1/tenants/{tenantId}/memory/status |
Memory counts and inference mode | Read | memoryStatus |
GET /v1/tenants/{tenantId}/memory/{memoryId} |
Read one memory | Read | memoryGet |
POST /v1/tenants/{tenantId}/memory |
Write a memory candidate | Write | memoryCreate |
POST /v1/tenants/{tenantId}/memory/purge |
Delete memories by subject (export and deletion rights) | Write | memoryPurge |
POST /v1/tenants/{tenantId}/memory/symbols |
Link memories to code symbols | Write | memorySymbols |
POST /v1/tenants/{tenantId}/memory/{memoryId}/confirm |
Confirm a memory | Write | memoryConfirm |
POST /v1/tenants/{tenantId}/memory/{memoryId}/promote |
Promote a memory to a wider scope (memory promotion class) | Write | memoryPromote |
POST /v1/tenants/{tenantId}/memory/{memoryId}/unlearn |
Unlearn a memory | Write | memoryUnlearn |
PUT /v1/tenants/{tenantId}/memory/settings |
Change the team’s memory settings (policy class) | Write | memorySettingsPut |
Models
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/models/{modelId} |
Remove a model executor and destroy its stored key (secrets class) | Write | modelsRemove |
GET /v1/tenants/{tenantId}/models |
Model executors by alias, kind, model, caps and key state; a key is never returned | Read | modelsList |
POST /v1/tenants/{tenantId}/models |
Register a model executor; the key is write-only and stored encrypted (secrets class) | Write | modelsCreate |
POST /v1/tenants/{tenantId}/models/{modelId}/complete |
One model call inside a run, held to the run’s token and dollar caps | Write | modelsComplete |
Observe
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/observe/alerts/rules |
Remove an alert rule (policy class) | Write | observeAlertsRulesDelete |
GET /v1/tenants/{tenantId}/metrics/cost |
The cost report for the web app | Read | observeCostWeb |
GET /v1/tenants/{tenantId}/observe/alerts |
Alert rules and open incidents | Read | observeAlertsGet |
GET /v1/tenants/{tenantId}/observe/compare |
Compare agents on one task | Read | observeCompare |
GET /v1/tenants/{tenantId}/observe/cost |
The cost report | Read | observeCost |
GET /v1/tenants/{tenantId}/observe/evals |
The last eval report | Read | observeEvalsGet |
GET /v1/tenants/{tenantId}/observe/metrics |
Cost and token metrics per agent, project and team | Read | observeMetricsGet |
GET /v1/tenants/{tenantId}/observe/reconcile |
Compare observed cost with metered usage | Read | observeReconcile |
GET /v1/tenants/{tenantId}/observe/retention |
The retention the plan keeps | Read | observeRetentionGet |
GET /v1/tenants/{tenantId}/observe/status |
Observability status: what is flowing and the plan’s retention | Read | observeStatus |
GET /v1/tenants/{tenantId}/projects/{projectId}/logs |
A project’s logs for the web app | Read | observeLogsWeb |
GET /v1/tenants/{tenantId}/projects/{projectId}/observe/logs |
Search a project’s logs | Read | observeLogsList |
GET /v1/tenants/{tenantId}/projects/{projectId}/observe/runs |
Runs still going in the project and the tool call each is running now | Read | observeRunsLive |
GET /v1/tenants/{tenantId}/projects/{projectId}/observe/settings |
The project’s observability settings: whether agents send live activity | Read | observeSettingsGet |
GET /v1/tenants/{tenantId}/projects/{projectId}/observe/status |
A project’s runs in the last 24 hours by status, for a token limited to that project | Read | observeProjectStatus |
GET /v1/tenants/{tenantId}/projects/{projectId}/runs/{runId}/stream |
Live events of a run over a stream | Read | observeRunStream |
GET /v1/tenants/{tenantId}/projects/{projectId}/runs/{runId}/trace |
A run’s logs and trace stitched by run ID | Read | observeRunTrace |
POST /v1/tenants/{tenantId}/observe/alerts/evaluate |
Evaluate the alert rules now; opens incidents and sends notices | Write | observeAlertsEvaluate |
POST /v1/tenants/{tenantId}/observe/evals |
Replay pull requests with each agent and configuration | Write | observeEvalsRun |
POST /v1/tenants/{tenantId}/observe/metrics |
Ingest usage metrics (machine ingest) | Write | observeMetricsIngest |
POST /v1/tenants/{tenantId}/observe/retention/purge |
Delete telemetry older than the plan keeps | Write | observeRetentionPurge |
POST /v1/tenants/{tenantId}/projects/{projectId}/observe/events |
Ingest run events (tool calls, file-edit diffs, commits) from an agent’s hooks or the CI runner; text is redacted before it is stored | Write | observeEventsIngest |
POST /v1/tenants/{tenantId}/projects/{projectId}/observe/telemetry |
Ingest logs and spans from an agent or the CI runner (machine ingest; secrets are redacted) | Write | observeTelemetryIngest |
PUT /v1/tenants/{tenantId}/observe/alerts/rules |
Set an alert rule (policy class) | Write | observeAlertsRulesPut |
PUT /v1/tenants/{tenantId}/projects/{projectId}/observe/settings |
Turn live activity on or off for the project | Write | observeSettingsPut |
Onboarding
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/onboarding |
Onboarding state for the team | Read | onboardingGet |
GET /v1/tenants/{tenantId}/onboarding/first-review |
The first AI review of onboarding | Read | onboardingReview |
GET /v1/tenants/{tenantId}/onboarding/funnel |
Time from sign-up to the first reviewed agent change, for admins | Write | onboardingFunnel |
POST /v1/tenants/{tenantId}/onboarding/advance |
Advance onboarding one step | Write | onboardingAdvance |
Openapi
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/openapi.json |
This OpenAPI 3.1 document, generated from the route tables and the contracts | No token | openapiGet |
Operator
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/operator/discounts |
Take a workspace’s discount back (Overlane staff) | Write, a person | operatorDiscountsRevoke |
DELETE /v1/operator/invitations |
Take an invitation back (Overlane staff) | Write, a person | operatorInvitationsRemove |
GET /v1/operator/discounts |
Discounts granted to workspaces (Overlane staff) | Write, a person | operatorDiscountsList |
GET /v1/operator/invitations |
Who may create an account while Overlane is invite-only (Overlane staff) | Write, a person | operatorInvitationsList |
GET /v1/operator/tables |
Row counts and column masking for every table (Overlane staff) | Read | operatorTables |
GET /v1/operator/tables/{table}/rows |
Rows of one table with personal fields masked (Overlane staff) | Read | operatorRows |
PUT /v1/operator/discounts |
Grant a workspace the open-source or startup discount (Overlane staff) | Write, a person | operatorDiscountsGrant |
PUT /v1/operator/invitations |
Invite an email address or a domain to create an account (Overlane staff) | Write, a person | operatorInvitationsAdd |
Projects
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/projects/{projectId} |
Delete a project: it is archived and can be restored for 30 days, then removed; refused while a task has a lease or recorded evidence | Write | projectsDelete |
GET /v1/tenants/{tenantId}/projects |
List the team’s projects; archived=true lists the archived ones that can still be restored | Read | projectsList |
GET /v1/tenants/{tenantId}/projects/{projectId} |
Read a project | Read | projectsGet |
GET /v1/tenants/{tenantId}/projects/{projectId}/context |
The context packet for a project | Read | projectsContext |
GET /v1/tenants/{tenantId}/projects/{projectId}/merge |
Count what merging another project into this one would move; changes nothing | Read | projectsMergePreview |
PATCH /v1/tenants/{tenantId}/projects/{projectId} |
Rename a project, or change its code layer, its code map as context or repository sign-in | Write | projectsUpdate |
POST /v1/tenants/{tenantId}/projects |
Create a project (idempotent on repository) | Write | projectsCreate |
POST /v1/tenants/{tenantId}/projects/{projectId}/archive |
Archive a project and its open tasks | Write | projectsArchive |
POST /v1/tenants/{tenantId}/projects/{projectId}/merge |
Merge a second project for the same code into this one | Write | projectsMerge |
POST /v1/tenants/{tenantId}/projects/{projectId}/restore |
Restore an archived project and the tasks archived with it, within 30 days | Write | projectsRestore |
Pull request routing
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/projects/{projectId}/pr-routes |
Pull requests with their routed lane | Read | prroutesList |
GET /v1/tenants/{tenantId}/projects/{projectId}/pr-routes/batch |
Batches of small pull requests | Read | prroutesBatch |
GET /v1/tenants/{tenantId}/projects/{projectId}/pr-routes/policy |
Read the project’s pull request routing policy | Read | prroutesPolicyGet |
POST /v1/tenants/{tenantId}/projects/{projectId}/pr-routes/approve |
Approve a pull request in its lane (independence rules apply) | Write | prroutesApprove |
POST /v1/tenants/{tenantId}/projects/{projectId}/pr-routes/route |
Route a pull request to a lane by risk | Write | prroutesRoute |
PUT /v1/tenants/{tenantId}/projects/{projectId}/pr-routes/policy |
Change the project’s pull request routing policy | Write | prroutesPolicyPut |
Queue
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/projects/{projectId}/queue |
The project task queue, in priority order; archived=true lists the archived tasks that can still be restored | Read | queueList |
GET /v1/tenants/{tenantId}/projects/{projectId}/queue/next |
The next task an executor should take | Read | queueNext |
GET /v1/tenants/{tenantId}/projects/{projectId}/queue/policy |
Read the task requirement for a project | Read | queuePolicyGet |
POST /v1/tenants/{tenantId}/projects/{projectId}/queue/{queueId}/prioritise |
Change a task priority | Write | queuePrioritise |
PUT /v1/tenants/{tenantId}/projects/{projectId}/queue/policy |
Set the task requirement (task policy class) | Write | queuePolicyPut |
Rate limits
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/rate-limit |
The team’s request limit from the plan data, and what is left in this minute | Read | ratelimitGet |
Release
| Operation | Summary | Access | SDK method |
|---|---|---|---|
POST /v1/tenants/{tenantId}/projects/{projectId}/release/rollback |
Roll a project back to its previous release (release class) | Write | releaseRollback |
PUT /v1/tenants/{tenantId}/projects/{projectId}/release |
Pin a project to a release (release class) | Write | releasePin |
Releases
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/release-promotion |
Read how internal releases reach stable (automatic after a soak, or by hand) | Read | releasesPromotionGet |
GET /v1/tenants/{tenantId}/releases |
List releases | Read | releasesList |
GET /v1/tenants/{tenantId}/releases/{releaseId} |
Read a release | Read | releasesGet |
POST /v1/tenants/{tenantId}/releases |
Publish a signed release (release class) | Write | releasesPublish |
POST /v1/tenants/{tenantId}/releases/{releaseId}/promote |
Promote a release to a channel (release class) | Write | releasesPromote |
POST /v1/tenants/{tenantId}/releases/{releaseId}/withdraw |
Withdraw a release (release class) | Write | releasesWithdraw |
PUT /v1/tenants/{tenantId}/release-promotion |
Change how internal releases reach stable (release class) | Write | releasesPromotionPut |
Review
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/projects/{projectId}/review/findings |
List review findings | Read | reviewFindingsList |
GET /v1/tenants/{tenantId}/projects/{projectId}/review/settings |
Read a project’s review settings | Read | reviewSettingsGet |
GET /v1/tenants/{tenantId}/projects/{projectId}/review/status |
Review status for a project | Read | reviewStatus |
POST /v1/tenants/{tenantId}/projects/{projectId}/review/findings/{findingId}/autofix |
Apply a finding’s suggested fix | Write | reviewFindingsAutofix |
POST /v1/tenants/{tenantId}/projects/{projectId}/review/findings/{findingId}/feedback |
Give feedback on a finding | Write | reviewFindingsFeedback |
POST /v1/tenants/{tenantId}/projects/{projectId}/review/runs |
Start an AI review run | Write | reviewRunsCreate |
PUT /v1/tenants/{tenantId}/projects/{projectId}/review/settings |
Change a project’s review settings | Write | reviewSettingsPut |
Rules
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/projects/{projectId}/rules |
The rules text the project’s task payloads use | Read | rulesGet |
PUT /v1/tenants/{tenantId}/projects/{projectId}/rules |
Set the rules text the project’s task payloads use (the text of the rules source file) | Write | rulesPut |
Signals
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/projects/{projectId}/signals |
The signals the task engine tracks, each with the task it opened and why it closed; state=open or state=cleared narrows the list | Read | signalsList |
GET /v1/tenants/{tenantId}/projects/{projectId}/signals/settings |
Whether the task engine opens tasks on its own for this project: automatic, supervised (opened paused with a reason) or manual (the signal is recorded and nothing opens) | Read | signalsSettingsGet |
POST /v1/tenants/{tenantId}/projects/{projectId}/signals/documents |
Send an audit or plan document: each unchecked item opens one task, and an item that is ticked or removed closes its task | Write | signalsDocuments |
PUT /v1/tenants/{tenantId}/projects/{projectId}/signals/settings |
Set task creation for this project (task policy class) | Write | signalsSettingsPut |
Skills
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/projects/{projectId}/skills |
List the project’s skills with their review state | Read | skillsList |
GET /v1/tenants/{tenantId}/projects/{projectId}/skills/{name} |
Read a skill with its full SKILL.md text | Read | skillsGet |
POST /v1/tenants/{tenantId}/projects/{projectId}/skills/from-conversation |
Save one of your assistant conversations as a skill draft in the standard skill format; secrets are removed and the draft is not used until it is approved | Write, a person | skillsSave |
POST /v1/tenants/{tenantId}/projects/{projectId}/skills/{name}/approve |
Approve a skill draft so tasks in the project use it (a person does this) | Write, a person | skillsApprove |
POST /v1/tenants/{tenantId}/projects/{projectId}/skills/{name}/reject |
Reject a skill draft (a person does this) | Write, a person | skillsReject |
Tasks
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/projects/{projectId}/tasks/{taskId} |
Delete a task: it is archived and can be restored for 30 days, then removed; refused while it has a lease or recorded evidence | Write | tasksDelete |
GET /v1/tenants/{tenantId}/projects/{projectId}/tasks |
List a project’s tasks; archived=true lists the archived ones that can still be restored | Read | tasksList |
GET /v1/tenants/{tenantId}/projects/{projectId}/tasks/{taskId} |
Read a task and its ledger | Read | tasksGet |
GET /v1/tenants/{tenantId}/projects/{projectId}/tasks/{taskId}/approvals |
List a task’s approvals | Read | tasksApprovalsList |
GET /v1/tenants/{tenantId}/projects/{projectId}/tasks/{taskId}/capsule |
A task as an open, versioned capsule | Read | tasksCapsule |
GET /v1/tenants/{tenantId}/projects/{projectId}/tasks/{taskId}/capsule/payload |
The rendered payload sections of a task capsule, for the lease holder only | Read | tasksCapsulePayload |
GET /v1/tenants/{tenantId}/projects/{projectId}/tasks/{taskId}/messages |
A task’s messages | Read | tasksMessages |
PATCH /v1/tenants/{tenantId}/projects/{projectId}/tasks/{taskId} |
Change a task’s title or outcome | Write | tasksUpdate |
POST /v1/tenants/{tenantId}/projects/{projectId}/tasks |
Create a task contract | Write | tasksCreate |
POST /v1/tenants/{tenantId}/projects/{projectId}/tasks/{taskId}/approvals |
Ask for an approval on a task | Write | tasksApprovalsCreate |
POST /v1/tenants/{tenantId}/projects/{projectId}/tasks/{taskId}/archive |
Archive a task | Write | tasksArchive |
POST /v1/tenants/{tenantId}/projects/{projectId}/tasks/{taskId}/assign |
Assign a task to an agent, person or bot | Write | tasksAssign |
POST /v1/tenants/{tenantId}/projects/{projectId}/tasks/{taskId}/restore |
Restore an archived task within 30 days | Write | tasksRestore |
POST /v1/tenants/{tenantId}/projects/{projectId}/tasks/{taskId}/{operation} |
Run a task operation: claim, start, checkpoint, submit, evidence, handoff, cancel | Write | tasksOperation |
Teams
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/teams |
Teams the caller belongs to | Read | teamsList |
Tokens
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/tokens/{tokenId} |
Revoke an agent token | Write | tokensRevoke |
GET /v1/tenants/{tenantId}/tokens |
List agent tokens | Write | tokensList |
POST /v1/tenants/{tenantId}/tokens |
Mint an agent token; the secret is shown once | Write | tokensCreate |
Versions
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/versions |
The API versions that exist, with their changelog and end dates | Read | versionsList |
Views
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/projects/{projectId}/views/{viewId} |
Delete a saved view: it is archived and can be restored for 30 days, then removed | Write | viewsDelete |
GET /v1/tenants/{tenantId}/projects/{projectId}/views |
List saved views; archived=true lists the archived ones that can still be restored | Read | viewsList |
GET /v1/tenants/{tenantId}/projects/{projectId}/views/{viewId}/run |
Run a saved view with stable ordering | Read | viewsRun |
PATCH /v1/tenants/{tenantId}/projects/{projectId}/views/{viewId} |
Rename a saved view or change its filter, grouping and sort | Write | viewsUpdate |
POST /v1/tenants/{tenantId}/projects/{projectId}/views |
Save a view: filter, grouping and sort over any issue field | Write | viewsCreate |
POST /v1/tenants/{tenantId}/projects/{projectId}/views/{viewId}/archive |
Archive a saved view | Write | viewsArchive |
POST /v1/tenants/{tenantId}/projects/{projectId}/views/{viewId}/restore |
Restore an archived saved view within 30 days | Write | viewsRestore |
Webhooks
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/webhooks/{webhookId} |
Disable a webhook (bots class) | Write | webhooksDelete |
GET /v1/tenants/{tenantId}/webhooks |
List outbound webhooks | Read | webhooksList |
GET /v1/tenants/{tenantId}/webhooks/{webhookId}/deliveries |
A webhook’s recent deliveries with status, attempts and next attempt | Read | webhooksDeliveries |
POST /v1/tenants/{tenantId}/webhooks |
Create an outbound webhook; the signing secret is shown once (bots class) | Write | webhooksCreate |
POST /v1/tenants/{tenantId}/webhooks/{webhookId}/rotate-key |
Rotate a webhook’s signing secret; shown once (bots class) | Write | webhooksRotate |
POST /v1/tenants/{tenantId}/webhooks/{webhookId}/test |
Send a test event to a webhook | Write | webhooksTest |
Wiki
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/projects/{projectId}/wiki |
List the pages of the project wiki built from the code map | Read | wikiList |
GET /v1/tenants/{tenantId}/projects/{projectId}/wiki/{wikiId} |
Read one page of the project wiki | Read | wikiPage |
Issue projects
| Operation | Summary | Access | SDK method |
|---|---|---|---|
DELETE /v1/tenants/{tenantId}/projects/{projectId}/work-projects/{workProjectId} |
Delete a work project: it is archived and can be restored for 30 days, then removed; refused while issues use it | Write | workprojectsDelete |
GET /v1/tenants/{tenantId}/projects/{projectId}/work-projects |
List an issue project’s groupings; archived=true lists the archived ones that can still be restored | Read | workprojectsList |
PATCH /v1/tenants/{tenantId}/projects/{projectId}/work-projects/{workProjectId} |
Rename a work project or change its description | Write | workprojectsUpdate |
POST /v1/tenants/{tenantId}/projects/{projectId}/work-projects |
Create a project to group issues | Write | workprojectsCreate |
POST /v1/tenants/{tenantId}/projects/{projectId}/work-projects/{workProjectId}/archive |
Archive a work project; refused while issues use it | Write | workprojectsArchive |
POST /v1/tenants/{tenantId}/projects/{projectId}/work-projects/{workProjectId}/restore |
Restore an archived work project within 30 days | Write | workprojectsRestore |
Workspace
| Operation | Summary | Access | SDK method |
|---|---|---|---|
GET /v1/tenants/{tenantId}/channel |
Which build of the hosted app the team gets (stable or beta) and whether the team is locked to stable | Read | workspaceChannelGet |
PUT /v1/tenants/{tenantId}/channel |
Set the team’s build (stable or beta) and lock it to stable; the internal build is for Overlane staff only | Write | workspaceChannelPut |