Skip to main content
GET
Get the status of a pull by its requestId
  1. Take requestId from the submission response or the stream’s pull_started event.
  2. Poll about once per second until RESOLVED or FAILED. A confirmed payment can still be waiting for cards. It cannot subsequently become FAILED.
  3. The pull stays in PENDING_PAYMENT while the API checks an uncertain payment or a previously used nonce or checkout. If this lasts more than ten minutes, stop polling and contact Renaiss with that ID before signing again.
A FAILED pull charged nothing. Resubmitting the same signed payload, including a copy already in flight, can restart it at PENDING_PAYMENT. You can look up the request for at least 30 days.

Request

Builder key required

Response

Failures after submission

If the HTTP 200 response has status: "FAILED", the buyer was never charged. Stop polling and use error.code to find the next step below.Most codes return Unable to fund the pull. in error.message. The table quotes the other messages where they apply.
For an unrecognized code, check the wallet’s pull history before signing again.On mainnet, a refused USDT transfer can still return INSUFFICIENT_USDT_AMOUNT when the allowance is short. Check both the balance and the USDT allowance for Permit2. On testnet, INSUFFICIENT_ALLOWANCE identifies a short approval when the balance covers the price.

Error codes

Match the HTTP status and response text to a row below. For guidance on codes shared across endpoints, see Error meanings and recovery.

Authorizations

x-builder-api-key
string
header
required

Your approved builder API key. Keep it on your backend. Gacha and marketplace writes also require wallet action signatures. Redeem also needs a wallet access token, a Bearer token the API issues after the wallet signs a sign-in message.

Query Parameters

requestId
string<uuid>
required

Response

Success

requestId
string<uuid>
required
status
enum<string>
required
  • PENDING_PAYMENT — The API accepted the pull and is processing the payment.
  • PENDING_RESOLUTION — Payment is confirmed and the API is assigning cards. The status can no longer change to FAILED.
  • RESOLVED — The pull is complete. Read result.draws for the cards.
  • FAILED — The buyer was never charged. Read error.code for the reason.
Available options:
PENDING_PAYMENT,
PENDING_RESOLUTION,
RESOLVED,
FAILED
buyerWalletAddress
string
required

20-byte, 0x-prefixed wallet or contract address. Use lowercase or a valid checksum.

packId
string<uuid>
required
nonce
string
required
numOfTokens
integer
required
permitFundTxHash
string | null
required

The funding transaction hash. Null until payment is confirmed.

error
object | null
required

Contains code and message when status is FAILED. Null for all other statuses. See pull failures and recovery.

result
object · null · null
required

The same body as GET /v2/gacha/draw-status for this pull. Null unless the status is RESOLVED.