agentWallet to "generate". Store the returned key once. Proofable does not keep it.
Leave out
controllerWallet when the signed-in account from proofable_context should own the agent.
Ask:
Create or import an agent on my Proofable profile. Use generate if I need a separate spend account. Set spend and action limits. Then confirm it is ready.Agent concepts
Account options
Signed-in profile (default)
OmitagentWallet. The agent lives on your signed-in account. Identity is enough. Several agents on one account need agentId on every link and mount call.
Dedicated key (generate)
agentWallet: "generate" creates a separate spend account and returns the private key once. Store it in Vault (proofable_secret_create) or your own key manager before you continue.
Bring your own account
Pass an existingagentWallet. The agent account signs identity. The approving profile signs spend and action limits.
- Sign and submit the returned identity step with the agent key.
- Repeat
proofable_agent_createunchanged. - The approving account completes permissions in-session or through the returned hosted URL.
What each result means
Every non-validation result includespath and next_action.
sessionProgress.identityComplete, delegationRequired, and delegationComplete show which step is required and already saved. On payment_required, add credits and retry the same request. This is an account billing requirement, not a signature failure.
Hosted callback
Use the SDK helper instead of assembling query strings:identityQHash, Hosted Verify requests only permissions. The callback receives the new permission qHash, agentId, and agentWallet. Keep the identity qHash from step 1.
Do not combine agent creation with gateId or intent=login on one URL:
- Login:
intent=login&returnUrl=... - Gate checkout:
gateId=...&returnUrl=... - Agent setup:
getHostedAgentCreateUrl(...)
Billing
Billing follows the signer for each proof unless a validated sponsor or pay-per-call proof overrides it:- Agent identity: the agent account pays.
- Permissions (separate spend account only): the approving profile pays.
- Hosted completion: the signed-in account pays for the step it signs.
- Sponsor grant or pay-per-call: the validated sponsor/caller pays.
instructions, skills, services, scope, expiry, spend cap, runtime policy, approval policy, and allowed/denied actions. See Agent identity and Agent delegation.
