Skip to main content

agent-identity

Base: https://<ref>.firebaseapp.com/functions/v1/agent-identity

POST /agents/create

Auth: bridge key.

{ "agent_id": "agent-triage", "display_name": "Triage" }

Returns { agent_id, created_at }.

POST /device/issue

Auth: bridge key.

{ "agent_id": "agent-triage", "label": "laptop" }

Returns { device_key, device_id, expires_at }. Device key is shown exactly once.

POST /device/revoke

Auth: bridge key or matching device key.

{ "device_id": "dev_..." }

POST /delegate

Auth: device key for from_agent.

{
"from_agent": "agent-triage",
"to_agent": "agent-summary",
"scope": ["memory.read", "postbox.send"],
"expires_at": "2026-05-01T00:00:00Z"
}

Returns { delegation_id, token }.

POST /secrets/put

Auth: device key.

{ "agent_id": "agent-triage", "key": "openai_api_key", "value": "sk-..." }

Value is encrypted at rest.

POST /secrets/get

{ "agent_id": "agent-triage", "key": "openai_api_key" }

Returns { value }.

POST /settings/list

Auth: bridge key.

Returns { settings: [{ key, value, schema }] }.

POST /settings/set

Auth: bridge key. Key must be in the allow-list.

{ "key": "postbox_retention_days", "value": 60 }