---
title: "Get an unsigned PSBT for buying a rune"
method: POST
path: "/v2/ord/btc/runes/psbt/get-sweeping"
tags: ["Runes Sweeping"]
---

# Get an unsigned PSBT for buying a rune

`POST /v2/ord/btc/runes/psbt/get-sweeping`

## Request

- Base URL: `https://api-mainnet.magiceden.dev/v2`
- URL: `https://api-mainnet.magiceden.dev/v2/v2/ord/btc/runes/psbt/get-sweeping`
- Auth: none declared
- TypeScript: <https://skmtc.dev/magiceden/apis/magic-eden-api/docs/v2/ord/btc/runes/psbt/get-sweeping/post.ts> (a function with typed inputs; its response is checked against the schema)

Get an unsigned PSBT for buying a rune

## Request body

- PostRunesPSBTSweepingRequestSchema
  - `orderIds` string[], required: Array of order IDs, must contain at least 1 and no more than 50
  - `runeSymbol` string, required: Rune symbol must contain only uppercase letters and be between 1 and 26 characters long
  - `takerPaymentAddress` string, btc-address, required: Bitcoin address for the taker's payment
  - `takerPublicKey` string, btc-public-key, required: Bitcoin public key for the taker payment address
  - `takerReceiveAddress` string, btc-address, required: Bitcoin address for the taker to receive assets. Should be your taproot address
  - `feeRateTier` 'minimumFee' | 'halfHourFee' | 'hourFee' | 'fastestFee': Desired speed for the transaction fee rate
  - `feeRateNum` number: Numeric value specifying the exact fee rate
  - `enableRBFProtection` boolean: Boolean value to enable RBF protection sweeping

## Response `200`

Successful response

- PostRunesPSBTSweepingResultSchema
  - `invalidOrders` string[], required: List of order IDs that could not be processed by non RBF protection sweeping (RBF protection orders are excluded)
  - `validOrders` string[]: List of order IDs that could be processed by non RBF protection sweeping
  - `psbtBase64` string: Base64-encoded unsigned PSBT (Partially Signed Bitcoin Transaction) of the non RBF protection sweeping
  - `paymentUtxoIndexes` number, required: Index of payment UTXO inputs
  - `settlement` SettlementSchema
    - `amount` string, bigint, required: A large integer value, represented the total amount of runes.
    - `price` number, float, required: The price value as a floating-point number, represented the total amount of BTC payment.
  - `fullRBFProtectedSweepingResult` FullRBFProtectedSweepingResultSchema
    - `settlement` SettlementSchema, required
      - `amount` string, bigint, required: A large integer value, represented the total amount of runes.
      - `price` number, float, required: The price value as a floating-point number, represented the total amount of BTC payment.
    - `validOrderIds` string[], required: An array of valid runes order IDs of the RBF protection sweeping.
    - `unsignedFundsPreparationPsbtBase64` string, nullable: Base64 encoded PSBT for unsigned funds preparation.
    - `psbtIndexesToSign` number[], required: An array of indexes in the PSBT that need to be signed.
    - `error` object, nullable
      - `message` string: Error message if an error occurred.

---

[API](https://skmtc.dev/magiceden/apis/magic-eden-api.md) - [All operations](https://skmtc.dev/magiceden/apis/magic-eden-api/llms.txt) - [OpenAPI document](https://skmtc.dev/magiceden/apis/magic-eden-api/revisions/66028b292693?raw)
