curl --request GET \
--url 'https://scan.sv-1.global.canton.network.sync.global/api/scan/v0/validators/validator-faucets'
import json
import requests
url = "https://scan.sv-1.global.canton.network.sync.global/api/scan/v0/validators/validator-faucets"
response = requests.request("GET", url)
print(response.text)
const response = await fetch('https://scan.sv-1.global.canton.network.sync.global/api/scan/v0/validators/validator-faucets', {
method: 'GET',
});
console.log(await response.text());
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://scan.sv-1.global.canton.network.sync.global/api/scan/v0/validators/validator-faucets',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'GET',
]);
$response = curl_exec($curl);
echo $response;
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://scan.sv-1.global.canton.network.sync.global/api/scan/v0/validators/validator-faucets", nil)
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("https://scan.sv-1.global.canton.network.sync.global/api/scan/v0/validators/validator-faucets"))
.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('https://scan.sv-1.global.canton.network.sync.global/api/scan/v0/validators/validator-faucets')
request = Net::HTTP::Get.new(uri)
response = Net::HTTP.start(uri.hostname, uri.port) do |http|
http.request(request)
end
puts response.body
{
"validatorsReceivedFaucets": [
{
"validator": "<string>",
"numRoundsCollected": 123,
"numRoundsMissed": 123,
"firstCollectedInRound": 123,
"lastCollectedInRound": 123
}
]
}
{
"error": "<string>"
}
{
"error": "<string>"
}
GET /v0/validators/validator-faucets
For every argument that is a valid onboarded validator, return statistics on its liveness activity, according to on-ledger state at the time of the request.
GET
/
api
/
scan
/
v0
/
validators
/
validator-faucets
curl --request GET \
--url 'https://scan.sv-1.global.canton.network.sync.global/api/scan/v0/validators/validator-faucets'
import json
import requests
url = "https://scan.sv-1.global.canton.network.sync.global/api/scan/v0/validators/validator-faucets"
response = requests.request("GET", url)
print(response.text)
const response = await fetch('https://scan.sv-1.global.canton.network.sync.global/api/scan/v0/validators/validator-faucets', {
method: 'GET',
});
console.log(await response.text());
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://scan.sv-1.global.canton.network.sync.global/api/scan/v0/validators/validator-faucets',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'GET',
]);
$response = curl_exec($curl);
echo $response;
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://scan.sv-1.global.canton.network.sync.global/api/scan/v0/validators/validator-faucets", nil)
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("https://scan.sv-1.global.canton.network.sync.global/api/scan/v0/validators/validator-faucets"))
.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('https://scan.sv-1.global.canton.network.sync.global/api/scan/v0/validators/validator-faucets')
request = Net::HTTP::Get.new(uri)
response = Net::HTTP.start(uri.hostname, uri.port) do |http|
http.request(request)
end
puts response.body
{
"validatorsReceivedFaucets": [
{
"validator": "<string>",
"numRoundsCollected": 123,
"numRoundsMissed": 123,
"firstCollectedInRound": 123,
"lastCollectedInRound": 123
}
]
}
{
"error": "<string>"
}
{
"error": "<string>"
}
For every argument that is a valid onboarded validator, return statistics on its liveness activity, according to on-ledger state at the time of the request.
OpenAPIAdded 0.5.10
curl --request GET \
--url 'https://scan.sv-1.global.canton.network.sync.global/api/scan/v0/validators/validator-faucets'
import json
import requests
url = "https://scan.sv-1.global.canton.network.sync.global/api/scan/v0/validators/validator-faucets"
response = requests.request("GET", url)
print(response.text)
const response = await fetch('https://scan.sv-1.global.canton.network.sync.global/api/scan/v0/validators/validator-faucets', {
method: 'GET',
});
console.log(await response.text());
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://scan.sv-1.global.canton.network.sync.global/api/scan/v0/validators/validator-faucets',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'GET',
]);
$response = curl_exec($curl);
echo $response;
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://scan.sv-1.global.canton.network.sync.global/api/scan/v0/validators/validator-faucets", nil)
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("https://scan.sv-1.global.canton.network.sync.global/api/scan/v0/validators/validator-faucets"))
.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('https://scan.sv-1.global.canton.network.sync.global/api/scan/v0/validators/validator-faucets')
request = Net::HTTP::Get.new(uri)
response = Net::HTTP.start(uri.hostname, uri.port) do |http|
http.request(request)
end
puts response.body
{
"validatorsReceivedFaucets": [
{
"validator": "<string>",
"numRoundsCollected": 123,
"numRoundsMissed": 123,
"firstCollectedInRound": 123,
"lastCollectedInRound": 123
}
]
}
{
"error": "<string>"
}
{
"error": "<string>"
}
Query parameters
string[]
required
A list of validator party IDs, one per specification of the parameter. Any party IDs not matching onboarded validators will be ignored
Responses
200
okapplication/json
ValidatorReceivedFaucets[]
required
Statistics for any party ID arguments found to have valid onboarding licenses; the order in the response is unrelated to argument order.
Show child attributes
Show child attributes
string
required
The party ID of the onboarded validator
integer (int64)
required
how many rounds the validator has received a faucet for; guaranteed that collected + missed = last - first + 1
integer (int64)
required
how many rounds between firstCollected and lastCollected in which the validator failed to collect (i.e. was not active or available); can at most be max(0, lastCollected - firstCollected - 1).
integer (int64)
required
the round number when this validator started collecting faucets; the validator definitely recorded liveness in this round
integer (int64)
required
The most recent round number in which the validator collected a faucet; the validator definitely recorded liveness in this round. Will equal
firstCollected if the validator has collected in only one round400
bad requestapplication/json
string
required
404
not foundapplication/json
string
required
History
Added
0.5.10