{"openapi":"3.1.0","info":{"title":"API Reference","version":"1.0.0"},"paths":{"/v3/organizations":{"get":{"operationId":"listOrganizations","summary":"List organizations","description":"Returns the organizations the current principal can access.\n\n<sub>Scope: `org:read`</sub>","tags":["organizations"],"parameters":[{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Organizations.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Organizations_listOrganizations_Response_200"}}}}}},"post":{"operationId":"createOrganization","summary":"Create an organization","description":"<sub>Scope: `org:write`</sub>","tags":["organizations"],"parameters":[{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Created.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Organization"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateOrganization"}}}}}},"/v3/organizations/{orgId}":{"get":{"operationId":"getOrganization","summary":"Retrieve an organization","description":"<sub>Scope: `org:read`</sub>","tags":["organizations"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The organization.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Organization"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"delete":{"operationId":"deleteOrganization","summary":"Delete an organization","description":"<sub>Scope: `org:write`</sub>","tags":["organizations"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Organizations_deleteOrganization_Response_200"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"patch":{"operationId":"updateOrganization","summary":"Update an organization","description":"Partial update. Send only the fields you want to change.\n\n<sub>Scope: `org:write`</sub>","tags":["organizations"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Updated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Organization"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"},"slug":{"type":"string"}}}}}}}},"/v3/organizations/{orgId}/attachments":{"get":{"operationId":"listAttachments","summary":"List attachments","description":"Returns the files uploaded to the organization, newest first. Paginates by offset: pass `cursor` from the previous page's `end_cursor` to fetch the next page.\n\n<sub>Scope: `attachments:read`</sub>","tags":["attachments"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Page size (default 50, max 100).","required":false,"schema":{"type":"integer","default":50}},{"name":"cursor","in":"query","description":"Offset cursor from the previous page's `end_cursor`.","required":false,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Attachments.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Attachments_listAttachments_Response_200"}}}}}},"post":{"operationId":"createAttachment","summary":"Upload an attachment","description":"Uploads a file to the organization. Send the file as `multipart/form-data` in the `file` field.\n\n<sub>Scope: `attachments:write`</sub>","tags":["attachments"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"The created attachment.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Attachment"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"file":{"type":"string","format":"binary","description":"The file to upload."}},"required":["file"]}}}}}},"/v3/organizations/{orgId}/attachments/{attachmentId}":{"get":{"operationId":"downloadAttachment","summary":"Download an attachment","description":"Redirects (307) to a short-lived signed download URL for the attachment.\n\n<sub>Scope: `attachments:read`</sub>","tags":["attachments"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"attachmentId","in":"path","description":"The attachment id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Successful response"},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/attachments/{attachmentId}/{filename}":{"get":{"operationId":"downloadAttachmentWithFilename","summary":"Download an attachment (named)","description":"Same 307 redirect as the bare download route; the trailing filename gives naive clients the right file name.\n\n<sub>Scope: `attachments:read`</sub>","tags":["attachments"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"attachmentId","in":"path","description":"The attachment id.","required":true,"schema":{"type":"string"}},{"name":"filename","in":"path","description":"Cosmetic filename for the downloaded file; not validated against the stored name.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Successful response"},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/audit-logs":{"get":{"operationId":"listAuditLogs","summary":"List audit log entries","description":"Returns audit log entries newest first.\n\n<sub>Scope: `analytics:read`</sub>","tags":["auditLogs"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Maximum entries to return (default 50, max 200).","required":false,"schema":{"type":"integer","default":50}},{"name":"before","in":"query","description":"Return only entries created before this timestamp.","required":false,"schema":{"type":"string","format":"date-time"}},{"name":"action","in":"query","description":"Return only entries with this exact action.","required":false,"schema":{"type":"string"}},{"name":"actor","in":"query","description":"Return only entries performed by this actor user id.","required":false,"schema":{"type":"string"}},{"name":"since","in":"query","description":"Return only entries created at or after this ISO timestamp.","required":false,"schema":{"type":"string","format":"date-time"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Audit log entries.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Audit Logs_listAuditLogs_Response_200"}}}}}}},"/v3/organizations/{orgId}/automations":{"get":{"operationId":"listAutomations","summary":"List automations","description":"User-authored automations in the workspace, each with its triggers. System automations (repo/issue plumbing, connector bridges) are excluded by default; pass `include=system` to return them too. An automation with no triggers is included; it simply never fires on its own.\n\n<sub>Scope: `automations:read`</sub>","tags":["automations"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"first","in":"query","description":"Page size (default 50, max 200).","required":false,"schema":{"type":"integer","default":50}},{"name":"after","in":"query","description":"Cursor from the previous page's `end_cursor`.","required":false,"schema":{"type":"string"}},{"name":"include","in":"query","description":"By default only user-authored automations are returned. Pass `system` to also include system automations (repo/issue plumbing, connector bridges) that back product features.","required":false,"schema":{"$ref":"#/components/schemas/V3OrganizationsOrgIdAutomationsGetParametersInclude"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Automations.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Automations_listAutomations_Response_200"}}}}}},"post":{"operationId":"createAutomation","summary":"Create an automation","description":"Creates the automation's configuration (instructions + environment binding). Add a trigger with `POST /automations/{automationId}/triggers` to make it fire. The repo must already be connected.\n\n<sub>Scope: `automations:write`</sub>","tags":["automations"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Created.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Automation"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Available during an Ara trial or paid subscription.","content":{"application/json":{"schema":{"description":"Any type"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateAutomation"}}}}}},"/v3/organizations/{orgId}/automations/{automationId}":{"get":{"operationId":"getAutomation","summary":"Retrieve an automation","description":"<sub>Scope: `automations:read`</sub>","tags":["automations"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"automationId","in":"path","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The automation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Automation"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"delete":{"operationId":"deleteAutomation","summary":"Delete an automation","description":"Deletes the automation and removes its triggers. Idempotent.\n\n<sub>Scope: `automations:write`</sub>","tags":["automations"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"automationId","in":"path","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Automations_deleteAutomation_Response_200"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"patch":{"operationId":"updateAutomation","summary":"Update an automation","description":"Partial update of the automation's configuration. Send only the fields you want to change. Triggers are managed through the triggers sub-resource.\n\n<sub>Scope: `automations:write`</sub>","tags":["automations"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"automationId","in":"path","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Updated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Automation"}}}},"402":{"description":"Available during an Ara trial or paid subscription.","content":{"application/json":{"schema":{"description":"Any type"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateAutomation"}}}}}},"/v3/organizations/{orgId}/automations/{automationId}/triggers":{"get":{"operationId":"listAutomationTriggers","summary":"List an automation's triggers","description":"<sub>Scope: `automations:read`</sub>","tags":["automations"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"automationId","in":"path","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Triggers.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Automations_listAutomationTriggers_Response_200"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"post":{"operationId":"createAutomationTrigger","summary":"Add a trigger to an automation","description":"Provide exactly one schedule: a `frequency` cron expression for recurring runs, `every_seconds` for a fixed interval, or a `scheduled_at` timestamp for a one-time run.\n\n<sub>Scope: `automations:write`</sub>","tags":["automations"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"automationId","in":"path","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Created.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Trigger"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTrigger"}}}}}},"/v3/organizations/{orgId}/automations/{automationId}/triggers/{triggerId}":{"delete":{"operationId":"deleteAutomationTrigger","summary":"Remove a trigger from an automation","description":"Idempotent. The automation itself is untouched; it simply stops firing on that condition.\n\n<sub>Scope: `automations:write`</sub>","tags":["automations"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"automationId","in":"path","required":true,"schema":{"type":"string"}},{"name":"triggerId","in":"path","description":"The trigger id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Automations_deleteAutomationTrigger_Response_200"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/consumption/daily":{"get":{"operationId":"getDailyConsumption","summary":"Get daily consumption","description":"Returns usage broken down by day over a date range.\n\n<sub>Scope: `analytics:read`</sub>","tags":["consumption"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"start_date","in":"query","description":"Inclusive start date (`YYYY-MM-DD`).","required":false,"schema":{"type":"string","format":"date"}},{"name":"end_date","in":"query","description":"Inclusive end date (`YYYY-MM-DD`).","required":false,"schema":{"type":"string","format":"date"}},{"name":"group_by","in":"query","description":"Optional dimension to group by. Unknown values fall back to the ungrouped daily series.","required":false,"schema":{"$ref":"#/components/schemas/V3OrganizationsOrgIdConsumptionDailyGetParametersGroupBy"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Daily consumption.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Consumption_getDailyConsumption_Response_200"}}}}}}},"/v3/organizations/{orgId}/environment/builds":{"get":{"operationId":"listEnvironmentBuilds","summary":"List environment builds","description":"<sub>Scope: `blueprints:read`</sub>","tags":["environment"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Builds.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BuildList"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"post":{"operationId":"createEnvironmentBuild","summary":"Trigger an environment image build","description":"Builds the current Recipe set into an Image. Dedups on the recipe-set hash. Returns a null build when no Image is needed (runs on Tier-0 + the Session Start Script layer).\n\n<sub>Scope: `blueprints:write`</sub>","tags":["environment"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"The build (or null when skipped).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Build"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecipeInput"}}}}}},"/v3/organizations/{orgId}/environment/builds/{buildId}":{"get":{"operationId":"getEnvironmentBuild","summary":"Get an environment build","description":"<sub>Scope: `blueprints:read`</sub>","tags":["environment"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"buildId","in":"path","description":"The environment build id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The build.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Build"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/environment/builds/{buildId}/cancel":{"post":{"operationId":"cancelEnvironmentBuild","summary":"Cancel an environment build","description":"<sub>Scope: `blueprints:write`</sub>","tags":["environment"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"buildId","in":"path","description":"The environment build id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The cancelled build.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Build"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/environment/builds/{buildId}/pin":{"post":{"operationId":"pinEnvironmentBuild","summary":"Pin an environment build","description":"New sessions boot from the pinned build's image. Must be a succeeded, <7-day-old, repo-tier build.\n\n<sub>Scope: `blueprints:write`</sub>","tags":["environment"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"buildId","in":"path","description":"The environment build id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The pinned build.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Build"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"delete":{"operationId":"unpinEnvironmentBuild","summary":"Unpin the build's repo","description":"Rolls the repo back to the Tier-0 image. No-op if the repo is not pinned.\n\n<sub>Scope: `blueprints:write`</sub>","tags":["environment"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"buildId","in":"path","description":"The environment build id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Unpinned.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Build"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/environment/recipe":{"get":{"operationId":"getEnvironmentRecipe","summary":"Get the environment recipe","description":"Returns the org-tier recipe, or the repo-tier recipe when `repo` is supplied.\n\n<sub>Scope: `blueprints:read`</sub>","tags":["environment"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The recipe (or null).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Recipe"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"put":{"operationId":"putEnvironmentRecipe","summary":"Create or update the environment recipe","description":"Validates the recipe YAML and stores it. repo_name selects the tier. Changes apply at the next session start.\n\n<sub>Scope: `blueprints:write`</sub>","tags":["environment"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The stored recipe.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Recipe"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"The key lacks the required scope or role.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecipeInput"}}}}}},"/v3/organizations/{orgId}/environment/runbook":{"get":{"operationId":"getEnvironmentRunbook","summary":"Get the repo runbook","description":"The per-repo operating guide (how to install, run, operate, and test the repo) that Ara injects into every session, plus the gaps (missing secrets / integrations) the setup bootstrap found.\n\n<sub>Scope: `blueprints:read`</sub>","tags":["environment"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The runbook (empty body when none exists yet).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Runbook"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"put":{"operationId":"putEnvironmentRunbook","summary":"Create or update the repo runbook","description":"Replaces the repo's runbook body (and optionally its missing-items list). Read the current runbook first: this is a full replace, not a merge.\n\n<sub>Scope: `blueprints:write`</sub>","tags":["environment"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The stored runbook.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Runbook"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RunbookInput"}}}}}},"/v3/organizations/{orgId}/environment/session-start-script":{"get":{"operationId":"getEnvironmentSessionStartScript","summary":"Get the session-start script","description":"The shell the sandbox runs at the start of every session to install this repo's dependencies.\n\n<sub>Scope: `blueprints:read`</sub>","tags":["environment"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The session-start script.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionStartScript"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/git-connections":{"get":{"operationId":"listGitConnections","summary":"List git connections (deprecated)","description":"Deprecated. Use `GET /git-plugins` instead.\n\n<sub>Scope: `repos:read`</sub>","tags":["gitConnections"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Git connections.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Git Connections_listGitConnections_Response_200"}}}}}}},"/v3/organizations/{orgId}/git-connections/{gitConnectionId}/repositories":{"get":{"operationId":"listGitConnectionRepositories","summary":"List repositories for a git connection (deprecated)","description":"Deprecated. Use `GET /git-plugins/{gitPluginId}/repositories` instead.\n\n<sub>Scope: `repos:read`</sub>","tags":["gitConnections"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"gitConnectionId","in":"path","description":"Deprecated git connection id. Use gitPluginId on the canonical git-plugins routes.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Repositories for the connection.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Git Connections_listGitConnectionRepositories_Response_200"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/git-plugins":{"get":{"operationId":"listGitPlugins","summary":"List git plugins","description":"Returns the source-control accounts linked to the organization.\n\n<sub>Scope: `repos:read`</sub>","tags":["gitPlugins"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Git plugins.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Git Plugins_listGitPlugins_Response_200"}}}}}}},"/v3/organizations/{orgId}/git-plugins/{gitPluginId}/repositories":{"get":{"operationId":"listGitPluginRepositories","summary":"List repositories for a git plugin","description":"Returns the repositories exposed by a linked source-control plugin.\n\n<sub>Scope: `repos:read`</sub>","tags":["gitPlugins"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"gitPluginId","in":"path","description":"The git plugin id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Repositories for the plugin.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Git Plugins_listGitPluginRepositories_Response_200"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/indexed-repositories":{"get":{"operationId":"listIndexedRepositories","summary":"List indexed repositories","description":"Returns repositories that have been indexed for wiki generation and code understanding.\n\n<sub>Scope: `repos:read`</sub>","tags":["repositories"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Indexed repositories.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Repositories_listIndexedRepositories_Response_200"}}}}}}},"/v3/organizations/{orgId}/repositories":{"get":{"operationId":"listRepositories","summary":"List repositories","description":"Returns repositories the organization can connect agents to.\n\n<sub>Scope: `repos:read`</sub>","tags":["repositories"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Repositories.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Repositories_listRepositories_Response_200"}}}}}}},"/v3/organizations/{orgId}/repositories/bulk-index":{"put":{"operationId":"bulkIndexRepositories","summary":"Bulk index repositories","description":"Starts indexing for many repositories at once. Each entry may be an `owner/name` string or an `{ owner, repo }` object. Returns a per-repository result so partial failures are visible.\n\n<sub>Scope: `repos:write`</sub>","tags":["repositories"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Per-repository results.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Repositories_bulkIndexRepositories_Response_200"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Available during an Ara trial or paid subscription.","content":{"application/json":{"schema":{"description":"Any type"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkRepoRequest"}}}}}},"/v3/organizations/{orgId}/repositories/bulk-remove":{"delete":{"operationId":"bulkRemoveRepositories","summary":"Bulk remove repositories","description":"Disconnects many repositories at once and removes their indexes. Each entry may be an `owner/name` string or an `{ owner, repo }` object. Returns a per-repository result so partial failures are visible.\n\n<sub>Scope: `repos:write`</sub>","tags":["repositories"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"provider","in":"query","description":"Source-control provider to use when the same repository path exists on more than one connected provider.","required":false,"schema":{"$ref":"#/components/schemas/V3OrganizationsOrgIdRepositoriesBulkRemoveDeleteParametersProvider","default":"github"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Per-repository results.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Repositories_bulkRemoveRepositories_Response_200"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkRepoRequest"}}}}}},"/v3/organizations/{orgId}/repositories/{owner}/{repo}":{"delete":{"operationId":"deleteRepository","summary":"Disconnect a repository","description":"Disconnects the repository from the organization and removes its index.\n\n<sub>Scope: `repos:write`</sub>","tags":["repositories"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"owner","in":"path","description":"Repository owner (user or organization).","required":true,"schema":{"type":"string"}},{"name":"repo","in":"path","description":"Repository name.","required":true,"schema":{"type":"string"}},{"name":"provider","in":"query","description":"Source-control provider to use when the same repository path exists on more than one connected provider.","required":false,"schema":{"$ref":"#/components/schemas/V3OrganizationsOrgIdRepositoriesOwnerRepoDeleteParametersProvider","default":"github"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Repositories_deleteRepository_Response_200"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/repositories/{owner}/{repo}/branches/{branch}":{"delete":{"operationId":"deleteRepositoryBranch","summary":"Delete a repository branch","description":"Deletes a branch from the connected repository.\n\n<sub>Scope: `repos:write`</sub>","tags":["repositories"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"owner","in":"path","description":"Repository owner (user or organization).","required":true,"schema":{"type":"string"}},{"name":"repo","in":"path","description":"Repository name.","required":true,"schema":{"type":"string"}},{"name":"branch","in":"path","description":"Branch name.","required":true,"schema":{"type":"string"}},{"name":"provider","in":"query","description":"Source-control provider to use when the same repository path exists on more than one connected provider.","required":false,"schema":{"$ref":"#/components/schemas/V3OrganizationsOrgIdRepositoriesOwnerRepoBranchesBranchDeleteParametersProvider","default":"github"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Repositories_deleteRepositoryBranch_Response_200"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/repositories/{owner}/{repo}/guardrails":{"get":{"operationId":"getRepositoryGuardrails","summary":"Get repository guardrails","description":"Returns the automation guardrails configured for a repository.\n\n<sub>Scope: `guardrails:read`</sub>","tags":["repositories"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"owner","in":"path","description":"Repository owner (user or organization).","required":true,"schema":{"type":"string"}},{"name":"repo","in":"path","description":"Repository name.","required":true,"schema":{"type":"string"}},{"name":"provider","in":"query","description":"Source-control provider to use when the same repository path exists on more than one connected provider.","required":false,"schema":{"$ref":"#/components/schemas/V3OrganizationsOrgIdRepositoriesOwnerRepoGuardrailsGetParametersProvider","default":"github"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The repository guardrails.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Repositories_getRepositoryGuardrails_Response_200"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"put":{"operationId":"updateRepositoryGuardrails","summary":"Update repository guardrails","description":"Partial update. Send only the guardrail fields you want to change.\n\n<sub>Scope: `guardrails:write`</sub>","tags":["repositories"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"owner","in":"path","description":"Repository owner (user or organization).","required":true,"schema":{"type":"string"}},{"name":"repo","in":"path","description":"Repository name.","required":true,"schema":{"type":"string"}},{"name":"provider","in":"query","description":"Source-control provider to use when the same repository path exists on more than one connected provider.","required":false,"schema":{"$ref":"#/components/schemas/V3OrganizationsOrgIdRepositoriesOwnerRepoGuardrailsPutParametersProvider","default":"github"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The updated repository guardrails.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Repositories_updateRepositoryGuardrails_Response_200"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Available during an Ara trial or paid subscription.","content":{"application/json":{"schema":{"description":"Any type"}}}},"403":{"description":"The key lacks the required scope or role.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Guardrails"}}}}}},"/v3/organizations/{orgId}/repositories/{owner}/{repo}/index":{"put":{"operationId":"indexRepository","summary":"Index a repository","description":"Starts (or restarts) indexing the repository for wiki generation and code understanding. Returns immediately; poll the indexing status to follow progress.\n\n<sub>Scope: `repos:write`</sub>","tags":["repositories"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"owner","in":"path","description":"Repository owner (user or organization).","required":true,"schema":{"type":"string"}},{"name":"repo","in":"path","description":"Repository name.","required":true,"schema":{"type":"string"}},{"name":"provider","in":"query","description":"Source-control provider to use when the same repository path exists on more than one connected provider.","required":false,"schema":{"$ref":"#/components/schemas/V3OrganizationsOrgIdRepositoriesOwnerRepoIndexPutParametersProvider","default":"github"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Indexing started.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Repositories_indexRepository_Response_200"}}}},"402":{"description":"Available during an Ara trial or paid subscription.","content":{"application/json":{"schema":{"description":"Any type"}}}},"403":{"description":"The key lacks access, or the repository was enabled but the GitLab account cannot manage its webhook.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IndexRepositoryRequestForbiddenError"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"The repository path conflicts with another provider, or the GitLab connection must be repaired.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IndexRepositoryRequestConflictError"}}}},"500":{"description":"The repository was enabled, but agent provisioning did not complete.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RepositoryProvisionFailure"}}}},"502":{"description":"The repository was enabled, but GitLab webhook provisioning failed upstream.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RepositoryProvisionFailure"}}}},"503":{"description":"The repository was enabled, but GitLab webhook provisioning is unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RepositoryProvisionFailure"}}}}}}},"/v3/organizations/{orgId}/repositories/{owner}/{repo}/indexing-status":{"get":{"operationId":"getIndexingStatus","summary":"Get indexing status","description":"Reports whether the repository is indexed and how far along the current indexing run is.\n\n<sub>Scope: `repos:read`</sub>","tags":["repositories"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"owner","in":"path","description":"Repository owner (user or organization).","required":true,"schema":{"type":"string"}},{"name":"repo","in":"path","description":"Repository name.","required":true,"schema":{"type":"string"}},{"name":"provider","in":"query","description":"Source-control provider to use when the same repository path exists on more than one connected provider.","required":false,"schema":{"$ref":"#/components/schemas/V3OrganizationsOrgIdRepositoriesOwnerRepoIndexingStatusGetParametersProvider","default":"github"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Indexing status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IndexingStatus"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/repositories/{owner}/{repo}/wiki":{"get":{"operationId":"getRepositoryWiki","summary":"Get repository wiki","description":"Returns the generated wiki for an indexed repository.\n\n<sub>Scope: `repos:read`</sub>","tags":["repositories"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"owner","in":"path","description":"Repository owner (user or organization).","required":true,"schema":{"type":"string"}},{"name":"repo","in":"path","description":"Repository name.","required":true,"schema":{"type":"string"}},{"name":"provider","in":"query","description":"Source-control provider to use when the same repository path exists on more than one connected provider.","required":false,"schema":{"$ref":"#/components/schemas/V3OrganizationsOrgIdRepositoriesOwnerRepoWikiGetParametersProvider","default":"github"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The repository wiki.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WikiDocument"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/repositories/{owner}/{repo}/wiki/export":{"get":{"operationId":"exportRepositoryWiki","summary":"Export repository wiki","description":"Returns the entire generated wiki for an indexed repository as a single document: consolidated Markdown by default, or a structured JSON bundle with `?format=json`.\n\n<sub>Scope: `repos:read`</sub>","tags":["repositories"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"owner","in":"path","description":"Repository owner (user or organization).","required":true,"schema":{"type":"string"}},{"name":"repo","in":"path","description":"Repository name.","required":true,"schema":{"type":"string"}},{"name":"provider","in":"query","description":"Source-control provider to use when the same repository path exists on more than one connected provider.","required":false,"schema":{"$ref":"#/components/schemas/V3OrganizationsOrgIdRepositoriesOwnerRepoWikiExportGetParametersProvider","default":"github"}},{"name":"format","in":"query","description":"`markdown` returns the whole wiki as one Markdown document; `json` returns a structured bundle of the ordered pages.","required":false,"schema":{"$ref":"#/components/schemas/V3OrganizationsOrgIdRepositoriesOwnerRepoWikiExportGetParametersFormat","default":"markdown"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The exported wiki.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Repositories_exportRepositoryWiki_Response_200"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/knowledge/folders":{"get":{"operationId":"listKnowledgeFolders","summary":"List knowledge folders","description":"The folder structure with note counts, derived from each note's scope.\n\n<sub>Scope: `knowledge:read`</sub>","tags":["knowledge"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Folders.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Knowledge_listKnowledgeFolders_Response_200"}}}}}}},"/v3/organizations/{orgId}/knowledge/notes":{"get":{"operationId":"listNotes","summary":"List notes","description":"<sub>Scope: `knowledge:read`</sub>","tags":["knowledge"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Knowledge notes.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Knowledge_listNotes_Response_200"}}}}}},"post":{"operationId":"createNote","summary":"Create a note","description":"<sub>Scope: `run`</sub>","tags":["knowledge"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Created.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Note"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateNote"}}}}}},"/v3/organizations/{orgId}/knowledge/notes/{noteId}":{"get":{"operationId":"getNote","summary":"Retrieve a note","description":"<sub>Scope: `knowledge:read`</sub>","tags":["knowledge"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"noteId","in":"path","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The note.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Note"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"put":{"operationId":"updateNote","summary":"Update a note","description":"Partial update. Send only the fields you want to change.\n\n<sub>Scope: `run`</sub>","tags":["knowledge"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"noteId","in":"path","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Updated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Note"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateNote"}}}}},"delete":{"operationId":"deleteNote","summary":"Delete a note","description":"<sub>Scope: `run`</sub>","tags":["knowledge"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"noteId","in":"path","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Knowledge_deleteNote_Response_200"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/mcp-servers":{"get":{"operationId":"listMcpServers","summary":"List MCP servers","description":"Returns the org-level MCP servers exposed to the agent.  Secret values are never returned.\n\n<sub>Scope: `plugins:read`</sub>","tags":["mcpServers"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"MCP servers.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MCP Servers_listMcpServers_Response_200"}}}}}},"post":{"operationId":"createMcpServer","summary":"Create an MCP server","description":"Registers an org-level MCP server.  Secret values supplied in `secrets` are stored write-only and never returned.\n\n<sub>Scope: `plugins:write`</sub>","tags":["mcpServers"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"The created MCP server.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/McpServer"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"The key lacks the required scope or role.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/McpServerInput"}}}}}},"/v3/organizations/{orgId}/mcp-servers/{id}":{"get":{"operationId":"getMcpServer","summary":"Retrieve an MCP server","description":"Returns a single org-level MCP server.  Secret values are never returned.\n\n<sub>Scope: `plugins:read`</sub>","tags":["mcpServers"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","description":"The MCP server id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The MCP server.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/McpServer"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"delete":{"operationId":"deleteMcpServer","summary":"Delete an MCP server","description":"Removes an org-level MCP server.\n\n<sub>Scope: `plugins:write`</sub>","tags":["mcpServers"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","description":"The MCP server id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MCP Servers_deleteMcpServer_Response_200"}}}},"403":{"description":"The key lacks the required scope or role.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"patch":{"operationId":"updateMcpServer","summary":"Update an MCP server","description":"Partial update. Send only the fields you want to change.  Secret values are stored write-only and never returned.\n\n<sub>Scope: `plugins:write`</sub>","tags":["mcpServers"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","description":"The MCP server id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The updated MCP server.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/McpServer"}}}},"403":{"description":"The key lacks the required scope or role.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/McpServerInput"}}}}}},"/v3/organizations/{orgId}/members/users":{"get":{"operationId":"listMembers","summary":"List members","description":"Returns the people in the organization.\n\n<sub>Scope: `org:read`</sub>","tags":["members"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Members.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Members_listMembers_Response_200"}}}}}},"post":{"operationId":"inviteMember","summary":"Invite a member","description":"Sends invitations to join the organization with the given role.\n\n<sub>Scope: `org:write`</sub>","tags":["members"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Invitations created.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Members_inviteMember_Response_200"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"emails":{"type":"array","items":{"type":"string","format":"email"},"description":"Email addresses to invite."},"role":{"$ref":"#/components/schemas/V3OrganizationsOrgIdMembersUsersPostRequestBodyContentApplicationJsonSchemaRole","default":"admin","description":"Omitted values invite an admin; unknown values coerce to `member`."}},"required":["emails"]}}}}}},"/v3/organizations/{orgId}/members/users/{userId}":{"get":{"operationId":"getMember","summary":"Get a member","description":"<sub>Scope: `org:read`</sub>","tags":["members"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"userId","in":"path","description":"The member's user id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The member.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Member"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"delete":{"operationId":"removeMember","summary":"Remove a member","description":"<sub>Scope: `org:write`</sub>","tags":["members"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"userId","in":"path","description":"The member's user id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Members_removeMember_Response_200"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/members/users/{userId}/role":{"put":{"operationId":"setMemberRole","summary":"Set a member's role","description":"<sub>Scope: `org:write`</sub>","tags":["members"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"userId","in":"path","description":"The member's user id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Role updated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Members_setMemberRole_Response_200"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"role":{"$ref":"#/components/schemas/V3OrganizationsOrgIdMembersUsersUserIdRolePutRequestBodyContentApplicationJsonSchemaRole","description":"`owner` may only be granted by an org owner."}},"required":["role"]}}}}}},"/v3/organizations/{orgId}/memory/notes":{"get":{"operationId":"listMemoryNotes","summary":"List repository memory notes","description":"Lists editable notes for one connected repository. Generated native memory is intentionally not included.\n\n<sub>Scope: `memory:read`</sub>","tags":["memory"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"repo","in":"query","description":"Provider-native repository path (for example owner/repo).","required":true,"schema":{"type":"string"}},{"name":"provider","in":"query","description":"Source-control provider. Required when this path exists on more than one provider.","required":false,"schema":{"$ref":"#/components/schemas/V3OrganizationsOrgIdMemoryNotesGetParametersProvider"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Memory notes.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MemoryNoteList"}}}}}},"post":{"operationId":"createMemoryNote","summary":"Create a repository memory note","description":"Creates an explicit note immediately. Ara materializes it into the native append-only note extension before the next cold, memory-enabled run. Generated native memory remains read-only.\n\n<sub>Scope: `memory:write`</sub>","tags":["memory"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Created.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MemoryNoteResponse"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateMemoryNote"}}}}}},"/v3/organizations/{orgId}/memory/notes/{memoryId}":{"get":{"operationId":"getMemoryNote","summary":"Retrieve a repository memory note","description":"<sub>Scope: `memory:read`</sub>","tags":["memory"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"memoryId","in":"path","description":"The repository memory note id.","required":true,"schema":{"type":"string"}},{"name":"repo","in":"query","description":"Provider-native repository path (for example owner/repo).","required":true,"schema":{"type":"string"}},{"name":"provider","in":"query","description":"Source-control provider. Required when this path exists on more than one provider.","required":false,"schema":{"$ref":"#/components/schemas/V3OrganizationsOrgIdMemoryNotesMemoryIdGetParametersProvider"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Memory note.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MemoryNoteResponse"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"delete":{"operationId":"forgetMemoryNote","summary":"Forget a repository memory note","description":"Hides the editable note immediately and records a native forget event for the next cold, memory-enabled run; historic native note files remain append-only by design.\n\n<sub>Scope: `memory:write`</sub>","tags":["memory"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"memoryId","in":"path","description":"The repository memory note id.","required":true,"schema":{"type":"string"}},{"name":"repo","in":"query","description":"Provider-native repository path (for example owner/repo).","required":true,"schema":{"type":"string"}},{"name":"provider","in":"query","description":"Source-control provider. Required when this path exists on more than one provider.","required":false,"schema":{"$ref":"#/components/schemas/V3OrganizationsOrgIdMemoryNotesMemoryIdDeleteParametersProvider"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Memory_forgetMemoryNote_Response_200"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"patch":{"operationId":"updateMemoryNote","summary":"Update a repository memory note","description":"Updates the explicit note immediately and records a new native append-only revision for the next cold, memory-enabled run. Generated native memory remains read-only.\n\n<sub>Scope: `memory:write`</sub>","tags":["memory"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"memoryId","in":"path","description":"The repository memory note id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Updated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MemoryNoteResponse"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMemoryNote"}}}}}},"/v3/organizations/{orgId}/metrics/usage":{"get":{"operationId":"getUsageMetrics","summary":"Get usage metrics","description":"Returns a usage time series, such as sandbox minutes and tokens per day.\n\n<sub>Scope: `analytics:read`</sub>","tags":["metrics"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Usage time series.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Metrics_getUsageMetrics_Response_200"}}}}}}},"/v3/organizations/{orgId}/queue":{"get":{"operationId":"getQueueStatus","summary":"Get queue status","description":"Returns the current run queue: workspace and per-repo running/queued counts plus the running and queued runs.\n\n<sub>Scope: `analytics:read`</sub>","tags":["metrics"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Queue status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Metrics_getQueueStatus_Response_200"}}}}}}},"/v3/organizations/{orgId}/pr-reviews":{"get":{"operationId":"listPrReviews","summary":"List change request reviews","description":"Returns the latest automated pull request or merge request reviews, newest first, cursor-paginated.\n\n<sub>Scope: `reviews:read`</sub>","tags":["changeRequestReviews"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"first","in":"query","description":"Page size (default 50, max 200).","required":false,"schema":{"type":"integer","default":50}},{"name":"after","in":"query","description":"Cursor from the previous page's `end_cursor`.","required":false,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"A page of change request reviews.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Change Request Reviews_listPrReviews_Response_200"}}}},"401":{"description":"Missing, invalid, or expired key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"post":{"operationId":"triggerPrReview","summary":"Trigger a change request review","description":"Queues an automated review of a pull request or merge request. Provide `repository` and `pr_number`, or provide `pr_url`; add optional `provider` and `instructions`.\n\n<sub>Scope: `reviews:write`</sub>","tags":["changeRequestReviews"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Review queued.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Change Request Reviews_triggerPrReview_Response_201"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing, invalid, or expired key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreatePrReview"}}}}}},"/v3/organizations/{orgId}/roles":{"get":{"operationId":"listRoleAssignments","summary":"List role assignments","description":"Returns the role assigned to each member.\n\n<sub>Scope: `org:read`</sub>","tags":["roles"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Role assignments.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Roles_listRoleAssignments_Response_200"}}}}}},"put":{"operationId":"setRoleAssignment","summary":"Set a role assignment","description":"Assigns a role to a member.\n\n<sub>Scope: `org:write`</sub>","tags":["roles"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Role assigned.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoleAssignment"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"user_id":{"type":"string","description":"Target user id. Provide either `user_id` or `email`."},"email":{"type":"string","description":"Target user email, resolved to the user. Alternative to `user_id`."},"role":{"$ref":"#/components/schemas/V3OrganizationsOrgIdRolesPutRequestBodyContentApplicationJsonSchemaRole","description":"App-level product role."}},"required":["role"]}}}}}},"/v3/organizations/{orgId}/roles/me":{"get":{"operationId":"getOwnRole","summary":"Get the caller's role","description":"Returns the calling principal's role assignment in this organization.\n\n<sub>Scope: `org:read`</sub>","tags":["roles"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The caller's role assignment.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoleAssignment"}}}}}}},"/v3/organizations/{orgId}/roles/{userId}":{"get":{"operationId":"getRoleAssignment","summary":"Get a member's role","description":"<sub>Scope: `org:read`</sub>","tags":["roles"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"userId","in":"path","description":"The member's user id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The role assignment.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoleAssignment"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/secrets":{"get":{"operationId":"listSecrets","summary":"List secret names","description":"Lists secret names and metadata. Values are never returned.\n\n<sub>Scope: `secrets:read`</sub>","tags":["secrets"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"scope","in":"query","required":false,"schema":{"$ref":"#/components/schemas/V3OrganizationsOrgIdSecretsGetParametersScope","default":"user"}},{"name":"repo","in":"query","description":"Required when `scope=repo`. GitHub uses `owner/name`; GitLab projects may include nested groups, such as `group/subgroup/project`.","required":false,"schema":{"type":"string"}},{"name":"provider","in":"query","description":"Source-control provider for repo-scoped secrets. Defaults to GitHub first, then GitLab if no GitHub repository matches.","required":false,"schema":{"$ref":"#/components/schemas/V3OrganizationsOrgIdSecretsGetParametersProvider"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Secret names.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Secrets_listSecrets_Response_200"}}}}}},"post":{"operationId":"setSecret","summary":"Create or update a secret","description":"<sub>Scope: `secrets:write`</sub>","tags":["secrets"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Secret stored.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Secrets_setSecret_Response_201"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSecret"}}}}}},"/v3/organizations/{orgId}/secrets/{secretId}":{"delete":{"operationId":"deleteSecret","summary":"Delete a secret","description":"<sub>Scope: `secrets:write`</sub>","tags":["secrets"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"secretId","in":"path","description":"The secret name.","required":true,"schema":{"type":"string"}},{"name":"scope","in":"query","required":false,"schema":{"$ref":"#/components/schemas/V3OrganizationsOrgIdSecretsSecretIdDeleteParametersScope","default":"user"}},{"name":"repo","in":"query","description":"Required when `scope=repo`. GitHub uses `owner/name`; GitLab projects may include nested groups, such as `group/subgroup/project`.","required":false,"schema":{"type":"string"}},{"name":"provider","in":"query","description":"Source-control provider for repo-scoped secrets. Defaults to GitHub first, then GitLab if no GitHub repository matches.","required":false,"schema":{"$ref":"#/components/schemas/V3OrganizationsOrgIdSecretsSecretIdDeleteParametersProvider"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Secrets_deleteSecret_Response_200"}}}}}}},"/v3/organizations/{orgId}/sessions":{"get":{"operationId":"listSessions","summary":"List sessions","description":"Returns sessions newest first, cursor-paginated.\n\n<sub>Scope: `sessions:read`</sub>","tags":["sessions"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"first","in":"query","description":"Page size (default 50, max 200).","required":false,"schema":{"type":"integer","default":50}},{"name":"after","in":"query","description":"Cursor from the previous page's `end_cursor`.","required":false,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"A page of sessions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Sessions_listSessions_Response_200"}}}},"401":{"description":"Missing, invalid, or expired key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"post":{"operationId":"createSession","summary":"Create a session","description":"Opens a new session. Provide a `repo` (the agent is connected and run against it) and a `prompt` describing the task. The session starts immediately and runs asynchronously: poll `GET /sessions/{id}` or subscribe to the event stream.\n\n<sub>Scope: `run`</sub>","tags":["sessions"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Session created and queued.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Sessions_createSession_Response_201"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Missing, invalid, or expired key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Model credential preflight could not be completed.","content":{"application/json":{"schema":{"description":"Any type"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSession"}}}}}},"/v3/organizations/{orgId}/sessions/insights":{"get":{"operationId":"listSessionsWithInsights","summary":"List sessions with insights","description":"Pages sessions like `GET /sessions` and attaches each session's stored insight (or a `not_generated` placeholder). Nothing is generated by this call.\n\n<sub>Scope: `sessions:read`</sub>","tags":["sessions"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"first","in":"query","description":"Page size (default 50, max 200).","required":false,"schema":{"type":"integer","default":50}},{"name":"after","in":"query","description":"Cursor from the previous page's `end_cursor`.","required":false,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"A page of sessions, each carrying an `insight` object.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Sessions_listSessionsWithInsights_Response_200"}}}}}}},"/v3/organizations/{orgId}/sessions/{sessionId}":{"get":{"operationId":"getSession","summary":"Retrieve a session","description":"<sub>Scope: `sessions:read`</sub>","tags":["sessions"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"sessionId","in":"path","description":"The session id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The session.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Session"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"delete":{"operationId":"deleteSession","summary":"Delete a session","description":"Permanently deletes the session. Set `?archive=true` to preserve it (archive) instead.\n\n<sub>Scope: `run`</sub>","tags":["sessions"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"sessionId","in":"path","description":"The session id.","required":true,"schema":{"type":"string"}},{"name":"archive","in":"query","description":"When `true`, archive the session instead of deleting it.","required":false,"schema":{"type":"boolean"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Sessions_deleteSession_Response_200"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/sessions/{sessionId}/archive":{"post":{"operationId":"archiveSession","summary":"Archive a session","description":"<sub>Scope: `run`</sub>","tags":["sessions"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"sessionId","in":"path","description":"The session id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Sessions_archiveSession_Response_200"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/sessions/{sessionId}/attachments":{"get":{"operationId":"listSessionAttachments","summary":"List attachments","description":"Artifacts produced by the session: diffs, logs, screenshots, and build outputs.\n\n<sub>Scope: `sessions:read`</sub>","tags":["sessions"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"sessionId","in":"path","description":"The session id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The session's attachments.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Sessions_listSessionAttachments_Response_200"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/sessions/{sessionId}/attachments/{attachmentId}":{"get":{"operationId":"getSessionAttachment","summary":"Download an attachment","description":"Redirects (307) to a download URL for the attachment.\n\n<sub>Scope: `sessions:read`</sub>","tags":["sessions"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"sessionId","in":"path","description":"The session id.","required":true,"schema":{"type":"string"}},{"name":"attachmentId","in":"path","description":"The attachment id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Successful response"},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/sessions/{sessionId}/cancel":{"post":{"operationId":"cancelSession","summary":"Cancel a session","description":"Requests cancellation of a running session. Returns whether the request was newly flagged.\n\n<sub>Scope: `run`</sub>","tags":["sessions"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"sessionId","in":"path","description":"The session id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Cancellation requested.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Sessions_cancelSession_Response_200"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/sessions/{sessionId}/insights":{"get":{"operationId":"getSessionInsight","summary":"Get session insights","description":"Returns the generated insight for a session: a summary, category, outcome, and headline metrics. If no insight has been generated yet, `status` is `not_generated` and the detail fields are absent.\n\n<sub>Scope: `sessions:read`</sub>","tags":["sessions"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"sessionId","in":"path","description":"The session id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The session insight, or a `not_generated` placeholder.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionInsight"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/sessions/{sessionId}/insights/generate":{"post":{"operationId":"generateSessionInsight","summary":"Generate session insights","description":"Generates (or regenerates) the insight for a session and returns it. The session must have finished.\n\n<sub>Scope: `run`</sub>","tags":["sessions"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"sessionId","in":"path","description":"The session id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"The generated insight.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionInsight"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/organizations/{orgId}/sessions/{sessionId}/messages":{"get":{"operationId":"listSessionMessages","summary":"List messages","description":"Poll the session's messages, cursor-paginated: pass the previous response's `end_cursor` as `after` (legacy spelling: `after_seq` / `next_seq`).\n\n<sub>Scope: `sessions:read`</sub>","tags":["sessions"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"sessionId","in":"path","description":"The session id.","required":true,"schema":{"type":"string"}},{"name":"first","in":"query","description":"Page size (default 50, max 200).","required":false,"schema":{"type":"integer","default":50}},{"name":"after","in":"query","description":"Cursor from the previous page's `end_cursor`.","required":false,"schema":{"type":"string"}},{"name":"after_seq","in":"query","description":"Legacy spelling of `after`: return only messages with a higher sequence number.","required":false,"schema":{"type":"integer"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"A page of messages.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Sessions_listSessionMessages_Response_200"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"post":{"operationId":"sendSessionMessage","summary":"Send a message","description":"Adds a follow-up instruction to a running session, like steering an engineer mid-task.\n\n<sub>Scope: `run`</sub>","tags":["sessions"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"sessionId","in":"path","description":"The session id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Sessions_sendSessionMessage_Response_200"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"]}}}}}},"/v3/organizations/{orgId}/sessions/{sessionId}/tags":{"get":{"operationId":"listSessionTags","summary":"List session tags","description":"<sub>Scope: `sessions:read`</sub>","tags":["sessions"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"sessionId","in":"path","description":"The session id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The session's tags.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagList"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"post":{"operationId":"appendSessionTags","summary":"Append session tags","description":"Adds tags to the session (set-union, deduped).\n\n<sub>Scope: `run`</sub>","tags":["sessions"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"sessionId","in":"path","description":"The session id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Resulting tags.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagList"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"tags":{"type":"array","items":{"type":"string"}}},"required":["tags"]}}}}},"put":{"operationId":"replaceSessionTags","summary":"Replace session tags","description":"<sub>Scope: `run`</sub>","tags":["sessions"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"sessionId","in":"path","description":"The session id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Resulting tags.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagList"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"tags":{"type":"array","items":{"type":"string"}}},"required":["tags"]}}}}},"patch":{"operationId":"updateSessionTags","summary":"Replace session tags","description":"<sub>Scope: `run`</sub>","tags":["sessions"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"sessionId","in":"path","description":"The session id.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tags replaced.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Sessions_updateSessionTags_Response_200"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"tags":{"type":"array","items":{"type":"string"}}},"required":["tags"]}}}}}},"/v3/organizations/{orgId}/settings":{"get":{"operationId":"listSettings","summary":"List organization settings","description":"Returns every namespaced setting as a map of namespace to its value object.\n\n<sub>Scope: `org:read`</sub>","tags":["settings"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Organization settings.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Settings_listSettings_Response_200"}}}}}}},"/v3/organizations/{orgId}/settings/{namespace}":{"get":{"operationId":"getSetting","summary":"Get a settings namespace","description":"Returns the value object for a single settings namespace, or null if unset.\n\n<sub>Scope: `org:read`</sub>","tags":["settings"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"namespace","in":"path","description":"The settings namespace.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The settings namespace value.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Settings_getSetting_Response_200"}}}}}},"put":{"operationId":"updateSetting","summary":"Update a settings namespace","description":"Replaces the value object for a single settings namespace. Only validated namespaces are writable; an unknown namespace returns a 400.\n\n<sub>Scope: `org:write`</sub>","tags":["settings"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"namespace","in":"path","description":"The settings namespace.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The updated settings namespace value.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Settings_updateSetting_Response_200"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"The key lacks the required scope or role.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{}}}}}}},"/v3/organizations/{orgId}/setup-helper":{"get":{"operationId":"getSetupHelper","summary":"Ranked repo setup suggestions","description":"Returns the org's most recently active repositories, each with its top recent commit authors and language, plus a recent-contributor leaderboard. Repo metadata + contributor activity only (no file or secret inspection). Intended to be called while following the onboarding setup prompt: the agent discovers who the local user is and uses the per-repo committers to judge which repos are theirs. `limit` (default 10, max 25) caps the returned repos.\n\n<sub>Scope: `repos:read`</sub>","tags":["setup"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Setup-helper suggestions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetupHelperResponse"}}}}}}},"/v3/organizations/{orgId}/skills":{"get":{"operationId":"listSkills","summary":"List skills","description":"<sub>Scope: `skills:read`</sub>","tags":["skills"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Organization skills.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Skills_listSkills_Response_200"}}}}}},"post":{"operationId":"createSkill","summary":"Create a skill","description":"<sub>Scope: `skills:write`</sub>","tags":["skills"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Created.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Skill"}}}},"400":{"description":"Invalid request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSkill"}}}}}},"/v3/organizations/{orgId}/skills/{skillId}":{"get":{"operationId":"getSkill","summary":"Retrieve a skill","description":"<sub>Scope: `skills:read`</sub>","tags":["skills"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"skillId","in":"path","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Skill.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Skill"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"put":{"operationId":"updateSkill","summary":"Update a skill","description":"Partial update. Send only the fields you want to change.\n\n<sub>Scope: `skills:write`</sub>","tags":["skills"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"skillId","in":"path","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Updated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Skill"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSkill"}}}}},"delete":{"operationId":"deleteSkill","summary":"Delete a skill","description":"<sub>Scope: `skills:write`</sub>","tags":["skills"],"parameters":[{"name":"orgId","in":"path","description":"Organization id or slug. Resolve it with `GET /v3/self`.","required":true,"schema":{"type":"string"}},{"name":"skillId","in":"path","required":true,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Skills_deleteSkill_Response_200"}}}},"404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v3/self":{"get":{"operationId":"getSelf","summary":"Verify credentials","description":"Returns the principal behind the current key and the organization it can act on. Call this first to discover your `org_id`.\n\n<sub>Auth: any valid API key (no scope)</sub>","tags":["account"],"parameters":[{"name":"Authorization","in":"header","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The authenticated principal.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Self"}}}},"401":{"description":"Missing, invalid, or expired key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}},"servers":[{"url":"https://api.ara.so","description":"https://api.ara.so"}],"components":{"schemas":{"Organization":{"type":"object","properties":{"org_id":{"type":"string"},"name":{"type":"string"},"slug":{"type":"string"},"plan":{"type":["string","null"]},"created_at":{"type":"string","format":"date-time"}},"title":"Organization"},"Organizations_listOrganizations_Response_200":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/Organization"}},"total":{"type":"integer"}},"title":"Organizations_listOrganizations_Response_200"},"CreateOrganization":{"type":"object","properties":{"name":{"type":"string"},"slug":{"type":"string","description":"Optional URL slug; generated from the name when omitted."}},"required":["name"],"title":"CreateOrganization"},"Error":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"}},"title":"Error"},"Organizations_deleteOrganization_Response_200":{"type":"object","properties":{},"description":"Empty response body","title":"Organizations_deleteOrganization_Response_200"},"Attachment":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"content_type":{"type":"string"},"size_bytes":{"type":"integer"},"url":{"type":"string","description":"A signed download URL for the file."},"created_at":{"type":"string","format":"date-time"}},"title":"Attachment"},"Attachments_listAttachments_Response_200":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/Attachment"}},"end_cursor":{"type":["string","null"]},"has_next_page":{"type":"boolean"}},"title":"Attachments_listAttachments_Response_200"},"AuditLogEntryMetadata":{"type":"object","properties":{},"title":"AuditLogEntryMetadata"},"AuditLogEntry":{"type":"object","properties":{"id":{"type":"string"},"action":{"type":"string","description":"The action performed, e.g. `secret.created`."},"actor":{"type":["string","null"],"description":"Who performed the action."},"target":{"type":["string","null"],"description":"The affected resource."},"metadata":{"oneOf":[{"$ref":"#/components/schemas/AuditLogEntryMetadata"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time"}},"title":"AuditLogEntry"},"Audit Logs_listAuditLogs_Response_200":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/AuditLogEntry"}},"has_next_page":{"type":"boolean"},"end_cursor":{"type":["string","null"],"description":"Pass back as `after` for the next page."},"entries":{"type":"array","items":{"$ref":"#/components/schemas/AuditLogEntry"},"description":"Legacy twin of `items`."},"next_before":{"type":["string","null"],"description":"Legacy twin of `end_cursor`."}},"title":"Audit Logs_listAuditLogs_Response_200"},"V3OrganizationsOrgIdAutomationsGetParametersInclude":{"type":"string","enum":["system"],"title":"V3OrganizationsOrgIdAutomationsGetParametersInclude"},"AutomationTools":{"type":"object","properties":{"mcp_servers":{"type":["array","null"],"items":{"type":"string"},"description":"`null` inherits every enabled org MCP server."},"app_tools":{"type":"array","items":{"type":"string"}}},"title":"AutomationTools"},"AutomationEnvironmentProvider":{"type":"string","enum":["github","gitlab"],"title":"AutomationEnvironmentProvider"},"AutomationEnvironment":{"type":"object","properties":{"repo":{"type":["string","null"],"description":"Provider-native repository path. GitHub uses `owner/name`; GitLab may include nested groups."},"provider":{"$ref":"#/components/schemas/AutomationEnvironmentProvider"}},"title":"AutomationEnvironment"},"TriggerKind":{"type":"string","enum":["schedule","github_event","webhook"],"title":"TriggerKind"},"TriggerScheduleKind":{"type":"string","enum":["cron","every","at"],"title":"TriggerScheduleKind"},"TriggerSchedule":{"type":"object","properties":{"kind":{"$ref":"#/components/schemas/TriggerScheduleKind"},"expression":{"type":["string","null"],"description":"Cron expression, or the ISO run-at time for a one-time trigger."},"every_seconds":{"type":["integer","null"]},"next_run_at":{"type":["string","null"],"format":"date-time"}},"title":"TriggerSchedule"},"TriggerGithub":{"type":"object","properties":{"event":{"type":["string","null"]},"action":{"type":["string","null"]},"repo":{"type":["string","null"]}},"title":"TriggerGithub"},"TriggerWebhook":{"type":"object","properties":{"configured":{"type":"boolean"}},"title":"TriggerWebhook"},"Trigger":{"type":"object","properties":{"id":{"type":"string"},"kind":{"$ref":"#/components/schemas/TriggerKind"},"enabled":{"type":"boolean"},"schedule":{"oneOf":[{"$ref":"#/components/schemas/TriggerSchedule"},{"type":"null"}]},"github":{"oneOf":[{"$ref":"#/components/schemas/TriggerGithub"},{"type":"null"}]},"webhook":{"oneOf":[{"$ref":"#/components/schemas/TriggerWebhook"},{"type":"null"}]},"run_kind":{"type":["string","null"]},"last_fired_at":{"type":["string","null"],"format":"date-time"},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}},"description":"A condition that fires the automation. The webhook secret is never returned.","title":"Trigger"},"Automation":{"type":"object","properties":{"id":{"type":"string"},"org_id":{"type":"string"},"name":{"type":["string","null"]},"instructions":{"type":["string","null"],"description":"The system instructions the automation runs with."},"model":{"type":["string","null"]},"enabled":{"type":"boolean","description":"A paused (`false`) automation's triggers never fire."},"tools":{"$ref":"#/components/schemas/AutomationTools"},"environment":{"$ref":"#/components/schemas/AutomationEnvironment"},"triggers":{"type":"array","items":{"$ref":"#/components/schemas/Trigger"},"description":"Every condition that fires this automation. Empty until you add one."},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}},"description":"An automation: its instructions, tools, environment binding, and triggers.","title":"Automation"},"Automations_listAutomations_Response_200":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/Automation"}},"end_cursor":{"type":["string","null"]},"has_next_page":{"type":"boolean"}},"title":"Automations_listAutomations_Response_200"},"CreateAutomationProvider":{"type":"string","enum":["github","gitlab"],"description":"Source-control provider for the connected repository. Defaults to GitHub first, then GitLab if no GitHub repository matches.","title":"CreateAutomationProvider"},"CreateAutomationTools":{"type":"object","properties":{"mcp_servers":{"type":["array","null"],"items":{"type":"string"},"description":"Org MCP server slugs this automation may use. `null` inherits every enabled org server."},"app_tools":{"type":"array","items":{"type":"string"},"description":"Catalog connector slugs (e.g. `linear`, `sentry`)."}},"title":"CreateAutomationTools"},"CreateAutomation":{"type":"object","properties":{"name":{"type":"string","description":"Display name. Defaults to the first line of `instructions`."},"instructions":{"type":"string","description":"The system instructions the automation runs with."},"repo":{"type":"string","description":"Connected repository path. GitHub uses `owner/name`; GitLab projects may include nested groups, such as `group/subgroup/project`."},"provider":{"$ref":"#/components/schemas/CreateAutomationProvider","description":"Source-control provider for the connected repository. Defaults to GitHub first, then GitLab if no GitHub repository matches."},"model":{"type":["string","null"],"description":"Model override. `null` uses the workspace default."},"tools":{"$ref":"#/components/schemas/CreateAutomationTools"}},"required":["instructions","repo"],"description":"Creates the automation's configuration. It has no triggers until you add one via `POST /automations/{automationId}/triggers`, so it will not fire on its own yet.","title":"CreateAutomation"},"Automations_deleteAutomation_Response_200":{"type":"object","properties":{},"description":"Empty response body","title":"Automations_deleteAutomation_Response_200"},"UpdateAutomationTools":{"type":"object","properties":{"mcp_servers":{"type":["array","null"],"items":{"type":"string"},"description":"Org MCP server slugs this automation may use. `null` inherits every enabled org server."},"app_tools":{"type":"array","items":{"type":"string"},"description":"Catalog connector slugs (e.g. `linear`, `sentry`)."}},"title":"UpdateAutomationTools"},"UpdateAutomation":{"type":"object","properties":{"name":{"type":"string"},"instructions":{"type":"string"},"model":{"type":["string","null"]},"tools":{"$ref":"#/components/schemas/UpdateAutomationTools"},"enabled":{"type":"boolean","description":"Set `false` to pause the automation. A paused automation's triggers never fire."}},"description":"All fields optional. Only the fields you send are changed.","title":"UpdateAutomation"},"Automations_listAutomationTriggers_Response_200":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/Trigger"}}},"title":"Automations_listAutomationTriggers_Response_200"},"CreateTrigger":{"type":"object","properties":{"frequency":{"type":"string","description":"Cron expression, e.g. `0 3 * * *`, for a recurring trigger."},"every_seconds":{"type":"integer","description":"Fixed interval in seconds. Alternative to `frequency`."},"scheduled_at":{"type":"string","format":"date-time","description":"Run-at time for a one-time trigger. Alternative to `frequency`."},"enabled":{"type":"boolean","default":true}},"description":"Adds a schedule trigger to the automation. Provide exactly one of `frequency`, `every_seconds`, or `scheduled_at`.","title":"CreateTrigger"},"Automations_deleteAutomationTrigger_Response_200":{"type":"object","properties":{},"description":"Empty response body","title":"Automations_deleteAutomationTrigger_Response_200"},"V3OrganizationsOrgIdConsumptionDailyGetParametersGroupBy":{"type":"string","enum":["session","user"],"title":"V3OrganizationsOrgIdConsumptionDailyGetParametersGroupBy"},"ConsumptionDay":{"type":"object","properties":{"date":{"type":"string","format":"date"},"group":{"type":["string","null"],"description":"Present when the request groups by a dimension."},"sandbox_minutes":{"type":"number","format":"double"},"tokens":{"type":"integer"},"cost_usd":{"type":"number","format":"double"}},"title":"ConsumptionDay"},"V3OrganizationsOrgIdConsumptionDailyGetResponsesContentApplicationJsonSchemaItemsItems":{"type":"object","properties":{},"title":"V3OrganizationsOrgIdConsumptionDailyGetResponsesContentApplicationJsonSchemaItemsItems"},"V3OrganizationsOrgIdConsumptionDailyGetResponsesContentApplicationJsonSchemaTotal":{"type":"object","properties":{"spend_usd":{"type":"number","format":"double"},"credits_usd":{"type":"number","format":"double"},"sandbox_minutes":{"type":"number","format":"double"}},"title":"V3OrganizationsOrgIdConsumptionDailyGetResponsesContentApplicationJsonSchemaTotal"},"Consumption_getDailyConsumption_Response_200":{"type":"object","properties":{"daily":{"type":"array","items":{"$ref":"#/components/schemas/ConsumptionDay"},"description":"Per-day series (ungrouped requests)."},"items":{"type":"array","items":{"$ref":"#/components/schemas/V3OrganizationsOrgIdConsumptionDailyGetResponsesContentApplicationJsonSchemaItemsItems"},"description":"Per-key totals. Present instead of `daily` when `group_by` is set."},"total":{"$ref":"#/components/schemas/V3OrganizationsOrgIdConsumptionDailyGetResponsesContentApplicationJsonSchemaTotal"},"start_date":{"type":"string","format":"date"},"end_date":{"type":"string","format":"date"}},"title":"Consumption_getDailyConsumption_Response_200"},"BuildStatus":{"type":"string","enum":["pending","running","succeeded","failed","cancelled"],"title":"BuildStatus"},"Build":{"type":"object","properties":{"id":{"type":"string"},"repo_full_name":{"type":["string","null"]},"recipe_set_hash":{"type":"string"},"status":{"$ref":"#/components/schemas/BuildStatus"},"trigger":{"type":["string","null"]},"image_ref":{"type":["string","null"]},"error_class":{"type":["string","null"]},"started_at":{"type":["string","null"]},"completed_at":{"type":["string","null"]},"created_at":{"type":"string"},"updated_at":{"type":"string"}},"description":"An immutable image-build record.","title":"Build"},"BuildList":{"type":"object","properties":{"builds":{"type":"array","items":{"$ref":"#/components/schemas/Build"}}},"description":"A list of builds.","title":"BuildList"},"RecipeInputProvider":{"type":"string","enum":["github","gitlab"],"description":"Source-control provider for repo_name. Defaults to GitHub first, then GitLab if no GitHub repository matches.","title":"RecipeInputProvider"},"RecipeInput":{"type":"object","properties":{"repo_name":{"type":"string","description":"Provider-native repo path for a repo-tier recipe; GitHub uses owner/repo, GitLab may include nested groups. Omit for the org tier."},"provider":{"$ref":"#/components/schemas/RecipeInputProvider","description":"Source-control provider for repo_name. Defaults to GitHub first, then GitLab if no GitHub repository matches."},"contents":{"type":"string","description":"The environment spec YAML. `base`, `env`, and `initialize` are the Recipe (they build into the Image); `session_start`, `knowledge`, and `clone` sit alongside it and never trigger a build."}},"required":["contents"],"description":"Request body to upsert a recipe. repo_name selects the tier (present = repo, absent = org).","title":"RecipeInput"},"RecipeTier":{"type":"string","enum":["org","repo"],"title":"RecipeTier"},"Recipe":{"type":"object","properties":{"id":{"type":"string"},"tier":{"$ref":"#/components/schemas/RecipeTier"},"repo_full_name":{"type":["string","null"]},"contents":{"type":"string"},"source":{"type":"string"},"updated_by":{"type":["string","null"]},"created_at":{"type":"string"},"updated_at":{"type":"string"}},"description":"A tiered environment Recipe: the YAML manifest (base / env / setup) that builds into an Image.","title":"Recipe"},"RunbookMissingItem":{"type":"object","properties":{"kind":{"type":"string","description":"What is missing: secret | integration | file | other."},"name":{"type":"string","description":"The missing thing, e.g. DATABASE_URL."},"note":{"type":"string","description":"Why it is needed / where it comes from."}},"description":"A gap the bootstrap found that still needs configuring.","title":"RunbookMissingItem"},"Runbook":{"type":"object","properties":{"repo_full_name":{"type":"string"},"body":{"type":"string","description":"The plain-text runbook injected into every session on this repo."},"missing":{"type":"array","items":{"$ref":"#/components/schemas/RunbookMissingItem"}},"updated_at":{"type":["string","null"]},"source_session_id":{"type":["string","null"],"description":"The session that last wrote it; null when a human edited it."},"updated_by":{"type":["string","null"],"description":"Which plane last wrote it: agent | v3 | app | admin."}},"description":"The per-repo operating guide (how to install, run, operate, and test the repo).","title":"Runbook"},"RunbookInputProvider":{"type":"string","enum":["github","gitlab"],"description":"Source-control provider for repo_name. Defaults to GitHub first, then GitLab if no GitHub repository matches.","title":"RunbookInputProvider"},"RunbookInput":{"type":"object","properties":{"repo_name":{"type":"string","description":"Provider-native repo path the runbook belongs to. GitLab projects may include nested groups."},"provider":{"$ref":"#/components/schemas/RunbookInputProvider","description":"Source-control provider for repo_name. Defaults to GitHub first, then GitLab if no GitHub repository matches."},"body":{"type":"string","description":"The full runbook text. REPLACES the current body; read it first."},"missing":{"type":"array","items":{"$ref":"#/components/schemas/RunbookMissingItem"},"description":"Replaces the stored gaps list when present; omit to preserve it."}},"required":["repo_name","body"],"description":"Request body to replace a repo's runbook. Read the current runbook first; the body is a full replace and must be non-empty. Omitting `missing` preserves the stored gaps list.","title":"RunbookInput"},"SessionStartScriptSource":{"type":"string","enum":["recipe","stand-in","none"],"title":"SessionStartScriptSource"},"SessionStartScript":{"type":"object","properties":{"script":{"type":"string"},"source":{"$ref":"#/components/schemas/SessionStartScriptSource"}},"description":"The session-start script that runs at the start of every session.","title":"SessionStartScript"},"GitConnectionId":{"oneOf":[{"type":"string"},{"type":"number","format":"double"}],"description":"Provider connection id. GitHub uses the installation id; GitLab uses the Ara connection id.","title":"GitConnectionId"},"GitConnectionProvider":{"type":"string","enum":["github","gitlab"],"description":"The source-control provider.","title":"GitConnectionProvider"},"GitConnectionAccountType":{"type":"string","enum":["user","organization"],"title":"GitConnectionAccountType"},"GitConnection":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/GitConnectionId","description":"Provider connection id. GitHub uses the installation id; GitLab uses the Ara connection id."},"git_connection_id":{"type":"string"},"provider":{"$ref":"#/components/schemas/GitConnectionProvider","description":"The source-control provider."},"host":{"type":"string","description":"The source-control host, e.g. `github.com` or `gitlab.com`."},"account_login":{"type":"string","description":"The linked account's login."},"account_type":{"$ref":"#/components/schemas/GitConnectionAccountType"},"connected_at":{"type":"string","format":"date-time"}},"title":"GitConnection"},"Git Connections_listGitConnections_Response_200":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/GitConnection"}},"total":{"type":"integer"}},"title":"Git Connections_listGitConnections_Response_200"},"GitConnectionRepositoryProvider":{"type":"string","enum":["github","gitlab"],"description":"The source-control provider.","title":"GitConnectionRepositoryProvider"},"GitConnectionRepository":{"type":"object","properties":{"full_name":{"type":"string","description":"Provider-native repository path. GitLab projects may include nested groups."},"full_path":{"type":"string","description":"Provider-native repository path. GitLab projects may include nested groups."},"provider":{"$ref":"#/components/schemas/GitConnectionRepositoryProvider","description":"The source-control provider."},"host":{"type":"string","description":"The source-control host, e.g. `github.com` or `gitlab.com`."},"web_url":{"type":"string","format":"uri"},"private":{"type":"boolean"},"default_branch":{"type":["string","null"]},"connected":{"type":"boolean","description":"Whether this repository is already connected to the organization."}},"title":"GitConnectionRepository"},"Git Connections_listGitConnectionRepositories_Response_200":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/GitConnectionRepository"}},"total":{"type":"integer"}},"title":"Git Connections_listGitConnectionRepositories_Response_200"},"GitPluginId":{"oneOf":[{"type":"string"},{"type":"number","format":"double"}],"description":"Provider connection id. GitHub uses the installation id; GitLab uses the Ara connection id.","title":"GitPluginId"},"GitPluginProvider":{"type":"string","enum":["github","gitlab"],"description":"The source-control provider.","title":"GitPluginProvider"},"GitPluginAccountType":{"type":"string","enum":["user","organization"],"title":"GitPluginAccountType"},"GitPlugin":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/GitPluginId","description":"Provider connection id. GitHub uses the installation id; GitLab uses the Ara connection id."},"git_plugin_id":{"type":"string"},"provider":{"$ref":"#/components/schemas/GitPluginProvider","description":"The source-control provider."},"host":{"type":"string","description":"The source-control host, e.g. `github.com` or `gitlab.com`."},"account_login":{"type":"string","description":"The linked account's login."},"account_type":{"$ref":"#/components/schemas/GitPluginAccountType"},"connected_at":{"type":"string","format":"date-time"}},"title":"GitPlugin"},"Git Plugins_listGitPlugins_Response_200":{"type":"object","properties":{"plugins":{"type":"array","items":{"$ref":"#/components/schemas/GitPlugin"}},"total":{"type":"integer"}},"title":"Git Plugins_listGitPlugins_Response_200"},"GitPluginRepositoryProvider":{"type":"string","enum":["github","gitlab"],"description":"The source-control provider.","title":"GitPluginRepositoryProvider"},"GitPluginRepository":{"type":"object","properties":{"full_name":{"type":"string","description":"Provider-native repository path. GitLab projects may include nested groups."},"full_path":{"type":"string","description":"Provider-native repository path. GitLab projects may include nested groups."},"provider":{"$ref":"#/components/schemas/GitPluginRepositoryProvider","description":"The source-control provider."},"host":{"type":"string","description":"The source-control host, e.g. `github.com` or `gitlab.com`."},"web_url":{"type":"string","format":"uri"},"private":{"type":"boolean"},"default_branch":{"type":["string","null"]},"connected":{"type":"boolean","description":"Whether this repository is already connected to the organization."}},"title":"GitPluginRepository"},"Git Plugins_listGitPluginRepositories_Response_200":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/GitPluginRepository"}},"total":{"type":"integer"}},"title":"Git Plugins_listGitPluginRepositories_Response_200"},"IndexedRepositoryIndexingStatus":{"type":"string","enum":["pending","indexing","indexed","failed"],"title":"IndexedRepositoryIndexingStatus"},"IndexedRepository":{"type":"object","properties":{"repo_id":{"type":"string"},"full_name":{"type":"string","description":"Provider-native repository path. GitHub uses `owner/name`; GitLab may include nested groups."},"indexing_status":{"$ref":"#/components/schemas/IndexedRepositoryIndexingStatus"},"has_wiki":{"type":"boolean"},"last_indexed_at":{"type":["string","null"],"format":"date-time"}},"title":"IndexedRepository"},"Repositories_listIndexedRepositories_Response_200":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/IndexedRepository"}},"total":{"type":"integer"}},"title":"Repositories_listIndexedRepositories_Response_200"},"RepositoryProvider":{"type":"string","enum":["github","gitlab"],"description":"Source-control provider for this connected repository.","title":"RepositoryProvider"},"Repository":{"type":"object","properties":{"repo_id":{"type":"string"},"owner":{"type":"string"},"name":{"type":"string"},"full_name":{"type":"string","description":"Provider-native repository path. GitHub uses `owner/name`; GitLab may include nested groups."},"repo_full_name":{"type":"string","description":"Connected repository name, preserving the legacy field name."},"provider":{"$ref":"#/components/schemas/RepositoryProvider","description":"Source-control provider for this connected repository."},"full_path":{"type":"string","description":"Provider-native repository path. For GitLab this may include nested groups."},"web_url":{"type":["string","null"],"description":"Provider web URL for the repository."},"private":{"type":"boolean"},"default_branch":{"type":["string","null"]},"connected":{"type":"boolean","description":"Whether agents can run against this repository."},"wiki_indexed":{"type":"boolean","description":"Whether wiki/code indexing is enabled for this repository."}},"title":"Repository"},"Repositories_listRepositories_Response_200":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/Repository"}},"total":{"type":"integer"}},"title":"Repositories_listRepositories_Response_200"},"BulkRepoRequestRepositoriesItems1":{"type":"object","properties":{"owner":{"type":"string"},"repo":{"type":"string"}},"required":["owner","repo"],"title":"BulkRepoRequestRepositoriesItems1"},"BulkRepoRequestRepositoriesItems":{"oneOf":[{"type":"string"},{"$ref":"#/components/schemas/BulkRepoRequestRepositoriesItems1"}],"title":"BulkRepoRequestRepositoriesItems"},"BulkRepoRequest":{"type":"object","properties":{"repositories":{"type":"array","items":{"$ref":"#/components/schemas/BulkRepoRequestRepositoriesItems"}}},"required":["repositories"],"description":"A list of repositories to operate on. Each entry is either an `owner/name` string or an `{ owner, repo }` object.","title":"BulkRepoRequest"},"BulkRepoResultAction":{"type":"string","enum":["reconnect_gitlab","grant_gitlab_project_permission"],"title":"BulkRepoResultAction"},"BulkRepoResult":{"type":"object","properties":{"repo":{"type":"string","description":"Provider-native repository path. GitHub uses `owner/name`; GitLab may include nested groups."},"status":{"type":"string","description":"Per-repository status, e.g. `indexing`, `removed`, or `error`."},"error":{"type":"string","description":"Present only when `status` is `error`."},"repo_enabled":{"type":"boolean","description":"True when the repository row exists even though provisioning failed."},"retryable":{"type":"boolean"},"action":{"$ref":"#/components/schemas/BulkRepoResultAction"}},"description":"The outcome of a bulk operation for a single repository.","title":"BulkRepoResult"},"Repositories_bulkIndexRepositories_Response_200":{"type":"object","properties":{"results":{"type":"array","items":{"$ref":"#/components/schemas/BulkRepoResult"}}},"title":"Repositories_bulkIndexRepositories_Response_200"},"V3OrganizationsOrgIdRepositoriesBulkRemoveDeleteParametersProvider":{"type":"string","enum":["github","gitlab"],"default":"github","title":"V3OrganizationsOrgIdRepositoriesBulkRemoveDeleteParametersProvider"},"Repositories_bulkRemoveRepositories_Response_200":{"type":"object","properties":{"results":{"type":"array","items":{"$ref":"#/components/schemas/BulkRepoResult"}}},"title":"Repositories_bulkRemoveRepositories_Response_200"},"V3OrganizationsOrgIdRepositoriesOwnerRepoDeleteParametersProvider":{"type":"string","enum":["github","gitlab"],"default":"github","title":"V3OrganizationsOrgIdRepositoriesOwnerRepoDeleteParametersProvider"},"Repositories_deleteRepository_Response_200":{"type":"object","properties":{},"description":"Empty response body","title":"Repositories_deleteRepository_Response_200"},"V3OrganizationsOrgIdRepositoriesOwnerRepoBranchesBranchDeleteParametersProvider":{"type":"string","enum":["github","gitlab"],"default":"github","title":"V3OrganizationsOrgIdRepositoriesOwnerRepoBranchesBranchDeleteParametersProvider"},"Repositories_deleteRepositoryBranch_Response_200":{"type":"object","properties":{},"description":"Empty response body","title":"Repositories_deleteRepositoryBranch_Response_200"},"V3OrganizationsOrgIdRepositoriesOwnerRepoGuardrailsGetParametersProvider":{"type":"string","enum":["github","gitlab"],"default":"github","title":"V3OrganizationsOrgIdRepositoriesOwnerRepoGuardrailsGetParametersProvider"},"GuardrailsAutoMergeMaxRisk":{"type":"string","enum":["zero","low","medium","high"],"title":"GuardrailsAutoMergeMaxRisk"},"GuardrailsAutoMergeReviewContext":{"type":"string","enum":["all_review_bots","ara_review_bot_only"],"title":"GuardrailsAutoMergeReviewContext"},"Guardrails":{"type":"object","properties":{"auto_fix_new_issues":{"type":"boolean"},"auto_audit_on_connect":{"type":"boolean"},"pr_risk_assessment":{"type":"boolean"},"auto_merge_prs":{"type":"boolean"},"auto_merge_max_risk":{"$ref":"#/components/schemas/GuardrailsAutoMergeMaxRisk"},"auto_merge_require_no_blocking_findings":{"type":"boolean"},"auto_merge_require_ara_authored":{"type":"boolean"},"auto_merge_require_ci_green":{"type":"boolean"},"auto_merge_require_ara_verify":{"type":"boolean"},"auto_merge_require_migration_approval":{"type":"boolean"},"auto_merge_review_context":{"$ref":"#/components/schemas/GuardrailsAutoMergeReviewContext"},"auto_merge_custom_prompt":{"type":"string"}},"description":"Per-repository automation guardrails. On update, every property is optional and only the supplied fields change.","title":"Guardrails"},"Repositories_getRepositoryGuardrails_Response_200":{"type":"object","properties":{"repo":{"type":"string"},"guardrails":{"$ref":"#/components/schemas/Guardrails"}},"title":"Repositories_getRepositoryGuardrails_Response_200"},"V3OrganizationsOrgIdRepositoriesOwnerRepoGuardrailsPutParametersProvider":{"type":"string","enum":["github","gitlab"],"default":"github","title":"V3OrganizationsOrgIdRepositoriesOwnerRepoGuardrailsPutParametersProvider"},"Repositories_updateRepositoryGuardrails_Response_200":{"type":"object","properties":{"repo":{"type":"string"},"guardrails":{"$ref":"#/components/schemas/Guardrails"}},"title":"Repositories_updateRepositoryGuardrails_Response_200"},"V3OrganizationsOrgIdRepositoriesOwnerRepoIndexPutParametersProvider":{"type":"string","enum":["github","gitlab"],"default":"github","title":"V3OrganizationsOrgIdRepositoriesOwnerRepoIndexPutParametersProvider"},"Repositories_indexRepository_Response_200":{"type":"object","properties":{},"description":"Empty response body","title":"Repositories_indexRepository_Response_200"},"RepositoryProvisionFailureAction":{"type":"string","enum":["reconnect_gitlab","grant_gitlab_project_permission"],"title":"RepositoryProvisionFailureAction"},"RepositoryProvisionFailure":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"repo_enabled":{"type":"boolean","description":"True when the repository row was committed before provisioning failed."},"retryable":{"type":"boolean"},"action":{"$ref":"#/components/schemas/RepositoryProvisionFailureAction"}},"required":["error","message","repo_enabled","retryable"],"description":"A partial GitLab repository enablement that did not finish agent or webhook provisioning.","title":"RepositoryProvisionFailure"},"IndexRepositoryRequestForbiddenError":{"oneOf":[{"$ref":"#/components/schemas/Error"},{"$ref":"#/components/schemas/RepositoryProvisionFailure"}],"title":"IndexRepositoryRequestForbiddenError"},"V3OrganizationsOrgIdRepositoriesOwnerRepoIndexPutResponsesContentApplicationJsonSchemaOneOf1Error":{"type":"string","enum":["repo_path_provider_conflict"],"title":"V3OrganizationsOrgIdRepositoriesOwnerRepoIndexPutResponsesContentApplicationJsonSchemaOneOf1Error"},"IndexRepositoryRequestConflictError1":{"type":"object","properties":{"error":{"$ref":"#/components/schemas/V3OrganizationsOrgIdRepositoriesOwnerRepoIndexPutResponsesContentApplicationJsonSchemaOneOf1Error"},"message":{"type":"string"}},"required":["error","message"],"title":"IndexRepositoryRequestConflictError1"},"IndexRepositoryRequestConflictError":{"oneOf":[{"$ref":"#/components/schemas/RepositoryProvisionFailure"},{"$ref":"#/components/schemas/IndexRepositoryRequestConflictError1"}],"title":"IndexRepositoryRequestConflictError"},"V3OrganizationsOrgIdRepositoriesOwnerRepoIndexingStatusGetParametersProvider":{"type":"string","enum":["github","gitlab"],"default":"github","title":"V3OrganizationsOrgIdRepositoriesOwnerRepoIndexingStatusGetParametersProvider"},"IndexingStatusStatus":{"type":"string","enum":["not_indexed","pending","indexing","indexed","failed"],"title":"IndexingStatusStatus"},"IndexingStatus":{"type":"object","properties":{"full_name":{"type":"string","description":"Provider-native repository path. GitHub uses `owner/name`; GitLab may include nested groups."},"status":{"$ref":"#/components/schemas/IndexingStatusStatus"},"progress":{"type":["number","null"],"format":"double","description":"Fraction complete from 0 to 1."},"last_indexed_at":{"type":["string","null"],"format":"date-time"}},"title":"IndexingStatus"},"V3OrganizationsOrgIdRepositoriesOwnerRepoWikiGetParametersProvider":{"type":"string","enum":["github","gitlab"],"default":"github","title":"V3OrganizationsOrgIdRepositoriesOwnerRepoWikiGetParametersProvider"},"WikiDocumentPagesItems":{"type":"object","properties":{"slug":{"type":"string"},"title":{"type":"string"},"content":{"type":"string","description":"Markdown content."}},"title":"WikiDocumentPagesItems"},"WikiDocument":{"type":"object","properties":{"full_name":{"type":"string","description":"Provider-native repository path. GitHub uses `owner/name`; GitLab may include nested groups."},"generated_at":{"type":["string","null"],"format":"date-time"},"pages":{"type":"array","items":{"$ref":"#/components/schemas/WikiDocumentPagesItems"}}},"title":"WikiDocument"},"V3OrganizationsOrgIdRepositoriesOwnerRepoWikiExportGetParametersProvider":{"type":"string","enum":["github","gitlab"],"default":"github","title":"V3OrganizationsOrgIdRepositoriesOwnerRepoWikiExportGetParametersProvider"},"V3OrganizationsOrgIdRepositoriesOwnerRepoWikiExportGetParametersFormat":{"type":"string","enum":["markdown","json"],"default":"markdown","title":"V3OrganizationsOrgIdRepositoriesOwnerRepoWikiExportGetParametersFormat"},"V3OrganizationsOrgIdRepositoriesOwnerRepoWikiExportGetResponsesContentApplicationJsonSchemaMetadata":{"type":"object","properties":{"repository":{"type":"string"},"page_count":{"type":"integer"}},"title":"V3OrganizationsOrgIdRepositoriesOwnerRepoWikiExportGetResponsesContentApplicationJsonSchemaMetadata"},"V3OrganizationsOrgIdRepositoriesOwnerRepoWikiExportGetResponsesContentApplicationJsonSchemaPagesItems":{"type":"object","properties":{},"title":"V3OrganizationsOrgIdRepositoriesOwnerRepoWikiExportGetResponsesContentApplicationJsonSchemaPagesItems"},"Repositories_exportRepositoryWiki_Response_200":{"type":"object","properties":{"metadata":{"$ref":"#/components/schemas/V3OrganizationsOrgIdRepositoriesOwnerRepoWikiExportGetResponsesContentApplicationJsonSchemaMetadata"},"pages":{"type":"array","items":{"$ref":"#/components/schemas/V3OrganizationsOrgIdRepositoriesOwnerRepoWikiExportGetResponsesContentApplicationJsonSchemaPagesItems"}}},"title":"Repositories_exportRepositoryWiki_Response_200"},"KnowledgeFolder":{"type":"object","properties":{"folder_id":{"type":"string"},"name":{"type":"string"},"note_count":{"type":"integer"}},"title":"KnowledgeFolder"},"Knowledge_listKnowledgeFolders_Response_200":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/KnowledgeFolder"}},"total":{"type":"integer"}},"title":"Knowledge_listKnowledgeFolders_Response_200"},"Note":{"type":"object","properties":{"note_id":{"type":"string"},"name":{"type":"string"},"trigger":{"type":"string","description":"When the agent should consult this note."},"body":{"type":"string"},"scope":{"type":["string","null"]},"repo_filter":{"type":["string","null"]},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}},"title":"Note"},"Knowledge_listNotes_Response_200":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/Note"}},"total":{"type":"integer"}},"title":"Knowledge_listNotes_Response_200"},"CreateNote":{"type":"object","properties":{"name":{"type":"string"},"trigger":{"type":"string"},"body":{"type":"string"},"scope":{"type":"string"},"repo_filter":{"type":"string"}},"required":["name","body"],"title":"CreateNote"},"UpdateNote":{"type":"object","properties":{"name":{"type":"string"},"trigger":{"type":"string"},"body":{"type":"string"},"scope":{"type":"string"},"repo_filter":{"type":"string"}},"description":"All fields optional. Only the fields you send are changed.","title":"UpdateNote"},"Knowledge_deleteNote_Response_200":{"type":"object","properties":{},"description":"Empty response body","title":"Knowledge_deleteNote_Response_200"},"McpServerTransport":{"type":"string","enum":["http","stdio","sse"],"title":"McpServerTransport"},"McpServerAuthType":{"type":"string","enum":["none","oauth","bearer"],"title":"McpServerAuthType"},"McpServer":{"type":"object","properties":{"id":{"type":"string"},"slug":{"type":"string"},"name":{"type":"string"},"icon":{"type":["string","null"]},"description":{"type":"string"},"source":{"type":"string"},"transport":{"$ref":"#/components/schemas/McpServerTransport"},"url":{"type":["string","null"]},"command":{"type":["string","null"]},"args":{"type":"array","items":{"type":"string"}},"env":{"type":"object","additionalProperties":{"type":"string"}},"headers":{"type":"object","additionalProperties":{"type":"string"}},"auth_type":{"$ref":"#/components/schemas/McpServerAuthType"},"secret_names":{"type":"array","items":{"type":"string"},"description":"The names of the secrets configured for this server. Secret values are write-only and are never returned."},"access":{"type":"string"},"enabled":{"type":"boolean"},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}},"description":"An org-level MCP server. Secret values are write-only and are never returned; only `secret_names` lists which secrets are set.","title":"McpServer"},"MCP Servers_listMcpServers_Response_200":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/McpServer"}},"end_cursor":{"type":["string","null"]},"has_next_page":{"type":"boolean"},"total":{"type":"integer"}},"title":"MCP Servers_listMcpServers_Response_200"},"McpServerInputTransport":{"type":"string","enum":["http","stdio","sse"],"title":"McpServerInputTransport"},"McpServerInputAuthType":{"type":"string","enum":["none","oauth","bearer"],"title":"McpServerInputAuthType"},"McpServerInput":{"type":"object","properties":{"name":{"type":"string"},"transport":{"$ref":"#/components/schemas/McpServerInputTransport"},"icon":{"type":"string"},"description":{"type":"string"},"url":{"type":"string"},"command":{"type":"string"},"args":{"type":"array","items":{"type":"string"}},"env":{"type":"object","additionalProperties":{"type":"string"}},"headers":{"type":"object","additionalProperties":{"type":"string"}},"auth_type":{"$ref":"#/components/schemas/McpServerInputAuthType"},"secrets":{"type":"object","additionalProperties":{"type":"string"},"description":"Write-only. Secret values to store for this server. Never returned in any response."},"enabled":{"type":"boolean"}},"required":["name","transport"],"description":"Request body for creating or updating an MCP server. On update, every property is optional and only the supplied fields change.","title":"McpServerInput"},"MCP Servers_deleteMcpServer_Response_200":{"type":"object","properties":{},"description":"Empty response body","title":"MCP Servers_deleteMcpServer_Response_200"},"MemberRole":{"type":"string","enum":["admin","member"],"title":"MemberRole"},"Member":{"type":"object","properties":{"user_id":{"type":"string"},"name":{"type":["string","null"]},"email":{"type":["string","null"],"format":"email"},"role":{"$ref":"#/components/schemas/MemberRole"},"joined_at":{"type":["string","null"],"format":"date-time"}},"title":"Member"},"InviteRole":{"type":"string","enum":["admin","member"],"title":"InviteRole"},"InviteStatus":{"type":"string","enum":["pending","accepted","revoked"],"title":"InviteStatus"},"Invite":{"type":"object","properties":{"invite_id":{"type":"string"},"email":{"type":"string","format":"email"},"role":{"$ref":"#/components/schemas/InviteRole"},"status":{"$ref":"#/components/schemas/InviteStatus"},"created_at":{"type":"string","format":"date-time"}},"title":"Invite"},"Members_listMembers_Response_200":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/Member"}},"total":{"type":"integer"},"has_next_page":{"type":"boolean"},"end_cursor":{"description":"Any type"},"invites":{"type":"array","items":{"$ref":"#/components/schemas/Invite"},"description":"Pending invitations. Present only for owner/admin callers."}},"title":"Members_listMembers_Response_200"},"V3OrganizationsOrgIdMembersUsersPostRequestBodyContentApplicationJsonSchemaRole":{"type":"string","enum":["admin","member"],"default":"admin","description":"Omitted values invite an admin; unknown values coerce to `member`.","title":"V3OrganizationsOrgIdMembersUsersPostRequestBodyContentApplicationJsonSchemaRole"},"Members_inviteMember_Response_200":{"type":"object","properties":{"invited":{"type":"integer","description":"How many invitations were created."}},"title":"Members_inviteMember_Response_200"},"Members_removeMember_Response_200":{"type":"object","properties":{},"description":"Empty response body","title":"Members_removeMember_Response_200"},"V3OrganizationsOrgIdMembersUsersUserIdRolePutRequestBodyContentApplicationJsonSchemaRole":{"type":"string","enum":["owner","admin","member"],"description":"`owner` may only be granted by an org owner.","title":"V3OrganizationsOrgIdMembersUsersUserIdRolePutRequestBodyContentApplicationJsonSchemaRole"},"V3OrganizationsOrgIdMembersUsersUserIdRolePutResponsesContentApplicationJsonSchemaRole":{"type":"string","enum":["owner","admin","member"],"title":"V3OrganizationsOrgIdMembersUsersUserIdRolePutResponsesContentApplicationJsonSchemaRole"},"Members_setMemberRole_Response_200":{"type":"object","properties":{"user_id":{"type":"string"},"role":{"$ref":"#/components/schemas/V3OrganizationsOrgIdMembersUsersUserIdRolePutResponsesContentApplicationJsonSchemaRole"}},"title":"Members_setMemberRole_Response_200"},"V3OrganizationsOrgIdMemoryNotesGetParametersProvider":{"type":"string","enum":["github","gitlab"],"title":"V3OrganizationsOrgIdMemoryNotesGetParametersProvider"},"MemoryNoteListProvider":{"type":"string","enum":["github","gitlab"],"title":"MemoryNoteListProvider"},"MemoryNote":{"type":"object","properties":{"memory_id":{"type":"string"},"title":{"type":"string"},"content":{"type":"string"},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}},"description":"An explicit editable note for one connected repository.","title":"MemoryNote"},"MemoryNoteList":{"type":"object","properties":{"repo":{"type":"string"},"provider":{"$ref":"#/components/schemas/MemoryNoteListProvider"},"items":{"type":"array","items":{"$ref":"#/components/schemas/MemoryNote"}},"total":{"type":"integer"}},"title":"MemoryNoteList"},"CreateMemoryNoteProvider":{"type":"string","enum":["github","gitlab"],"title":"CreateMemoryNoteProvider"},"CreateMemoryNote":{"type":"object","properties":{"repo":{"type":"string"},"provider":{"$ref":"#/components/schemas/CreateMemoryNoteProvider"},"title":{"type":"string","description":"Optional title. It is trimmed, defaults to 'Memory note' when omitted or blank, and must be at most 160 characters."},"content":{"type":"string","description":"Non-empty explicit memory content. It is trimmed before storage and limited to 240 KiB UTF-8."}},"required":["repo","content"],"title":"CreateMemoryNote"},"MemoryNoteResponseProvider":{"type":"string","enum":["github","gitlab"],"title":"MemoryNoteResponseProvider"},"MemoryNoteResponse":{"type":"object","properties":{"repo":{"type":"string"},"provider":{"$ref":"#/components/schemas/MemoryNoteResponseProvider"},"item":{"$ref":"#/components/schemas/MemoryNote"}},"title":"MemoryNoteResponse"},"V3OrganizationsOrgIdMemoryNotesMemoryIdGetParametersProvider":{"type":"string","enum":["github","gitlab"],"title":"V3OrganizationsOrgIdMemoryNotesMemoryIdGetParametersProvider"},"V3OrganizationsOrgIdMemoryNotesMemoryIdDeleteParametersProvider":{"type":"string","enum":["github","gitlab"],"title":"V3OrganizationsOrgIdMemoryNotesMemoryIdDeleteParametersProvider"},"Memory_forgetMemoryNote_Response_200":{"type":"object","properties":{},"description":"Empty response body","title":"Memory_forgetMemoryNote_Response_200"},"UpdateMemoryNoteProvider":{"type":"string","enum":["github","gitlab"],"title":"UpdateMemoryNoteProvider"},"UpdateMemoryNote":{"type":"object","properties":{"repo":{"type":"string"},"provider":{"$ref":"#/components/schemas/UpdateMemoryNoteProvider"},"title":{"type":"string","description":"Optional title. It is trimmed, defaults to 'Memory note' when blank, and must be at most 160 characters."},"content":{"type":"string","description":"When supplied, content must be non-empty after trimming and no more than 240 KiB UTF-8."}},"required":["repo"],"description":"Supply repo plus one or both editable fields.","title":"UpdateMemoryNote"},"UsageTimeseriesPoint":{"type":"object","properties":{"date":{"type":"string","format":"date"},"sandbox_minutes":{"type":"number","format":"double"},"tokens":{"type":"integer"},"sessions":{"type":"integer"}},"title":"UsageTimeseriesPoint"},"Metrics_getUsageMetrics_Response_200":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/UsageTimeseriesPoint"}}},"title":"Metrics_getUsageMetrics_Response_200"},"V3OrganizationsOrgIdQueueGetResponsesContentApplicationJsonSchemaWorkspace":{"type":"object","properties":{"running":{"type":"integer"},"queued":{"type":"integer"}},"title":"V3OrganizationsOrgIdQueueGetResponsesContentApplicationJsonSchemaWorkspace"},"V3OrganizationsOrgIdQueueGetResponsesContentApplicationJsonSchemaPerRepoItems":{"type":"object","properties":{"repo":{"type":"string"},"running":{"type":"integer"},"queued":{"type":"integer"},"max_concurrent":{"type":"integer"}},"title":"V3OrganizationsOrgIdQueueGetResponsesContentApplicationJsonSchemaPerRepoItems"},"V3OrganizationsOrgIdQueueGetResponsesContentApplicationJsonSchemaRunningRunsItems":{"type":"object","properties":{"run_id":{"type":"string"},"repo":{"type":"string"},"agent_id":{"type":"string"},"run_kind":{"type":"string"},"started_at":{"type":"string","format":"date-time"}},"title":"V3OrganizationsOrgIdQueueGetResponsesContentApplicationJsonSchemaRunningRunsItems"},"V3OrganizationsOrgIdQueueGetResponsesContentApplicationJsonSchemaQueuedRunsItems":{"type":"object","properties":{"run_id":{"type":"string"},"repo":{"type":"string"},"agent_id":{"type":"string"},"run_kind":{"type":"string"},"queued_at":{"type":"string","format":"date-time"},"position":{"type":"integer"}},"title":"V3OrganizationsOrgIdQueueGetResponsesContentApplicationJsonSchemaQueuedRunsItems"},"Metrics_getQueueStatus_Response_200":{"type":"object","properties":{"workspace":{"$ref":"#/components/schemas/V3OrganizationsOrgIdQueueGetResponsesContentApplicationJsonSchemaWorkspace"},"per_repo":{"type":"array","items":{"$ref":"#/components/schemas/V3OrganizationsOrgIdQueueGetResponsesContentApplicationJsonSchemaPerRepoItems"}},"running_runs":{"type":"array","items":{"$ref":"#/components/schemas/V3OrganizationsOrgIdQueueGetResponsesContentApplicationJsonSchemaRunningRunsItems"}},"queued_runs":{"type":"array","items":{"$ref":"#/components/schemas/V3OrganizationsOrgIdQueueGetResponsesContentApplicationJsonSchemaQueuedRunsItems"}}},"title":"Metrics_getQueueStatus_Response_200"},"PrReviewProvider":{"type":"string","enum":["github","gitlab"],"description":"Source-control provider for the reviewed change request.","title":"PrReviewProvider"},"PrReviewKind":{"type":"string","enum":["pull_request","merge_request"],"description":"Provider-native change request kind.","title":"PrReviewKind"},"PrReviewStatus":{"type":"string","enum":["queued","running","completed","failed"],"title":"PrReviewStatus"},"PrReview":{"type":"object","properties":{"pr_review_id":{"type":"string"},"repo":{"type":["string","null"],"description":"Repository or project path."},"repository":{"type":"string","description":"Repository or project path."},"pr_number":{"type":"integer"},"provider":{"$ref":"#/components/schemas/PrReviewProvider","description":"Source-control provider for the reviewed change request."},"kind":{"$ref":"#/components/schemas/PrReviewKind","description":"Provider-native change request kind."},"pr_url":{"type":["string","null"]},"status":{"$ref":"#/components/schemas/PrReviewStatus"},"summary":{"type":["string","null"],"description":"Short summary of the review's findings."},"comment_count":{"type":["integer","null"],"description":"Number of inline comments posted."},"created_at":{"type":"string","format":"date-time"},"completed_at":{"type":["string","null"],"format":"date-time"}},"title":"PrReview"},"Change Request Reviews_listPrReviews_Response_200":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/PrReview"}},"end_cursor":{"type":["string","null"]},"has_next_page":{"type":"boolean"}},"title":"Change Request Reviews_listPrReviews_Response_200"},"CreatePrReviewProvider":{"type":"string","enum":["github","gitlab"],"description":"Source-control provider. Defaults to GitHub first, then GitLab if no GitHub review trigger exists.","title":"CreatePrReviewProvider"},"CreatePrReview":{"type":"object","properties":{"repository":{"type":"string","description":"Repository or project path."},"pr_number":{"type":"integer","description":"The pull request number or merge request IID to review."},"pr_url":{"type":"string","description":"GitHub pull request URL or GitLab merge request URL. Alternative to `repository` + `pr_number`."},"provider":{"$ref":"#/components/schemas/CreatePrReviewProvider","description":"Source-control provider. Defaults to GitHub first, then GitLab if no GitHub review trigger exists."},"instructions":{"type":"string","description":"Optional guidance to focus the review."}},"title":"CreatePrReview"},"Change Request Reviews_triggerPrReview_Response_201":{"type":"object","properties":{},"description":"Empty response body","title":"Change Request Reviews_triggerPrReview_Response_201"},"RoleAssignmentRole":{"type":"string","enum":["pro","regular"],"title":"RoleAssignmentRole"},"RoleAssignment":{"type":"object","properties":{"user_id":{"type":"string"},"role":{"$ref":"#/components/schemas/RoleAssignmentRole"},"updated_at":{"type":["string","null"],"format":"date-time"}},"title":"RoleAssignment"},"Roles_listRoleAssignments_Response_200":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/RoleAssignment"}},"total":{"type":"integer"}},"title":"Roles_listRoleAssignments_Response_200"},"V3OrganizationsOrgIdRolesPutRequestBodyContentApplicationJsonSchemaRole":{"type":"string","enum":["pro","regular"],"description":"App-level product role.","title":"V3OrganizationsOrgIdRolesPutRequestBodyContentApplicationJsonSchemaRole"},"V3OrganizationsOrgIdSecretsGetParametersScope":{"type":"string","enum":["user","repo"],"default":"user","title":"V3OrganizationsOrgIdSecretsGetParametersScope"},"V3OrganizationsOrgIdSecretsGetParametersProvider":{"type":"string","enum":["github","gitlab"],"title":"V3OrganizationsOrgIdSecretsGetParametersProvider"},"Secrets_listSecrets_Response_200":{"type":"object","properties":{},"description":"Empty response body","title":"Secrets_listSecrets_Response_200"},"CreateSecretScope":{"type":"string","enum":["user","repo"],"default":"user","title":"CreateSecretScope"},"CreateSecretProvider":{"type":"string","enum":["github","gitlab"],"description":"Source-control provider for repo-scoped secrets.","title":"CreateSecretProvider"},"CreateSecret":{"type":"object","properties":{"name":{"type":"string","description":"Uppercase identifier, e.g. `NPM_TOKEN`."},"value":{"type":"string","description":"The secret value. Stored encrypted and never returned."},"scope":{"$ref":"#/components/schemas/CreateSecretScope","default":"user"},"repo":{"type":"string","description":"Required when `scope=repo`. GitHub uses `owner/name`; GitLab projects may include nested groups."},"provider":{"$ref":"#/components/schemas/CreateSecretProvider","description":"Source-control provider for repo-scoped secrets."}},"required":["name","value"],"title":"CreateSecret"},"Secrets_setSecret_Response_201":{"type":"object","properties":{},"description":"Empty response body","title":"Secrets_setSecret_Response_201"},"V3OrganizationsOrgIdSecretsSecretIdDeleteParametersScope":{"type":"string","enum":["user","repo"],"default":"user","title":"V3OrganizationsOrgIdSecretsSecretIdDeleteParametersScope"},"V3OrganizationsOrgIdSecretsSecretIdDeleteParametersProvider":{"type":"string","enum":["github","gitlab"],"title":"V3OrganizationsOrgIdSecretsSecretIdDeleteParametersProvider"},"Secrets_deleteSecret_Response_200":{"type":"object","properties":{},"description":"Empty response body","title":"Secrets_deleteSecret_Response_200"},"SessionStatus":{"type":"string","enum":["running","exit","error","suspended"],"description":"running, exit (completed), error, or suspended (cancelled/quota).","title":"SessionStatus"},"SessionProvider":{"type":"string","enum":["github","gitlab"],"description":"Source-control provider for the session repository.","title":"SessionProvider"},"SessionUsage":{"type":"object","properties":{"input_tokens":{"type":["integer","null"]},"output_tokens":{"type":["integer","null"]},"total_tokens":{"type":["integer","null"]}},"required":["input_tokens","output_tokens","total_tokens"],"description":"Token usage totals for the session. Fields are null for runs that predate usage persistence.","title":"SessionUsage"},"SessionContext":{"type":"object","properties":{"tokens":{"type":["integer","null"],"description":"Tokens in the model's context window after the latest turn."},"window":{"type":["integer","null"],"description":"The model's context window size."},"percent":{"type":["integer","null"],"description":"Context occupancy 0-100, rounded."}},"required":["tokens","window","percent"],"description":"Live context occupancy after the latest turn (not billing throughput).","title":"SessionContext"},"Session":{"type":"object","properties":{"session_id":{"type":"string"},"status":{"$ref":"#/components/schemas/SessionStatus","description":"running, exit (completed), error, or suspended (cancelled/quota)."},"url":{"type":"string","description":"Web URL to watch the session."},"created_at":{"type":"string","format":"date-time"},"started_at":{"type":["string","null"],"format":"date-time"},"finished_at":{"type":["string","null"],"format":"date-time"},"title":{"type":["string","null"]},"prompt":{"type":["string","null"]},"tags":{"type":"array","items":{"type":"string"}},"repo":{"type":["string","null"]},"provider":{"$ref":"#/components/schemas/SessionProvider","description":"Source-control provider for the session repository."},"pr_url":{"type":["string","null"]},"pr_title":{"type":["string","null"]},"result_summary":{"type":["string","null"]},"duration_ms":{"type":["integer","null"]},"cost_usd":{"type":["number","null"],"format":"double","description":"Total model spend in USD across the session's turns. Null when usage was never reported."},"usage":{"$ref":"#/components/schemas/SessionUsage","description":"Token usage totals for the session. Fields are null for runs that predate usage persistence."},"context":{"$ref":"#/components/schemas/SessionContext","description":"Live context occupancy after the latest turn (not billing throughput)."},"is_archived":{"type":"boolean"},"parent_session_id":{"type":["string","null"],"description":"Always null (no session hierarchy)."},"child_session_ids":{"type":"array","items":{"type":"string"},"description":"Always empty (no session hierarchy)."},"is_advanced":{"type":"boolean","description":"Always false."}},"title":"Session"},"Sessions_listSessions_Response_200":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/Session"}},"end_cursor":{"type":["string","null"]},"has_next_page":{"type":"boolean"}},"title":"Sessions_listSessions_Response_200"},"CreateSessionProvider":{"type":"string","enum":["github","gitlab"],"description":"Source-control provider for the repo. Defaults to GitHub first, then GitLab if no GitHub repository matches.","title":"CreateSessionProvider"},"CreateSession":{"type":"object","properties":{"prompt":{"type":"string","description":"What the agent should do."},"repo":{"type":"string","description":"Connected repository path. GitHub uses `owner/name`; GitLab projects may include nested groups, such as `group/subgroup/project`."},"provider":{"$ref":"#/components/schemas/CreateSessionProvider","description":"Source-control provider for the repo. Defaults to GitHub first, then GitLab if no GitHub repository matches."},"tags":{"type":"array","items":{"type":"string"}},"create_as_user_id":{"type":"string","description":"Attribute the session to another member (service users only)."},"idempotency_key":{"type":"string","description":"Idempotent create: a retried POST with the same key returns the original session instead of creating a duplicate."},"long_running_enabled":{"type":["boolean","null"],"description":"Loop override for this session: after the first pass the agent keeps re-verifying and fixing its own work, up to `rounds_max` passes, stopping early once a verification pass finds nothing left to do. `true` turns the loop on for this session, `false` turns it off, omitted inherits the agent's configuration."},"rounds_max":{"type":["integer","null"],"description":"Most passes over the task for this session, including the first. Only meaningful when the loop is enabled (via `long_running_enabled` or the agent's configuration); omitted inherits the agent's value. Verification, cancellation, or limits can stop the session sooner."}},"required":["prompt","repo"],"title":"CreateSession"},"Sessions_createSession_Response_201":{"type":"object","properties":{},"description":"Empty response body","title":"Sessions_createSession_Response_201"},"V3OrganizationsOrgIdSessionsInsightsGetResponsesContentApplicationJsonSchemaItemsItems":{"type":"object","properties":{},"title":"V3OrganizationsOrgIdSessionsInsightsGetResponsesContentApplicationJsonSchemaItemsItems"},"Sessions_listSessionsWithInsights_Response_200":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/V3OrganizationsOrgIdSessionsInsightsGetResponsesContentApplicationJsonSchemaItemsItems"}},"end_cursor":{"type":["string","null"]},"has_next_page":{"type":"boolean"}},"title":"Sessions_listSessionsWithInsights_Response_200"},"Sessions_deleteSession_Response_200":{"type":"object","properties":{},"description":"Empty response body","title":"Sessions_deleteSession_Response_200"},"Sessions_archiveSession_Response_200":{"type":"object","properties":{},"description":"Empty response body","title":"Sessions_archiveSession_Response_200"},"Sessions_listSessionAttachments_Response_200":{"type":"object","properties":{},"description":"Empty response body","title":"Sessions_listSessionAttachments_Response_200"},"Sessions_cancelSession_Response_200":{"type":"object","properties":{},"description":"Empty response body","title":"Sessions_cancelSession_Response_200"},"SessionInsightStatus":{"type":"string","enum":["generated","not_generated"],"title":"SessionInsightStatus"},"SessionInsightSize":{"type":"string","enum":["small","medium","large"],"description":"Relative size of the change.","title":"SessionInsightSize"},"SessionInsight":{"type":"object","properties":{"session_id":{"type":"string"},"status":{"$ref":"#/components/schemas/SessionInsightStatus"},"summary":{"type":"string","description":"A short natural-language summary of what the session did."},"category":{"type":"string","description":"The inferred category of the work, e.g. `bug_fix` or `feature`."},"outcome":{"type":"string","description":"The outcome of the session, e.g. `pr_opened`."},"message_count":{"type":"integer","description":"Number of messages exchanged during the session."},"size":{"$ref":"#/components/schemas/SessionInsightSize","description":"Relative size of the change."},"initial_user_message":{"type":["string","null"],"description":"The first instruction that started the session."},"pr_url":{"type":["string","null"]},"cost_usd":{"type":["number","null"],"format":"double"},"input_tokens":{"type":["integer","null"]},"output_tokens":{"type":["integer","null"]},"generated_at":{"type":["string","null"],"format":"date-time"}},"description":"A generated summary of a session and its headline metrics. When `status` is `not_generated`, only `session_id` and `status` are populated.","title":"SessionInsight"},"MessageAttachmentsItems":{"type":"object","properties":{},"title":"MessageAttachmentsItems"},"Message":{"type":"object","properties":{"id":{"type":"string"},"seq":{"type":"integer","description":"Monotonic sequence number; use as `after_seq` to poll forward."},"role":{"type":"string"},"content":{"type":"string"},"status":{"type":"string"},"attachments":{"type":"array","items":{"$ref":"#/components/schemas/MessageAttachmentsItems"}},"created_at":{"type":"string","format":"date-time"}},"title":"Message"},"Sessions_listSessionMessages_Response_200":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/Message"}},"has_next_page":{"type":"boolean"},"end_cursor":{"type":["string","null"]},"next_seq":{"type":"integer","description":"Legacy twin of end_cursor."}},"title":"Sessions_listSessionMessages_Response_200"},"Sessions_sendSessionMessage_Response_200":{"type":"object","properties":{},"description":"Empty response body","title":"Sessions_sendSessionMessage_Response_200"},"TagList":{"type":"object","properties":{"ok":{"type":"boolean"},"tags":{"type":"array","items":{"type":"string"}}},"title":"TagList"},"Sessions_updateSessionTags_Response_200":{"type":"object","properties":{},"description":"Empty response body","title":"Sessions_updateSessionTags_Response_200"},"V3OrganizationsOrgIdSettingsGetResponsesContentApplicationJsonSchemaSettings":{"type":"object","properties":{},"title":"V3OrganizationsOrgIdSettingsGetResponsesContentApplicationJsonSchemaSettings"},"Settings_listSettings_Response_200":{"type":"object","properties":{"settings":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/V3OrganizationsOrgIdSettingsGetResponsesContentApplicationJsonSchemaSettings"}}},"title":"Settings_listSettings_Response_200"},"V3OrganizationsOrgIdSettingsNamespaceGetResponsesContentApplicationJsonSchemaValue":{"type":"object","properties":{},"title":"V3OrganizationsOrgIdSettingsNamespaceGetResponsesContentApplicationJsonSchemaValue"},"Settings_getSetting_Response_200":{"type":"object","properties":{"namespace":{"type":"string"},"value":{"oneOf":[{"$ref":"#/components/schemas/V3OrganizationsOrgIdSettingsNamespaceGetResponsesContentApplicationJsonSchemaValue"},{"type":"null"}]}},"title":"Settings_getSetting_Response_200"},"V3OrganizationsOrgIdSettingsNamespacePutResponsesContentApplicationJsonSchemaValue":{"type":"object","properties":{},"title":"V3OrganizationsOrgIdSettingsNamespacePutResponsesContentApplicationJsonSchemaValue"},"Settings_updateSetting_Response_200":{"type":"object","properties":{"namespace":{"type":"string"},"value":{"$ref":"#/components/schemas/V3OrganizationsOrgIdSettingsNamespacePutResponsesContentApplicationJsonSchemaValue"}},"title":"Settings_updateSetting_Response_200"},"SetupHelperResponseViewerProvider":{"type":"string","enum":["github","gitlab"],"title":"SetupHelperResponseViewerProvider"},"SetupHelperResponseViewerResolvedFrom":{"type":"string","enum":["workos","account","unknown"],"title":"SetupHelperResponseViewerResolvedFrom"},"SetupHelperResponseViewer":{"type":"object","properties":{"github_login":{"type":["string","null"]},"login":{"type":["string","null"],"description":"Best-known provider login or author identifier for the viewer."},"provider":{"$ref":"#/components/schemas/SetupHelperResponseViewerProvider"},"resolved_from":{"$ref":"#/components/schemas/SetupHelperResponseViewerResolvedFrom"},"matched":{"type":"boolean"}},"title":"SetupHelperResponseViewer"},"SetupHelperResponseAccountProvider":{"type":"string","enum":["github","gitlab"],"title":"SetupHelperResponseAccountProvider"},"SetupHelperResponseAccount":{"type":"object","properties":{"login":{"type":["string","null"]},"type":{"type":["string","null"]},"provider":{"$ref":"#/components/schemas/SetupHelperResponseAccountProvider"}},"title":"SetupHelperResponseAccount"},"SetupHelperContributor":{"type":"object","properties":{"login":{"type":"string"},"commits":{"type":"integer"},"repos":{"type":"integer","description":"How many scanned repos this login committed to."},"is_viewer":{"type":"boolean"}},"title":"SetupHelperContributor"},"SetupHelperReadinessStatus":{"type":"string","enum":["none","pending","ready"],"description":"Environment readiness from the pre-stage bootstrap: `ready` = a runbook exists, `pending` = a setup session is still running, `none` = nothing has run yet.","title":"SetupHelperReadinessStatus"},"SetupHelperReadinessMissingItems":{"type":"object","properties":{"kind":{"type":"string"},"name":{"type":"string"},"note":{"type":"string"}},"title":"SetupHelperReadinessMissingItems"},"SetupHelperReadiness":{"type":"object","properties":{"status":{"$ref":"#/components/schemas/SetupHelperReadinessStatus","description":"Environment readiness from the pre-stage bootstrap: `ready` = a runbook exists, `pending` = a setup session is still running, `none` = nothing has run yet."},"missing":{"type":"array","items":{"$ref":"#/components/schemas/SetupHelperReadinessMissingItems"},"description":"Secrets/integrations the bootstrap found still unconfigured (when ready)."},"session_id":{"type":["string","null"],"description":"The pre-stage setup session, when one exists."}},"title":"SetupHelperReadiness"},"SetupHelperRepo":{"type":"object","properties":{"full_name":{"type":"string","description":"Provider repository path, such as `owner/name` or a nested GitLab `group/subgroup/project`."},"private":{"type":"boolean"},"language":{"type":["string","null"]},"pushed_at":{"type":["string","null"],"format":"date-time"},"recommended":{"type":"boolean","description":"The single best-match repo for the viewer."},"reason":{"type":"string"},"readiness":{"$ref":"#/components/schemas/SetupHelperReadiness"}},"title":"SetupHelperRepo"},"SetupHelperResponse":{"type":"object","properties":{"viewer":{"$ref":"#/components/schemas/SetupHelperResponseViewer"},"account":{"$ref":"#/components/schemas/SetupHelperResponseAccount"},"window_days":{"type":"integer"},"repos_total":{"type":"integer"},"repos_scanned":{"type":"integer"},"capped":{"type":"boolean"},"contributors":{"type":"array","items":{"$ref":"#/components/schemas/SetupHelperContributor"}},"repos":{"type":"array","items":{"$ref":"#/components/schemas/SetupHelperRepo"}}},"title":"SetupHelperResponse"},"Skill":{"type":"object","properties":{"skill_id":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"instructions":{"type":"string"},"activation_keywords":{"type":"array","items":{"type":"string"}},"is_enabled":{"type":"boolean"},"author":{"type":"string"},"created_by":{"type":["string","null"]},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}},"title":"Skill"},"Skills_listSkills_Response_200":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/Skill"}},"total":{"type":"integer"}},"title":"Skills_listSkills_Response_200"},"CreateSkill":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"},"instructions":{"type":"string"},"activation_keywords":{"type":"array","items":{"type":"string"}},"is_enabled":{"type":"boolean"}},"required":["name","instructions"],"title":"CreateSkill"},"UpdateSkill":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"},"instructions":{"type":"string"},"activation_keywords":{"type":"array","items":{"type":"string"}},"is_enabled":{"type":"boolean"}},"description":"All fields optional. Only supplied fields are changed.","title":"UpdateSkill"},"Skills_deleteSkill_Response_200":{"type":"object","properties":{},"description":"Empty response body","title":"Skills_deleteSkill_Response_200"},"SelfPrincipalType":{"type":"string","enum":["service_user","user"],"description":"API keys resolve to `service_user`; a browser session resolves to `user`.","title":"SelfPrincipalType"},"Self":{"type":"object","properties":{"principal_type":{"$ref":"#/components/schemas/SelfPrincipalType","description":"API keys resolve to `service_user`; a browser session resolves to `user`."},"service_user_id":{"type":"string","description":"Present when `principal_type` is `service_user`."},"service_user_name":{"type":["string","null"],"description":"Present when `principal_type` is `service_user`."},"org_id":{"type":"string","description":"Present when `principal_type` is `service_user`."},"user_id":{"type":"string","description":"Present when `principal_type` is `user`."},"user_name":{"type":["string","null"],"description":"Present when `principal_type` is `user`."},"email":{"type":["string","null"],"description":"Present when `principal_type` is `user`."}},"title":"Self"}},"securitySchemes":{"araApiKey":{"type":"http","scheme":"bearer","description":"Your `ara_` API key from Settings > Ara API. Keys are capability-scoped: run, plugins:read, secrets:read, secrets:write, sessions:read, knowledge:read, repos:read, repos:write, reviews:read, reviews:write, analytics:read, org:read, org:write, attachments:read, attachments:write, plugins:write, guardrails:read, guardrails:write."}}}}