---
title: "Mint an identity token"
method: POST
path: "/v1/inboxes/{id}/identity-token"
tags: ["Shakehand"]
---

# Mint an identity token

`POST /v1/inboxes/{id}/identity-token`

## Request

- Base URL: `https://api.agentboxd.com`
- URL: `https://api.agentboxd.com/v1/inboxes/{id}/identity-token`
- Auth: HTTP bearer

`{ audience, nonce?, scope?, expires_in? }` → `201 { id_token, token_type, issuer, audience, sub, jti, scope, expires_in, expires_at }`. A single-use ID token for one app, at most 5 minutes. `:id` is an inbox or an identity without a mailbox. Needs `identity:sign`. Errors: `400 unknown_audience`, `400 invalid_scope`, `403 identity_disabled`, `403 identity_unavailable` (temporary inbox), `429 rate_limited` (30 per inbox per minute).

Permission: `identity:sign`.

## Path parameters

- `id` string, uuid, required

## Request body

- object
  - `audience` string, required
  - `nonce` string
  - `scope` string
  - `expires_in` integer

## Response `200`

OK

- object

## Other responses

- `4XX`: Error
- `5XX`: Error

---

[API](https://skmtc.dev/agentboxd/apis/agentboxd-api.md) · [All operations](https://skmtc.dev/agentboxd/apis/agentboxd-api/llms.txt) · [OpenAPI document](https://skmtc.dev/agentboxd/apis/agentboxd-api/revisions/ee7b079f0e97?raw)
