Reconstruct a signed Avalanche transaction from signatures

Reconstructs a signed Avalanche transaction from a custodian's offline secp256k1 signature. CDAO looks up the
stored immutable unsigned transaction by unsignedTxHash, verifies that the signer is authorized for that
transaction, attaches the signature, and returns signedTxSerialized ready for /submit.

This endpoint is shared by validator staking, delegation, C-to-P export, and C-to-P import flows. The signature
must be recoverable secp256k1 in r, s, and recoveryId form. recoveryId must be 0 or 1; do not send
Ethereum v values such as 27/28 or EIP-155-adjusted values. s must be canonical low-S.

This MVP contract supports one signer for threshold-1 UTXOs. For C-to-P export, the signer is the C-Chain source
address. For P-Chain stake, delegate, and import transactions, the signer is the P-Chain wallet. Multi-owner and
multi-signature P-Chain UTXOs are intentionally out of scope for this simple ETH-like flow.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Body Params
uuid
required

The UUID of the account that owns the unsigned Avalanche transaction.

string
required
^0x[0-9a-fA-F]{64}$

The digest returned by /stake, /delegate, /export-c-to-p, or /import-c-to-p (SHA-256 of the canonical unsigned bytes). Identifies
the intent and is exactly what was signed.

string
required
^0x[0-9a-fA-F]{64}$

The 'r' component of the ECDSA signature (32 bytes).

string
required
^0x[0-9a-fA-F]{64}$

The 's' component of the ECDSA signature (32 bytes). Must be canonical low-S.

integer
enum
required

secp256k1 signature recovery ID. Must be 0 or 1, not Ethereum 27/28 or EIP-155 values.

Allowed:
Responses

401

Access token or App Id is missing or invalid

Language
Credentials
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json