Skip to main content
POST
Create a wallet

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json

Request to create your wallet. Provide your passkey's public key and WebAuthn credential ID. Circle derives the MSCA address and signs all UserOperations for you.

idempotencyKey
string<uuid>
required

Idempotency key (UUID v4) for this request. Reusing it with a different body returns 409 Conflict.

ownerKey
string
required

Hex-encoded raw P256 public key bytes of your passkey.

credentialId
string
required

Hex-encoded WebAuthn credential identifier captured during passkey registration. Stored on the passkey owner record and returned by GET /v1/borrow/wallets.

Response

Request to create a wallet accepted. Poll the returned job to track its status.

data
object

An async onchain operation. Each job represents one of: borrow, repay, add collateral, wallet setup, owner change, or residual withdraw. Poll this resource until the job reaches a terminal status (completed, failed, or approval_rejected). Fields that do not apply to the current status or job type are omitted rather than returned as null.

Example: