Skip to content
CCPEDIAby Unity Nodes
Documentation/Canton Network Docs/Ledger APIOpenAPIView on Canton Network Docs

GET /v2/state/latest-pruned-offsets

GET
/
v2
/
state
/
latest-pruned-offsets
Try it
cURL
Python
JavaScript
PHP
Go
Java
Ruby
curl --request GET \
  --url 'http://localhost:7575/v2/state/latest-pruned-offsets' \
  --header 'Authorization: Bearer $TOKEN'
import json
import requests

url = "http://localhost:7575/v2/state/latest-pruned-offsets"
headers = {'Authorization': 'Bearer <token>'}
response = requests.request("GET", url, headers=headers)

print(response.text)
const response = await fetch('http://localhost:7575/v2/state/latest-pruned-offsets', {
  method: 'GET',
  headers: {
  "Authorization": "Bearer <token>"
},
});

console.log(await response.text());
<?php
$curl = curl_init();

curl_setopt_array($curl, [
    CURLOPT_URL => 'http://localhost:7575/v2/state/latest-pruned-offsets',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_CUSTOMREQUEST => 'GET',
    CURLOPT_HTTPHEADER => [
        "Authorization: Bearer <token>"
    ],
]);

$response = curl_exec($curl);
echo $response;
package main

import (
  "fmt"
  "io"
  "net/http"
)

func main() {
  req, _ := http.NewRequest("GET", "http://localhost:7575/v2/state/latest-pruned-offsets", nil)
  req.Header.Set("Authorization", "Bearer <token>")
  response, _ := http.DefaultClient.Do(req)
  defer response.Body.Close()
  body, _ := io.ReadAll(response.Body)
  fmt.Println(string(body))
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;

var request = HttpRequest.newBuilder()
    .uri(URI.create("http://localhost:7575/v2/state/latest-pruned-offsets"))
    .header("Authorization", "Bearer <token>")
    .method("GET", HttpRequest.BodyPublishers.noBody())
    .build();
var response = HttpClient.newHttpClient().send(
    request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
require 'net/http'
require 'uri'

uri = URI('http://localhost:7575/v2/state/latest-pruned-offsets')
request = Net::HTTP::Get.new(uri)
request['Authorization'] = 'Bearer <token>'
response = Net::HTTP.start(uri.hostname, uri.port) do |http|
  http.request(request)
end
puts response.body
200
400
default
{
  "participantPrunedUpToInclusive": 123,
  "allDivulgedContractsPrunedUpToInclusive": 123
}
<string>
{
  "code": "<string>",
  "cause": "<string>",
  "correlationId": "<string>",
  "traceId": "<string>",
  "context": {},
  "resources": [
    [
      "<string>"
    ]
  ],
  "errorCategory": 123,
  "grpcCodeValue": 123,
  "retryInfo": "<string>",
  "definiteAnswer": false
}

Get the latest successfully pruned ledger offsets

cURL
Python
JavaScript
PHP
Go
Java
Ruby
curl --request GET \
  --url 'http://localhost:7575/v2/state/latest-pruned-offsets' \
  --header 'Authorization: Bearer $TOKEN'
import json
import requests

url = "http://localhost:7575/v2/state/latest-pruned-offsets"
headers = {'Authorization': 'Bearer <token>'}
response = requests.request("GET", url, headers=headers)

print(response.text)
const response = await fetch('http://localhost:7575/v2/state/latest-pruned-offsets', {
  method: 'GET',
  headers: {
  "Authorization": "Bearer <token>"
},
});

console.log(await response.text());
<?php
$curl = curl_init();

curl_setopt_array($curl, [
    CURLOPT_URL => 'http://localhost:7575/v2/state/latest-pruned-offsets',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_CUSTOMREQUEST => 'GET',
    CURLOPT_HTTPHEADER => [
        "Authorization: Bearer <token>"
    ],
]);

$response = curl_exec($curl);
echo $response;
package main

import (
  "fmt"
  "io"
  "net/http"
)

func main() {
  req, _ := http.NewRequest("GET", "http://localhost:7575/v2/state/latest-pruned-offsets", nil)
  req.Header.Set("Authorization", "Bearer <token>")
  response, _ := http.DefaultClient.Do(req)
  defer response.Body.Close()
  body, _ := io.ReadAll(response.Body)
  fmt.Println(string(body))
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;

var request = HttpRequest.newBuilder()
    .uri(URI.create("http://localhost:7575/v2/state/latest-pruned-offsets"))
    .header("Authorization", "Bearer <token>")
    .method("GET", HttpRequest.BodyPublishers.noBody())
    .build();
var response = HttpClient.newHttpClient().send(
    request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
require 'net/http'
require 'uri'

uri = URI('http://localhost:7575/v2/state/latest-pruned-offsets')
request = Net::HTTP::Get.new(uri)
request['Authorization'] = 'Bearer <token>'
response = Net::HTTP.start(uri.hostname, uri.port) do |http|
  http.request(request)
end
puts response.body
200
400
default
{
  "participantPrunedUpToInclusive": 123,
  "allDivulgedContractsPrunedUpToInclusive": 123
}
<string>
{
  "code": "<string>",
  "cause": "<string>",
  "correlationId": "<string>",
  "traceId": "<string>",
  "context": {},
  "resources": [
    [
      "<string>"
    ]
  ],
  "errorCategory": 123,
  "grpcCodeValue": 123,
  "retryInfo": "<string>",
  "definiteAnswer": false
}

Authorizations

httpAuth

Authorization
string
required
HTTP bearer authentication. Send the token as Authorization: Bearer &lt;token&gt;. Ledger API standard JWT token

apiKeyAuth

Sec-WebSocket-Protocol
string
required
API key authentication in the header. Ledger API standard JWT token (websocket)

Responses

200

application/json
participantPrunedUpToInclusive
integer (int64)
It will always be a non-negative integer. If positive, the absolute offset up to which the ledger has been pruned, disregarding the state of all divulged contracts pruning. If zero, the ledger has not been pruned yet. Optional
allDivulgedContractsPrunedUpToInclusive
integer (int64)
It will always be a non-negative integer. If positive, the absolute offset up to which all divulged events have been pruned on the ledger. It can be at or before the participant_pruned_up_to_inclusive offset. For more details about all divulged events pruning, see PruneRequest.prune_all_divulged_contracts in participant_pruning_service.proto. If zero, the divulged events have not been pruned yet. Optional

400

Invalid value
text/plain
value
string
required

default

application/json
code
string
required
cause
string
required
correlationId
string
traceId
string
context
Map_String
required
resources
Tuple2_String_String[]
errorCategory
integer (int32)
required
grpcCodeValue
integer (int32)
retryInfo
string
definiteAnswer
boolean

History

Updated3.5

The GET /v2/state/latest-pruned-offsets operation changed in this snapshot.