# `token.mint` Mint an access token for this store (Ajan = propose-only, Geliştirici = direct). Owner sessions only; the plaintext is returned once by POST /v1/tokens, never audited. - **scope**: `agents:admin` - **storefront-visible** (bumps the catalog generation): no - **destructive**: no ## Payload | field | type | required | notes | |---|---|---|---| | `kind` | "agent" \| "developer" | yes | | | `label` | string (≤60 chars) | yes | | | `scopes` | array (≤10) | yes | | | `expiresInDays` | integer (1..365, default 90) | no | | | `rateLimitPerMin` | integer (10..1000) | no | | | `tokenHash` | string (/^[a-f0-9]{64}$/) | yes | | | `prefix` | string (/^[A-Za-z0-9_-]{8}$/) | yes | | | `workspaceId` | string (/^ws_[0-9A-HJKMNP-TV-Z]{26}$/) | no | | ### JSON Schema ```json { "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "properties": { "kind": { "type": "string", "enum": [ "agent", "developer" ] }, "label": { "type": "string", "minLength": 1, "maxLength": 60 }, "scopes": { "minItems": 1, "maxItems": 10, "type": "array", "items": { "type": "string", "pattern": "^[a-z]+(:[a-z]+)?$" } }, "expiresInDays": { "default": 90, "type": "integer", "minimum": 1, "maximum": 365 }, "rateLimitPerMin": { "type": "integer", "minimum": 10, "maximum": 1000 }, "tokenHash": { "type": "string", "pattern": "^[a-f0-9]{64}$" }, "prefix": { "type": "string", "pattern": "^[A-Za-z0-9_-]{8}$" }, "workspaceId": { "type": "string", "pattern": "^ws_[0-9A-HJKMNP-TV-Z]{26}$" } }, "required": [ "kind", "label", "scopes", "tokenHash", "prefix" ], "additionalProperties": false } ```