Add Shards

Add Pool Shards PSBT

post

Generates a PSBT for adding shards to an existing pool.

Authorizations
Body
feeRateinteger · min: 1Required

The fee rate for the transaction (in sats per byte).

shardsLengthnumberRequired

The number of accounts to create. Maximum is 10.

poolIdstring · min: 64 · max: 66Required

The id of the pool to add shards.

Pattern: ^[0-9a-fA-F]+$
runePubkeystring · min: 64 · max: 66Required

The public key of the rune address of the user initiating the request.

Pattern: ^[0-9a-fA-F]+$
paymentPubkeystring · min: 64 · max: 66Optional

The public key of the bitcoin address of the user initiating the request. If the user doesn't have a bitcoin address, the runePubkey will be used

Pattern: ^[0-9a-fA-F]+$
runeAddressstringRequired

The rune address of the user. It must be a taproot address. (P2TR). If no bitcoin address is provided, the rune address will be used for bitcoin too.

paymentAddressstringOptional

The bitcoin address of the user.

Responses
201
An object containing the PSBT, fee, utxos to sign, and the created accounts.
application/json
post
POST /v0/pool/add-pool-shards/psbt HTTP/1.1
Host: api-dev.saturnbtc.io
x-api-key: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 134

{
  "feeRate": 1,
  "shardsLength": 1,
  "poolId": "text",
  "runePubkey": "text",
  "paymentPubkey": "text",
  "runeAddress": "text",
  "paymentAddress": "text"
}
{
  "psbt": "text",
  "fee": 1,
  "utxosToSign": [
    {
      "address": "text",
      "signingIndexes": [
        1
      ],
      "sigHash": 1,
      "utxo": "text"
    }
  ]
}

Add Pool Shards Message

post

Generates a message hash required to add shards to a pool.

Authorizations
Body
poolIdstring · min: 64 · max: 66RequiredPattern: ^[0-9a-fA-F]+$
feeRateinteger · min: 1Required

The fee rate for the transaction (in sats per byte).

signedPsbtstringRequired

The signed PSBT in base64 format.

Pattern: ^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}={2})$
shardsLengthnumberRequired

The number of accounts to create. Maximum is 10.

runePubkeystring · min: 64 · max: 66Required

The public key of the rune address of the user initiating the request.

Pattern: ^[0-9a-fA-F]+$
paymentPubkeystring · min: 64 · max: 66Optional

The public key of the bitcoin address of the user initiating the request. If the user doesn't have a bitcoin address, the runePubkey will be used

Pattern: ^[0-9a-fA-F]+$
runeAddressstringRequired

The rune address of the user. It must be a taproot address. (P2TR). If no bitcoin address is provided, the rune address will be used for bitcoin too.

paymentAddressstringOptional

The bitcoin address of the user.

Responses
201
A hexadecimal string representing the hash of the add shards message.
application/json
Responsestring
post
POST /v0/pool/add-pool-shards/message HTTP/1.1
Host: api-dev.saturnbtc.io
x-api-key: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 154

{
  "poolId": "text",
  "feeRate": 1,
  "signedPsbt": "text",
  "shardsLength": 1,
  "runePubkey": "text",
  "paymentPubkey": "text",
  "runeAddress": "text",
  "paymentAddress": "text"
}
text

Add Pool Shards

post

Finalizes the process of adding shards to a pool.

Authorizations
Body
signaturestringRequired

The user's signature of the initialization message.

Pattern: ^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}={2})$
poolIdstring · min: 64 · max: 66RequiredPattern: ^[0-9a-fA-F]+$
feeRateinteger · min: 1Required

The fee rate for the transaction (in sats per byte).

signedPsbtstringRequired

The signed PSBT in base64 format.

Pattern: ^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}={2})$
shardsLengthnumberRequired

The number of accounts to create. Maximum is 10.

runePubkeystring · min: 64 · max: 66Required

The public key of the rune address of the user initiating the request.

Pattern: ^[0-9a-fA-F]+$
paymentPubkeystring · min: 64 · max: 66Optional

The public key of the bitcoin address of the user initiating the request. If the user doesn't have a bitcoin address, the runePubkey will be used

Pattern: ^[0-9a-fA-F]+$
runeAddressstringRequired

The rune address of the user. It must be a taproot address. (P2TR). If no bitcoin address is provided, the rune address will be used for bitcoin too.

paymentAddressstringOptional

The bitcoin address of the user.

Responses
201
The Arch Network transaction ID of the pool shards addition.
application/json
post
POST /v0/pool/add-pool-shards HTTP/1.1
Host: api-dev.saturnbtc.io
x-api-key: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 173

{
  "signature": "text",
  "poolId": "text",
  "feeRate": 1,
  "signedPsbt": "text",
  "shardsLength": 1,
  "runePubkey": "text",
  "paymentPubkey": "text",
  "runeAddress": "text",
  "paymentAddress": "text"
}
{
  "archTxId": "text",
  "bitcoinTxIds": [
    "text"
  ]
}

Last updated