Skip to main content
POST
Sign payload

Authorizations

X-API-Key
string
header
required

Headers

API-Version
enum<string>
default:v1

API version (defaults to the latest supported version if omitted).

Available options:
v1
Idempotency-Key
string
required

Unique key (1-255 printable ASCII chars) used to safely retry write operations. Same key + body returns the cached response; same key + different body returns 409.

Required string length: 1 - 255

Path Parameters

id
string<uuid>
required

Wallet ID

Body

application/json
payload
string
required

Payload to sign, encoded per payload_encoding

Maximum string length: 65536
Example:

"9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08"

address_id
string<uuid>

Identifier of the address whose key signs the payload

Example:

"3f1a2b3c-4d5e-6f7a-8b9c-0d1e2f3a4b5c"

hash_function
enum<string>

Hash function applied before signing: no_op, sha256, keccak256, or not_applicable

Available options:
no_op,
sha256,
keccak256,
not_applicable
Example:

"no_op"

payload_encoding
enum<string>

Encoding of the payload: hexadecimal (default) or text_utf8

Available options:
hexadecimal,
text_utf8
Example:

"hexadecimal"

Response

Created

activity_id
string

Identifier of the underlying signing activity

Example:

"activity-id"

address
string

On-chain address whose key produced the signature

Example:

"0x742d35Cc6634C0532925a3b844Bc454e4438f44e"

address_id
string

Identifier of the address whose key produced the signature

Example:

"3f1a2b3c-4d5e-6f7a-8b9c-0d1e2f3a4b5c"

algorithm
string

Signing algorithm (e.g. ecdsa)

Example:

"ecdsa"

chain
string

Blockchain associated with the signing key

Example:

"ethereum"

curve
string

Elliptic curve used (e.g. secp256k1, ed25519)

Example:

"secp256k1"

hash_function
string

Hash function applied before signing

Example:

"no_op"

network
string

Network associated with the signing key

Example:

"mainnet"

object
string

Object type, always "signature"

Example:

"signature"

payload
string

Payload that was signed

Example:

"9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08"

payload_encoding
string

Encoding of the payload

Example:

"hexadecimal"

r
string

ECDSA signature r component

Example:

"0x1"

recovery_id
integer

Public-key recovery identifier

Example:

0

s
string

ECDSA signature s component

Example:

"0x2"

signature
string

The produced signature

Example:

"0x..."

signature_encoding
string

Encoding of the signature

Example:

"hexadecimal"

signature_format
string

Format of the signature (e.g. secp256k1_recoverable_65)

Example:

"secp256k1_recoverable_65"

signed_at
string<date-time>

ISO-8601 timestamp when the payload was signed

Example:

"2026-05-16T10:30:00Z"

signed_payload
string

The payload as signed (after any hashing)

Example:

"0x9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08"

signed_payload_encoding
string

Encoding of the signed payload

Example:

"hexadecimal"

v
integer

ECDSA signature v (recovery) parameter

Example:

27

wallet_id
string

Identifier of the wallet whose key produced the signature

Example:

"a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d"