Tezos Operations API

The Operations API from Tezos — 142 operation(s) for operations.

Operations 142

GET /v1/operations/{hash} Get operations by hash #
GET /v1/operations/{hash}/{counter} Get operations by hash and counter #
GET /v1/operations/{hash}/{counter}/{nonce} Get operations by hash, counter and nonce #
GET /v1/operations/{hash}/status Get operation status #
GET /v1/operations/attestations Get attestations #
GET /v1/operations/attestations/{hash} Get attestation by hash #
GET /v1/operations/attestations/count Get attestations count #
GET /v1/operations/preattestations Get preattestations #
GET /v1/operations/preattestations/{hash} Get preattestation by hash #
GET /v1/operations/preattestations/count Get preattestations count #
GET /v1/operations/ballots Get ballots #
GET /v1/operations/ballots/{hash} Get ballot by hash #
GET /v1/operations/ballots/count Get ballots count #
GET /v1/operations/proposals Get proposals #
GET /v1/operations/proposals/{hash} Get proposal by hash #
GET /v1/operations/proposals/count Get proposals count #
GET /v1/operations/activations Get activations #
GET /v1/operations/activations/{hash} Get activation by hash #
GET /v1/operations/activations/count Get activations count #
GET /v1/operations/dal_entrapment_evidence Get dal entrapment evidences #
GET /v1/operations/dal_entrapment_evidence/{hash} Get dal entrapment evidence by hash #
GET /v1/operations/dal_entrapment_evidence/count Get dal entrapment evidences count #
GET /v1/operations/double_baking Get double baking #
GET /v1/operations/double_baking/{hash} Get double baking by hash #
GET /v1/operations/double_baking/count Get double baking count #
GET /v1/operations/double_consensus Get double consensus #
GET /v1/operations/double_consensus/{hash} Get double consensus by hash #
GET /v1/operations/double_consensus/count Get double consensus count #
GET /v1/operations/nonce_revelations Get nonce revelations #
GET /v1/operations/nonce_revelations/{hash} Get nonce revelation by hash #
GET /v1/operations/nonce_revelations/count Get nonce revelations count #
GET /v1/operations/vdf_revelations Get vdf revelations #
GET /v1/operations/vdf_revelations/{hash} Get vdf revelation by hash #
GET /v1/operations/vdf_revelations/count Get vdf revelations count #
GET /v1/operations/drain_delegate Get drain delegate #
GET /v1/operations/drain_delegate/{hash} Get drain delegate by hash #
GET /v1/operations/drain_delegate/count Get drain delegate count #
GET /v1/operations/delegations Get delegations #
GET /v1/operations/delegations/{hash} Get delegation by hash #
GET /v1/operations/delegations/{hash}/status Get delegation status #
GET /v1/operations/delegations/count Get delegations count #
GET /v1/operations/originations Get originations #
GET /v1/operations/originations/{hash} Get origination by hash #
GET /v1/operations/originations/{hash}/status Get origination status #
GET /v1/operations/originations/count Get originations count #
GET /v1/operations/transactions Get transactions #
GET /v1/operations/transactions/{hash} Get transaction by hash #
GET /v1/operations/transactions/{hash}/{counter} Get transaction by hash and counter #
GET /v1/operations/transactions/{hash}/{counter}/{nonce} Get transaction by hash, counter and nonce #
GET /v1/operations/transactions/{hash}/status Get transaction status #
GET /v1/operations/transactions/count Get transactions count #
GET /v1/operations/reveals Get reveals #
GET /v1/operations/reveals/{hash} Get reveal by hash #
GET /v1/operations/reveals/{hash}/status Get reveal status #
GET /v1/operations/reveals/count Get reveals count #
GET /v1/operations/register_constants Get register constants #
GET /v1/operations/register_constants/{hash} Get register constant by hash #
GET /v1/operations/register_constants/{hash}/status Get register constant status #
GET /v1/operations/register_constants/count Get register constants count #
GET /v1/operations/set_deposits_limits Get set deposits limits #
GET /v1/operations/set_deposits_limits/{hash} Get set deposits limit by hash #
GET /v1/operations/set_deposits_limits/{hash}/status Get set deposits limit status #
GET /v1/operations/set_deposits_limits/count Get set deposits limits count #
GET /v1/operations/transfer_ticket Get transfer ticket #
GET /v1/operations/transfer_ticket/{hash} Get transfer ticket by hash #
GET /v1/operations/transfer_ticket/{hash}/status Get transfer ticket status #
GET /v1/operations/transfer_ticket/count Get transfer ticket count #
GET /v1/operations/tx_rollup_commit Get tx rollup commit #
GET /v1/operations/tx_rollup_commit/{hash} Get tx rollup commit by hash #
GET /v1/operations/tx_rollup_commit/{hash}/status Get tx rollup commit status #
GET /v1/operations/tx_rollup_commit/count Get tx rollup commit count #
GET /v1/operations/tx_rollup_dispatch_tickets Get tx rollup dispatch tickets #
GET /v1/operations/tx_rollup_dispatch_tickets/{hash} Get tx rollup dispatch tickets by hash #
GET /v1/operations/tx_rollup_dispatch_tickets/{hash}/status Get tx rollup dispatch tickets status #
GET /v1/operations/tx_rollup_dispatch_tickets/count Get tx rollup dispatch tickets count #
GET /v1/operations/tx_rollup_finalize_commitment Get tx rollup finalize commitment #
GET /v1/operations/tx_rollup_finalize_commitment/{hash} Get tx rollup finalize commitment by hash #
GET /v1/operations/tx_rollup_finalize_commitment/{hash}/status Get tx rollup finalize commitment status #
GET /v1/operations/tx_rollup_finalize_commitment/count Get tx rollup finalize commitment count #
GET /v1/operations/tx_rollup_origination Get tx rollup origination #
GET /v1/operations/tx_rollup_origination/{hash} Get tx rollup origination by hash #
GET /v1/operations/tx_rollup_origination/{hash}/status Get tx rollup origination status #
GET /v1/operations/tx_rollup_origination/count Get tx rollup origination count #
GET /v1/operations/tx_rollup_rejection Get tx rollup rejection #
GET /v1/operations/tx_rollup_rejection/{hash} Get tx rollup rejection by hash #
GET /v1/operations/tx_rollup_rejection/{hash}/status Get tx rollup rejection status #
GET /v1/operations/tx_rollup_rejection/count Get tx rollup rejection count #
GET /v1/operations/tx_rollup_remove_commitment Get tx rollup remove commitment #
GET /v1/operations/tx_rollup_remove_commitment/{hash} Get tx rollup remove commitment by hash #
GET /v1/operations/tx_rollup_remove_commitment/{hash}/status Get tx rollup remove commitment status #
GET /v1/operations/tx_rollup_remove_commitment/count Get tx rollup remove commitment count #
GET /v1/operations/tx_rollup_return_bond Get tx rollup return bond #
GET /v1/operations/tx_rollup_return_bond/{hash} Get tx rollup return bond by hash #
GET /v1/operations/tx_rollup_return_bond/{hash}/status Get tx rollup return bond status #
GET /v1/operations/tx_rollup_return_bond/count Get tx rollup return bond count #
GET /v1/operations/tx_rollup_submit_batch Get tx rollup submit batch #
GET /v1/operations/tx_rollup_submit_batch/{hash} Get tx rollup submit batch by hash #
GET /v1/operations/tx_rollup_submit_batch/{hash}/status Get tx rollup submit batch status #
GET /v1/operations/tx_rollup_submit_batch/count Get tx rollup submit batch count #
GET /v1/operations/increase_paid_storage Get increase paid storage #
GET /v1/operations/increase_paid_storage/{hash} Get increase paid storage by hash #
GET /v1/operations/increase_paid_storage/count Get increase paid storage count #
GET /v1/operations/update_secondary_key Get update secondary key #
GET /v1/operations/update_secondary_key/{hash} Get update secondary key by hash #
GET /v1/operations/update_secondary_key/count Get update secondary key count #
GET /v1/operations/sr_add_messages Get smart rollup add messages #
GET /v1/operations/sr_add_messages/count Get smart rollup add messages count #
GET /v1/operations/sr_cement Get smart rollup cement #
GET /v1/operations/sr_cement/count Get smart rollup cement count #
GET /v1/operations/sr_execute Get smart rollup execute #
GET /v1/operations/sr_execute/count Get smart rollup execute count #
GET /v1/operations/sr_originate Get smart rollup originate #
GET /v1/operations/sr_originate/count Get smart rollup originate count #
GET /v1/operations/sr_publish Get smart rollup publish #
GET /v1/operations/sr_publish/count Get smart rollup publish count #
GET /v1/operations/sr_recover_bond Get smart rollup recover bond #
GET /v1/operations/sr_recover_bond/count Get smart rollup recover bond count #
GET /v1/operations/sr_refute Get smart rollup refute #
GET /v1/operations/sr_refute/count Get smart rollup refute count #
GET /v1/operations/staking Get staking ops #
GET /v1/operations/staking/count Get staking ops count #
GET /v1/operations/migrations Get migrations #
GET /v1/operations/migrations/{id} Get migration by id #
GET /v1/operations/migrations/count Get migrations count #
GET /v1/operations/revelation_penalties Get revelation penalties #
GET /v1/operations/revelation_penalties/{id} Get revelation penalty by id #
GET /v1/operations/revelation_penalties/count Get revelation penalties count #
GET /v1/operations/baking Get baking #
GET /v1/operations/baking/{id} Get baking by id #
GET /v1/operations/baking/count Get baking count #
GET /v1/operations/attestation_rewards Get attestation rewards #
GET /v1/operations/attestation_rewards/{id} Get attestation reward by id #
GET /v1/operations/attestation_rewards/count Get attestation rewards count #
GET /v1/operations/dal_attestation_reward Get dal attestation rewards #
GET /v1/operations/dal_attestation_reward/{id} Get dal attestation reward by id #
GET /v1/operations/dal_attestation_reward/count Get dal attestation rewards count #
GET /v1/operations/autostaking Get autostaking ops #
GET /v1/operations/autostaking/count Get autostaking ops count #
GET /v1/operations/set_delegate_parameters Get set_delegate_parameters ops #
GET /v1/operations/set_delegate_parameters/count Get set_delegate_parameters ops count #
GET /v1/operations/dal_publish_commitment Get dal_publish_commitment ops #
GET /v1/operations/dal_publish_commitment/count Get dal_publish_commitment ops count #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/tezos-operations-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

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 Specification

tezos-operations-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: TzKT Accounts Operations API
  description: "# Introduction\n\nTzKT 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. \nYou can fetch all historical data via REST API, or subscribe for real-time data via WebSocket API. TzKT was built by the joint efforts of the entire Tezos community \nto help developers build more services and dapps on top of Tezos.\n\nTzKT Indexer and API are [open-source](https://github.com/baking-bad/tzkt), so don't be afraid to depend on the third-party service,\nbecause you can always clone, build and run it yourself to have full control over all the components.\n\nFeel free to contact us if you have any questions or feature requests.\nYour feedback is much appreciated!\n\n- Discord: https://discord.gg/aG8XKuwsQd\n- Telegram: https://t.me/baking_bad_chat\n- X: https://x.com/TezosBakingBad\n- Email: hello@bakingbad.dev\n\nAnd don't forget to star TzKT [on GitHub](https://github.com/baking-bad/tzkt) if you like it \U0001F60A\n\n# Get Started\n\nThere are two API services provided for public use:\n- **Free TzKT API** with free anonymous access;\n- **TzKT Pro** with paid subscriptions with increased rate limits, off-chain data, extended support and business-level SLA.\n\nYou can find more details about differences between available tiers [here](https://tzkt.io/api).\n\n## Free TzKT API\n\nFree-tier TzKT API is the best way to get started and explore available Tezos data and API functionality.\nIt doesn't require authorization and is free for everyone and for both commercial and non-commercial use.\n\n> #### Note: attribution required\nIf you use free-tier TzKT API, you **must** mention it on your website or application by placing the label\n\"Powered by TzKT API\", or \"Built with TzKT API\", or \"Data provided by TzKT API\" with a direct link to [tzkt.io](https://tzkt.io).\n\nIt's available for the following Tezos networks with the following base URLs:\n\n- Mainnet: `https://api.tzkt.io/` or `https://api.mainnet.tzkt.io/` ([view docs](https://api.tzkt.io))\n- Ghostnet: `https://api.ghostnet.tzkt.io/` ([view docs](https://api.ghostnet.tzkt.io))\n- Shadownet: `https://api.shadownet.tzkt.io/` ([view docs](https://api.shadownet.tzkt.io))\n- Seoulnet: `https://api.seoulnet.tzkt.io/` ([view docs](https://api.seoulnet.tzkt.io))\n- Tallinnnet: `https://api.tallinnnet.tzkt.io/` ([view docs](https://api.tallinnnet.tzkt.io))\n\n### Sending Requests\n\nTo send a request to Free TzKT API you need literally nothing. Just take the base URL of the particular network\n(for example, Tezos mainnet: `https://api.tzkt.io`) and append the path of the particular endpoint\n(for example, chain's head: `/v1/head`), that's pretty much it: \n\n```bash\ncurl https://api.tzkt.io/v1/head\n```\n\nRead through this documentation to explore available endpoints, query parameters\n(note, if you click on a query parameter, you will see available modes, such as `.eq`, `.in`, etc.)\nand response models. If you have any questions, do not hesitate to ask for support, Tezos community has always been very friendly! \U0001F609\n\n### Rate Limits\n\nPlease, refer to https://tzkt.io/api to check relevant rate limits.\n\nIf you exceed the limit, the API will respond with `HTTP 429` status code.\n\n## TzKT Pro\n\nTzKT Pro is intended for professional use, for those who seek for extended capabilities, performance, reliability and business-level SLA.\nTzKT Pro service is provided via paid subscriptions. Please, refer to [Pricing Plans](https://tzkt.io/api) to check available tiers.\n\nIt's available for the following Tezos networks with the following base URLs:\n\n- Mainnet: `https://pro.tzkt.io/` ([view docs](https://api.tzkt.io))\n- Testnets: *let us know if you need TzKT Pro for testnets*\n\n### Authorization\n\nTo access TzKT Pro you will need to authorize requests with your personal API key, that you will receive on your email after purchasing a subscription.\nThis can be done by adding the query string parameter `?apikey={your_key}` or by adding the HTTP header `apikey: {your_key}`.\n\nNote that you can have multiple API keys within a single subscription.\n\nKeep your API keys private, do not publish it anywhere and do not hardcode it, especially in public repositories.\nIf your key was compromised, just let us know and we will issue a new one.\n\nAlso note that passing the API key via HTTP headers is more secure, because in HTTPS headers are encrypted,\nbut query string is not, so the key can be unintentionally exposed to third parties.\n\n### Sending Requests\n\nSending a request with the API key passed as a query string parameter:\n\n```bash\ncurl https://pro.tzkt.io/v1/head?apikey={your_key}\n```\n\nSending a request with the API key passed via an HTTP header:\n\n```bash\ncurl https://pro.tzkt.io/v1/head \\\n    -H 'apikey: {your_key}'\n```\n\n### Rate Limits\n\nPlease, refer to https://tzkt.io/api to check relevant rate limits for different pricing plans.\n\nAlso, TzKT Pro provides you with the additional HTTP headers to show the allowed limits, number of available requests\nand the time remaining (in seconds) until the quota is reset. Here's an example:\n\n```\nRateLimit-Limit: 50\nRateLimit-Remaining: 49\nRateLimit-Reset: 1\n```\n\nIt also sends general information about your rate limits per second and per day:\n\n```\nX-RateLimit-Limit-Second: 50\nX-RateLimit-Remaining-Second: 49\nX-RateLimit-Limit-Day: 3000000\nX-RateLimit-Remaining-Day: 2994953\n```\n\nIf you exceed the limit, the API will respond with `HTTP 429` status code.\n"
  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: Operations
paths:
  /v1/operations/{hash}:
    get:
      tags:
      - Operations
      summary: Get operations by hash
      description: "Returns a list of operations with the specified hash.  \n**NOTE: if you know in advance what operation type you want to get (e.g. transactions), prefer using `/v1/operations/{type}/{hash}`\n(e.g. [/v1/operations/transactions/{hash}](#operation/Operations_GetTransactionByHash)) instead, because it's much more efficient.**"
      operationId: Operations_GetByHash
      parameters:
      - name: hash
        in: path
        required: true
        description: Operation hash
        schema:
          type: string
        x-position: 1
      - name: micheline
        in: query
        description: 'Format of the parameters, storage and diffs: `0` - JSON, `1` - JSON string, `2` - raw micheline, `3` - raw micheline string'
        schema:
          default: Json
          oneOf:
          - $ref: '#/components/schemas/MichelineFormat'
        x-position: 2
      - name: quote
        in: query
        description: Comma-separated list of ticker symbols to inject historical prices into response
        schema:
          default: None
          oneOf:
          - $ref: '#/components/schemas/Symbols'
        x-position: 3
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Operation'
  /v1/operations/{hash}/{counter}:
    get:
      tags:
      - Operations
      summary: Get operations by hash and counter
      description: "Returns a list of operations with the specified hash and counter.  \n**NOTE: if you know in advance what operation type you want to get (e.g. transactions), prefer using `/v1/operations/{type}/{hash}/{counter}`\n(e.g. [/v1/operations/transactions/{hash}/{counter}](#operation/Operations_GetTransactionByHashCounter)) instead, because it's much more efficient.**"
      operationId: Operations_GetByHashCounter
      parameters:
      - name: hash
        in: path
        required: true
        description: Operation hash
        schema:
          type: string
        x-position: 1
      - name: counter
        in: path
        required: true
        description: Operation counter
        schema:
          type: integer
          format: int32
        x-position: 2
      - name: micheline
        in: query
        description: 'Format of the parameters, storage and diffs: `0` - JSON, `1` - JSON string, `2` - raw micheline, `3` - raw micheline string'
        schema:
          default: Json
          oneOf:
          - $ref: '#/components/schemas/MichelineFormat'
        x-position: 3
      - name: quote
        in: query
        description: Comma-separated list of ticker symbols to inject historical prices into response
        schema:
          default: None
          oneOf:
          - $ref: '#/components/schemas/Symbols'
        x-position: 4
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Operation'
  /v1/operations/{hash}/{counter}/{nonce}:
    get:
      tags:
      - Operations
      summary: Get operations by hash, counter and nonce
      description: "Returns an internal operations with the specified hash, counter and nonce.  \n**NOTE: if you know in advance what operation type you want to get (e.g. transactions), prefer using `/v1/operations/{type}/{hash}/{counter}/{nonce}`\n(e.g. [/v1/operations/transactions/{hash}/{counter}/{nonce}](#operation/Operations_GetTransactionByHashCounterNonce)) instead, because it's much more efficient.**"
      operationId: Operations_GetByHashCounterNonce
      parameters:
      - name: hash
        in: path
        required: true
        description: Operation hash
        schema:
          type: string
        x-position: 1
      - name: counter
        in: path
        required: true
        description: Operation counter
        schema:
          type: integer
          format: int32
        x-position: 2
      - name: nonce
        in: path
        required: true
        description: Operation nonce (internal)
        schema:
          type: integer
          format: int32
        x-position: 3
      - name: micheline
        in: query
        description: 'Format of the parameters, storage and diffs: `0` - JSON, `1` - JSON string, `2` - raw micheline, `3` - raw micheline string'
        schema:
          default: Json
          oneOf:
          - $ref: '#/components/schemas/MichelineFormat'
        x-position: 4
      - name: quote
        in: query
        description: Comma-separated list of ticker symbols to inject historical prices into response
        schema:
          default: None
          oneOf:
          - $ref: '#/components/schemas/Symbols'
        x-position: 5
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Operation'
  /v1/operations/{hash}/status:
    get:
      tags:
      - Operations
      summary: Get operation status
      description: "Returns operation status: `true` if applied, `false` if failed, `null` (or HTTP 204) if doesn't exist.  \n**NOTE: if you know in advance what operation type you want to check (e.g. transactions), prefer using `/v1/operations/{type}/{hash}/status`\n(e.g. [/v1/operations/transactions/{hash}/status](#operation/Operations_GetTransactionStatus)) instead, because it's much more efficient.**"
      operationId: Operations_GetStatus
      parameters:
      - name: hash
        in: path
        required: true
        description: Operation hash
        schema:
          type: string
        x-position: 1
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type:
                - boolean
                - 'null'
  /v1/operations/attestations:
    get:
      tags:
      - Operations
      summary: Get attestations
      description: Returns a list of attestation operations.
      operationId: Operations_GetAttestations
      parameters:
      - name: delegate
        in: query
        description: 'Filters attestations by delegate. Allowed fields for `.eqx` mode: none.'
        schema:
          oneOf:
          - $ref: '#/components/schemas/AccountParameter'
        x-position: 1
        x-tzkt-extension: query-parameter
      - name: id
        in: query
        description: Filters operations by internal TzKT id.
        schema:
          oneOf:
          - $ref: '#/components/schemas/Int64Parameter'
        x-position: 2
        x-tzkt-extension: query-parameter
      - name: level
        in: query
        description: Filters attestations by level.
        schema:
          oneOf:
          - $ref: '#/components/schemas/Int32Parameter'
        x-position: 3
        x-tzkt-extension: query-parameter
      - name: timestamp
        in: query
        description: Filters attestations by timestamp.
        schema:
          oneOf:
          - $ref: '#/components/schemas/TimestampParameter'
        x-position: 4
        x-tzkt-extension: query-parameter
      - name: select
        in: query
        description: Specify comma-separated list of fields to include into response or leave it undefined to return full object. If you select single field, response will be an array of values in both `.fields` and `.values` modes.
        schema:
          oneOf:
          - $ref: '#/components/schemas/SelectParameter'
        x-position: 5
        x-tzkt-extension: query-parameter
      - name: sort
        in: query
        description: 'Sorts attestations by specified field. Supported fields: `id` (default), `level`.'
        schema:
          oneOf:
          - $ref: '#/components/schemas/SortParameter'
        x-position: 6
        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: 7
        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: 8
      - name: quote
        in: query
        description: Comma-separated list of ticker symbols to inject historical prices into response
        schema:
          default: None
          oneOf:
          - $ref: '#/components/schemas/Symbols'
        x-position: 9
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/AttestationOperation'
  /v1/operations/attestations/{hash}:
    get:
      tags:
      - Operations
      summary: Get attestation by hash
      description: Returns an attestation operation with specified hash.
      operationId: Operations_GetAttestationByHash
      parameters:
      - name: hash
        in: path
        required: true
        description: Operation hash
        schema:
          type: string
        x-position: 1
      - name: quote
        in: query
        description: Comma-separated list of ticker symbols to inject historical prices into response
        schema:
          default: None
          oneOf:
          - $ref: '#/components/schemas/Symbols'
        x-position: 2
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/AttestationOperation'
  /v1/operations/attestations/count:
    get:
      tags:
      - Operations
      summary: Get attestations count
      description: Returns the total number of attestation operations.
      operationId: Operations_GetAttestationsCount
      parameters:
      - name: level
        in: query
        description: Filters attestations by level.
        schema:
          oneOf:
          - $ref: '#/components/schemas/Int32Parameter'
        x-position: 1
        x-tzkt-extension: query-parameter
      - name: timestamp
        in: query
        description: Filters attestations by timestamp.
        schema:
          oneOf:
          - $ref: '#/components/schemas/TimestampParameter'
        x-position: 2
        x-tzkt-extension: query-parameter
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: integer
                format: int64
  /v1/operations/preattestations:
    get:
      tags:
      - Operations
      summary: Get preattestations
      description: Returns a list of preattestation operations.
      operationId: Operations_GetPreattestations
      parameters:
      - name: delegate
        in: query
        description: 'Filters by delegate. Allowed fields for `.eqx` mode: none.'
        schema:
          oneOf:
          - $ref: '#/components/schemas/AccountParameter'
        x-position: 1
        x-tzkt-extension: query-parameter
      - name: level
        in: query
        description: Filters by level.
        schema:
          oneOf:
          - $ref: '#/components/schemas/Int32Parameter'
        x-position: 2
        x-tzkt-extension: query-parameter
      - name: timestamp
        in: query
        description: Filters by timestamp.
        schema:
          oneOf:
          - $ref: '#/components/schemas/TimestampParameter'
        x-position: 3
        x-tzkt-extension: query-parameter
      - name: select
        in: query
        description: Specify comma-separated list of fields to include into response or leave it undefined to return full object. If you select single field, response will be an array of values in both `.fields` and `.values` modes.
        schema:
          oneOf:
          - $ref: '#/components/schemas/SelectParameter'
        x-position: 4
        x-tzkt-extension: query-parameter
      - name: sort
        in: query
        description: 'Sorts by specified field. Supported fields: `id` (default), `level`.'
        schema:
          oneOf:
          - $ref: '#/components/schemas/SortParameter'
        x-position: 5
        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: 6
        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: 7
      - name: quote
        in: query
        description: Comma-separated list of ticker symbols to inject historical prices into response
        schema:
          default: None
          oneOf:
          - $ref: '#/components/schemas/Symbols'
        x-position: 8
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PreattestationOperation'
  /v1/operations/preattestations/{hash}:
    get:
      tags:
      - Operations
      summary: Get preattestation by hash
      description: Returns an preattestation operation with specified hash.
      operationId: Operations_GetPreattestationByHash
      parameters:
      - name: hash
        in: path
        required: true
        description: Operation hash
        schema:
          type: string
        x-position: 1
      - name: quote
        in: query
        description: Comma-separated list of ticker symbols to inject historical prices into response
        schema:
          default: None
          oneOf:
          - $ref: '#/components/schemas/Symbols'
        x-position: 2
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PreattestationOperation'
  /v1/operations/preattestations/count:
    get:
      tags:
      - Operations
      summary: Get preattestations count
      description: Returns the total number of preattestation operations.
      operationId: Operations_GetPreattestationsCount
      parameters:
      - name: level
        in: query
        description: Filters by level.
        schema:
          oneOf:
          - $ref: '#/components/schemas/Int32Parameter'
        x-position: 1
        x-tzkt-extension: query-parameter
      - name: timestamp
        in: query
        description: Filters by timestamp.
        schema:
          oneOf:
          - $ref: '#/components/schemas/TimestampParameter'
        x-position: 2
        x-tzkt-extension: query-parameter
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: integer
                format: int32
  /v1/operations/ballots:
    get:
      tags:
      - Operations
      summary: Get ballots
      description: Returns a list of ballot operations.
      operationId: Operations_GetBallots
      parameters:
      - name: delegate
        in: query
        description: 'Filters ballots by delegate. Allowed fields for `.eqx` mode: none.'
        schema:
          oneOf:
          - $ref: '#/components/schemas/AccountParameter'
        x-position: 1
        x-tzkt-extension: query-parameter
      - name: level
        in: query
        description: Filters ballots by level.
        schema:
          oneOf:
          - $ref: '#/components/schemas/Int32Parameter'
        x-position: 2
        x-tzkt-extension: query-parameter
      - name: timestamp
        in: query
        description: Filters ballots by timestamp.
        schema:
          oneOf:
          - $ref: '#/components/schemas/TimestampParameter'
        x-position: 3
        x-tzkt-extension: query-parameter
      - name: epoch
        in: query
        description: Filters ballots by voting epoch.
        schema:
          oneOf:
          - $ref: '#/components/schemas/Int32Parameter'
        x-position: 4
        x-tzkt-extension: query-parameter
      - name: period
        in: query
        description: Filters ballots by voting period.
        schema:
          oneOf:
          - $ref: '#/components/schemas/Int32Parameter'
        x-position: 5
        x-tzkt-extension: query-parameter
      - name: proposal
        in: query
        description: Filters ballots by proposal hash.
        schema:
          oneOf:
          - $ref: '#/components/schemas/ProtocolParameter'
        x-position: 6
        x-tzkt-extension: query-parameter
      - name: vote
        in: query
        description: Filters ballots by vote (`yay`, `nay`, `pass`).
        schema:
          oneOf:
          - $ref: '#/components/schemas/VoteParameter'
        x-position: 7
        x-tzkt-extension: query-parameter
        x-tzkt-query-parameter: yay,nay,pass
      - name: select
        in: query
        description: Specify comma-separated list of fields to include into response or leave it undefined to return full object. If you select single field, response will be an array of values in both `.fields` and `.values` modes.
        schema:
          oneOf:
          - $ref: '#/components/schemas/SelectParameter'
        x-position: 8
        x-tzkt-extension: query-parameter
      - name: sort
        in: query
        description: 'Sorts ballots by specified field. Supported fields: `id` (default), `level`.'
        schema:
          oneOf:
          - $ref: '#/components/schemas/SortParameter'
        x-position: 9
        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: 10
        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: 11
      - name: quote
        in: query
        description: Comma-separated list of ticker symbols to inject historical prices into response
        schema:
          default: None
          oneOf:
          - $ref: '#/components/schemas/Symbols'
        x-position: 12
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/BallotOperation'
  /v1/operations/ballots/{hash}:
    get:
      tags:
      - Operations
      summary: Get ballot by hash
      description: Returns a ballot operation with specified hash.
      operationId: Operations_GetBallotByHash
      parameters:
      - name: hash
        in: path
        required: true
        description: Operation hash
        schema:
          type: string
        x-position: 1
      - name: quote
        in: query
        description: Comma-separated list of ticker symbols to inject historical prices into response
        schema:
          default: None
          oneOf:
          - $ref: '#/components/schemas/Symbols'
        x-position: 2
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/BallotOperation'
  /v1/operations/ballots/count:
    get:
      tags:
      - Operations
      summary: Get ballots count
      description: Returns the total number of ballot operations.
      operationId: Operations_GetBallotsCount
      parameters:
      - name: level
        in: query
        description: Filters ballot operations by level.
        schema:
          oneOf:
          - $ref: '#/components/schemas/Int32Parameter'
        x-position: 1
        x-tzkt-extension: query-parameter
      - name: timestamp
        in: query
        description: Filters ballot operations by timestamp.
        schema:
          oneOf:
          - $ref: '#/components/schemas/TimestampParameter'
        x-position: 2
        x-tzkt-extension: query-parameter
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: integer
                format: int32
  /v1/operations/proposals:
    get:
      tags:
      - Operations
      summary: Get proposals
      description: Returns a list of proposal operations.
      operationId: Operations_GetProposals
      parameters:
      - name: delegate
        in: query
        description: 'Filters proposal operations by delegate. Allowed fields for `.eqx` mode: none.'
        schema:
          oneOf:
          - $ref: '#/components/schemas/AccountParameter'
        x-position: 1
        x-tzkt-extension: query-parameter
      - name: level
        in: query
        description: Filters proposal operations by level.
        schema:
          oneOf:
          - $ref: '#/components/schemas/Int32Parameter'
        x-position: 2
        x-tzkt-extension: query-parameter
      - name: timestamp
        in: query
        description: Filters proposal operations by timestamp.
        schema:
          oneOf:
          - $ref: '#/components/schemas/TimestampParameter'
        x-position: 3
        x-tzkt-extension: query-parameter
      - name: epoch
        in: query
        description: Filters proposal operations by voting epoch.
        schema:
          oneOf:
          - $ref: '#/components/schemas/Int32Parameter'
        x-position: 4
        x-tzkt-extension: query-parameter
      - name: period
        in: query
        description: Filters proposal operations by voting period.
        schema:
          oneOf:
          - $ref: '#/components/schemas/Int32Parameter'
        x-position: 5
        x-tzkt-extension: query-parameter
      - name: proposal
        in: query
        description: Filters proposal operations by proposal hash.
        schema:
          oneOf:
          - $ref: '#/components/schemas/ProtocolParameter'
        x-position: 6
        x-tzkt-extension: query-parameter
      - name: duplicated
        in: query
        description: Specify whether to include or exclude duplicates, which didn't actually upvote a proposal.
        schema:
          oneOf:
          - $ref: '#/components/schemas/BoolParameter'
        x-position: 7
        x-tzkt-extension: query-parameter
      - name: select
        in: query
        description: Specify comma-separated list of fields to include into response or leave it undefined to return full object. If you select single field, response will be an array of values in both `.fields` and `.values` modes.
        schema:
          oneOf:
          - $ref: '#/components/schemas/SelectParameter'
        x-position: 8
        x-tzkt-extension: query-parameter
      - name: sort
        in: query
        description: 'Sorts proposal operations by specified field. Supported fields: `id` (default), `level`.'
        schema:
          oneOf:
          - $ref: '#/components/schemas/SortParameter'
        x-position: 9
        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: 10
        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: 11
      - name: quote
        in: query
        description: Comma-separated list of ticker symbols to inject historical prices into response
        schema:
          default: None
          oneOf:
          - $ref: '#/components/schemas/Symbols'
        x-position: 12
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ProposalOperation'
  /v1/operations/proposals/{hash}:
    get:
      tags:
      - Operations
      summary: Get proposal by hash
      description: Returns a proposal operation with specified hash.
      operationId: Operations_GetProposalByHash
      parameters:
      - name: hash
        in: path
        required: true
        description: Operation hash
        schema:
          type: string
        x-position: 1
      - name: quote
        in: query
        description: Comma-separated list of ticker symbols to inject historical prices into response
        schema:
          default: None
          oneOf:
          - $ref: '#/components/schemas/Symbols'
        x-position: 2
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ProposalOperation'
  /v1/operations/proposals/count:
    get:
      tags:
      - Operations
      summary: Get proposals count
      description: Returns the total number of proposal operations.
      operationId: Operations_GetProposalsCount
      parameters:
      - name: level
        in: query
        description: Filters proposal operations by level.
        schema:
          oneOf:
          - $ref: '#/components/schemas/Int32Parameter'
        x-position: 1
        x-tzkt-extension: query-parameter
      - name: timestamp
        in: query
        description: Filters proposal operations by timestamp.
        schema:
          oneOf:
          - $ref: '#/components/schemas/TimestampParameter'
        x-position: 2
        x-tzkt-extension: query-parameter
      responses:
        '200':

# --- truncated at 32 KB (506 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/tezos/refs/heads/main/openapi/tezos-operations-api-openapi.yml