Bind a portable agent identity (AGP-123)
phantom_bind_identityRegisters an agent_id as a portable identity for this account via POST /v1/identity/bind. The proof-of-possession is an EIP-712 IdentityBinding signature produced LOCALLY with PHANTOM_IDENTITY_PRIVATE_KEY (environment variable only, never a command-line flag — AGP-057); the private key never leaves this process, only the signature is sent. Idempotent: replaying the same bind returns the existing binding. attestation_address comes from GET /.well-known/phantom-identity.json of the PHANTOM deployment (field attestation_address) — pass it here together with the chain_id so the local signature domain matches the server's. Key rotation is NOT exposed here (it needs the old AND new keys); call POST /v1/identity/rotate directly instead.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| epoch | No | Identity epoch for this binding (default 1; increment only via rotation). | |
| agent_id | Yes | Portable agent identifier to bind to this account (1..128 chars), e.g. an A2A agent card ID. | |
| chain_id | Yes | EVM chain ID of the PHANTOM deployment (e.g. 84532 = Base Sepolia). | |
| issued_at | No | Unix seconds issuance timestamp (default: now). | |
| attestation_address | Yes | Attestation service address from GET /.well-known/phantom-identity.json (field attestation_address). |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| content | Yes | ||
| isError | No | True when the API call failed; text carries { error: { code, message } }. |