Wallet Infrastructure
Wallet Infrastructure
Wallets

Provision wallets

POST
/v1/wallets/provision

Requires scope wallets:create.

Authorization

ApiKey
headerAuthorizationBearer <sk_test_ or sk_live_ key>

Your sk_live_ / sk_test_ API key

Header Parameters

x-customer-id?string

Scope the wallets to a business-supplied customer id

Request Body

application/json
  1. body
isTreasury?boolean
passkeyRegistration*
modules?array<>
Items1 <= items <= 6

Response Body

201application/json

Wallets provisioned

TypeScript Definitions

Use the response body type in TypeScript.

data*
status*number
success*boolean
401application/json

The Authorization header is missing, malformed, or the API key is unknown or revoked

TypeScript Definitions

Use the response body type in TypeScript.

data*
status*number
success*boolean
429application/json

The API key exceeded its request budget for the window

TypeScript Definitions

Use the response body type in TypeScript.

data*
status*number
success*boolean

Language

curl -X POST 'https://api.pilot.shiga.io/v1/wallets/provision' \  -H 'x-customer-id: <customer id>' \  -H 'Authorization: Bearer sk_test_...' \  -H 'Content-Type: application/json' \  -d '{  "passkeyRegistration": {    "credentialId": "string",    "credentialPublicKey": "string",    "rpId": "string",    "origins": [      "string"    ]  }}'
Example Response
{  "data": {    "wallets": [      {        "moduleId": "evm_erc4337",        "chain": "evm",        "address": "string",        "status": "created",        "error": "string",        "deployment": {          "status": "deployed",          "userOpHash": "string",          "transactionHash": "string"        },        "deployments": [          {            "status": "deployed",            "userOpHash": "string",            "transactionHash": "string",            "chain": "string"          }        ]      }    ],    "passkeyPublicKey": {      "x": "string",      "y": "string"    }  },  "status": 201,  "success": true}