Rensei docs
API ReferenceWorker Protocol

Post plugin verb invocation result

Called by the daemon after executing a polled plugin verb invocation. Ordinary local-bridge results keep the existing resume behavior. `rensei.verify.run` is a strict runtime-JWT-only branch (maximum 2 MiB) requiring `X-Rensei-Claim-Acknowledgement-Receipt-Sha256` and `X-Rensei-Result-Attempt: 1|2|3|4`; it settles canonical result bytes and creates or reloads one immutable result-attempt authority before returning its exact bytes, echoed send number, and platform attempt id. It never resumes the workflow. Positive continuation occurs only at acknowledgement confirmation. Duplicate settlements are replay-safe and conflict on changed stable bytes.

POST
/api/daemon/plugin-verbs/result

Authorization

headerAuthorizationBearer <rsk_live_*>

Rensei API key presented as Authorization: Bearer rsk_live_. Required API-key scopes are recorded per operation in x-rensei-required-scopes.

Header Parameters

X-Rensei-Result-Attempt?integer

Required for the privileged rensei.verify.run branch; daemon-consumed result send number.

Value in1234

Request Body

application/json
  1. body
invocationId*string
result?unknown

Success payload (present on success; absent on error).

error?string

Error message (present on failure; absent on success). Daemon adapter refusals use <code>: <reason>: <detail>, where code is adapterReceipt.refusal.code. Ordinary local-bridge errors remain free-form. Platform enqueue/poll refusals (adapter_host_retired and adapter_consent_*) are a separate group, not daemon result refusal codes.

adapterReceipt?

D10 execution receipt. Required on a success result for an adapter-bound invocation; contractDigest must equal the digest bound at enqueue or the result is refused (409) and the invocation fails closed. Optional on an error-only post, but must match when present. Stored verbatim (max 16 KiB).

Response Body

Result recorded.

application/json
  1. response
ok*true
Value intrue
invocationId*string
resumed*integer

Number of workflow runs resumed.

Example Request
curl -X POST 'https://app.rensei.ai/api/daemon/plugin-verbs/result' \  -H 'Content-Type: application/json' \  -d '{  "invocationId": "string"}'
Example Response
{  "ok": true,  "invocationId": "string",  "resumed": 0}