Skip to main content

delta mandate Orchestrator API (0.4.1)

Download OpenAPI specification:Download

API for submitting signed intents, proposing solutions, and managing templates. The Orchestrator verifies each proposal against the user's signed intent and the configured template.

intents

Submit and retrieve signed user intents.

An intent encodes what a user wants to happen, parameterized against a compiled template.

intents/submit

Submit a signed intent.

The signature is verified and the referenced template must exist before the intent is stored.

Request Body schema: application/json
required
required
object (Intent)

The data payload that is being signed.

required
object or object or object (Signature)

Responses

Request samples

Content type
application/json
{
  • "payload": {
    },
  • "signature": {
    }
}

Response samples

Content type
application/json
{
  • "message": "string"
}

intents/get

Get a stored intent by its ID.

path Parameters
intent_id
required
string <uuid> (IntentId)

Intent ID

Responses

Response samples

Content type
application/json
{
  • "payload": {
    },
  • "signature": {
    }
}

proposals

Submit agent proposals for open intents.

Submitting a proposal triggers ZK proof generation to verify the solution satisfies the policy defined by the intent and the corresponding template.

proposals/submit

Submit a proposal for a pending intent, triggering the delta mandate pipeline.

The intent and its template must exist and the intent must not yet have a proposal. Evidence will be extracted from the proposed solution (URL) which is validated against the template and intent. Upon success, a proof is generated.

Request Body schema: application/json
required
intent_id
required
string <uuid> (IntentId)

The ID of the intent this proposal targets.

url
required
string

URL pointing to the proposed solution payload that the Orchestrator will fetch and verify.

Responses

Request samples

Content type
application/json
{
  • "intent_id": "05704cef-194d-4987-b2cb-c2c20c9cd88a",
  • "url": "string"
}

Response samples

Content type
application/json
{
  • "message": "string"
}

templates

Upload and delete compiled templates.

Templates define the rules that intents and proposals must satisfy.

templates/submit

Compile and store a template from its source.

The compiled template is content-addressed by its SHA-256 hash, so submitting the same source twice returns the same template ID.

Request Body schema: text/plain
required
string

Responses

Response samples

Content type
application/json
{
  • "template_id": "string"
}

templates/delete

Delete a stored template by its ID.

path Parameters
template_id
required
string (HashDigest)

Template ID

Responses

Response samples

Content type
application/json
{
  • "message": "string"
}

config

Operator-facing runtime configuration.

config/get

Get the runtime configuration.

Responses

Response samples

Content type
application/json
{
  • "evidence_extractor_url": "string"
}

config/put

Set the runtime configuration.

Request Body schema: application/json
required
evidence_extractor_url
required
string

Base URL of the evidence extractor service.

Responses

Request samples

Content type
application/json
{
  • "evidence_extractor_url": "string"
}

Response samples

Content type
application/json
{
  • "evidence_extractor_url": "string"
}