Skip to main content

delta mandate Orchestrator API (0.5.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, and propose solutions for them.

An intent encodes what a user wants to happen, parameterized against a compiled template. Submitting a proposal triggers ZK proof generation to verify the solution satisfies the policy defined by the intent and its 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": {
    }
}

intents_propose

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, then validated against the template and intent. Upon success, a proof is generated.

path Parameters
intent_id
required
string <uuid> (IntentId)

Intent ID

Request Body schema: application/json
required
metadata
required
any

Additional metadata shared with the evidence layer.

The content is agreed between the template provider and evidence layer.

solution
required
string

Identifier of the proposed solution.

Examples include a URL, a UCP product variant ID, or another identifier agreed between the template provider and evidence layer.

Responses

Request samples

Content type
application/json
{
  • "metadata": null,
  • "solution": "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, validate, 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_validate

Compile and validate a template from its source without storing it.

This performs the same compilation validation as template submission, but does not create a template ID or write the compiled template to storage.

Request Body schema: text/plain
required
string

Responses

Response samples

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

templates_get

Get a human-readable pretty-printed representation of a stored template.

path Parameters
template_id
required
string (HashDigest)

Template ID

Responses

Response samples

Content type
application/json
{
  • "message": "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

Read and update operator-facing runtime configuration.

config_get

Get the runtime configuration.

Responses

Response samples

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

config_set

Set the runtime configuration.

Request Body schema: application/json
required
evidence_extractor_url
required
string

New base URL of the evidence extractor service or the empty string to use the default.

Responses

Request samples

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

Response samples

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

events

Stream live orchestrator events to downstream clients.

events_stream

Server-Sent Events stream of orchestrator events. Each event's data is one JSON-encoded OrchestratorEvent.

Responses