Execute Harbor Action

Execute a prepared action with at most one application attempt per server-issued execution identifier. First call [Prepare action](../../../../../api-reference/harbors/actions/prepare). Submit only its server-issued `execution_id` using a writable scoped credential belonging to the same Harbor. The destination, operation, lookup, and input are fixed by preparation. No per-request approval is required. Polytomic checks current grants, provider capabilities, and the saved Connection again before execution. Preparation does not reserve permission. An expired preparation cannot start an execution. It returns `410 Gone` while the expired preparation remains available, or `404 Not Found` after cleanup. > 🚧 Updates can overwrite intervening edits > > Enabled operations can act on records accessible through the saved Connection > and may trigger provider automation. Preparation does not lock the destination > record. Action permission does not grant read access. ## One intended attempt An identifier already claimed for execution returns its original receipt, including through another eligible credential or after action disablement. Receipts remain available after prepared arguments are removed or expire. They are retained independently of Activity history. An `action.attempt_started` event means permission to attempt the action was claimed, not that the provider received it. Disabling actions blocks new claims but does not recall an accepted attempt. This is at most one application attempt per execution identifier, not a remote exactly-once guarantee. Advertised remote idempotency does not authorize automatic replay. ## Results and recovery Keep `execution_id` and the returned `status_path`. `succeeded` means the provider confirmed the operation and Polytomic recorded that outcome. `failed` means the operation was rejected. `executing` is incomplete. `recovery_required: true` does not confirm durable acceptance or completion. Use the status path after a timeout or server error. A missing receipt does not prove no operation occurred. > ⚠️ An unknown outcome is terminal > > `unknown` means the operation may have happened. Investigate the record and > provider automation. Do not resubmit or prepare a replacement action to retry. > Polytomic never automatically retries an uncertain attempt. An overdue > executing receipt becomes unknown after its 90-second deadline. Send a separate nonzero UUID in `X-Polytomic-Activity-Request-ID` for each HTTP request. MCP supplies this transport header automatically. `X-Polytomic-Harbor-Session` is optional for direct REST requests; a supplied session must be active and bound to your credential and Harbor. Receipts and Activity contain operation identity, lookup field names, submitted field names, original attribution, and safe outcome categories. They exclude lookup values, input values, output payloads, and raw provider errors.

Authentication

AuthorizationBearer
Bearer user API key
OR
AuthorizationBasic

Basic organization-scoped API key

Path parameters

harbor_idstringRequiredformat: "uuid"
Unique identifier of the Harbor.

Headers

X-Polytomic-VersionstringOptional
X-Polytomic-Harbor-SessionstringOptional
X-Polytomic-Activity-Request-IDstringOptional

Request

This endpoint expects an object.
execution_idstringRequiredformat: "uuid"

Server-issued identifier returned by prepare. Preserve it for status recovery; never prepare a replacement to retry uncertainty.

Response

OK
dataobjectOptional