Tezos · Schema

OriginationOperation

TezosBlockchainTzKTBaking BadCryptocurrencySmart ContractsNFTTokensDelegationStakingGovernanceFA1.2FA2WebSocket

Properties

Name Type Description
type string Type of the operation, `origination` - deployment / contract creation operation.
id integer Unique ID of the operation, stored in the TzKT indexer database
level integer The height of the block from the genesis block, in which the operation was included
timestamp string Datetime of the block, in which the operation was included (ISO 8601, e.g. `2020-02-20T02:40:57Z`)
block string Hash of the block, in which the operation was included
hash string Hash of the operation
counter integer An account nonce which is used to prevent operation replay
initiator object Information about the initiator of the contract call
sender object Information about the account, created a contract
senderCodeHash integer Hash of the sender contract code, or `null` is the sender is not a contract
nonce integer An account nonce which is used to prevent internal operation replay
gasLimit integer A cap on the amount of gas a given operation can consume
gasUsed integer Amount of gas, consumed by the operation
storageLimit integer A cap on the amount of storage a given operation can consume
storageUsed integer Amount of storage, consumed by the operation
bakerFee integer Fee to the baker, produced block, in which the operation was included (micro tez)
storageFee integer The amount of funds burned from the sender account for contract storage in the blockchain (micro tez)
allocationFee integer The amount of funds burned from the sender account for contract account creation (micro tez)
contractBalance integer The contract origination balance (micro tez)
contractDelegate object Information about the baker (delegate), which was marked as a delegate in the operation
code object Contract code. Note: you can configure code format by setting `micheline` query parameter (`0 | 2` - raw micheline, `1 | 3` - raw micheline string).
storage object Initial contract storage value converted to human-readable JSON. Note: you can configure storage format by setting `micheline` query parameter.
diffs array List of bigmap updates (aka big_map_diffs) caused by the origination.
status string Operation status (`applied` - an operation applied by the node and successfully added to the blockchain, `failed` - an operation which failed with some particular error (not enough balance, gas limit,
errors array List of errors provided by the node, injected the operation to the blockchain. `null` if there is no errors
originatedContract object Information about the originated ( deployed / created ) contract
tokenTransfersCount integer Number of token transfers produced by the operation, or `null` if there are no transfers
quote object Injected historical quote at the time of operation
View JSON Schema on GitHub

JSON Schema

originationoperation.json Raw ↑
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "OriginationOperation",
  "allOf": [
    {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "type": {
          "type": "string",
          "description": "Type of the operation, `origination` - deployment / contract creation operation."
        },
        "id": {
          "type": "integer",
          "description": "Unique ID of the operation, stored in the TzKT indexer database",
          "format": "int64"
        },
        "level": {
          "type": "integer",
          "description": "The height of the block from the genesis block, in which the operation was included",
          "format": "int32"
        },
        "timestamp": {
          "type": "string",
          "description": "Datetime of the block, in which the operation was included (ISO 8601, e.g. `2020-02-20T02:40:57Z`)",
          "format": "date-time"
        },
        "block": {
          "type": "string",
          "description": "Hash of the block, in which the operation was included"
        },
        "hash": {
          "type": "string",
          "description": "Hash of the operation"
        },
        "counter": {
          "type": "integer",
          "description": "An account nonce which is used to prevent operation replay",
          "format": "int32"
        },
        "initiator": {
          "description": "Information about the initiator of the contract call",
          "nullable": true,
          "oneOf": [
            {
              "$ref": "#/components/schemas/Alias"
            }
          ]
        },
        "sender": {
          "description": "Information about the account, created a contract",
          "oneOf": [
            {
              "$ref": "#/components/schemas/Alias"
            }
          ]
        },
        "senderCodeHash": {
          "type": "integer",
          "description": "Hash of the sender contract code, or `null` is the sender is not a contract",
          "format": "int32",
          "nullable": true
        },
        "nonce": {
          "type": "integer",
          "description": "An account nonce which is used to prevent internal operation replay",
          "format": "int32",
          "nullable": true
        },
        "gasLimit": {
          "type": "integer",
          "description": "A cap on the amount of gas a given operation can consume",
          "format": "int32"
        },
        "gasUsed": {
          "type": "integer",
          "description": "Amount of gas, consumed by the operation",
          "format": "int32"
        },
        "storageLimit": {
          "type": "integer",
          "description": "A cap on the amount of storage a given operation can consume",
          "format": "int32"
        },
        "storageUsed": {
          "type": "integer",
          "description": "Amount of storage, consumed by the operation",
          "format": "int32"
        },
        "bakerFee": {
          "type": "integer",
          "description": "Fee to the baker, produced block, in which the operation was included (micro tez)",
          "format": "int64"
        },
        "storageFee": {
          "type": "integer",
          "description": "The amount of funds burned from the sender account for contract storage in the blockchain (micro tez)",
          "format": "int64"
        },
        "allocationFee": {
          "type": "integer",
          "description": "The amount of funds burned from the sender account for contract account creation (micro tez)",
          "format": "int64"
        },
        "contractBalance": {
          "type": "integer",
          "description": "The contract origination balance (micro tez)",
          "format": "int64"
        },
        "contractDelegate": {
          "description": "Information about the baker (delegate), which was marked as a delegate in the operation",
          "nullable": true,
          "oneOf": [
            {
              "$ref": "#/components/schemas/Alias"
            }
          ]
        },
        "code": {
          "description": "Contract code. Note: you can configure code format by setting `micheline` query parameter (`0 | 2` - raw micheline, `1 | 3` - raw micheline string).",
          "nullable": true
        },
        "storage": {
          "description": "Initial contract storage value converted to human-readable JSON. Note: you can configure storage format by setting `micheline` query parameter.",
          "nullable": true
        },
        "diffs": {
          "type": "array",
          "description": "List of bigmap updates (aka big_map_diffs) caused by the origination.",
          "nullable": true,
          "items": {
            "$ref": "#/components/schemas/BigMapDiff"
          }
        },
        "status": {
          "type": "string",
          "description": "Operation status (`applied` - an operation applied by the node and successfully added to the blockchain,\n`failed` - an operation which failed with some particular error (not enough balance, gas limit, etc),\n`backtracked` - an operation which was a successful but reverted due to one of the following operations in the same operation group was failed,\n`skipped` - all operations after the failed one in an operation group)"
        },
        "errors": {
          "type": "array",
          "description": "List of errors provided by the node, injected the operation to the blockchain. `null` if there is no errors",
          "nullable": true,
          "items": {
            "$ref": "#/components/schemas/OperationError"
          }
        },
        "originatedContract": {
          "description": "Information about the originated ( deployed / created ) contract",
          "nullable": true,
          "oneOf": [
            {
              "$ref": "#/components/schemas/OriginatedContract"
            }
          ]
        },
        "tokenTransfersCount": {
          "type": "integer",
          "description": "Number of token transfers produced by the operation, or `null` if there are no transfers",
          "format": "int32",
          "nullable": true
        },
        "quote": {
          "description": "Injected historical quote at the time of operation",
          "nullable": true,
          "oneOf": [
            {
              "$ref": "#/components/schemas/QuoteShort"
            }
          ]
        }
      }
    }
  ]
}

Work with this as data

Every JSON Schema 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 schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • 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 JSON Schema
curl "https://apis.io/api/v1/json-schemas/originationoperation"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

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.