Upland Appchain History & Chain API
Public, unauthenticated Antelope (Leap 5.0.3) node and Hyperion 3.3.10 full-history API for Upland's own appchain, which replaced Upland's EOS deployment on 2025-04-26. Exposes the standard Antelope /v1/chain RPC (get_info, get_account, get_table_rows, get_abi, push_transaction and friends) plus Hyperion V1 and V2 history, state and stats endpoints for indexed actions, deltas, transactions, token holders, account creators, proposals and resource usage. Documented by Upland on its own Upland Appchain developer page alongside the ledger.upland.me block explorer.
GET
/
GET
/v2/get_filters
Active Filters on the Indexer
GET
/v2/health
API Service Health Report
GET
/v2/history/check_transaction
check if a transaction was included in a block
GET
/v2/history/get_abi_snapshot
fetch abi at specific block
GET
/v2/history/get_actions
get root actions
GET
/v2/history/export_actions
request large action data export
GET
/v2/history/get_created_accounts
get created accounts
GET
/v2/history/get_creator
get account creator
GET
/v2/history/get_deltas
get state deltas
GET
/v2/history/get_schedule
get producer schedule by version
GET
/v2/history/get_table_state
get table state at a specific block height
GET
/v2/history/get_transaction
get transaction by id
GET
/v2/history/get_transaction_legacy
get transaction by id
GET
/v2/state/get_account
get account summary
GET
/v2/state/get_key_accounts
get accounts by public key
POST
/v2/state/get_key_accounts
get accounts by public key
GET
/v2/state/get_links
get permission links
GET
/v2/state/get_proposals
get proposals
GET
/v2/state/get_tokens
get all tokens
GET
/v2/state/get_top_holders
get top token holders
GET
/v2/state/get_voters
get voters
GET
/v2/stats/get_action_usage
get action and transaction stats for a given period
GET
/v2/stats/get_api_usage
get hyperion api usage statistics
GET
/v2/stats/get_missed_blocks
get missed blocks
GET
/v2/stats/get_resource_usage
get resource usage stats for a specific action
POST
/v1/history/get_actions
get actions
POST
/v1/history/get_controlled_accounts
get controlled accounts by controlling accounts
POST
/v1/history/get_transaction
get transaction by id
POST
/v1/history/get_key_accounts
get accounts by public key
POST
/v1/trace_api/get_block
get block traces
GET
/v1/chain/abi_bin_to_json
Returns an object containing rows from the specified table.
HEAD
/v1/chain/abi_bin_to_json
Returns an object containing rows from the specified table.
POST
/v1/chain/abi_bin_to_json
Returns an object containing rows from the specified table.
GET
/v1/chain/abi_json_to_bin
Convert JSON object to binary
HEAD
/v1/chain/abi_json_to_bin
Convert JSON object to binary
POST
/v1/chain/abi_json_to_bin
Convert JSON object to binary
GET
/v1/chain/get_abi
Retrieves the ABI for a contract based on its account name
HEAD
/v1/chain/get_abi
Retrieves the ABI for a contract based on its account name
POST
/v1/chain/get_abi
Retrieves the ABI for a contract based on its account name
GET
/v1/chain/get_account
Returns an object containing various details about a specific account on the blockchain.
HEAD
/v1/chain/get_account
Returns an object containing various details about a specific account on the blockchain.
POST
/v1/chain/get_account
Returns an object containing various details about a specific account on the blockchain.
GET
/v1/chain/get_activated_protocol_features
Retreives the activated protocol features for producer node
HEAD
/v1/chain/get_activated_protocol_features
Retreives the activated protocol features for producer node
POST
/v1/chain/get_activated_protocol_features
Retreives the activated protocol features for producer node
GET
/v1/chain/get_block
Returns an object containing various details about a specific block on the blockchain.
HEAD
/v1/chain/get_block
Returns an object containing various details about a specific block on the blockchain.
POST
/v1/chain/get_block
Returns an object containing various details about a specific block on the blockchain.
GET
/v1/chain/get_block_header_state
Retrieves the block header state
HEAD
/v1/chain/get_block_header_state
Retrieves the block header state
POST
/v1/chain/get_block_header_state
Retrieves the block header state
GET
/v1/chain/get_code
Retrieves contract code
HEAD
/v1/chain/get_code
Retrieves contract code
POST
/v1/chain/get_code
Retrieves contract code
GET
/v1/chain/get_currency_balance
Retrieves the current balance
HEAD
/v1/chain/get_currency_balance
Retrieves the current balance
POST
/v1/chain/get_currency_balance
Retrieves the current balance
GET
/v1/chain/get_currency_stats
Retrieves currency stats
HEAD
/v1/chain/get_currency_stats
Retrieves currency stats
POST
/v1/chain/get_currency_stats
Retrieves currency stats
GET
/v1/chain/get_info
Returns an object containing various details about the blockchain.
HEAD
/v1/chain/get_info
Returns an object containing various details about the blockchain.
POST
/v1/chain/get_info
Returns an object containing various details about the blockchain.
GET
/v1/chain/get_raw_abi
Retrieves raw ABI for a contract based on account name
HEAD
/v1/chain/get_raw_abi
Retrieves raw ABI for a contract based on account name
POST
/v1/chain/get_raw_abi
Retrieves raw ABI for a contract based on account name
GET
/v1/chain/get_producers
Retrieves producers list
HEAD
/v1/chain/get_producers
Retrieves producers list
POST
/v1/chain/get_producers
Retrieves producers list
GET
/v1/chain/get_table_by_scope
Retrieves table scope
HEAD
/v1/chain/get_table_by_scope
Retrieves table scope
POST
/v1/chain/get_table_by_scope
Retrieves table scope
GET
/v1/chain/get_raw_code_and_abi
Retrieves raw code and ABI for a contract based on account name
HEAD
/v1/chain/get_raw_code_and_abi
Retrieves raw code and ABI for a contract based on account name
POST
/v1/chain/get_raw_code_and_abi
Retrieves raw code and ABI for a contract based on account name
GET
/v1/chain/get_scheduled_transaction
Retrieves the scheduled transaction
HEAD
/v1/chain/get_scheduled_transaction
Retrieves the scheduled transaction
POST
/v1/chain/get_scheduled_transaction
Retrieves the scheduled transaction
POST
/v1/chain/push_transaction
This method expects a transaction in JSON format and will attempt to apply it to the blockchain.
GET
/v1/chain/get_table_rows
Returns an object containing rows from the specified table.
HEAD
/v1/chain/get_table_rows
Returns an object containing rows from the specified table.
POST
/v1/chain/get_table_rows
Returns an object containing rows from the specified table.
POST
/v1/chain/push_transactions
This method expects a transaction in JSON format and will attempt to apply it to the blockchain.
POST
/v1/chain/send_transaction
This method expects a transaction in JSON format and will attempt to apply it to the blockchain.
GET
/v1/chain/{wildcard}
Wildcard chain api handler
POST
/v1/chain/{wildcard}
Wildcard chain api handler
GET
/v1/node/get_supported_apis
Get list of supported APIs
GET
/stream-client.js
Documentation
Specifications
Other Resources
Every API here is available over the APIs.io API and to AI agents over MCP.
{
"swagger": "2.0",
"info": {
"title": "Hyperion History API for UPLAND Chain",
"description": "\n<img height=\"64\" src=\"https://eosrio.io/hyperion.png\">\n### Scalable Full History API Solution for EOSIO based blockchains\n*Made with \u2665\ufe0f by [EOS Rio](https://eosrio.io/)*\n***\n#### Current Chain: UPLAND Chain <img style=\"transform: translateY(8px)\" height=\"32\" src=\"\">\n#### Provided by [UPLAND](https://leaswb-us-east-hyp01.uplnd.net)\n#### Health API: <a target=\"_blank\" href=\"https://10.0.3.200:7000/v2/health\">https://10.0.3.200:7000/v2/health</a>\n",
"version": "3.3.10"
},
"definitions": {
"def-0": {
"title": "Integer",
"description": "Integer or String",
"anyOf": [
{
"type": "string",
"pattern": "^\\d+$"
},
{
"type": "integer"
}
]
},
"def-1": {
"type": "string",
"description": "A symbol composed of capital letters between 1-7.",
"pattern": "^([A-Z]{1,7})$",
"title": "Symbol"
},
"def-2": {
"type": "string",
"description": "String representation of an EOSIO compatible cryptographic signature",
"pattern": "^SIG_([RK]1|WA)_[1-9A-HJ-NP-Za-km-z]+$",
"title": "Signature"
},
"def-3": {
"description": "String representation of an EOSIO compatible account name",
"anyOf": [
{
"type": "string",
"description": "String representation of privileged EOSIO name type",
"pattern": "^(eosio[\\.][a-z1-5]{1,6})([a-j]{1})?$",
"title": "NamePrivileged"
},
{
"type": "string",
"description": "String representation of basic EOSIO name type, must be 12 characters and contain only a-z and 0-5",
"pattern": "^([a-z]{1}[a-z1-5]{11})([a-j]{1})?$",
"title": "NameBasic"
},
{
"type": "string",
"description": "String representation of EOSIO bid name type, 1-12 characters and only a-z and 0-5 are allowed",
"pattern": "^([a-z1-5]{1,12})([a-j]{1})?$",
"title": "NameBid"
},
{
"type": "string",
"description": "String representation of EOSIO name type",
"pattern": "^([a-z1-5]{1}[a-z1-5\\.]{0,10}[a-z1-5]{1})([a-j]{1})?$",
"title": "NameCatchAll"
}
],
"title": "Name"
},
"def-4": {
"description": "Time that transaction must be confirmed by.",
"type": "string",
"pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}$",
"title": "DateTime"
},
"def-5": {
"type": "array",
"items": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
]
},
"title": "Extension"
},
"def-6": {
"type": "object",
"additionalProperties": false,
"minProperties": 5,
"required": [
"account",
"name",
"authorization",
"data",
"hex_data"
],
"properties": {
"account": {
"$ref": "#/definitions/def-3"
},
"name": {
"$ref": "#/definitions/def-3"
},
"authorization": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"minProperties": 2,
"required": [
"actor",
"permission"
],
"properties": {
"actor": {
"$ref": "#/definitions/def-3"
},
"permission": {
"$ref": "#/definitions/def-3"
}
},
"title": "Authority"
}
},
"data": {
"type": "object",
"additionalProperties": true
},
"hex_data": {
"type": "string"
}
},
"title": "Action"
}
},
"paths": {
"/": {
"get": {
"responses": {
"200": {
"description": "Default Response"
}
}
}
},
"/v2/get_filters": {
"get": {
"summary": "Active Filters on the Indexer",
"tags": [
"status"
],
"responses": {
"200": {
"description": "Default Response"
}
}
}
},
"/v2/health": {
"get": {
"summary": "API Service Health Report",
"tags": [
"status"
],
"responses": {
"200": {
"description": "Default Response"
}
}
}
},
"/v2/history/check_transaction": {
"get": {
"summary": "check if a transaction was included in a block",
"description": "check if a transaction was included in a block",
"tags": [
"history"
],
"parameters": [
{
"description": "transaction id",
"type": "string",
"minLength": 64,
"maxLength": 64,
"required": true,
"in": "query",
"name": "id"
}
],
"responses": {
"200": {
"description": "Default Response",
"schema": {
"type": "object",
"properties": {
"query_time_ms": {
"type": "number"
},
"cached": {
"type": "boolean"
},
"hot_only": {
"type": "boolean"
},
"lib": {
"type": "number"
},
"last_indexed_block": {
"type": "number"
},
"last_indexed_block_time": {
"type": "string"
},
"total": {
"type": "object",
"properties": {
"value": {
"type": "number"
},
"relation": {
"type": "string"
}
}
},
"id": {
"type": "string"
},
"status": {
"type": "string"
},
"block_num": {
"type": "number"
},
"root_action": {
"type": "object",
"properties": {
"account": {
"type": "string"
},
"name": {
"type": "string"
},
"authorization": {
"type": "array",
"items": {
"type": "object",
"properties": {
"actor": {
"type": "string"
},
"permission": {
"type": "string"
}
}
}
},
"data": {
"type": "string"
}
}
},
"signatures": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
}
},
"/v2/history/get_abi_snapshot": {
"get": {
"summary": "fetch abi at specific block",
"description": "fetch contract abi at specific block",
"tags": [
"history"
],
"parameters": [
{
"description": "contract account",
"type": "string",
"minLength": 1,
"maxLength": 12,
"required": true,
"in": "query",
"name": "contract"
},
{
"description": "target block",
"type": "integer",
"minimum": 1,
"required": false,
"in": "query",
"name": "block"
},
{
"description": "should fetch the ABI",
"type": "boolean",
"required": false,
"in": "query",
"name": "fetch"
}
],
"responses": {
"200": {
"description": "Default Response"
}
}
}
},
"/v2/history/get_actions": {
"get": {
"summary": "get root actions",
"description": "get actions based on notified account. this endpoint also accepts generic filters based on indexed fields (e.g. act.authorization.actor=eosio or act.name=delegatebw), if included they will be combined with a AND operator",
"tags": [
"history"
],
"parameters": [
{
"description": "limit of [n] results per page",
"type": "integer",
"minimum": 1,
"required": false,
"in": "query",
"name": "limit"
},
{
"description": "skip [n] results",
"type": "integer",
"minimum": 0,
"required": false,
"in": "query",
"name": "skip"
},
{
"description": "notified account",
"type": "string",
"minLength": 1,
"maxLength": 12,
"required": false,
"in": "query",
"name": "account"
},
{
"description": "total results to track (count) [number or true]",
"type": "string",
"required": false,
"in": "query",
"name": "track"
},
{
"description": "code:name filter",
"type": "string",
"minLength": 3,
"required": false,
"in": "query",
"name": "filter"
},
{
"description": "sort direction",
"enum": [
"desc",
"asc",
"1",
"-1"
],
"type": "string",
"required": false,
"in": "query",
"name": "sort"
},
{
"description": "filter after specified date (ISO8601)",
"type": "string",
"required": false,
"in": "query",
"name": "after"
},
{
"description": "filter before specified date (ISO8601)",
"type": "string",
"required": false,
"in": "query",
"name": "before"
},
{
"description": "simplified output mode",
"type": "boolean",
"required": false,
"in": "query",
"name": "simple"
},
{
"description": "search only the latest hot index",
"type": "boolean",
"required": false,
"in": "query",
"name": "hot_only"
},
{
"description": "exclude large binary data",
"type": "boolean",
"required": false,
"in": "query",
"name": "noBinary"
},
{
"description": "perform reversibility check",
"type": "boolean",
"required": false,
"in": "query",
"name": "checkLib"
}
],
"responses": {
"200": {
"description": "Default Response",
"schema": {
"type": "object",
"properties": {
"query_time_ms": {
"type": "number"
},
"cached": {
"type": "boolean"
},
"hot_only": {
"type": "boolean"
},
"lib": {
"type": "number"
},
"last_indexed_block": {
"type": "number"
},
"last_indexed_block_time": {
"type": "string"
},
"total": {
"type": "object",
"properties": {
"value": {
"type": "number"
},
"relation": {
"type": "string"
}
}
},
"simple_actions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"block": {
"type": "number"
},
"timestamp": {
"type": "string"
},
"irreversible": {
"type": "boolean"
},
"contract": {
"type": "string"
},
"action": {
"type": "string"
},
"actors": {
"type": "string"
},
"notified": {
"type": "string"
},
"transaction_id": {
"type": "string"
},
"data": {
"additionalProperties": true,
"type": "object"
}
}
}
},
"actions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"@timestamp": {
"type": "string"
},
"timestamp": {
"type": "string"
},
"block_num": {
"type": "number"
},
"block_id": {
"type": "string"
},
"trx_id": {
"type": "string"
},
"act": {
"type": "object",
"properties": {
"account": {
"type": "string"
},
"name": {
"type": "string"
},
"authorization": {
"type": "array",
"items": {
"type": "object",
"properties": {
"actor": {
"type": "string"
},
"permission": {
"type": "string"
}
}
}
}
},
"additionalProperties": true
},
"receipts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"receiver": {
"type": "string"
},
"global_sequence": {
"type": "number"
},
"recv_sequence": {
"type": "number"
},
"auth_sequence": {
"type": "array",
"items": {
"type": "object",
"properties": {
"account": {
"type": "string"
},
"sequence": {
"type": "number"
}
}
}
}
}
}
},
"cpu_usage_us": {
"type": "number"
},
"net_usage_words": {
"type": "number"
},
"account_ram_deltas": {
"type": "array",
"items": {
"type": "object",
"properties": {
"account": {
"type": "string"
},
"delta": {
"type": "number"
}
},
"additionalProperties": true
}
},
"global_sequence": {
"type": "number"
},
"producer": {
"type": "string"
},
"parent": {
"type": "number"
},
"action_ordinal": {
"type": "number"
},
"creator_action_ordinal": {
"type": "number"
},
"signatures": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
}
}
}
}
},
"/v2/history/export_actions": {
"get": {
"summary": "request large action data export",
"description": "request large action data export",
"tags": [
"history"
],
"responses": {
"200": {
"description": "Default Response"
}
}
}
},
"/v2/history/get_created_accounts": {
"get": {
"summary": "get created accounts",
"description": "get all accounts created by one creator",
"tags": [
"accounts"
],
"parameters": [
{
"description": "limit of [n] results per page",
"type": "integer",
"minimum": 1,
"required": false,
"in": "query",
"name": "limit"
},
{
"description": "skip [n] results",
"type": "integer",
"minimum": 0,
"required": false,
"in": "query",
"name": "skip"
},
{
"description": "creator account",
"type": "string",
"minLength": 1,
"maxLength": 12,
"required": true,
"in": "query",
"name": "account"
}
],
"responses": {
"200": {
"description": "Default Response",
"schema": {
"type": "object",
"properties": {
"query_time_ms": {
"type": "number"
},
"cached": {
"type": "boolean"
},
"hot_only": {
"type": "boolean"
},
"lib": {
"type": "number"
},
"last_indexed_block": {
"type": "number"
},
"last_indexed_block_time": {
"type": "string"
},
"total": {
"type": "object",
"properties": {
"value": {
"type": "number"
},
"relation": {
"type": "string"
}
}
},
"query_time": {
"type": "number"
},
"accounts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"timestamp": {
"type": "string"
},
"trx_id": {
"type": "string"
}
}
}
}
}
}
}
}
}
},
"/v2/history/get_creator": {
"get": {
"summary": "get account creator",
"description": "get account creator",
"tags": [
"accounts"
],
"parameters": [
{
"description": "created account",
"type": "string",
"minLength": 1,
"maxLength": 12,
"required": true,
"in": "query",
"name": "account"
}
],
"responses": {
"200": {
"description": "Default Response",
"schema": {
"type": "object",
"properties": {
"query_time_ms": {
"type": "number"
},
"cached": {
"type": "boolean"
},
"hot_only": {
"type": "boolean"
},
"lib": {
"type": "number"
},
"last_indexed_block": {
"type": "number"
},
"last_indexed_block_time": {
"type": "string"
},
"total": {
"type": "object",
"properties": {
"value": {
"type": "number"
},
"relation": {
"type": "string"
}
}
},
"account": {
"type": "string"
},
"creator": {
"type": "string"
},
"timestamp": {
"type": "string"
},
"block_num": {
"type": "integer"
},
"trx_id": {
"type": "string"
},
"indirect_creator": {
"type": "string"
}
}
}
}
}
}
},
"/v2/history/get_deltas": {
"get": {
"summary": "get state deltas",
"description": "get state deltas",
"tags": [
"history"
],
"parameters": [
{
"description": "limit of [n] results per page",
"type": "integer",
"minimum": 1,
"required": false,
"in": "query",
"name": "limit"
},
{
"description": "skip [n] results",
"type": "integer",
"minimum": 0,
"required": false,
"in": "query",
"name": "skip"
},
{
"description": "contract account",
"type": "string",
"required": false,
"in": "query",
"name": "code"
},
{
"description": "table scope",
"type": "string",
"required": false,
"in": "query",
"name": "scope"
},
{
"description": "table name",
"type": "string",
"required": false,
"in": "query",
"name": "table"
},
{
"description": "payer account",
"type": "string",
"required": false,
"in": "query",
"name": "payer"
},
{
"description": "filter after specified date (ISO8601)",
"type": "string",
"required": false,
"in": "query",
"name": "after"
},
{
"description": "filter before specified date (ISO8601)",
"type": "string",
"required": false,
"in": "query",
"name": "before"
},
{
"description": "delta present flag",
"type": "number",
"required": false,
"in": "query",
"name": "present"
}
],
"responses": {
"200": {
"description": "Default Response",
"schema": {
"type": "object",
"properties": {
"query_time_ms": {
"type": "number"
},
"cached": {
"type": "boolean"
},
"hot_only": {
"type": "boolean"
},
"lib": {
"type": "number"
},
"last_indexed_block": {
"type": "number"
},
"last_indexed_block_time": {
"type": "string"
},
"total": {
"type": "object",
"properties": {
"value": {
"type": "number"
},
"relation": {
"type": "string"
}
}
},
"deltas": {
"type": "array",
"items": {
"type": "object",
"properties": {
"timestamp": {
"type": "string"
},
"present": {
"type": "number"
},
"code": {
"type": "string"
},
"scope": {
"type": "string"
},
"table": {
"type": "string"
},
"primary_key": {
"type": "string"
},
"payer": {
"type": "string"
},
"block_num": {
"type": "number"
},
"block_id": {
"type": "string"
},
"data": {
"type": "object",
"additionalProperties": true
}
},
"additionalProperties": true
}
}
}
}
}
}
}
},
"/v2/history/get_schedule": {
"get": {
"summary": "get producer schedule by version",
"description": "get producer schedule by version",
"tags": [
"history"
],
"parameters": [
{
"description": "search by producer",
"type": "string",
"required": false,
"in": "query",
"name": "producer"
},
{
"description": "search by signing key",
"type": "string",
"required": false,
"in": "query",
"name": "key"
},
{
"description": "filter after specified date (ISO8601)",
"type": "string",
"required": false,
"in": "query",
"name": "after"
},
{
"description": "filter before specified date (ISO8601)",
"type": "string",
"required": false,
"in": "query",
"name": "before"
},
{
"description": "search mode (activated or proposed)",
"type": "string",
"required": false,
"in": "query",
"name": "mode"
},
{
"description": "schedule version",
"type": "integer",
"minimum": 1,
"required": false,
"in": "query",
"name": "version"
}
],
"responses": {
"200": {
"description": "Default Response",
"schema": {
"type": "object",
"properties": {
"query_time_ms": {
"type": "number"
},
"cached": {
"type": "boolean"
},
"hot_only": {
"type": "boolean"
},
"lib": {
"type": "number"
},
"last_indexed_block": {
"type": "number"
},
"last_indexed_block_time": {
"type": "string"
},
"total": {
"type": "object",
"properties": {
"value": {
"type": "number"
},
"relation": {
"type": "string"
}
}
},
"timestamp": {
"type": "string"
},
"block_num": {
"type": "number"
},
"proposed_block_num": {
"type": "number"
},
"version": {
"type": "number"
},
"producers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"producer_name": {
"type": "string"
},
"name": {
"type": "string"
},
"block_signing_key": {
"type": "string"
},
"legacy_key": {
"type": "string"
},
"keys": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
}
}
}
}
},
"/v2/history/get_table_state": {
"get": {
"summary": "get table state at a specific block height",
"description": "get table state at a specific block height",
"tags": [
"history"
],
"parameters": [
{
"description": "search by contract",
"type": "string",
"required": true,
"in": "query",
"name": "code"
},
{
"description": "search by key",
"type": "string",
"required": true,
"in": "query",
"name": "table"
},
{
"description": "target block",
"type": "integer",
"minimum": 1,
"required": false,
"in": "query",
"name": "block_num"
},
{
"description": "last key for pagination",
"type": "strin
# --- truncated at 32 KB (130 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/upland/refs/heads/main/openapi/upland-appchain-history-swagger.json