Initialize pool

Initialize Pool PSBT

post
/v0/pool/initialize-pool/psbt

Generates a partially signed Bitcoin transaction (PSBT) for creating the needed UTXOs for creating the accounts for a pool.

The request body containing details for creating accounts PSBT.

Authorizations
x-api-keystringRequired
Body
feeRateinteger · min: 1Required

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

shardsLengthnumberRequired

The number of accounts to create. Maximum is 10.

token0stringRequired

The first token's identifier.

token1stringRequired

The second token's identifier.

feeTiernumberRequired

The fee tier for the pool.

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
chevron-right
201

An object containing the PSBT, fee, utxos to sign, and the created accounts.

application/json
psbtstringRequired

Psbt base64 encoded to sign

feenumberRequired

Raw fees in satoshis of the transaction

post
/v0/pool/initialize-pool/psbt

Initialize Pool Message

post
/v0/pool/initialize-pool/message

Generates a message hash required to initialize a pool.

Authorizations
x-api-keystringRequired
Body
token0stringRequired

The first token's identifier.

token1stringRequired

The second token's identifier.

feeTiernumberRequired

The fee tier for the pool.

shardsLengthnumberRequired

The number of accounts to create. Maximum is 5.

recentBlockhashstringRequired

The recent blockhash of the transaction.

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})$
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
chevron-right
201

A hexadecimal string representing the hash of the initialization message.

application/json
stringOptional
post
/v0/pool/initialize-pool/message

Initialize Pool

post
/v0/pool/initialize-pool

Finalizes the pool initialization process.

Authorizations
x-api-keystringRequired
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})$
token0stringRequired

The first token's identifier.

token1stringRequired

The second token's identifier.

feeTiernumberRequired

The fee tier for the pool.

shardsLengthnumberRequired

The number of accounts to create. Maximum is 5.

recentBlockhashstringRequired

The recent blockhash of the transaction.

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})$
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
chevron-right
201

The Arch Network transaction ID of the pool creation.

application/json
archTxIdstringRequired

Transaction id of the transaction in Arch.

bitcoinTxIdsstring[]Required

Some bitcoin transactions ids that we have broadcasted. The Arch Network will submit a new bitcoin transaction after these ones.

post
/v0/pool/initialize-pool

Last updated