Tezos Protocols API
The Protocols API from Tezos — 6 operation(s) for protocols.
The Protocols API from Tezos — 6 operation(s) for protocols.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/tezos-protocols-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: TzKT Protocols API
description: '# Introduction
TzKT is the most widely used tool in Tezos that provides you with convenient and flexible access to the Tezos blockchain data, processed and indexed by its own indexer.'
contact:
name: Baking Bad Team
url: https://bakingbad.dev
email: hello@bakingbad.dev
version: 1.17.1
x-logo:
url: https://tzkt.io/logo.png
href: https://tzkt.io/
servers:
- url: https://api.tzkt.io
tags:
- name: Protocols
paths:
/v1/protocols/count:
get:
tags:
- Protocols
summary: Get protocols count
description: Returns the total number of protocols.
operationId: Protocols_GetCount
responses:
'200':
description: ''
content:
application/json:
schema:
type: integer
format: int32
/v1/protocols:
get:
tags:
- Protocols
summary: Get protocols
description: Returns a list of protocols.
operationId: Protocols_Get
parameters:
- name: sort
in: query
description: 'Sorts protocols by specified field. Supported fields: `code` (default), `firstLevel`, `lastLevel`.'
schema:
oneOf:
- $ref: '#/components/schemas/SortParameter'
x-position: 1
x-tzkt-extension: query-parameter
- name: offset
in: query
description: Specifies which or how many items should be skipped
schema:
oneOf:
- $ref: '#/components/schemas/OffsetParameter'
x-position: 2
x-tzkt-extension: query-parameter
- name: limit
in: query
description: Maximum number of items to return
schema:
type: integer
format: int32
default: 100
maximum: 10000.0
minimum: 0.0
x-position: 3
responses:
'200':
description: ''
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Protocol'
/v1/protocols/current:
get:
tags:
- Protocols
summary: Get current protocol
description: Returns current protocol.
operationId: Protocols_GetCurrent
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/Protocol'
/v1/protocols/{code}:
get:
tags:
- Protocols
summary: Get protocol by code
description: Returns a protocol with the specified proto code.
operationId: Protocols_GetByCode
parameters:
- name: code
in: path
required: true
description: Protocol code (e.g. 4 for Athens, 5 for Babylon, etc)
schema:
type: integer
format: int32
x-position: 1
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/Protocol'
/v1/protocols/{hash}:
get:
tags:
- Protocols
summary: Get protocol by hash
description: Returns a protocol with the specified hash.
operationId: Protocols_GetByHash
parameters:
- name: hash
in: path
required: true
description: Protocol hash
schema:
type: string
x-position: 1
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/Protocol'
/v1/protocols/cycles/{cycle}:
get:
tags:
- Protocols
summary: Get protocol by cycle
description: Returns a protocol at the specified cycle.
operationId: Protocols_GetByCycle
parameters:
- name: cycle
in: path
required: true
description: Cycle index
schema:
type: integer
format: int32
x-position: 1
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/Protocol'
components:
schemas:
ProtocolConstants:
type: object
additionalProperties: false
properties:
rampUpCycles:
type: integer
description: The number of cycles where security deposit is ramping up
format: int32
noRewardCycles:
type: integer
description: The number of cycles with no baking rewards
format: int32
consensusRightsDelay:
type: integer
description: Delay in cycles after which baking rights are assigned
format: int32
delegateParametersActivationDelay:
type: integer
description: Delay in cycles after which the parameters from `set_delegate_parameters` operations take effect
format: int32
blocksPerCycle:
type: integer
description: A number of blocks the cycle contains
format: int32
blocksPerCommitment:
type: integer
description: A number of blocks that indicates how often seed nonce hash is included in a block. Seed nonce hash presents in only one out of `blocksPerCommitment`
format: int32
blocksPerSnapshot:
type: integer
description: A number of blocks that indicates how often a snapshot (snapshots are records of the state of stake distributions) is taken
format: int32
blocksPerVoting:
type: integer
description: A number of block that indicates how long a voting period takes
format: int32
timeBetweenBlocks:
type: integer
description: Minimum amount of seconds between blocks
format: int32
attestersPerBlock:
type: integer
description: Number of bakers that assigned to attest a block
format: int32
hardOperationGasLimit:
type: integer
description: Maximum amount of gas that one operation can consume
format: int32
hardOperationStorageLimit:
type: integer
description: Maximum amount of storage that one operation can consume
format: int32
hardBlockGasLimit:
type: integer
description: Maximum amount of total gas usage of a single block
format: int32
minimalStake:
type: integer
description: Required number of tokens to get 1 roll (micro tez)
format: int64
minimalFrozenStake:
type: integer
description: Required number of tokens to be frozen by bakers (micro tez)
format: int64
blockDeposit:
type: integer
description: Security deposit for baking (producing) a block (micro tez)
format: int64
blockReward:
type: array
description: Reward for baking (producing) a block (micro tez)
items:
type: integer
format: int64
attestationDeposit:
type: integer
description: Security deposit for sending an attestation operation (micro tez)
format: int64
attestationReward:
type: array
description: Reward for sending an attestation operation (micro tez)
items:
type: integer
format: int64
originationSize:
type: integer
description: Initial storage size of an originated (created) account (bytes)
format: int32
byteCost:
type: integer
description: Cost of one storage byte in the blockchain (micro tez)
format: int32
proposalQuorum:
type: number
description: Percentage of the total number of voting power required to select a proposal on the proposal period
format: double
ballotQuorumMin:
type: number
description: The minimum value of quorum percentage on the exploration and promotion periods
format: double
ballotQuorumMax:
type: number
description: The maximum value of quorum percentage on the exploration and promotion periods
format: double
lbToggleThreshold:
type: integer
description: 1/2 window size of 2000 blocks with precision of 1000000 for integer computation
format: int32
consensusThreshold:
type: integer
description: Attestation quorum
format: int32
minParticipationNumerator:
type: integer
description: Number of attested slots needed to receive attestation rewards
format: int32
minParticipationDenominator:
type: integer
description: Number of attested slots needed to receive attestation rewards
format: int32
denunciationPeriod:
type: integer
description: Number of cycles after double baking/(pre)attestation where an accusation operation can be injected
format: int32
slashingDelay:
type: integer
description: Number of cycles after double baking/(pre)attestation evidence where slashing happens
format: int32
maxDelegatedOverFrozenRatio:
type: integer
description: The ratio of delegated tez over the baker’s frozen stake
format: int32
maxExternalOverOwnStakeRatio:
type: integer
description: The ratio of external staked balance over the baker’s own staked balance
format: int32
delegationPowerDivider:
type: integer
description: The divider by which delegation power is divided
format: int32
smartRollupOriginationSize:
type: integer
description: Initial storage size of an originated (created) smart rollup (bytes)
format: int32
smartRollupStakeAmount:
type: integer
description: Smart rollup commitment bond (mutez)
format: int64
smartRollupChallengeWindow:
type: integer
description: Window (in blocks) when it's possible to refute pending commitment
format: int32
smartRollupCommitmentPeriod:
type: integer
description: Period (in blocks) for publishing commitments
format: int32
smartRollupTimeoutPeriod:
type: integer
description: Period (in blocks) when a refutation game player must make a turn
format: int32
dalNumberOfShards:
type: integer
description: Number of DAL Shards
format: int32
dictator:
type:
- string
- 'null'
description: Governance dictator
endorsersPerBlock:
type: integer
description: '**DEPRECATED**'
format: int32
endorsementDeposit:
type: integer
description: '**DEPRECATED**'
format: int64
endorsementReward:
type: array
description: '**DEPRECATED**'
items:
type: integer
format: int64
SortParameter:
type: object
additionalProperties: false
properties:
asc:
type:
- string
- 'null'
description: '**Ascending** sort mode (optional, i.e. `sort.asc=id` is the same as `sort=id`). \
Specify a field name to sort by.
Example: `?sort=balance`.'
desc:
type:
- string
- 'null'
description: '**Descending** sort mode. \
Specify a field name to sort by descending.
Example: `?sort.desc=id`.'
x-tzkt-extension: query-parameter
Protocol:
type: object
additionalProperties: false
properties:
code:
type: integer
description: Protocol code, representing a number of protocol changes since genesis (mod 256, but `-1` for the genesis block)
format: int32
hash:
type: string
description: Hash of the protocol
version:
type: integer
description: Global version number
format: int32
firstLevel:
type: integer
description: Block height where the protocol was applied
format: int32
firstCycle:
type: integer
description: Index of the first cycle started with the protocol
format: int32
firstCycleLevel:
type: integer
description: Level of the first block of the first cycle started with the protocol
format: int32
lastLevel:
type:
- integer
- 'null'
description: Block height where the protocol ends. `null` if the protocol is active
format: int32
constants:
description: Information about the protocol constants
oneOf:
- $ref: '#/components/schemas/ProtocolConstants'
extras:
description: Off-chain extras
OffsetParameter:
type: object
additionalProperties: false
properties:
el:
type:
- integer
- 'null'
description: '**Elements** offset mode (optional, i.e. `offset.el=123` is the same as `offset=123`). \
Skips specified number of elements.
Example: `?offset=100`.'
format: int32
pg:
type:
- integer
- 'null'
description: '**Page** offset mode. \
Skips `page * limit` elements. This is a classic pagination.
Example: `?offset.pg=1`.'
format: int32
cr:
type:
- integer
- 'null'
description: '**Cursor** offset mode. \
Skips all elements with the `cursor` before (including) the specified value. Cursor is a field used for sorting, e.g. `id`.
Avoid using this offset mode with non-unique or non-sequential cursors such as `amount`, `balance`, etc.
Example: `?offset.cr=45837`.'
format: int64
x-tzkt-extension: query-parameter
x-generator: NSwag v14.2.0.0 (NJsonSchema v11.1.0.0 (Newtonsoft.Json v13.0.0.0))
x-tagGroups:
- name: REST API
tags:
- Accounts
- BigMaps
- Blocks
- Commitments
- Constants
- Contracts
- Cycles
- Delegates
- Domains
- Events
- Head
- Helpers
- Operations
- Protocols
- Quotes
- Rewards
- Rights
- SmartRollups
- Software
- Staking
- Statistics
- Tickets
- Tokens
- Voting
- name: WebSocket API
tags:
- Get Started
- Subscriptions
- Examples
- name: Libraries
tags:
- Typescript SDK
- Taquito extension