Checkpoints
Retrieves a list of cryptographic sync checkpoints generated by the Prover node, allowing clients to verify data integrity against specific block heights.
Endpoint
POST https://indexer.pivx.name/v1.0/checkpoints
Request Body
The request body must be a JSON object containing the following parameters:
| Parameter | Type | Default | Description |
|---|---|---|---|
count | integer | 100 | Limit the maximum number of checkpoints returned in a single response. |
from_block | integer | None | Request the checkpoint data starting from this specific block height. |
order | string | desc | The sorting order of the checkpoints. Accepted values: asc or desc. |
Code Examples
- cURL
- JavaScript
- Python
- PHP
curl -X POST https://indexer.pivx.name/v1.0/checkpoints \
-H "Content-Type: application/json" \
-d '{
"count": 2,
"from_block": 5361212,
"order": "asc"
}'
const url = 'https://indexer.pivx.name/v1.0/checkpoints';
const data = {
count: 2,
from_block: 5361212,
order: 'asc'
};
fetch(url, {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify(data)
})
.then(response => response.json())
.then(result => console.log(result))
.catch(error => console.error('Error:', error));
import requests
url = "https://indexer.pivx.name/v1.0/checkpoints"
payload = {
"count": 2,
"from_block": 5361212,
"order": "asc"
}
headers = {
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
<?php
$url = 'https://indexer.pivx.name/v1.0/checkpoints';
$data = [
'count' => 2,
'from_block' => 5361212,
'order' => 'asc'
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json'
]);
$response = curl_exec($ch);
curl_close($ch);
$result = json_decode($response, true);
print_r($result);
Response Example
{
"response": [
{
"block_id": 5432535,
"smt_root": "b4c9dacf8e194e353dce7638d76f282fe40399f7b0ad74a2229a6d4f5be774de",
"evm_block_id": 272705819,
"evm_tx_hash": "0x7af621b112cc009e65ac66cd9f589f24908efad28bd3451297050824bbb46af4"
},
{
"block_id": 5434368,
"smt_root": "98cbb0d3cecb4b18105f6406bf473c9b92c11b670ee7071d47fd155dc1e9cfda",
"evm_block_id": 272706827,
"evm_tx_hash": "0x491c52ce65e2a6a32956a5aec01ac0b903641b1ee6e79e0bb49d88739b50159e"
}
]
}
| Field | Type | Description |
|---|---|---|
block_id | int | The last PIVX block_id included in the checkpoint |
smt_root | string | Checkpoint's SMT Root |
evm_block_id | string | EVM block_id of the checkpoint creation |
evm_tx_hash | string | EVM tx_hash of the checkpoint creation |