Skip to main content
POST
/
api
/
grid
/
v1
/
accounts:custom
cURL
curl --request POST \
  --url https://grid.squads.xyz/api/grid/v1/accounts:custom \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'x-grid-environment: <x-grid-environment>' \
  --header 'x-idempotency-key: <x-idempotency-key>' \
  --data '
{
  "policies": {
    "signers": [
      {
        "address": "<string>",
        "permissions": [
          "CAN_INITIATE"
        ],
        "role": "primary",
        "provider": "privy"
      }
    ],
    "threshold": 1,
    "admin_address": "<string>",
    "time_lock": 1
  },
  "memo": "<string>"
}
'
{
  "data": {
    "address": "<string>",
    "policies": {
      "signers": [
        {
          "address": "<string>",
          "permissions": [
            "CAN_INITIATE"
          ]
        }
      ],
      "threshold": 1,
      "adminAddress": "<string>",
      "timeLock": 1
    },
    "type": "<string>"
  },
  "metadata": {
    "request_id": "<string>",
    "timestamp": "2023-11-07T05:31:56Z"
  }
}

Authorizations

Authorization
string
header
required

Your Grid API key from the Grid Dashboard

Headers

x-grid-environment
string
required

Solana network environment (sandbox, production)

x-idempotency-key
string
required

Optional idempotency key to prevent duplicate account creation

Body

application/json
policies
object
required
memo
string | null

Response

Smart account created successfully

data
object
required
metadata
object
required