/api/external/capabilities
Inspect the enforced contract version, task modes, authorization boundaries, and supported action matrix.
REST API
Create a scoped API key in Promarkia, discover available squads and connected accounts, submit one authorized task, and retrieve its result. The same account permissions and credit controls apply everywhere.
X-API-Key: pmk_your_keyCreate and revoke keys in Settings > API & MCP. Secret values are shown only once.
Inspect the enforced contract version, task modes, authorization boundaries, and supported action matrix.
List the squads available to external clients, including descriptions and required integrations.
List caller-bound connected accounts that can be referenced by an authorization manifest.
Submit one idempotent, authorization-bound task. Draft-only and external-action modes use different server-enforced tool policies.
Read processing, completed, or error status, including result messages, billing settlement, and any external-action receipt.
import { buildDraftOnlyRequest } from 'https://www.promarkia.com/external-api/promarkia-request-builder.mjs';
const request = await buildDraftOnlyRequest({
squadId: '12',
userPrompt: 'Draft an evidence-backed WordPress outline. Do not publish it.'
});
const response = await fetch('https://www.promarkia.com/api/external/tasks', {
method: 'POST', headers: request.headers, body: JSON.stringify(request.body)
});
const accepted = await response.json();
const result = await fetch(`https://www.promarkia.com/api/external/runs/${accepted.runId}`, {
headers: { 'X-API-Key': request.headers['X-API-Key'] }
}).then((value) => value.json());
Complete request · Processing response · Completed response · Redacted action receipt · OpenAPI 3.1
Reuse the same idempotency key only for the exact same body. A changed body requires a new UUID and digest. Never retry an ambiguous external write until its run receipt is checked.
| Status | Meaning | Action |
|---|---|---|
| 401 | Invalid or revoked key | Create or rotate the key. |
| 402 | Insufficient capacity | Add capacity, then submit a new authorization. |
| 409 | Idempotency conflict | Do not widen the existing request; use a new UUID. |
| 426 | Unsupported contract | Build a contract v2 request. |
| 500 | Server failure | Poll the run before deciding whether to retry. |
Every request resolves to the Promarkia account that created the API key. Runs and artifacts remain tenant-bound.
Task submissions require an idempotency key and a digest-bound authorization manifest so retries cannot silently widen the request.
Publishing and messaging require an allowed squad, action, destination, audience, toolkit, and connected account binding.
Promarkia reserves credits before dispatch, settles the run once, and records receipts for approved external actions.