Wallet Sign Message (beta)

POST /v1/wallets/{wallet_id}/sign_message

Sign message using a managed wallet. Managed wallet means the private key is never exposed to the client and always stored encrypted in our vault. Currently, only Ethereum ETH wallet type signing is supported.

HTTP Request

POST /v1/auth/wallets/{wallet_id}/sign_message

Returns

A successful response returns a Wallet object and a signature property for the signed message.

Path parameters

  • wallet_id string Required

    Unique wallet ID of the wallet to retrieve.

application/json

Body

  • message string Required

    Message string to sign. It adds to the message prefix "\x19Ethereum Signed Message:\n" before signing, a standard in Ethereum Improvement Proposal (EIP) 191.

Responses

POST /v1/wallets/{wallet_id}/sign_message
curl \
 -X POST https://api.streambird.io/v1/wallets/{wallet_id}/sign_message \
 -H "Authorization: Bearer $ACCESS_TOKEN" \
 -H "Content-Type: application/json" \
 -d '{"message":"test"}'
Request example
{
  "message": "test"
}
Response examples (200)
{
  "wallet_id": "wallet_26l6hdwAXQr0y573AhQTXNDkyqK",
  "wallet": {
    "id": "wallet_26l6hdwAXQr0y573AhQTXNDkyqK",
    "app_id": "app_25ldv51seNohTaYRsxdfoxMlAa2",
    "user_id": "user_26l6ha8syVN8oqmaHaFShTxZ5RC",
    "public_address": "0xb6acedc0cdcab7a4bb6c236976bb7df63bbcd567",
    "wallet_type": "ETH",
    "verified": true,
    "is_default": true,
    "is_read_only": false,
    "is_imported": false,
    "updated_at": 1647985945,
    "created_at": 1647985945
  },
  "signature": "0xc8723cfad978035ad3b960beade5237477aa91a9b01ba238d859e2a6e0fbded322e4732d3252afc4f7bec0018cc7bdddfe90547cc4fa985a400744315316198e01"
}