Skip to main content
POST
/
sdk
/
{environmentId}
/
waas
/
{walletId}
/
signMessage
Sign a message with a WAAS wallet
curl --request POST \
  --url https://app.dynamicauth.com/api/v0/sdk/{environmentId}/waas/{walletId}/signMessage \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "message": "<string>",
  "isFormatted": true,
  "roomId": "<string>",
  "context": {
    "evmUserOperation": {
      "chainId": 123,
      "entryPoint": "<string>",
      "operation": {
        "authorization": {
          "address": "<string>",
          "chainId": 123,
          "nonce": 123,
          "r": "<string>",
          "s": "<string>",
          "v": "<string>",
          "yParity": 123
        },
        "callData": "<string>",
        "callGasLimit": "<string>",
        "factory": "<string>",
        "factoryData": "<string>",
        "maxFeePerGas": "<string>",
        "maxPriorityFeePerGas": "<string>",
        "nonce": "<string>",
        "paymaster": "<string>",
        "paymasterData": "<string>",
        "paymasterPostOpGasLimit": "<string>",
        "paymasterVerificationGasLimit": "<string>",
        "preVerificationGas": "<string>",
        "sender": "<string>",
        "signature": "<string>",
        "verificationGasLimit": "<string>"
      }
    },
    "evmMessage": "<string>",
    "svmMessage": "<string>",
    "suiMessage": "<string>",
    "stellarMessage": "<string>",
    "domain": "https://app.xyz.com"
  },
  "bitcoinConfig": {
    "addressType": "<string>",
    "network": "<string>"
  },
  "shareSetId": "95b11417-f18f-457f-8804-68e361f9164f"
}
'
{
  "roomId": "<string>",
  "serverKeygenIds": [
    "<string>"
  ],
  "newServerKeygenIds": [
    "<string>"
  ],
  "walletId": "95b11417-f18f-457f-8804-68e361f9164f"
}

Documentation Index

Fetch the complete documentation index at: https://www.dynamic.xyz/docs/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

environmentId
string
required

ID of the environment

Required string length: 36
Pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
Example:

"95b11417-f18f-457f-8804-68e361f9164f"

walletId
string
required

UUID of the wallet

Required string length: 36
Pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
Example:

"95b11417-f18f-457f-8804-68e361f9164f"

Body

application/json

Sign Message Request

message
string
required

A string with a max length of 204800 characters

Maximum string length: 204800
isFormatted
boolean

Whether the message is pre-formatted for signing

roomId
string

MPC room identifier for the signing session

context
object
bitcoinConfig
object
shareSetId
string

Optional identifier of the share set this operation targets. When omitted, the active rootUser share set for walletId is resolved server-side (backwards-compat fallback for older SDKs).

Required string length: 36
Pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
Example:

"95b11417-f18f-457f-8804-68e361f9164f"

Response

Successfully created a room for signing message ceremony

roomId
string
required

Unique identifier of the opened MPC room

serverKeygenIds
string[]

List of existing server-side key generation identifiers

A base58 string with a max length of 100 characters

Maximum string length: 100
Pattern: ^[1-9A-HJ-NP-Za-km-z]+$
newServerKeygenIds
string[]

List of newly generated server-side key generation identifiers

A base58 string with a max length of 100 characters

Maximum string length: 100
Pattern: ^[1-9A-HJ-NP-Za-km-z]+$
walletId
string
Required string length: 36
Pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
Example:

"95b11417-f18f-457f-8804-68e361f9164f"