---
title: "Create ECDSA MPC challenge for transaction"
method: POST
path: "/api/v2/wallet/{walletId}/txrequests/{txRequestId}/transactions/{transactionIdx}/challenge"
tags: ["Transaction request"]
---

# Create ECDSA MPC challenge for transaction

`POST /api/v2/wallet/{walletId}/txrequests/{txRequestId}/transactions/{transactionIdx}/challenge`

Create the challenge required for signing ECDSA transactions. You must call this
endpoint before calling [Create a signature share for the transaction request](/reference/v2wallettxrequestsignaturesharecreate#/).

## Path parameters

- `walletId` string, required
- `txRequestId` string, uuid, required
- `transactionIdx` string, number, required

## Request body

- object
  - `paillierModulus` string, required — The 'n' value from an ECDSA wallets paillier public key. Retrieved from xShare.n.

## Response `200`

OK

- CreateBitgoChallengeResponse
  - `ntilde` string, required — Range proof challenge value
  - `h1` string, required — Range proof challenge value
  - `h2` string, required — Range proof challenge value
  - `n` string, required — BitGo's paillier modulus 'n'.
  - `p` string[], required

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found

---

[API](https://skmtc.net/bitgo/apis/bitgo-api.md) · [All operations](https://skmtc.net/bitgo/apis/bitgo-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/bitgo/bitgo-api/revisions/e445c15e5bee/schema)
