Download Proving Key
curl --request GET \
--url https://api.axiom.xyz/v1/configs/{config_id}/pk/{key_type} \
--header 'Axiom-API-Key: <api-key>'import requests
url = "https://api.axiom.xyz/v1/configs/{config_id}/pk/{key_type}"
headers = {"Axiom-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'Axiom-API-Key': '<api-key>'}};
fetch('https://api.axiom.xyz/v1/configs/{config_id}/pk/{key_type}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.axiom.xyz/v1/configs/{config_id}/pk/{key_type}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Axiom-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.axiom.xyz/v1/configs/{config_id}/pk/{key_type}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Axiom-API-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.axiom.xyz/v1/configs/{config_id}/pk/{key_type}")
.header("Axiom-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.axiom.xyz/v1/configs/{config_id}/pk/{key_type}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Axiom-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"download_url": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Configuration Management
Get proving keys
Generate a presigned URL to download various proving keys for a configuration.
Available key types:
app: Application VM proving keyagg: Aggregation proving keyhalo2: Halo2 proving key
GET
/
v1
/
configs
/
{config_id}
/
pk
/
{key_type}
Download Proving Key
curl --request GET \
--url https://api.axiom.xyz/v1/configs/{config_id}/pk/{key_type} \
--header 'Axiom-API-Key: <api-key>'import requests
url = "https://api.axiom.xyz/v1/configs/{config_id}/pk/{key_type}"
headers = {"Axiom-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'Axiom-API-Key': '<api-key>'}};
fetch('https://api.axiom.xyz/v1/configs/{config_id}/pk/{key_type}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.axiom.xyz/v1/configs/{config_id}/pk/{key_type}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Axiom-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.axiom.xyz/v1/configs/{config_id}/pk/{key_type}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Axiom-API-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.axiom.xyz/v1/configs/{config_id}/pk/{key_type}")
.header("Axiom-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.axiom.xyz/v1/configs/{config_id}/pk/{key_type}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Axiom-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"download_url": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Authorizations
Path Parameters
The type of proving key to download. Different keys are used for different parts of the proving system. Must be one of: app, agg, halo2
Query Parameters
Optional OpenVM full version with patch. If not provided, the latest for this config will be used.
Response
Download URL generated successfully
Response for download URL generation.
Was this page helpful?