POST
/
2022-06-09
/
wallets
/
{walletLocator}
/
signatures
/
{signatureId}
/
approvals
curl --request POST \
  --url https://staging.crossmint.com/api/2022-06-09/wallets/{walletLocator}/signatures/{signatureId}/approvals \
  --header 'Content-Type: application/json' \
  --header 'X-API-KEY: <x-api-key>' \
  --data '{
  "approvals": [
    {
      "signer": "evm-keypair:0x1234...",
      "signature": "0x1234567890abcdef..."
    }
  ]
}'
{
  "id": "tx-b984491a-5785-43c0-8811-45d46fe6e520",
  "walletType": "evm-smart-wallet",
  "type": "evm-message",
  "status": "awaiting-approval",
  "params": {
    "message": "Hello, world!",
    "signer": "evm-keypair:0xB17Ea8d34078424B9d7D126E444d5F2C3CC5c81E",
    "chain": "polygon"
  },
  "approvals": {
    "pending": [
      {
        "signer": "evm-keypair:0xB17Ea8d34078424B9d7D126E444d5F2C3CC5c81E",
        "message": "Hello world!"
      }
    ],
    "submitted": []
  },
  "createdAt": "2024-01-01T00:00:00Z"
}

Headers

X-API-KEY
string
required

API key required for authentication

Path Parameters

walletLocator
string
required

A wallet locator can be of the format:

  • <walletAddress>
  • email:<email>:<walletType>
  • userId:<userId>:<walletType>
  • userId:<userId>:<walletType> (white label user example)
  • phoneNumber:<phoneNumber>:<walletType>
  • twitter:<handle>:<walletType>
  • x:<handle>:<walletType>
signatureId
string
required

Body

application/json

Input for submitting one or more approvals

approvals
required

Array of approvals to submit for this transaction

An EVM signature submission for a transaction

Response

201
application/json
The signature has been successfully approved.

Complete signature response including status, signing requirements, and wallet type specific data

id
string
required

Unique identifier for the signature

type
enum<string>
required

The type of signature

Available options:
evm-message,
solana-message,
evm-typed-data,
aptos-message,
cardano-message,
sui-message
status
enum<string>
required

Current status of the signature

Available options:
awaiting-approval,
pending,
failed,
success
params
object
required

Type-specific signature parameters

createdAt
number
required

ISO timestamp when the signature was created

Example:

"2024-01-01T00:00:00.000Z"

approvals
object

Complete approval data including requirements, pending and submitted signatures

completedAt
number

ISO timestamp when the transaction reached finality

Example:

"2024-01-01T00:00:00.000Z"

error
any

Error message if the signature fails

outputSignature
string

The wallet's output signature of the request