Open position
Generates a PSBT for opening a new liquidity position by sending funds to the pool.
The pool's identifier.
^[0-9a-fA-F]+$
The amount of the first token to deposit.
^[1-9][0-9]*$
The amount of the second token to deposit.
^[1-9][0-9]*$
A boolean indicating whether to initialize the account UTXO.
If you're creating a new position, you should set this to true
.
The fee rate for the transaction (in sats per byte).
The public key of the rune address of the user initiating the request.
^[0-9a-fA-F]+$
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
^[0-9a-fA-F]+$
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.
The bitcoin address of the user.
An object containing the PSBT (in base64 format), the fee, the list of UTXOs to sign, and optionally the created account.
Pool error
Unauthorized
User not found
Internal Server Error
POST /v0/pool/open-position/psbt HTTP/1.1
Host: api-dev.saturnbtc.io
x-api-key: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 180
{
"poolId": "text",
"amount0": "text",
"amount1": "text",
"initializeAccountUtxo": true,
"feeRate": 1,
"runePubkey": "text",
"paymentPubkey": "text",
"runeAddress": "text",
"paymentAddress": "text"
}
{
"mergeUtxoPsbt": {
"psbt": "text",
"fee": 1,
"utxosToSign": [
{
"address": "text",
"signingIndexes": [
1
],
"sigHash": 1,
"utxo": "text"
}
]
},
"psbt": "text",
"fee": 1,
"utxosToSign": [
{
"address": "text",
"signingIndexes": [
1
],
"sigHash": 1,
"utxo": "text"
}
]
}
Generates a message hash for opening a new liquidity position, which the user should sign.
The pubkey of the pool.
^[0-9a-fA-F]+$
The amount of the first token to deposit.
^[1-9][0-9]*$
The amount of the second token to deposit.
^[1-9][0-9]*$
The fee rate for the transaction (in sats per byte).
The signed PSBT in base64 format.
^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}={2})$
The merge UTXO PSBT in base64 format.
^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}={2})$
The public key of the rune address of the user initiating the request.
^[0-9a-fA-F]+$
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
^[0-9a-fA-F]+$
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.
The bitcoin address of the user.
A hexadecimal string representing the hash of the message to be signed by the user.
Pool error
Unauthorized
User not found
Internal Server Error
POST /v0/pool/open-position/message HTTP/1.1
Host: api-dev.saturnbtc.io
x-api-key: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 194
{
"poolId": "text",
"amount0": "text",
"amount1": "text",
"feeRate": 1,
"signedPsbt": "text",
"mergeUtxoPsbt": "text",
"runePubkey": "text",
"paymentPubkey": "text",
"runeAddress": "text",
"paymentAddress": "text"
}
text
Finalizes the opening of a new liquidity position by submitting the signed message and executing the transaction on the network.
The user's signature of the open position message.
^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}={2})$
The pubkey of the pool.
^[0-9a-fA-F]+$
The amount of the first token to deposit.
^[1-9][0-9]*$
The amount of the second token to deposit.
^[1-9][0-9]*$
The fee rate for the transaction (in sats per byte).
The signed PSBT in base64 format.
^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}={2})$
The merge UTXO PSBT in base64 format.
^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}={2})$
The public key of the rune address of the user initiating the request.
^[0-9a-fA-F]+$
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
^[0-9a-fA-F]+$
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.
The bitcoin address of the user.
The Arch Network transaction ID of the position opening.
Pool error
Unauthorized
User not found
Internal Server Error
POST /v0/pool/open-position HTTP/1.1
Host: api-dev.saturnbtc.io
x-api-key: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 213
{
"signature": "text",
"poolId": "text",
"amount0": "text",
"amount1": "text",
"feeRate": 1,
"signedPsbt": "text",
"mergeUtxoPsbt": "text",
"runePubkey": "text",
"paymentPubkey": "text",
"runeAddress": "text",
"paymentAddress": "text"
}
{
"archTxId": "text",
"bitcoinTxIds": [
"text"
]
}
Last updated