toolkits

Create a toolkit — scoped bundle of upstream API credentials with a client API key

Creates a toolkit: a named bundle of upstream API credentials with a scoped client API key for the agent. Returns a toolkit API key (tk_xxx) — shown once, not recoverable. Bind credentials via POST /toolkits/{id}/credentials. Set access policy via PUT /toolkits/{id}/credentials/{cred_id}/permissions. Agents use toolkit keys to call the broker; only bound credentials are injected.

post/toolkits

Request body

namestring required

Toolkit name for identification

descriptionstring nullable

Optional description of this toolkit's purpose

simulateboolean

If true, toolkit operates in dry-run mode (no real API calls)

initial_key_labelstring nullable

Label for the first key created with this toolkit (e.g. 'Agent A')

initial_key_allowed_ipsstring[] nullable

IP allowlist for the first key. NULL = unrestricted.

Response

Successful Response

idstring required

Toolkit ID

namestring required

Human-readable toolkit name

descriptionstring nullable

Optional description of this toolkit's purpose

created_atnumber nullable

Unix timestamp when created

disabledboolean

If true, all API keys for this toolkit are revoked

key_countinteger nullable

Number of API keys issued for this toolkit

credential_countinteger nullable

Number of credentials bound to this toolkit

permissionsobject[]

Access control rules for this toolkit

Example response

{
  "id": "default",
  "name": "Default Toolkit",
  "description": "Default toolkit for general-purpose API access",
  "created_at": 1672531200,
  "key_count": 3,
  "credential_count": 5,
  "keys": [],
  "credentials": [],
  "permissions": [
    {
      "effect": "allow",
      "methods": [
        "GET"
      ]
    }
  ]
}

Changes