Wallet Infrastructure
Wallet Infrastructure
Treasury

Submit delegate spend

POST
/v1/limits/spend/submit

Requires scope transactions:create.

Authorization

ApiKey
headerAuthorizationBearer <sk_test_ or sk_live_ key>

Your sk_live_ / sk_test_ API key

Request Body

application/json
  1. body
chain*string
Value in"ethereum""base""arbitrum""polygon""celo""optimism""plasma"
safeAddress*string
Match^0x[0-9a-fA-F]{40}$
delegate*string
Match^0x[0-9a-fA-F]{40}$
token*string
Match^0x[0-9a-fA-F]{40}$
to*string
Match^0x[0-9a-fA-F]{40}$
amountBaseUnits*string
Match^\d+$
delegateEntityKey*string
Length1 <= length
passkeyData*

Response Body

200application/json

The relay operation the bundler accepted

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
409

spend_limit_exceeded: the amount exceeds the delegate's remaining allowance.

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/limits/spend/submit' \  -H 'Authorization: Bearer sk_test_...' \  -H 'Content-Type: application/json' \  -d '{  "chain": "ethereum",  "safeAddress": "string",  "delegate": "string",  "token": "string",  "to": "string",  "amountBaseUnits": "string",  "delegateEntityKey": "string",  "passkeyData": {    "property1": null,    "property2": null  }}'
Example Response
{  "data": {    "userOpHash": "string",    "transactionHash": "string"  },  "status": 200,  "success": true}