curl --request GET \
--url https://nexus.gerowallet.io/api/epoch/params \
--header 'X-Api-Key: <api-key>'import requests
url = "https://nexus.gerowallet.io/api/epoch/params"
headers = {"X-Api-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Api-Key': '<api-key>'}};
fetch('https://nexus.gerowallet.io/api/epoch/params', 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://nexus.gerowallet.io/api/epoch/params",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-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://nexus.gerowallet.io/api/epoch/params"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-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://nexus.gerowallet.io/api/epoch/params")
.header("X-Api-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://nexus.gerowallet.io/api/epoch/params")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Api-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body""{
"minFeeA": 123,
"minFeeB": 123,
"maxBlockSize": 123,
"maxTxSize": 123,
"maxBlockHeaderSize": 123,
"keyDeposit": "<string>",
"poolDeposit": "<string>",
"a0": 123,
"rho": 123,
"tau": 123,
"decentralisationParam": 123,
"extraEntropy": "<string>",
"protocolMajorVer": 123,
"protocolMinorVer": 123,
"minUtxo": "<string>",
"minPoolCost": "<string>",
"nonce": "<string>",
"costModels": "",
"priceMem": 123,
"priceStep": 123,
"maxTxExMem": "<string>",
"maxTxExSteps": "<string>",
"maxBlockExMem": "<string>",
"maxBlockExSteps": "<string>",
"maxValSize": "<string>",
"collateralPercent": 123,
"maxCollateralInputs": 123,
"coinsPerUtxoSize": "<string>",
"pvtMotionNoConfidence": 123,
"pvtCommitteeNormal": 123,
"pvtCommitteeNoConfidence": 123,
"pvtHardForkInitiation": 123,
"pvtPPSecurityGroup": 123,
"dvtMotionNoConfidence": 123,
"dvtCommitteeNormal": 123,
"dvtCommitteeNoConfidence": 123,
"dvtUpdateToConstitution": 123,
"dvtHardForkInitiation": 123,
"dvtPPNetworkGroup": 123,
"dvtPPEconomicGroup": 123,
"dvtPPTechnicalGroup": 123,
"dvtPPGovGroup": 123,
"dvtTreasuryWithdrawal": 123,
"committeeMinSize": 123,
"committeeMaxTermLength": 123,
"govActionLifetime": 123,
"govActionDeposit": 123,
"drepDeposit": 123,
"drepActivity": 123,
"minFeeRefScriptCostPerByte": 123,
"emax": 123,
"nopt": 123,
"costModelsRaw": ""
}{
"minFeeA": 123,
"minFeeB": 123,
"maxBlockSize": 123,
"maxTxSize": 123,
"maxBlockHeaderSize": 123,
"keyDeposit": "<string>",
"poolDeposit": "<string>",
"a0": 123,
"rho": 123,
"tau": 123,
"decentralisationParam": 123,
"extraEntropy": "<string>",
"protocolMajorVer": 123,
"protocolMinorVer": 123,
"minUtxo": "<string>",
"minPoolCost": "<string>",
"nonce": "<string>",
"costModels": "",
"priceMem": 123,
"priceStep": 123,
"maxTxExMem": "<string>",
"maxTxExSteps": "<string>",
"maxBlockExMem": "<string>",
"maxBlockExSteps": "<string>",
"maxValSize": "<string>",
"collateralPercent": 123,
"maxCollateralInputs": 123,
"coinsPerUtxoSize": "<string>",
"pvtMotionNoConfidence": 123,
"pvtCommitteeNormal": 123,
"pvtCommitteeNoConfidence": 123,
"pvtHardForkInitiation": 123,
"pvtPPSecurityGroup": 123,
"dvtMotionNoConfidence": 123,
"dvtCommitteeNormal": 123,
"dvtCommitteeNoConfidence": 123,
"dvtUpdateToConstitution": 123,
"dvtHardForkInitiation": 123,
"dvtPPNetworkGroup": 123,
"dvtPPEconomicGroup": 123,
"dvtPPTechnicalGroup": 123,
"dvtPPGovGroup": 123,
"dvtTreasuryWithdrawal": 123,
"committeeMinSize": 123,
"committeeMaxTermLength": 123,
"govActionLifetime": 123,
"govActionDeposit": 123,
"drepDeposit": 123,
"drepActivity": 123,
"minFeeRefScriptCostPerByte": 123,
"emax": 123,
"nopt": 123,
"costModelsRaw": ""
}{
"minFeeA": 123,
"minFeeB": 123,
"maxBlockSize": 123,
"maxTxSize": 123,
"maxBlockHeaderSize": 123,
"keyDeposit": "<string>",
"poolDeposit": "<string>",
"a0": 123,
"rho": 123,
"tau": 123,
"decentralisationParam": 123,
"extraEntropy": "<string>",
"protocolMajorVer": 123,
"protocolMinorVer": 123,
"minUtxo": "<string>",
"minPoolCost": "<string>",
"nonce": "<string>",
"costModels": "",
"priceMem": 123,
"priceStep": 123,
"maxTxExMem": "<string>",
"maxTxExSteps": "<string>",
"maxBlockExMem": "<string>",
"maxBlockExSteps": "<string>",
"maxValSize": "<string>",
"collateralPercent": 123,
"maxCollateralInputs": 123,
"coinsPerUtxoSize": "<string>",
"pvtMotionNoConfidence": 123,
"pvtCommitteeNormal": 123,
"pvtCommitteeNoConfidence": 123,
"pvtHardForkInitiation": 123,
"pvtPPSecurityGroup": 123,
"dvtMotionNoConfidence": 123,
"dvtCommitteeNormal": 123,
"dvtCommitteeNoConfidence": 123,
"dvtUpdateToConstitution": 123,
"dvtHardForkInitiation": 123,
"dvtPPNetworkGroup": 123,
"dvtPPEconomicGroup": 123,
"dvtPPTechnicalGroup": 123,
"dvtPPGovGroup": 123,
"dvtTreasuryWithdrawal": 123,
"committeeMinSize": 123,
"committeeMaxTermLength": 123,
"govActionLifetime": 123,
"govActionDeposit": 123,
"drepDeposit": 123,
"drepActivity": 123,
"minFeeRefScriptCostPerByte": 123,
"emax": 123,
"nopt": 123,
"costModelsRaw": ""
}Get protocol parameters for a Cardano epoch
Retrieves protocol parameters for a specific epoch, or for the latest (current) epoch when epoch_no is omitted. Protocol parameters are immutable historical data that define network configuration. Includes fees, limits, staking parameters, and governance settings.
curl --request GET \
--url https://nexus.gerowallet.io/api/epoch/params \
--header 'X-Api-Key: <api-key>'import requests
url = "https://nexus.gerowallet.io/api/epoch/params"
headers = {"X-Api-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Api-Key': '<api-key>'}};
fetch('https://nexus.gerowallet.io/api/epoch/params', 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://nexus.gerowallet.io/api/epoch/params",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-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://nexus.gerowallet.io/api/epoch/params"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-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://nexus.gerowallet.io/api/epoch/params")
.header("X-Api-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://nexus.gerowallet.io/api/epoch/params")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Api-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body""{
"minFeeA": 123,
"minFeeB": 123,
"maxBlockSize": 123,
"maxTxSize": 123,
"maxBlockHeaderSize": 123,
"keyDeposit": "<string>",
"poolDeposit": "<string>",
"a0": 123,
"rho": 123,
"tau": 123,
"decentralisationParam": 123,
"extraEntropy": "<string>",
"protocolMajorVer": 123,
"protocolMinorVer": 123,
"minUtxo": "<string>",
"minPoolCost": "<string>",
"nonce": "<string>",
"costModels": "",
"priceMem": 123,
"priceStep": 123,
"maxTxExMem": "<string>",
"maxTxExSteps": "<string>",
"maxBlockExMem": "<string>",
"maxBlockExSteps": "<string>",
"maxValSize": "<string>",
"collateralPercent": 123,
"maxCollateralInputs": 123,
"coinsPerUtxoSize": "<string>",
"pvtMotionNoConfidence": 123,
"pvtCommitteeNormal": 123,
"pvtCommitteeNoConfidence": 123,
"pvtHardForkInitiation": 123,
"pvtPPSecurityGroup": 123,
"dvtMotionNoConfidence": 123,
"dvtCommitteeNormal": 123,
"dvtCommitteeNoConfidence": 123,
"dvtUpdateToConstitution": 123,
"dvtHardForkInitiation": 123,
"dvtPPNetworkGroup": 123,
"dvtPPEconomicGroup": 123,
"dvtPPTechnicalGroup": 123,
"dvtPPGovGroup": 123,
"dvtTreasuryWithdrawal": 123,
"committeeMinSize": 123,
"committeeMaxTermLength": 123,
"govActionLifetime": 123,
"govActionDeposit": 123,
"drepDeposit": 123,
"drepActivity": 123,
"minFeeRefScriptCostPerByte": 123,
"emax": 123,
"nopt": 123,
"costModelsRaw": ""
}{
"minFeeA": 123,
"minFeeB": 123,
"maxBlockSize": 123,
"maxTxSize": 123,
"maxBlockHeaderSize": 123,
"keyDeposit": "<string>",
"poolDeposit": "<string>",
"a0": 123,
"rho": 123,
"tau": 123,
"decentralisationParam": 123,
"extraEntropy": "<string>",
"protocolMajorVer": 123,
"protocolMinorVer": 123,
"minUtxo": "<string>",
"minPoolCost": "<string>",
"nonce": "<string>",
"costModels": "",
"priceMem": 123,
"priceStep": 123,
"maxTxExMem": "<string>",
"maxTxExSteps": "<string>",
"maxBlockExMem": "<string>",
"maxBlockExSteps": "<string>",
"maxValSize": "<string>",
"collateralPercent": 123,
"maxCollateralInputs": 123,
"coinsPerUtxoSize": "<string>",
"pvtMotionNoConfidence": 123,
"pvtCommitteeNormal": 123,
"pvtCommitteeNoConfidence": 123,
"pvtHardForkInitiation": 123,
"pvtPPSecurityGroup": 123,
"dvtMotionNoConfidence": 123,
"dvtCommitteeNormal": 123,
"dvtCommitteeNoConfidence": 123,
"dvtUpdateToConstitution": 123,
"dvtHardForkInitiation": 123,
"dvtPPNetworkGroup": 123,
"dvtPPEconomicGroup": 123,
"dvtPPTechnicalGroup": 123,
"dvtPPGovGroup": 123,
"dvtTreasuryWithdrawal": 123,
"committeeMinSize": 123,
"committeeMaxTermLength": 123,
"govActionLifetime": 123,
"govActionDeposit": 123,
"drepDeposit": 123,
"drepActivity": 123,
"minFeeRefScriptCostPerByte": 123,
"emax": 123,
"nopt": 123,
"costModelsRaw": ""
}{
"minFeeA": 123,
"minFeeB": 123,
"maxBlockSize": 123,
"maxTxSize": 123,
"maxBlockHeaderSize": 123,
"keyDeposit": "<string>",
"poolDeposit": "<string>",
"a0": 123,
"rho": 123,
"tau": 123,
"decentralisationParam": 123,
"extraEntropy": "<string>",
"protocolMajorVer": 123,
"protocolMinorVer": 123,
"minUtxo": "<string>",
"minPoolCost": "<string>",
"nonce": "<string>",
"costModels": "",
"priceMem": 123,
"priceStep": 123,
"maxTxExMem": "<string>",
"maxTxExSteps": "<string>",
"maxBlockExMem": "<string>",
"maxBlockExSteps": "<string>",
"maxValSize": "<string>",
"collateralPercent": 123,
"maxCollateralInputs": 123,
"coinsPerUtxoSize": "<string>",
"pvtMotionNoConfidence": 123,
"pvtCommitteeNormal": 123,
"pvtCommitteeNoConfidence": 123,
"pvtHardForkInitiation": 123,
"pvtPPSecurityGroup": 123,
"dvtMotionNoConfidence": 123,
"dvtCommitteeNormal": 123,
"dvtCommitteeNoConfidence": 123,
"dvtUpdateToConstitution": 123,
"dvtHardForkInitiation": 123,
"dvtPPNetworkGroup": 123,
"dvtPPEconomicGroup": 123,
"dvtPPTechnicalGroup": 123,
"dvtPPGovGroup": 123,
"dvtTreasuryWithdrawal": 123,
"committeeMinSize": 123,
"committeeMaxTermLength": 123,
"govActionLifetime": 123,
"govActionDeposit": 123,
"drepDeposit": 123,
"drepActivity": 123,
"minFeeRefScriptCostPerByte": 123,
"emax": 123,
"nopt": 123,
"costModelsRaw": ""
}Authorizations
API key (programmatic access — recommended)
Send your API key in the X-Api-Key header. Keys start with nxs_ and are
created in the dashboard (or via POST /api/keys with a session JWT).
Each key is scoped to one chain and one network (for example
CARDANO_MAINNET), fixed at creation time. It cannot query a different network
on the same chain, and it cannot query a different chain at all. A mismatched
network parameter returns 400 Network Mismatch. Create one key per chain
and network under the same account.
This is the credential most integrations should use.
Query Parameters
Accepts either the value listed here (CARDANO_MAINNET) or its kebab-case alias (cardano-mainnet); matching is case-insensitive. Omit it and the network is taken from the API key. A value that disagrees with the key's own network returns 400 Network Mismatch.
CARDANO_MAINNET, CARDANO_PREPROD, CARDANO_PREVIEW, APEX_PRIME_MAINNET, APEX_VECTOR_MAINNET, APEX_VECTOR_TESTNET, MIDNIGHT_MAINNET, MIDNIGHT_PREPROD, MIDNIGHT_STAGENET, BITCOIN_MAINNET, BITCOIN_TESTNET4 Epoch number (0 for genesis epoch; omit for latest parameters)
Response
Successfully retrieved epoch protocol parameters
Plutus cost models per language, keyed by position. The key form depends on which upstream provider served the request (zero-padded "000", or plain "0"), so prefer costModelsRaw, which carries the same values as ordered arrays.
Show child attributes
Show child attributes
Plutus cost models per language as ordered arrays — the form the node, Ogmios, Koios and transaction builders use. Pass these to any builder that computes a script integrity hash (Mesh's network parameter takes number[][]); letting a builder fall back to its own bundled cost models is a common cause of a transaction the node then rejects for a mismatched hash. Null when the upstream keys do not form a complete 0..n-1 index set, since an array in the wrong order would cause that same rejection rather than an obvious error.
Show child attributes
Show child attributes