Skip to main content
GET
Get the client's registered agentic policy (ALPHA)

Authorizations

x-api-key
string
header
required

Path Parameters

client_id
string
required

KSUID is a 27-character globally unique ID that combines a timestamp with a random component. Used for all entity identifiers in the Dakota platform.

Required string length: 27
Pattern: ^[0-9A-Za-z]{27}$
Example:

"1NFHrqBHb3cTfLVkFSGmHZqdDPi"

Response

The client's registered agentic policy, normalized.

A client's registered client_policy (ALPHA) with its registration timestamps.

policy is the NORMALIZED form — what the server will actually apply, not an echo of what was sent. Values that mean "the default" are normalized away (payee_model: nested becomes absent, because an explicit nested and an absent policy have to be the same value rather than two values that merely behave alike today).

policy
object
required

ALPHA — how THIS client's product speaks, and what the agent may propose for it. It reshapes what the drafting model SEES (tool results, tool descriptions, prompt sections) and constrains what it may PROPOSE, so the agent narrates in the client's own nouns instead of platform ones.

SCOPE: this is a per-CLIENT policy — it belongs to the client_id behind the API key, never to a key (api keys are N:1 to clients, so a per-key policy would fragment for a client running one service key per deployment). REGISTER IT ONCE at PUT /clients/{client_id}/agentic-policy.

DELIVERY: sent in a POST .../proposals body this object is a DEVELOPMENT OVERRIDE — it wins for that one turn and the server logs that it did. Prefer the registration: forgetting to send the body copy fails SILENTLY, and the agent simply starts narrating in platform's nouns again with no error anywhere. Resolution per request is: a non-empty body policy, else this client's registration, else nothing at all.

STRICT: an unknown key, an unknown value, or a label for a concept the server does not implement is a 400 — "accepted" always means "enforced". Absent (or every field empty) ⇒ platform defaults, byte-for-byte the behaviour of a request that never mentioned it.

created_at
integer<int64>

Unix time this client first registered a policy.

updated_at
integer<int64>

Unix time the registration was last replaced.