| chain | No | CAIP-2 chain identifier. Auto-detected from wallet format if omitted. | |
| preset | No | Permission preset: "assistant" (default: read, create receipts, run jobs and commands), "advisor" (read only), "operator" (assistant plus saved secrets and receipt management), or "payments" (x402 payments within maxSpend). delegationAllowedActions replaces the preset list. | |
| skills | No | Optional AgentSkillRef[] for agent-identity (id, label, version, provider, kind, configId, enabled). configId is an optional opaque integration reference (not a secret, not an OAuth token, not credential material). | |
| agentId | Yes | Stable human-readable agent identifier (e.g., "my-ai-assistant"). Required, 1-128 chars. | |
| maxSpend | No | Optional spend cap: whole-number string in token base units (1 to 78 digits, no decimal point). For USDC (typical x402 flows), use six decimal places. See SDK toAgentDelegationMaxSpend. | |
| services | No | Optional services for agent-identity: { name, endpoint (URL), version? }. | |
| agentType | No | Type of agent: "ai", "bot", "service", "automation", or "agent" (default: "ai"). | |
| expiresAt | No | Unix time in milliseconds when the permissions expire. Use 0 for no expiration. | |
| returnUrl | No | Optional callback URL for a browser step. Proofable appends the proof ID (qHash). | |
| agentLabel | No | Display name for the agent (optional, defaults to agentId). | |
| agentWallet | No | Agent account. Omit to use the signed-in profile. For a dedicated account, generate and retain the key outside Proofable and pass only its public address. | |
| description | No | Agent description (optional, max 500 chars). | |
| capabilities | No | Capability flags: "wallet", "signing", "spending", "publishing", "search", "browser", "mcp", "webhooks", "receipts", "proofs", "delegation". | |
| instructions | No | Optional agent instructions stored with the identity proof. Maximum 16,000 characters. | |
| defaultRuntime | No | Suggested provider, model, mode, and runtime origin. These values do not grant permission. | |
| controllerWallet | No | Account that approves spend and limits. Omit to use the signed-in profile. | |
| delegationSkills | No | Optional AgentSkillRef[] for agent-delegation. configId is an optional opaque integration reference (not a secret, not an OAuth token, not credential material). | |
| allowedPaymentTypes | No | Payment rails the agent may use when it can make payments (for example ["x402"]). Required with make_payment unless the payments preset supplies it. | |
| delegationInstructions | No | Optional permission instructions signed by the approving account. Maximum 16,000 characters. | |
| delegationDeniedActions | No | Action names the agent may not perform. Denied actions take precedence. | |
| delegationRuntimePolicy | No | Provider, model, and approval limits for this agent. Overrides the suggested runtime values. | |
| delegationAllowedActions | No | Canonical actions the agent may perform. Replaces the preset list; nothing else is granted. | |
| delegationApprovalPolicy | No | Human approval requirements for the agent. | |