Create a Grid smart account with custom signer configurations using email-based MPC wallets or external public keys
| Header | Type | Required | Description |
|---|---|---|---|
Authorization | string | Yes | Bearer token |
x-grid-environment | string | Yes | Target environment: sandbox or production |
x-idempotency-key | string | No | Prevents duplicate account creation on retries |
| Field | Type | Required | Description |
|---|---|---|---|
policies | object | Yes | Account policy configuration |
policies.threshold | number | Yes | Number of signatures required (1-10) |
policies.signers | array | Yes | Array of signer configurations (1-10 signers) |
policies.timeLock | number | No | Time lock in seconds before transactions can execute |
policies.adminAddress | string | No | Admin address that can modify account settings |
memo | string | No | Optional memo included in the creation transaction |
| Field | Type | Description |
|---|---|---|
type | string | Must be "email" |
email | string | Email address for the signer |
provider | string | MPC provider: "turnkey" or "privy" |
permissions | array | List of permissions for this signer |
| Field | Type | Description |
|---|---|---|
type | string | Must be "pubkey" |
address | string | Solana public key (base58) |
permissions | array | List of permissions for this signer |
| Permission | Description |
|---|---|
CAN_INITIATE | Can create new transaction proposals |
CAN_VOTE | Can approve or reject proposals |
CAN_EXECUTE | Can execute approved transactions |
CAN_VOTE permission.| Field | Type | Description |
|---|---|---|
type | string | Always "signers" for this endpoint |
address | string | The created smart account address |
policies.threshold | number | Required number of signatures |
policies.signers | array | Resolved signers with their on-chain addresses |
policies.timeLock | number | Time lock value (if set) |
policies.adminAddress | string | Admin address (if set) |
Define Signer Configuration
| Error | Description |
|---|---|
InvalidSignerConfiguration | Missing required permissions or threshold exceeds voters |
DuplicateEmailProvider | Same email used twice with the same MPC provider |
DuplicateAddress | Multiple signers resolve to the same address |
InvalidPubkey | Invalid Solana public key format |
InvalidMPCProvider | Unsupported MPC provider specified |
Your Grid API key from the Grid Dashboard
Solana network environment (sandbox, production)
Optional idempotency key to prevent duplicate account creation