/**
* AUTO-GENERATED — DO NOT EDIT.
*
* Source: https://raw.githubusercontent.com/TrueBlocks/trueblocks-core/3205a003af599adf2229408f74afbe6952391883/docs/content/api/openapi.yaml
* Tool: openapi-typescript
*
* Re-run with `yarn codegen` from this package to refresh.
*/
export interface paths {
"/list": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/**
* List transactions
* @description List every appearance of an address anywhere on the chain. Corresponds to the chifra list command line.
*/
get: operations["accounts-list"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/export": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/**
* Export details
* @description Export full details of transactions for one or more addresses. Corresponds to the chifra export command line.
*/
get: operations["accounts-export"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/monitors": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/**
* Manage monitors
* @description Add, remove, clean, and list address monitors. Corresponds to the chifra monitors command line.
*/
get: operations["accounts-monitors"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/names": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/**
* Manage names
* @description Query addresses or names of well-known accounts. Corresponds to the chifra names command line.
*/
get: operations["accounts-names"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/abis": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/**
* Manage Abi files
* @description Fetches the ABI for a smart contract. Corresponds to the chifra abis command line.
*/
get: operations["accounts-abis"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/blocks": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/**
* Get blocks
* @description Retrieve one or more blocks from the chain or local cache. Corresponds to the chifra blocks command line.
*/
get: operations["chaindata-blocks"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/transactions": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/**
* Get transactions
* @description Retrieve one or more transactions from the chain or local cache. Corresponds to the chifra transactions command line.
*/
get: operations["chaindata-transactions"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/receipts": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/**
* Get receipts
* @description Retrieve receipts for the given transaction(s). Corresponds to the chifra receipts command line.
*/
get: operations["chaindata-receipts"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/logs": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/**
* Get logs
* @description Retrieve logs for the given transaction(s). Corresponds to the chifra logs command line.
*/
get: operations["chaindata-logs"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/traces": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/**
* Get traces
* @description Retrieve traces for the given transaction(s). Corresponds to the chifra traces command line.
*/
get: operations["chaindata-traces"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/when": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/**
* Get block dates
* @description Find block(s) based on date, blockNum, timestamp, or 'special'. Corresponds to the chifra when command line.
*/
get: operations["chaindata-when"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/state": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/**
* Get balance(s)
* @description Retrieve account balance(s) for one or more addresses at given block(s). Corresponds to the chifra state command line.
*/
get: operations["chainstate-state"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/tokens": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/**
* Get token balance(s)
* @description Retrieve token balance(s) for one or more addresses at given block(s). Corresponds to the chifra tokens command line.
*/
get: operations["chainstate-tokens"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/config": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/**
* Manage config
* @description Report on and edit the configuration of the TrueBlocks system. Corresponds to the chifra config command line.
*/
get: operations["admin-config"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/status": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/**
* Get status on caches
* @description Report on the state of the internal binary caches. Corresponds to the chifra status command line.
*/
get: operations["admin-status"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/chunks": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/**
* Manage chunks
* @description Manage, investigate, and display the Unchained Index. Corresponds to the chifra chunks command line.
*/
get: operations["admin-chunks"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/init": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/**
* Initialize index
* @description Initialize the TrueBlocks system by downloading the Unchained Index from IPFS. Corresponds to the chifra init command line.
*/
get: operations["admin-init"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/slurp": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/**
* Slurp Api services
* @description Fetch data from Etherscan and other APIs for any address. Corresponds to the chifra slurp command line.
*/
get: operations["other-slurp"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
}
export type webhooks = Record;
export interface components {
schemas: {
/** @description an appearance (``) of an address anywhere on the chain (note that in some cases, not all fields will appear depending on the command) */
appearance: {
/**
* Format: address
* @description the address of the appearance
*/
address?: string;
/**
* Format: uint32
* @description the number of the block
*/
blockNumber?: number;
/**
* Format: uint32
* @description the index of the transaction in the block
*/
transactionIndex?: number;
/**
* Format: uint32
* @description the zero-based index of the trace in the transaction
*/
traceIndex?: number;
/**
* Format: string
* @description the location in the data where the appearance was found
*/
reason?: string;
/**
* Format: timestamp
* @description the timestamp for this appearance
*/
timestamp?: number;
/**
* Format: datetime
* @description the timestamp as a date (calculated)
*/
date?: string;
};
/** @description a local file indicating a user's interest in an address. Includes caches for reconicilations, transactions, and appearances as well as an optional association to named account */
monitor: {
/**
* Format: address
* @description the address of this monitor
*/
address?: string;
/**
* Format: string
* @description the name of this monitor (if any)
*/
name?: string;
/**
* Format: int64
* @description the number of appearances for this monitor
*/
nRecords?: number;
/**
* Format: int64
* @description the size of this monitor on disc
*/
fileSize?: number;
/**
* Format: uint32
* @description the last scanned block number
*/
lastScanned?: number;
/**
* Format: boolean
* @description `true` if the monitor has no appearances, `false` otherwise
*/
isEmpty?: boolean;
/**
* Format: boolean
* @description `true` if the monitor file in on the stage, `false` otherwise
*/
isStaged?: boolean;
/**
* Format: boolean
* @description `true` if this monitor has been deleted, `false` otherwise
*/
deleted?: boolean;
};
/** @description an association between a human-readable name and an address used throughout TrueBlocks */
name: {
/**
* Format: string
* @description colon separated list of tags
*/
tags?: string;
/**
* Format: address
* @description the address associated with this name
*/
address?: string;
/**
* Format: string
* @description the name associated with this address (retrieved from on-chain data if available)
*/
name?: string;
/**
* Format: string
* @description the symbol for this address (retrieved from on-chain data if available)
*/
symbol?: string;
/**
* Format: string
* @description user supplied source of where this name was found (or on-chain if name is on-chain)
*/
source?: string;
/**
* Format: uint64
* @description number of decimals retrieved from an ERC20 smart contract, defaults to 18
*/
decimals?: number;
/**
* Format: boolean
* @description `true` if deleted, `false` otherwise
*/
deleted?: boolean;
/**
* Format: boolean
* @description `true` if the address is a custom address, `false` otherwise
*/
isCustom?: boolean;
/**
* Format: boolean
* @description `true` if the address was one of the prefund addresses, `false` otherwise
*/
isPrefund?: boolean;
/**
* Format: boolean
* @description `true` if the address is a smart contract, `false` otherwise
*/
isContract?: boolean;
/**
* Format: boolean
* @description `true` if the address is an ERC20, `false` otherwise
*/
isErc20?: boolean;
/**
* Format: boolean
* @description `true` if the address is an ERC720, `false` otherwise
*/
isErc721?: boolean;
};
/** @description show first block and last block an address appears in along with timestamps and dates */
bounds: {
/**
* Format: uint64
* @description the number of appearances for this address
*/
count?: number;
/** @description the block number and transaction id of the first appearance of this address */
firstApp?: Record;
/**
* Format: timestamp
* @description the timestamp of the first appearance of this address
*/
firstTs?: number;
/**
* Format: datetime
* @description the first appearance timestamp as a date (calculated)
*/
firstDate?: string;
/** @description the block number and transaction id of the latest appearance of this address */
latestApp?: Record;
/**
* Format: timestamp
* @description the timestamp of the latest appearance of this address
*/
latestTs?: number;
/**
* Format: datetime
* @description the latest appearance timestamp as a date (calculated)
*/
latestDate?: string;
};
/** @description a statement, including all inflows and outflows, for a single transfer of an asset (including ETH) to or from a given address */
statement: {
/**
* Format: blknum
* @description the number of the block
*/
blockNumber?: number;
/**
* Format: txnum
* @description the zero-indexed position of the transaction in the block
*/
transactionIndex?: number;
/**
* Format: lognum
* @description the zero-indexed position the log in the block, if applicable
*/
logIndex?: number;
/**
* Format: hash
* @description the hash of the transaction that triggered this reconciliation
*/
transactionHash?: string;
/**
* Format: timestamp
* @description the Unix timestamp of the object
*/
timestamp?: number;
/**
* Format: datetime
* @description the timestamp as a date (calculated)
*/
date?: string;
/**
* Format: address
* @description 0xeeee...eeee for ETH reconciliations, the token address otherwise
*/
asset?: string;
/**
* Format: string
* @description either ETH, WEI, or the symbol of the asset being reconciled as extracted from the chain
*/
symbol?: string;
/**
* Format: value
* @description the value of `decimals` from an ERC20 contract or, if ETH or WEI, then 18
*/
decimals?: number;
/**
* Format: float
* @description the on-chain price in USD (or if a token in ETH, or zero) at the time of the transaction
*/
spotPrice?: number;
/**
* Format: string
* @description the on-chain source from which the spot price was taken
*/
priceSource?: string;
/**
* Format: address
* @description the address being accounted for in this reconciliation
*/
accountedFor?: string;
/**
* Format: address
* @description the initiator of the transfer (the sender)
*/
sender?: string;
/**
* Format: address
* @description the receiver of the transfer (the recipient)
*/
recipient?: string;
/**
* Format: int256
* @description the on-chain or running beginning balance prior to the transaction (see notes about intra-block reconciliations)
*/
begBal?: string;
/**
* Format: int256
* @description totalIn - totalOut (calculated)
*/
amountNet?: string;
/**
* Format: int256
* @description the on-chain or running balance after the transaction (see notes about intra-block reconciliations)
*/
endBal?: string;
/**
* Format: boolean
* @description true if `endBal === endBalCalc` and `begBal === prevBal`. `false` otherwise. (calculated)
*/
reconciled?: boolean;
/**
* Format: int256
* @description the sum of the following `In` fields (calculated)
*/
totalIn?: string;
/**
* Format: int256
* @description the top-level value of the incoming transfer for the accountedFor address
*/
amountIn?: string;
/**
* Format: int256
* @description the internal value of the incoming transfer for the accountedFor address
*/
internalIn?: string;
/**
* Format: int256
* @description the incoming value of a self-destruct if recipient is the accountedFor address
*/
selfDestructIn?: string;
/**
* Format: int256
* @description the base fee reward if the miner is the accountedFor address
*/
minerBaseRewardIn?: string;
/**
* Format: int256
* @description the nephew reward if the miner is the accountedFor address
*/
minerNephewRewardIn?: string;
/**
* Format: int256
* @description the transaction fee reward if the miner is the accountedFor address
*/
minerTxFeeIn?: string;
/**
* Format: int256
* @description the uncle reward if the miner who won the uncle block is the accountedFor address
*/
minerUncleRewardIn?: string;
/**
* Format: int256
* @description for unreconciled transfers, increase in beginning balance need to match previous balance
*/
correctBegBalIn?: string;
/**
* Format: int256
* @description for unreconciled transfers, increase in the amount of a transfer
*/
correctAmountIn?: string;
/**
* Format: int256
* @description for unreconciled transfers, increase in ending balance need to match running balance or block balance
*/
correctEndBalIn?: string;
/**
* Format: int256
* @description at block zero (0) only, the amount of genesis income for the accountedFor address
*/
prefundIn?: string;
/**
* Format: int256
* @description the sum of the following `Out` fields (calculated)
*/
totalOut?: string;
/**
* Format: int256
* @description the amount (in units of the asset) of regular outflow during this transaction
*/
amountOut?: string;
/**
* Format: int256
* @description the value of any internal value transfers out of the accountedFor account
*/
internalOut?: string;
/**
* Format: int256
* @description for unreconciled transfers, decrease in beginning balance need to match previous balance
*/
correctBegBalOut?: string;
/**
* Format: int256
* @description for unreconciled transfers, decrease in the amount of a transfer
*/
correctAmountOut?: string;
/**
* Format: int256
* @description for unreconciled transfers, decrease in ending balance need to match running balance or block balance
*/
correctEndBalOut?: string;
/**
* Format: int256
* @description the value of the self-destructed value out if the accountedFor address was self-destructed
*/
selfDestructOut?: string;
/**
* Format: int256
* @description if the transaction's original sender is the accountedFor address, the amount of gas expended
*/
gasOut?: string;
/**
* Format: int256
* @description the account balance for the given asset for the previous reconciliation
*/
prevBal?: string;
/**
* Format: int256
* @description difference between expected beginning balance and balance at last reconciliation, if non-zero, the reconciliation failed (calculated)
*/
begBalDiff?: string;
/**
* Format: int256
* @description endBal - endBalCalc, if non-zero, the reconciliation failed (calculated)
*/
endBalDiff?: string;
/**
* Format: int256
* @description begBal + amountNet (calculated)
*/
endBalCalc?: string;
/**
* Format: string
* @description for unreconciled transfers, the reasons for the correcting entries, if any
*/
correctingReasons?: string;
};
/** @description a movement of an asset from one address to another (derived from a transaction or a log) */
transfer: {
/**
* Format: blknum
* @description the number of the block
*/
blockNumber?: number;
/**
* Format: txnum
* @description the zero-indexed position of the transaction in the block
*/
transactionIndex?: number;
/**
* Format: lognum
* @description the zero-indexed position the log in the block, if applicable
*/
logIndex?: number;
/**
* Format: address
* @description the address of the holder of the asset
*/
holder?: string;
/**
* Format: address
* @description 0xeeee...eeee for ETH transfers, the token address otherwise
*/
asset?: string;
/**
* Format: uint64
* @description the number of decimal places in the asset units
*/
decimals?: number;
/**
* Format: address
* @description the initiator of the transfer (the sender)
*/
sender?: string;
/**
* Format: address
* @description the receiver of the transfer (the recipient)
*/
recipient?: string;
/**
* Format: int256
* @description the top-level value of the incoming transfer for the holder address
*/
amountIn?: string;
/**
* Format: int256
* @description the internal value of the incoming transfer for the holder address
*/
internalIn?: string;
/**
* Format: int256
* @description the base fee reward if the miner is the holder address
*/
minerBaseRewardIn?: string;
/**
* Format: int256
* @description the nephew reward if the miner is the holder address
*/
minerNephewRewardIn?: string;
/**
* Format: int256
* @description the transaction fee reward if the miner is the holder address
*/
minerTxFeeIn?: string;
/**
* Format: int256
* @description the uncle reward if the miner who won the uncle block is the holder address
*/
minerUncleRewardIn?: string;
/**
* Format: int256
* @description at block zero (0) only, the amount of genesis income for the holder address
*/
prefundIn?: string;
/**
* Format: int256
* @description the incoming value of a self-destruct if recipient is the holder address
*/
selfDestructIn?: string;
/**
* Format: int256
* @description the amount (in units of the asset) of regular outflow during this transaction
*/
amountOut?: string;
/**
* Format: int256
* @description the value of any internal value transfers out of the holder account
*/
internalOut?: string;
/**
* Format: int256
* @description if the transaction's original sender is the holder address, the amount of gas expended
*/
gasOut?: string;
/**
* Format: int256
* @description the outgoing value of a self-destruct if sender is the holder address
*/
selfDestructOut?: string;
/** @description the transaction that triggered the transfer (calculated) */
transaction?: Record;
/** @description if a token transfer, the log that triggered the transfer (calculated) */
log?: Record;
};
/** @description an ERC-20 token approval granting spending permission from owner to spender */
approval: {
/**
* Format: wei
* @description the amount of tokens approved for spending
*/
allowance?: string;
/**
* Format: blknum
* @description the current block number when the report was generated
*/
blockNumber?: number;
/**
* Format: timestamp
* @description the current timestamp when the report was generated
*/
timestamp?: number;
/**
* Format: datetime
* @description the timestamp as a date (calculated)
*/
date?: string;
/**
* Format: address
* @description the address of the owner of the token (the approver)
*/
owner?: string;
/**
* Format: address
* @description the address being granted approval to spend tokens
*/
spender?: string;
/**
* Format: address
* @description the address of the ERC-20 token being approved
*/
token?: string;
/**
* Format: blknum
* @description the block number of the last approval event
*/
lastAppBlock?: number;
/**
* Format: timestamp
* @description the timestamp of the last approval event
*/
lastAppTs?: number;
/**
* Format: txnum
* @description the transaction index of the last approval event
*/
lastAppTxID?: number;
/**
* Format: lognum
* @description the log index of the last approval event
*/
lastAppLogID?: number;
};
/** @description an appearance table for an address */
appearanceTable: {
/** @description the address record for these appearances */
AddressRecord?: Record;
/** @description all the appearances for this address */
Appearances?: components["schemas"]["appRecord"][];
};
/** @description block data as returned from the RPC (with slight enhancements) */
block: {
/**
* Format: gas
* @description the system-wide maximum amount of gas permitted in this block
*/
gasLimit?: number;
/**
* Format: hash
* @description the hash of the current block
*/
hash?: string;
/**
* Format: blknum
* @description the number of the block
*/
blockNumber?: number;
/**
* Format: hash
* @description hash of previous block
*/
parentHash?: string;
/**
* Format: address
* @description address of block's winning miner
*/
miner?: string;
/**
* Format: value
* @description the computational difficulty at this block
*/
difficulty?: number;
/**
* Format: timestamp
* @description the Unix timestamp of the object
*/
timestamp?: number;
/**
* Format: datetime
* @description the timestamp as a date (calculated)
*/
date?: string;
/** @description a possibly empty array of transactions */
transactions?: components["schemas"]["transaction"][];
/**
* Format: gas
* @description the base fee for this block
*/
baseFeePerGas?: number;
/** @description a possibly empty array of uncle hashes */
uncles?: components["schemas"]["hash"][];
/** @description a possibly empty array of withdrawals (post Shanghai) */
withdrawals?: components["schemas"]["withdrawal"][];
};
/** @description transaction data as returned from the RPC (with slight enhancements) */
transaction: {
/**
* Format: hash
* @description the hash of the transaction
*/
hash?: string;
/**
* Format: hash
* @description the hash of the block containing this transaction
*/
blockHash?: string;
/**
* Format: blknum
* @description the number of the block
*/
blockNumber?: number;
/**
* Format: txnum
* @description the zero-indexed position of the transaction in the block
*/
transactionIndex?: number;
/**
* Format: value
* @description sequence number of the transactions sent by the sender
*/
nonce?: number;
/**
* Format: timestamp
* @description the Unix timestamp of the object
*/
timestamp?: number;
/**
* Format: datetime
* @description the timestamp as a date (calculated)
*/
date?: string;
/**
* Format: address
* @description address from which the transaction was sent
*/
from?: string;
/**
* Format: address
* @description address to which the transaction was sent
*/
to?: string;
/**
* Format: wei
* @description the amount of wei sent with this transactions
*/
value?: string;
/**
* Format: ether
* @description if --ether is specified, the value in ether (calculated)
*/
ether?: string;
/**
* Format: gas
* @description the number of wei per unit of gas the sender is willing to spend
*/
gasPrice?: number;
/**
* Format: gas
* @description the maximum number of gas allowed for this transaction
*/
gas?: number;
/**
* Format: bytes
* @description byte data either containing a message or funcational data for a smart contracts. See the --articulate
*/
input?: string;
receipt?: Record;
/** @description array of reconciliation statements (calculated) */
statements?: components["schemas"]["statement"][];
articulatedTx?: Record;
/**
* Format: boolean
* @description `true` if the transaction is token related, `false` otherwise
*/
hasToken?: boolean;
/**
* Format: boolean
* @description `true` if the transaction ended in error, `false` otherwise
*/
isError?: boolean;
/**
* Format: string
* @description truncated, more readable version of the articulation (calculated)
*/
compressedTx?: string;
};
/** @description withdrawal record for post-Shanghai withdrawals from the consensus layer */
withdrawal: {
/**
* Format: address
* @description the recipient for the withdrawn ether
*/
address?: string;
/**
* Format: wei
* @description a nonzero amount of ether given in gwei (1e9 wei)
*/
amount?: string;
/**
* Format: ether
* @description if --ether is specified, the amount in ether (calculated)
*/
ether?: string;
/**
* Format: blknum
* @description the number of this block
*/
blockNumber?: number;
/**
* Format: value
* @description a monotonically increasing zero-based index that increments by 1 per withdrawal to uniquely identify each withdrawal
*/
index?: number;
/**
* Format: timestamp
* @description the timestamp for this block
*/
timestamp?: number;
/**
* Format: datetime
* @description the timestamp as a date (calculated)
*/
date?: string;
/**
* Format: value
* @description the validator_index of the validator on the consensus layer the withdrawal corresponds to
*/
validatorIndex?: number;
};
/** @description receipt data as returned from the RPC (with slight enhancements) */
receipt: {
/** Format: hash */
blockHash?: string;
/** Format: blknum */
blockNumber?: number;
/**
* Format: address
* @description the address of the newly created contract, if any
*/
contractAddress?: string;
/**
* Format: gas
* @description the amount of gas actually used by the transaction
*/
gasUsed?: number;
/** Format: boolean */
isError?: boolean;
/** @description a possibly empty array of logs */
logs?: components["schemas"]["log"][];
/**
* Format: value
* @description `1` on transaction suceess, `null` if tx precedes Byzantium, `0` otherwise
*/
status?: number;
/** Format: hash */
transactionHash?: string;
/** Format: txnum */
transactionIndex?: number;
};
/** @description log data as returned from the RPC (with slight enhancements) */
log: {
/**
* Format: blknum
* @description the number of the block
*/
blockNumber?: number;
/**
* Format: txnum
* @description the zero-indexed position of the transaction in the block
*/
transactionIndex?: number;
/**
* Format: lognum
* @description the zero-indexed position of this log relative to the block
*/
logIndex?: number;
/**
* Format: timestamp
* @description the timestamp of the block this log appears in
*/
timestamp?: number;
/**
* Format: datetime
* @description the timestamp as a date (calculated)
*/
date?: string;
/**
* Format: address
* @description the smart contract that emitted this log
*/
address?: string;
/** @description first topic event signature up to 3 additional index parameters may appear */
topics?: components["schemas"]["topic"][];
/**
* Format: bytes
* @description any remaining un-indexed parameters to the event
*/
data?: string;
/**
* Format: hash
* @description the hash of the transction
*/
transactionHash?: string;
/**
* Format: hash
* @description the hash of the block
*/
blockHash?: string;
/** @description a human-readable version of the topic and data fields */
articulatedLog?: Record;
/**
* Format: string
* @description a truncated, more readable version of the articulation (calculated)
*/
compressedLog?: string;
/**
* Format: boolean
* @description true if the log is an NFT transfer (calculated)
*/
isNFT?: boolean;
};
/** @description trace data as returned from the RPC (with slight enhancements) */
trace: {
/**
* Format: hash
* @description the hash of the block containing this trace
*/
blockHash?: string;
/**
* Format: blknum
* @description the number of the block
*/
blockNumber?: number;
/**
* Format: timestamp
* @description the timestamp of the block
*/
timestamp?: number;
/**
* Format: datetime
* @description the timestamp as a date (calculated)
*/
date?: string;
/**
* Format: hash
* @description the transaction's hash containing this trace
*/
transactionHash?: string;
/**
* Format: txnum
* @description the zero-indexed position of the transaction in the block
*/
transactionIndex?: number;
/** @description a particular trace's address in the trace tree */
traceAddress?: components["schemas"]["uint64"][];
/**
* Format: uint64
* @description the number of children traces that the trace hash
*/
subtraces?: number;
/**
* Format: string
* @description the type of the trace
*/
type?: string;
/** @description the trace action for this trace */
action?: Record;
/** @description the trace result of this trace */
result?: Record;
/** @description human readable version of the trace action input data */
articulatedTrace?: Record;
/**
* Format: string
* @description a compressed string version of the articulated trace (calculated)
*/
compressedTrace?: string;
};
/** @description trace action data as returned from the RPC (with slight enhancements) */
traceAction: {
/**
* Format: address
* @description address from which the trace was sent
*/
from?: string;
/**
* Format: address
* @description address to which the trace was sent
*/
to?: string;
/**
* Format: gas
* @description the maximum number of gas allowed for this trace
*/
gas?: number;
/**
* Format: bytes
* @description an encoded version of the function call
*/
input?: string;
/**
* Format: string
* @description the type of call
*/
callType?: string;
/**
* Format: address
* @description if the call type is self-destruct, the address to which the refund is sent
*/
refundAddress?: string;
/**
* Format: string
* @description the type of reward
*/
rewardType?: string;
/**
* Format: wei
* @description the value (in wei) of this trace action
*/
value?: string;
/**
* Format: ether
* @description if --ether is specified, the value in ether (calculated)
*/
ether?: string;
/**
* Format: address
* @description `true` if the contract self-destructed, `false` otherwise
*/
selfDestructed?: string;
/**
* Format: wei
* @description if self-destructed, the balance of the contract at that time
*/
balance?: string;
/**
* Format: ether
* @description if --ether is specified, the balance in ether (calculated)
*/
balanceEth?: string;
};
/** @description trace result data as returned from the RPC (with slight enhancements) */
traceResult: {
/**
* Format: address
* @description address of new contract, if any
*/
address?: string;
/**
* Format: bytes
* @description if this trace is creating a new smart contract, the byte code of that contract
*/
code?: string;
/**
* Format: gas
* @description the amount of gas used by this trace
*/
gasUsed?: number;
/**
* Format: bytes
* @description the result of the call of this trace
*/
output?: string;
};
/** @description counts the number of traces in a transaction */
traceCount: {
/**
* Format: blknum
* @description the block number
*/
blockNumber?: number;
/**
* Format: txnum
* @description the transaction index
*/
transactionIndex?: number;
/**
* Format: hash
* @description the transaction's hash
*/
transactionHash?: string;
/**
* Format: timestamp
* @description the timestamp of the block
*/
timestamp?: number;
/**
* Format: datetime
* @description the timestamp as a date (calculated)
*/
date?: string;
/**
* Format: uint64
* @description the number of traces in the transaction
*/
tracesCnt?: number;
};
/** @description used by chifra traces --filter option to query for traces */
traceFilter: {
/**
* Format: blknum
* @description the first block to include in the queried list of traces.
*/
fromBlock?: number;
/**
* Format: blknum
* @description the last block to include in the queried list of traces.
*/
toBlock?: number;
/**
* Format: address
* @description if included, only traces `from` this address will be included.
*/
fromAddress?: string;
/**
* Format: address
* @description if included, only traces `to` this address will be included.
*/
toAddress?: string;
/**
* Format: uint64
* @description only traces after this many traces are included.
*/
after?: number;
/**
* Format: uint64
* @description only this many traces are included.
*/
count?: number;
};
/** @description counts of various parts of the block data such as tx_count, trace_count, etc. */
blockCount: {
/**
* Format: blknum
* @description the block's block number
*/
blockNumber?: number;
/**
* Format: timestamp
* @description the timestamp of the block
*/
timestamp?: number;
/**
* Format: datetime
* @description the timestamp as a date (calculated)
*/
date?: string;
/**
* Format: uint64
* @description the number transactions in the block
*/
transactionsCnt?: number;
/**
* Format: uint64
* @description the number of uncles in the block
*/
unclesCnt?: number;
/**
* Format: uint64
* @description the number of logs in the block
*/
logsCnt?: number;
/**
* Format: uint64
* @description the number of traces in the block
*/
tracesCnt?: number;
/**
* Format: uint64
* @description the number of withdrawals in the block
*/
withdrawalsCnt?: number;
/**
* Format: uint64
* @description the number of address appearances in the block
*/
addressCnt?: number;
};
/** @description a block that has been given a particular name such as `first` or `latest` */
namedBlock: {
/**
* Format: blknum
* @description the number of the block
*/
blockNumber?: number;
/**
* Format: timestamp
* @description the Unix timestamp of the block
*/
timestamp?: number;
/**
* Format: datetime
* @description the timestamp as a date (calculated)
*/
date?: string;
/**
* Format: string
* @description an optional name for the block
*/
name?: string;
/**
* Format: string
* @description an optional description of the block
*/
description?: string;
};
/** @description the timestamp, date and difference in timestamp of previous block produced by chifra when */
timestamp: {
/**
* Format: blknum
* @description the number of the block
*/
blockNumber?: number;
/**
* Format: timestamp
* @description the Unix timestamp of the block
*/
timestamp?: number;
/**
* Format: datetime
* @description the timestamp as a date (calculated)
*/
date?: string;
/**
* Format: int64
* @description the number of seconds since the last block
*/
diff?: number;
};
/** @description a block containing only the hashes of the transactions */
lightBlock: {
/**
* Format: gas
* @description the system-wide maximum amount of gas permitted in this block
*/
gasLimit?: number;
/**
* Format: hash
* @description the hash of the current block
*/
hash?: string;
/**
* Format: blknum
* @description the number of the block
*/
blockNumber?: number;
/**
* Format: hash
* @description hash of previous block
*/
parentHash?: string;
/**
* Format: address
* @description address of block's winning miner
*/
miner?: string;
/**
* Format: value
* @description the computational difficulty at this block
*/
difficulty?: number;
/**
* Format: timestamp
* @description the Unix timestamp of the object
*/
timestamp?: number;
/**
* Format: datetime
* @description the timestamp as a date (calculated)
*/
date?: string;
/** @description a possibly empty array of transaction hashes */
transactions?: components["schemas"]["string"][];
/**
* Format: gas
* @description the base fee for this block
*/
baseFeePerGas?: number;
/** @description a possibly empty array of uncle hashes */
uncles?: components["schemas"]["hash"][];
/** @description a possibly empty array of withdrawals (post Shanghai) */
withdrawals?: components["schemas"]["withdrawal"][];
};
/** @description the state of an Ethereum account (EOA or smart contract) on-chain */
state: {
/**
* Format: blknum
* @description the block number at which this call was made
*/
blockNumber?: number;
/**
* Format: timestamp
* @description the timestamp of the block for this call
*/
timestamp?: number;
/**
* Format: datetime
* @description the timestamp as a date (calculated)
*/
date?: string;
/**
* Format: address
* @description the address of contract being called
*/
address?: string;
/**
* Format: string
* @description the type of account at the given block
*/
accountType?: string;
/**
* Format: wei
* @description the balance of the account at the given block
*/
balance?: string;
/**
* Format: ether
* @description if --ether is specified, the balance in ether (calculated)
*/
ether?: string;
/**
* Format: string
* @description the code of the account
*/
code?: string;
/**
* Format: blknum
* @description for smart contracts only, the block number at which the contract was deployed
*/
deployed?: number;
/**
* Format: value
* @description the nonce of the account at the given block
*/
nonce?: number;
/**
* Format: address
* @description the proxy address of the account at the given block
*/
proxy?: string;
};
/** @description on-chain token-related data such as totalSupply, symbol, decimals, and individual balances for a given address at a given block */
token: {
/**
* Format: blknum
* @description the block at which the report is made
*/
blockNumber?: number;
/**
* Format: txnum
* @description the transaction index (if applicable) at which the report is made
*/
transactionIndex?: number;
/**
* Format: timestamp
* @description the timestamp of the block
*/
timestamp?: number;
/**
* Format: datetime
* @description the timestamp as a date (calculated)
*/
date?: string;
/**
* Format: int256
* @description the total supply of the token contract
*/
totalSupply?: string;
/**
* Format: address
* @description the address of the token contract
*/
address?: string;
/**
* Format: address
* @description the holder address for which we are reporting
*/
holder?: string;
/**
* Format: int256
* @description the holder's asset balance at its prior appearance
*/
priorBalance?: string;
/**
* Format: int256
* @description the holder's asset balance at the given block height
*/
balance?: string;
/**
* Format: float
* @description the holder's asset balance (in Ether) at the given block height (calculated)
*/
balanceDec?: number;
/**
* Format: int256
* @description the difference, if any, between the prior and current balance (calculated)
*/
diff?: string;
/**
* Format: string
* @description the name of the token contract, if available
*/
name?: string;
/**
* Format: string
* @description the symbol of the token contract
*/
symbol?: string;
/**
* Format: uint64
* @description the number of decimals for the token contract
*/
decimals?: number;
/** @description the type of token (ERC20 or ERC721) or none */
type?: Record;
};
/** @description the result (articulated if possible, as bytes otherwise) of a call to a smart contract */
result: {
/**
* Format: blknum
* @description the block number at which this call was made
*/
blockNumber?: number;
/**
* Format: timestamp
* @description the timestamp of the block for this call
*/
timestamp?: number;
/**
* Format: datetime
* @description the timestamp as a date (calculated)
*/
date?: string;
/**
* Format: address
* @description the address of contract being called
*/
address?: string;
/**
* Format: string
* @description the name of the function call
*/
name?: string;
/**
* Format: string
* @description the encoding for the function call
*/
encoding?: string;
/**
* Format: string
* @description the canonical signature of the interface
*/
signature?: string;
/**
* Format: string
* @description the bytes data following the encoding of the call
*/
encodedArguments?: string;
/** @description the result of the call articulated as other models */
articulatedOut?: Record;
};
/** @description smart contract state and interaction data including read function results, write function forms, and event history */
contract: {
/**
* Format: address
* @description the address of this smart contract
*/
address?: string;
/**
* Format: string
* @description the name of this contract (if available)
*/
name?: string;
/** @description the ABI for this contract */
abi?: Record;
/**
* Format: timestamp
* @description timestamp when this contract state was last updated
*/
lastUpdated?: number;
/**
* Format: datetime
* @description date when this contract state was last updated (calculated)
*/
date?: string;
/**
* Format: int64
* @description number of errors encountered when calling read functions
*/
errorCount?: number;
/**
* Format: string
* @description the most recent error message when calling functions
*/
lastError?: string;
};
/** @description status-related data about the TrueBlocks system including the server and local binary caches */
status: {
/**
* Format: string
* @description the path to the local binary caches
*/
cachePath?: string;
/** @description a collection of information concerning the binary caches */
caches?: components["schemas"]["cacheItem"][];
/**
* Format: string
* @description the current chain
*/
chain?: string;
/**
* Format: string
* @description the path to the chain configuration folder
*/
chainConfig?: string;
/**
* Format: string
* @description the version string as reported by the rpcProvider
*/
clientVersion?: string;
/**
* Format: string
* @description the path to config files
*/
chainId?: string;
/**
* Format: boolean
* @description `true` if an Etherscan key is present
*/
hasEsKey?: boolean;
/**
* Format: boolean
* @description `true` if a Pinata API key is present
*/
hasPinKey?: boolean;
/**
* Format: string
* @description the path to the local binary indexes
*/
indexPath?: string;
/**
* Format: boolean
* @description `true` if the server is running in API mode
*/
isApi?: boolean;
/**
* Format: boolean
* @description `true` if the rpcProvider is an archive node
*/
isArchive?: boolean;
/**
* Format: boolean
* @description `true` if the server is running in test mode
*/
isTesting?: boolean;
/**
* Format: boolean
* @description `true` if the rpcProvider provides Parity traces
*/
isTracing?: boolean;
/**
* Format: boolean
* @description `true` if the scraper is running
*/
isScraping?: boolean;
/**
* Format: string
* @description the network id as reported by the rpcProvider
*/
networkId?: string;
/**
* Format: string
* @description the progress string of the system
*/
progress?: string;
/**
* Format: string
* @description the path to the root configuration folder
*/
rootConfig?: string;
/**
* Format: string
* @description the current rpcProvider
*/
rpcProvider?: string;
/**
* Format: string
* @description the TrueBlocks version string
*/
version?: string;
/** @description a list of available chains in the config file */
chains?: components["schemas"]["chain"][];
};
/** @description a JSON object containing records for each bloom filter and index chunk in the Unchained Index */
manifest: {
/**
* Format: string
* @description the version string hashed into the chunk data
*/
version?: string;
/**
* Format: string
* @description the chain to which this manifest belongs
*/
chain?: string;
/**
* Format: ipfshash
* @description IPFS cid of the specification
*/
specification?: string;
/** @description a list of the IPFS hashes of all of the chunks in the unchained index */
chunks?: components["schemas"]["chunkRecord"][];
};
/** @description a single record in the manifest detailing the IPFS hases and file sizes for each bloom filter and index chunk */
chunkRecord: {
/**
* Format: blkrange
* @description the block range (inclusive) covered by this chunk
*/
range?: string;
/**
* Format: ipfshash
* @description the IPFS hash of the bloom filter at that range
*/
bloomHash?: string;
/**
* Format: ipfshash
* @description the IPFS hash of the index chunk at that range
*/
indexHash?: string;
/**
* Format: int64
* @description the size of the bloom filter in bytes
*/
bloomSize?: number;
/**
* Format: int64
* @description the size of the index portion in bytes
*/
indexSize?: number;
/** @description if verbose, the block and timestamp bounds of the chunk (may be null) */
rangeDates?: Record;
};
/** @description internal-use only data model detailing a single index chunk file */
chunkIndex: {
/**
* Format: blkrange
* @description the block range (inclusive) covered by this chunk
*/
range?: string;
/**
* Format: string
* @description an internal use only magic number to indicate file format
*/
magic?: string;
/**
* Format: hash
* @description the hash of the specification under which this chunk was generated
*/
hash?: string;
/**
* Format: uint64
* @description the number of addresses in this chunk
*/
nAddresses?: number;
/**
* Format: uint64
* @description the number of appearances in this chunk
*/
nAppearances?: number;
/**
* Format: uint64
* @description the file size on disc in bytes of this bloom file
*/
fileSize?: number;
/** @description if verbose, the block and timestamp bounds of the chunk (may be null) */
rangeDates?: Record;
};
/** @description internal-use only data model detailing a single bloom filter file */
chunkBloom: {
/**
* Format: blkrange
* @description the block range (inclusive) covered by this chunk
*/
range?: string;
/**
* Format: string
* @description an internal use only magic number to indicate file format
*/
magic?: string;
/**
* Format: hash
* @description the hash of the specification under which this chunk was generated
*/
hash?: string;
/**
* Format: uint64
* @description the number of individual bloom filters in this bloom file
*/
nBlooms?: number;
/**
* Format: uint64
* @description the number of addresses inserted into the bloom file
*/
nInserted?: number;
/**
* Format: uint64
* @description the file size on disc in bytes of this bloom file
*/
fileSize?: number;
/**
* Format: uint64
* @description the width of the bloom filter
*/
byteWidth?: number;
/** @description if verbose, the block and timestamp bounds of the chunk (may be null) */
rangeDates?: Record;
};
/** @description internal-use only data model detailing a single address record in the address table of an index chunk */
chunkAddress: {
/**
* Format: address
* @description the address in this record
*/
address?: string;
/**
* Format: blkrange
* @description the block range of the chunk from which this address record was taken
*/
range?: string;
/**
* Format: uint64
* @description the offset into the appearance table of the first record for this address
*/
offset?: number;
/**
* Format: uint64
* @description the number of records in teh appearance table for this address
*/
count?: number;
/** @description if verbose, the block and timestamp bounds of the chunk (may be null) */
rangeDates?: Record;
};
/** @description internal-use only data model detailing a single remote or local ipfs pinned file */
ipfsPin: {
/**
* Format: ipfshash
* @description the CID of the file
*/
cid?: string;
/**
* Format: string
* @description the date the CID was first created
*/
datePinned?: string;
/**
* Format: string
* @description the status of the file (one of [all|pinned|unpinned|pending])
*/
status?: string;
/**
* Format: int64
* @description the size of the file in bytes
*/
size?: number;
/**
* Format: string
* @description the metadata name of the pinned file
*/
fileName?: string;
};
/** @description summary statistics about an Unchained Index bloom filter and index chunk */
chunkStats: {
/**
* Format: blkrange
* @description the block range (inclusive) covered by this chunk
*/
range?: string;
/**
* Format: uint64
* @description the number of addresses in the chunk
*/
nAddrs?: number;
/**
* Format: uint64
* @description the number of appearances in the chunk
*/
nApps?: number;
/**
* Format: uint64
* @description the number of blocks in the chunk
*/
nBlocks?: number;
/**
* Format: uint64
* @description the number of bloom filters in the chunk's bloom
*/
nBlooms?: number;
/**
* Format: uint64
* @description the record width of a single bloom filter
*/
recWid?: number;
/**
* Format: uint64
* @description the size of the bloom filters on disc in bytes
*/
bloomSz?: number;
/**
* Format: uint64
* @description the size of the chunks on disc in bytes
*/
chunkSz?: number;
/**
* Format: float64
* @description the average number of addresses per block
*/
addrsPerBlock?: number;
/**
* Format: float64
* @description the average number of appearances per block
*/
appsPerBlock?: number;
/**
* Format: float64
* @description the average number of appearances per address
*/
appsPerAddr?: number;
/**
* Format: float64
* @description the ratio of appearances to addresses
*/
ratio?: number;
/** @description if verbose, the block and timestamp bounds of the chunk (may be null) */
rangeDates?: Record;
};
/** @description report on cleaning dups out of monitors */
monitorClean: {
/**
* Format: address
* @description the address being cleaned
*/
address?: string;
/**
* Format: int64
* @description the number of appearances in the monitor prior to cleaning
*/
sizeThen?: number;
/**
* Format: int64
* @description the number of appearances in the monitor after cleaning
*/
sizeNow?: number;
/**
* Format: int64
* @description the number of duplicates removed
*/
dups?: number;
/**
* Format: boolean
* @description `true` if the address is in the stage, `false` otherwise
*/
staged?: boolean;
/**
* Format: boolean
* @description `true` if the address was removed from the stage, `false` otherwise
*/
removed?: boolean;
};
/** @description a single entry in the results of a status query when `--verbose` is enabled */
cacheItem: {
/**
* Format: string
* @description the type of the cache
*/
type?: string;
/** @description the individual items in the cache (if --verbose) */
items?: components["schemas"]["any"][];
/**
* Format: string
* @description the date of the most recent item added to the cache
*/
lastCached?: string;
/**
* Format: uint64
* @description the number of items in the cache
*/
nFiles?: number;
/**
* Format: uint64
* @description the number of folders holding that many items
*/
nFolders?: number;
/**
* Format: string
* @description the path to the top of the given cache
*/
path?: string;
/**
* Format: int64
* @description the size of the cache in bytes
*/
sizeInBytes?: number;
};
/** @description report on checking contents of chunks */
reportCheck: {
/**
* Format: string
* @description the result of the check
*/
result?: string;
/**
* Format: uint64
* @description the number of visited items in the cache
*/
visitedCnt?: number;
/**
* Format: uint64
* @description the number of checks
*/
checkedCnt?: number;
/**
* Format: uint64
* @description the number of skipped checks
*/
skippedCnt?: number;
/**
* Format: uint64
* @description the number of passed checks
*/
passedCnt?: number;
/**
* Format: uint64
* @description the number of failed checks
*/
failedCnt?: number;
/** @description an array of messages explaining failed checks */
msgStrings?: components["schemas"]["string"][];
/**
* Format: string
* @description the reason for the test
*/
reason?: string;
};
/** @description a JSON object containing the results of pinning the Unchained Index */
chunkPin: {
/**
* Format: string
* @description the version string hashed into the chunk data
*/
version?: string;
/**
* Format: string
* @description the chain to which this manifest belongs
*/
chain?: string;
/**
* Format: ipfshash
* @description IPFS cid of file containing timestamps
*/
timestampHash?: string;
/**
* Format: ipfshash
* @description IPFS cid of the specification
*/
specHash?: string;
/**
* Format: ipfshash
* @description IPFS cid of file containing CIDs for the various chunks
*/
manifestHash?: string;
};
/** @description a configuration item carrying information about a single chain */
chain: {
/**
* Format: string
* @description the common name of the chain
*/
chain?: string;
/**
* Format: uint64
* @description the chain id as reported by the RPC
*/
chainId?: number;
/**
* Format: string
* @description the symbol of the base currency on the chain
*/
symbol?: string;
/**
* Format: string
* @description a valid RPC provider for the chain
*/
rpcProvider?: string;
/**
* Format: string
* @description a remote explorer for the chain such as Etherscan
*/
remoteExplorer?: string;
/**
* Format: string
* @description the local explorer for the chain (typically TrueBlocks Explorer)
*/
localExplorer?: string;
/**
* Format: string
* @description an IPFS gateway for pinning the index if enabled
*/
ipfsGateway?: string;
};
/** @description shows first and last timestamps and dates for a given block range */
rangeDates: {
/**
* Format: timestamp
* @description the timestamp of the first block in this range
*/
firstTs?: number;
/**
* Format: datetime
* @description the first timestamp as a date
*/
firstDate?: string;
/**
* Format: timestamp
* @description the timestamp of the most recent block in this range
*/
lastTs?: number;
/**
* Format: datetime
* @description the last timestamp as a date
*/
lastDate?: string;
};
/** @description a human-readable representation of a Solidity smart contract */
abi: {
/**
* Format: address
* @description the address for the ABI
*/
address?: string;
/**
* Format: string
* @description the filename of the ABI (likely the smart contract address)
*/
name?: string;
/**
* Format: string
* @description the folder holding the abi file
*/
path?: string;
/**
* Format: int64
* @description the size of this file on disc
*/
fileSize?: number;
/**
* Format: string
* @description the last update date of the file
*/
lastModDate?: string;
/**
* Format: boolean
* @description true if this is the ABI for a known smart contract or protocol
*/
isKnown?: boolean;
/**
* Format: boolean
* @description true if the ABI could not be found (and won't be looked for again)
*/
isEmpty?: boolean;
/**
* Format: int64
* @description if verbose, the number of functions in the ABI
*/
nFunctions?: number;
/**
* Format: int64
* @description if verbose, the number of events in the ABI
*/
nEvents?: number;
/**
* Format: boolean
* @description if verbose and the abi has a constructor, then `true`, else `false`
*/
hasConstructor?: boolean;
/**
* Format: boolean
* @description if verbose and the abi has a fallback, then `true`, else `false`
*/
hasFallback?: boolean;
/** @description the functions for this address */
functions?: components["schemas"]["function"][];
};
/** @description a human-readable representation of a Solidity function call or event */
function: {
/**
* Format: string
* @description the name of the interface
*/
name?: string;
/**
* Format: string
* @description the type of the interface, either 'event' or 'function'
*/
type?: string;
/**
* Format: string
* @description the canonical signature of the interface
*/
signature?: string;
/**
* Format: string
* @description the signature encoded with keccak
*/
encoding?: string;
/** @description the input parameters to the function, if any */
inputs?: components["schemas"]["parameter"][];
/** @description the output parameters to the function, if any */
outputs?: components["schemas"]["parameter"][];
};
/** @description an input or output parameter to a Solidity function or event */
parameter: {
/**
* Format: string
* @description the type of this parameter
*/
type?: string;
/**
* Format: string
* @description the name of this parameter
*/
name?: string;
/**
* Format: string
* @description the default value of this parameter, if any
*/
strDefault?: string;
/**
* Format: boolean
* @description `true` if this parameter is indexed
*/
indexed?: boolean;
/**
* Format: string
* @description for composite types, the internal type of the parameter
*/
internalType?: string;
/** @description for composite types, the parameters making up the composite */
components?: components["schemas"]["parameter"][];
};
/** @description transaction data as returned from by remote APIs */
slurp: {
/**
* Format: hash
* @description the hash of the transaction
*/
hash?: string;
/**
* Format: hash
* @description the hash of the block containing this transaction
*/
blockHash?: string;
/**
* Format: blknum
* @description the number of the block
*/
blockNumber?: number;
/**
* Format: txnum
* @description the zero-indexed position of the transaction in the block
*/
transactionIndex?: number;
/**
* Format: value
* @description sequence number of the transactions sent by the sender
*/
nonce?: number;
/**
* Format: timestamp
* @description the Unix timestamp of the object
*/
timestamp?: number;
/**
* Format: datetime
* @description the timestamp as a date (calculated)
*/
date?: string;
/**
* Format: address
* @description address from which the transaction was sent
*/
from?: string;
/**
* Format: address
* @description address to which the transaction was sent
*/
to?: string;
/**
* Format: wei
* @description the amount of wei sent with this transactions
*/
value?: string;
/**
* Format: ether
* @description if --ether is specified, the value in ether (calculated)
*/
ether?: string;
/**
* Format: gas
* @description the maximum number of gas allowed for this transaction
*/
gas?: number;
/**
* Format: gas
* @description the number of wei per unit of gas the sender is willing to spend
*/
gasPrice?: number;
/**
* Format: bytes
* @description byte data either containing a message or funcational data for a smart contracts. See the --articulate
*/
input?: string;
/**
* Format: boolean
* @description `true` if the transaction is token related, `false` otherwise
*/
hasToken?: boolean;
/** @description if present, the function that was called in the transaction */
articulatedTx?: Record;
/**
* Format: string
* @description truncated, more readable version of the articulation (calculated)
*/
compressedTx?: string;
/**
* Format: boolean
* @description `true` if the transaction ended in error, `false` otherwise
*/
isError?: boolean;
};
/** @description used for various responses when no real data is generated */
message: {
/**
* Format: string
* @description the message
*/
msg?: string;
/**
* Format: int64
* @description a number if needed
*/
num?: number;
};
/** @description the number of items in the given database */
count: {
/**
* Format: uint64
* @description the number of items in the given database
*/
count?: number;
};
/** @description an enhanced url used by chifra explore */
destination: {
/**
* Format: string
* @description the term used to produce the url
*/
term?: string;
/** @description the type of the term */
termType?: string;
/**
* Format: string
* @description the url produced
*/
url?: string;
/**
* Format: string
* @description the option that produced the url
*/
source?: string;
};
response: {
data?: Record;
error?: string[];
};
/**
* Format: hash
* @description The 32-byte hash
*/
hash: string;
address: string;
string: string;
/** Format: uint64 */
uint64: number;
/**
* Format: bytes
* @description One of four 32-byte topics of a log
*/
topic: string;
/** @description an address record in the Unchained Index chunk */
addrRecord: string;
/** @description an appearance record in the Unchained Index chunk */
appRecord: string;
/** @description any cache item found in the binary cache */
any: string;
/** @description a string representing the token type */
tokenType: string;
};
responses: never;
parameters: never;
requestBodies: never;
headers: never;
pathItems: never;
}
export type $defs = Record;
export interface operations {
"accounts-list": {
parameters: {
query: {
/** @description one or more addresses (0x...) to list */
addrs: string[];
/** @description display only the count of records for each monitor */
count?: boolean;
/** @description for the --count option only, suppress the display of zero appearance accounts */
noZero?: boolean;
/** @description report first and last block this address appears */
bounds?: boolean;
/** @description list transactions labeled unripe (i.e. less than 28 blocks old) */
unripe?: boolean;
/** @description freshen the monitor only (no reporting) */
silent?: boolean;
/** @description the first record to process */
firstRecord?: number;
/** @description the maximum number of records to process */
maxRecords?: number;
/** @description produce results in reverse chronological order */
reversed?: boolean;
/** @description first block to export (inclusive, ignored when freshening) */
firstBlock?: number;
/** @description last block to export (inclusive, ignored when freshening) */
lastBlock?: number;
/** @description the chain to use */
chain?: string;
/** @description suppress the header in the output */
noHeader?: boolean;
/** @description export format, one of [ txt | csv | json ] */
fmt?: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description returns the requested data */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
/** @description Produces Appearance, Bounds or Monitor data. Corresponds to the chifra list command line. */
data?: (components["schemas"]["appearance"] | components["schemas"]["bounds"] | components["schemas"]["monitor"])[];
};
};
};
/** @description bad input parameter */
400: {
headers: {
[name: string]: unknown;
};
content?: never;
};
};
};
"accounts-export": {
parameters: {
query: {
/** @description one or more addresses (0x...) to export */
addrs: string[];
/** @description filter by one or more log topics (only for --logs option) */
topics?: string[];
/** @description filter by one or more fourbytes (only for transactions and trace options) */
fourbytes?: string[];
/** @description export a list of appearances */
appearances?: boolean;
/** @description export receipts instead of transactional data */
receipts?: boolean;
/** @description export logs instead of transactional data */
logs?: boolean;
/** @description export all token approval transactions for the given address */
approvals?: boolean;
/** @description export traces instead of transactional data */
traces?: boolean;
/** @description export the neighbors of the given address */
neighbors?: boolean;
/** @description export only statements */
statements?: boolean;
/** @description export only eth or token transfers */
transfers?: boolean;
/** @description list all assets (with names) that appear in any transfer */
assets?: boolean;
/** @description traverse the transaction history and show each change in ETH balances */
balances?: boolean;
/** @description export withdrawals for the given address */
withdrawals?: boolean;
/** @description articulate transactions, traces, logs, and outputs */
articulate?: boolean;
/** @description force the transaction's traces into the cache */
cacheTraces?: boolean;
/** @description for --appearances mode only, display only the count of records */
count?: boolean;
/** @description the first record to process */
firstRecord?: number;
/** @description the maximum number of records to process */
maxRecords?: number;
/** @description for log and accounting export only, export only logs relevant to one of the given export addresses */
relevant?: boolean;
/** @description for the --logs option only, filter logs to show only those logs emitted by the given address(es) */
emitter?: string[];
/** @description for the --logs option only, filter logs to show only those with this topic(s) */
topic?: string[];
/** @description for the --logs option only, filter logs to show only nft transfers */
nfts?: boolean;
/** @description export only transactions that were reverted */
reverted?: boolean;
/** @description export transfers, balances, or statements only for this asset */
asset?: string[];
/** @description export transfers, balances, or statements with incoming, outgoing, or zero value */
flow?: "in" | "out" | "zero";
/** @description for --traces only, report addresses created by (or self-destructed by) the given address(es) */
factory?: boolean;
/** @description export transactions labeled unripe (i.e. less than 28 blocks old) */
unripe?: boolean;
/** @description produce results in reverse chronological order */
reversed?: boolean;
/** @description for the --count option only, suppress the display of zero appearance accounts */
noZero?: boolean;
/** @description first block to process (inclusive) */
firstBlock?: number;
/** @description last block to process (inclusive) */
lastBlock?: number;
/** @description deprecated option, you may simply remove it */
accounting?: boolean;
/** @description the chain to use */
chain?: string;
/** @description suppress the header in the output */
noHeader?: boolean;
/** @description force the results of the query into the cache */
cache?: boolean;
/** @description removes related items from the cache */
decache?: boolean;
/** @description export values in ether */
ether?: boolean;
/** @description export format, one of [ txt | csv | json ] */
fmt?: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description returns the requested data */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
/** @description Produces Appearance, Function, Log, Message, Monitor, Parameter, Receipt, Statement, Token, Trace, TraceAction, TraceResult, Transaction, Transfer or Withdrawal data. Corresponds to the chifra export command line. */
data?: (components["schemas"]["appearance"] | components["schemas"]["function"] | components["schemas"]["log"] | components["schemas"]["message"] | components["schemas"]["monitor"] | components["schemas"]["parameter"] | components["schemas"]["receipt"] | components["schemas"]["statement"] | components["schemas"]["token"] | components["schemas"]["trace"] | components["schemas"]["traceAction"] | components["schemas"]["traceResult"] | components["schemas"]["transaction"] | components["schemas"]["transfer"] | components["schemas"]["withdrawal"])[];
};
};
};
/** @description bad input parameter */
400: {
headers: {
[name: string]: unknown;
};
content?: never;
};
};
};
"accounts-monitors": {
parameters: {
query?: {
/** @description one or more addresses (0x...) to process */
addrs?: string[];
/** @description delete a monitor, but do not remove it */
delete?: boolean;
/** @description undelete a previously deleted monitor */
undelete?: boolean;
/** @description remove a previously deleted monitor */
remove?: boolean;
/** @description clean (i.e. remove duplicate appearances) from monitors, optionally clear stage */
clean?: boolean;
/** @description list monitors in the cache (--verbose for more detail) */
list?: boolean;
/** @description show the number of active monitors (included deleted but not removed monitors) */
count?: boolean;
/** @description for --clean, --list, and --count options only, include staged monitors */
staged?: boolean;
/** @description the chain to use */
chain?: string;
/** @description suppress the header in the output */
noHeader?: boolean;
/** @description force the results of the query into the cache */
cache?: boolean;
/** @description removes related items from the cache */
decache?: boolean;
/** @description export format, one of [ txt | csv | json ] */
fmt?: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description returns the requested data */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
/** @description Produces Message, Monitor or MonitorClean data. Corresponds to the chifra monitors command line. */
data?: (components["schemas"]["message"] | components["schemas"]["monitor"] | components["schemas"]["monitorClean"])[];
};
};
};
/** @description bad input parameter */
400: {
headers: {
[name: string]: unknown;
};
content?: never;
};
};
};
"accounts-names": {
parameters: {
query: {
/** @description a space separated list of one or more search terms */
terms: string[];
/** @description expand search to include all fields (search name, address, and symbol otherwise) */
expand?: boolean;
/** @description do case-sensitive search */
matchCase?: boolean;
/** @description include all (including custom) names in the search */
all?: boolean;
/** @description include only custom named accounts in the search */
custom?: boolean;
/** @description include prefund accounts in the search */
prefund?: boolean;
/** @description display only addresses in the results (useful for scripting, assumes --no_header) */
addr?: boolean;
/** @description export the list of tags and subtags only */
tags?: boolean;
/** @description clean the data (addrs to lower case, sort by addr) */
clean?: boolean;
/** @description only available with --clean, cleans regular names database */
regular?: boolean;
/** @description return the number of names matching the search terms or other options */
count?: boolean;
/** @description only available with --clean or --autoname, outputs changes to stdout instead of updating databases */
dryRun?: boolean;
/** @description an address assumed to be a token, added automatically to names database if true */
autoname?: string;
/** @description create a new item */
create?: string;
/** @description update an existing item */
update?: string;
/** @description delete the item, but do not remove it */
delete?: string;
/** @description undelete a previously deleted item */
undelete?: string;
/** @description remove a previously deleted item */
remove?: string;
/** @description the chain to use */
chain?: string;
/** @description suppress the header in the output */
noHeader?: boolean;
/** @description export format, one of [ txt | csv | json ] */
fmt?: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description returns the requested data */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
/** @description Produces Message or Name data. Corresponds to the chifra names command line. */
data?: (components["schemas"]["message"] | components["schemas"]["name"])[];
};
};
};
/** @description bad input parameter */
400: {
headers: {
[name: string]: unknown;
};
content?: never;
};
};
};
"accounts-abis": {
parameters: {
query: {
/** @description a list of one or more smart contracts whose ABIs to display */
addrs: string[];
/** @description load common 'known' ABIs from cache */
known?: boolean;
/** @description redirects the query to this implementation */
proxyFor?: string;
/** @description a list of downloaded abi files */
list?: boolean;
/** @description show the functions and events instead of summaries for all abi files */
details?: boolean;
/** @description show the number of abis downloaded */
count?: boolean;
/** @description search for function or event declarations given a four- or 32-byte code(s) */
find?: string[];
/** @description for the --find option only, provide hints to speed up the search */
hint?: string[];
/** @description generate the 32-byte encoding for a given canonical function or event signature */
encode?: string;
/** @description the chain to use */
chain?: string;
/** @description suppress the header in the output */
noHeader?: boolean;
/** @description force the results of the query into the cache */
cache?: boolean;
/** @description removes related items from the cache */
decache?: boolean;
/** @description export format, one of [ txt | csv | json ] */
fmt?: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description returns the requested data */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
/** @description Produces Abi, Function or Parameter data. Corresponds to the chifra abis command line. */
data?: (components["schemas"]["abi"] | components["schemas"]["function"] | components["schemas"]["parameter"])[];
};
};
};
/** @description bad input parameter */
400: {
headers: {
[name: string]: unknown;
};
content?: never;
};
};
};
"chaindata-blocks": {
parameters: {
query: {
/** @description a space-separated list of one or more block identifiers */
blocks: string[];
/** @description display only transaction hashes, default is to display full transaction detail */
hashes?: boolean;
/** @description display uncle blocks (if any) instead of the requested block */
uncles?: boolean;
/** @description export the traces from the block as opposed to the block data */
traces?: boolean;
/** @description display a list of uniq address appearances per transaction */
uniq?: boolean;
/** @description for the --uniq option only, export only from or to (including trace from or to) */
flow?: "from" | "to" | "reward";
/** @description display only the logs found in the block(s) */
logs?: boolean;
/** @description for the --logs option only, filter logs to show only those logs emitted by the given address(es) */
emitter?: string[];
/** @description for the --logs option only, filter logs to show only those with this topic(s) */
topic?: string[];
/** @description export the withdrawals from the block as opposed to the block data */
withdrawals?: boolean;
/** @description for the --logs option only, articulate the retrieved data if ABIs can be found */
articulate?: boolean;
/** @description display only the count of appearances for --addrs or --uniq */
count?: boolean;
/** @description force a write of the block's transactions to the cache (slow) */
cacheTxs?: boolean;
/** @description force a write of the block's traces to the cache (slower) */
cacheTraces?: boolean;
/** @description the chain to use */
chain?: string;
/** @description suppress the header in the output */
noHeader?: boolean;
/** @description force the results of the query into the cache */
cache?: boolean;
/** @description removes related items from the cache */
decache?: boolean;
/** @description export values in ether */
ether?: boolean;
/** @description export format, one of [ txt | csv | json ] */
fmt?: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description returns the requested data */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
/** @description Produces Appearance, Block, BlockCount, LightBlock, Log, Message, Trace, TraceAction, TraceResult or Withdrawal data. Corresponds to the chifra blocks command line. */
data?: (components["schemas"]["appearance"] | components["schemas"]["block"] | components["schemas"]["blockCount"] | components["schemas"]["lightBlock"] | components["schemas"]["log"] | components["schemas"]["message"] | components["schemas"]["trace"] | components["schemas"]["traceAction"] | components["schemas"]["traceResult"] | components["schemas"]["withdrawal"])[];
};
};
};
/** @description bad input parameter */
400: {
headers: {
[name: string]: unknown;
};
content?: never;
};
};
};
"chaindata-transactions": {
parameters: {
query: {
/** @description a space-separated list of one or more transaction identifiers */
transactions: string[];
/** @description articulate the retrieved data if ABIs can be found */
articulate?: boolean;
/** @description include the transaction's traces in the results */
traces?: boolean;
/** @description display a list of uniq addresses found in the transaction */
uniq?: boolean;
/** @description for the uniq option only, export only from or to (including trace from or to) */
flow?: "from" | "to";
/** @description display only the logs found in the transaction(s) */
logs?: boolean;
/** @description for the --logs option only, filter logs to show only those logs emitted by the given address(es) */
emitter?: string[];
/** @description for the --logs option only, filter logs to show only those with this topic(s) */
topic?: string[];
/** @description force the transaction's traces into the cache */
cacheTraces?: boolean;
/** @description the chain to use */
chain?: string;
/** @description suppress the header in the output */
noHeader?: boolean;
/** @description force the results of the query into the cache */
cache?: boolean;
/** @description removes related items from the cache */
decache?: boolean;
/** @description export values in ether */
ether?: boolean;
/** @description export format, one of [ txt | csv | json ] */
fmt?: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description returns the requested data */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
/** @description Produces Appearance, Function, Log, Message, Parameter or Transaction data. Corresponds to the chifra transactions command line. */
data?: (components["schemas"]["appearance"] | components["schemas"]["function"] | components["schemas"]["log"] | components["schemas"]["message"] | components["schemas"]["parameter"] | components["schemas"]["transaction"])[];
};
};
};
/** @description bad input parameter */
400: {
headers: {
[name: string]: unknown;
};
content?: never;
};
};
};
"chaindata-receipts": {
parameters: {
query: {
/** @description a space-separated list of one or more transaction identifiers */
transactions: string[];
/** @description articulate the retrieved data if ABIs can be found */
articulate?: boolean;
/** @description the chain to use */
chain?: string;
/** @description suppress the header in the output */
noHeader?: boolean;
/** @description force the results of the query into the cache */
cache?: boolean;
/** @description removes related items from the cache */
decache?: boolean;
/** @description export format, one of [ txt | csv | json ] */
fmt?: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description returns the requested data */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
/** @description Produces Function, Parameter or Receipt data. Corresponds to the chifra receipts command line. */
data?: (components["schemas"]["function"] | components["schemas"]["parameter"] | components["schemas"]["receipt"])[];
};
};
};
/** @description bad input parameter */
400: {
headers: {
[name: string]: unknown;
};
content?: never;
};
};
};
"chaindata-logs": {
parameters: {
query: {
/** @description a space-separated list of one or more transaction identifiers */
transactions: string[];
/** @description filter logs to show only those logs emitted by the given address(es) */
emitter?: string[];
/** @description filter logs to show only those with this topic(s) */
topic?: string[];
/** @description articulate the retrieved data if ABIs can be found */
articulate?: boolean;
/** @description the chain to use */
chain?: string;
/** @description suppress the header in the output */
noHeader?: boolean;
/** @description force the results of the query into the cache */
cache?: boolean;
/** @description removes related items from the cache */
decache?: boolean;
/** @description export format, one of [ txt | csv | json ] */
fmt?: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description returns the requested data */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
/** @description Produces Function, Log, Message or Parameter data. Corresponds to the chifra logs command line. */
data?: (components["schemas"]["function"] | components["schemas"]["log"] | components["schemas"]["message"] | components["schemas"]["parameter"])[];
};
};
};
/** @description bad input parameter */
400: {
headers: {
[name: string]: unknown;
};
content?: never;
};
};
};
"chaindata-traces": {
parameters: {
query: {
/** @description a space-separated list of one or more transaction identifiers */
transactions: string[];
/** @description articulate the retrieved data if ABIs can be found */
articulate?: boolean;
/** @description call the node's trace_filter routine with bang-separated filter */
filter?: string;
/** @description display only the number of traces for the transaction (fast) */
count?: boolean;
/** @description the chain to use */
chain?: string;
/** @description suppress the header in the output */
noHeader?: boolean;
/** @description force the results of the query into the cache */
cache?: boolean;
/** @description removes related items from the cache */
decache?: boolean;
/** @description export values in ether */
ether?: boolean;
/** @description export format, one of [ txt | csv | json ] */
fmt?: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description returns the requested data */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
/** @description Produces Function, Message, Parameter, Trace, TraceAction, TraceCount, TraceFilter or TraceResult data. Corresponds to the chifra traces command line. */
data?: (components["schemas"]["function"] | components["schemas"]["message"] | components["schemas"]["parameter"] | components["schemas"]["trace"] | components["schemas"]["traceAction"] | components["schemas"]["traceCount"] | components["schemas"]["traceFilter"] | components["schemas"]["traceResult"])[];
};
};
};
/** @description bad input parameter */
400: {
headers: {
[name: string]: unknown;
};
content?: never;
};
};
};
"chaindata-when": {
parameters: {
query?: {
/** @description one or more dates, block numbers, hashes, or special named blocks (see notes) */
blocks?: string[];
/** @description export a list of the 'special' blocks */
list?: boolean;
/** @description display or process timestamps */
timestamps?: boolean;
/** @description with --timestamps only, returns the number of timestamps in the cache */
count?: boolean;
/** @description with --timestamps only, repairs block(s) in the block range by re-querying from the chain */
repair?: boolean;
/** @description with --timestamps only, checks the validity of the timestamp data */
check?: boolean;
/** @description with --timestamps only, bring the timestamp database forward to the latest block */
update?: boolean;
/** @description with --timestamps --check only, verifies every N timestamp directly from the chain (slow) */
deep?: number;
/** @description the chain to use */
chain?: string;
/** @description suppress the header in the output */
noHeader?: boolean;
/** @description force the results of the query into the cache */
cache?: boolean;
/** @description removes related items from the cache */
decache?: boolean;
/** @description export format, one of [ txt | csv | json ] */
fmt?: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description returns the requested data */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
/** @description Produces Count, Message, NamedBlock or Timestamp data. Corresponds to the chifra when command line. */
data?: (components["schemas"]["count"] | components["schemas"]["message"] | components["schemas"]["namedBlock"] | components["schemas"]["timestamp"])[];
};
};
};
/** @description bad input parameter */
400: {
headers: {
[name: string]: unknown;
};
content?: never;
};
};
};
"chainstate-state": {
parameters: {
query: {
/** @description one or more addresses (0x...) from which to retrieve balances */
addrs: string[];
/** @description an optional list of one or more blocks at which to report balances, defaults to 'latest' */
blocks?: string[];
/** @description control which state to export */
parts?: ("balance" | "nonce" | "code" | "proxy" | "deployed" | "accttype" | "some" | "all")[];
/** @description only report a balance when it changes from one block to the next */
changes?: boolean;
/** @description suppress the display of zero balance accounts */
noZero?: boolean;
/** @description write-only call (a query) to a smart contract */
call?: boolean;
/** @description for commands (--call or --send), provides the call data (in various forms) for the command (may be empty for --send) */
calldata?: string;
/** @description for commands only, articulate the retrieved data if ABIs can be found */
articulate?: boolean;
/** @description for commands only, redirects calls to this implementation */
proxyFor?: string;
/** @description the chain to use */
chain?: string;
/** @description suppress the header in the output */
noHeader?: boolean;
/** @description force the results of the query into the cache */
cache?: boolean;
/** @description removes related items from the cache */
decache?: boolean;
/** @description export values in ether */
ether?: boolean;
/** @description export format, one of [ txt | csv | json ] */
fmt?: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description returns the requested data */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
/** @description Produces Function, Message, Parameter, Result or State data. Corresponds to the chifra state command line. */
data?: (components["schemas"]["function"] | components["schemas"]["message"] | components["schemas"]["parameter"] | components["schemas"]["result"] | components["schemas"]["state"])[];
};
};
};
/** @description bad input parameter */
400: {
headers: {
[name: string]: unknown;
};
content?: never;
};
};
};
"chainstate-tokens": {
parameters: {
query: {
/** @description two or more addresses (one for --approvals), the first is an ERC20 token, balances for the rest are reported */
addrs: string[];
/** @description an optional list of one or more blocks at which to report balances, defaults to 'latest' */
blocks?: string[];
/** @description returns all open approvals for the given address(es) */
approvals?: boolean;
/** @description which parts of the token information to retrieve */
parts?: ("name" | "symbol" | "decimals" | "totalSupply" | "version" | "some" | "all")[];
/** @description consider each address an ERC20 token except the last, whose balance is reported for each token */
byAcct?: boolean;
/** @description only report a balance when it changes from one block to the next */
changes?: boolean;
/** @description suppress the display of zero balance accounts */
noZero?: boolean;
/** @description the chain to use */
chain?: string;
/** @description suppress the header in the output */
noHeader?: boolean;
/** @description force the results of the query into the cache */
cache?: boolean;
/** @description removes related items from the cache */
decache?: boolean;
/** @description export format, one of [ txt | csv | json ] */
fmt?: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description returns the requested data */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
/** @description Produces Approval or Token data. Corresponds to the chifra tokens command line. */
data?: (components["schemas"]["approval"] | components["schemas"]["token"])[];
};
};
};
/** @description bad input parameter */
400: {
headers: {
[name: string]: unknown;
};
content?: never;
};
};
};
"admin-config": {
parameters: {
query?: {
/** @description either show or edit the configuration */
mode?: "show" | "edit";
/** @description show the configuration paths for the system */
paths?: boolean;
/** @description dump the configuration to stdout */
dump?: boolean;
/** @description the chain to use */
chain?: string;
/** @description suppress the header in the output */
noHeader?: boolean;
/** @description export format, one of [ txt | csv | json ] */
fmt?: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description returns the requested data */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
/** @description Produces Chain data. Corresponds to the chifra config command line. */
data?: components["schemas"]["chain"][];
};
};
};
/** @description bad input parameter */
400: {
headers: {
[name: string]: unknown;
};
content?: never;
};
};
};
"admin-status": {
parameters: {
query?: {
/** @description the (optional) name of the binary cache to report on, terse otherwise */
modes?: ("index" | "blooms" | "blocks" | "transactions" | "traces" | "logs" | "statements" | "results" | "state" | "tokens" | "monitors" | "names" | "abis" | "slurps" | "staging" | "unripe" | "maps" | "some" | "all")[];
/** @description same as the default but with additional diagnostics */
diagnose?: boolean;
/** @description the first record to process */
firstRecord?: number;
/** @description the maximum number of records to process */
maxRecords?: number;
/** @description include a list of chain configurations in the output */
chains?: boolean;
/** @description include a list of cache items in the output */
caches?: boolean;
/** @description an alias for the diagnose endpoint */
healthcheck?: boolean;
/** @description the chain to use */
chain?: string;
/** @description suppress the header in the output */
noHeader?: boolean;
/** @description export format, one of [ txt | csv | json ] */
fmt?: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description returns the requested data */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
/** @description Produces CacheItem, Chain or Status data. Corresponds to the chifra status command line. */
data?: (components["schemas"]["cacheItem"] | components["schemas"]["chain"] | components["schemas"]["status"])[];
};
};
};
/** @description bad input parameter */
400: {
headers: {
[name: string]: unknown;
};
content?: never;
};
};
};
"admin-chunks": {
parameters: {
query: {
/** @description the type of data to process */
mode: "manifest" | "index" | "blooms" | "pins" | "addresses" | "appearances" | "stats";
/** @description an optional list of blocks to intersect with chunk ranges */
blocks?: string[];
/** @description check the manifest, index, or blooms for internal consistency */
check?: boolean;
/** @description in index mode only, checks the address(es) for inclusion in the given index chunk */
belongs?: string[];
/** @description first block to process (inclusive) */
firstBlock?: number;
/** @description last block to process (inclusive) */
lastBlock?: number;
/** @description the max number of addresses to process in a given chunk */
maxAddrs?: number;
/** @description if true, dig more deeply during checking (manifest only) */
deep?: boolean;
/** @description for the --pin --deep mode only, writes the manifest back to the index folder (see notes) */
rewrite?: boolean;
/** @description for certain modes only, display the count of records */
count?: boolean;
/** @description for --pin only, pin only metadata files (ts.bin and manifest.json) */
metadata?: boolean;
/** @description for --remote pinning only, seconds to sleep between API calls */
sleep?: number;
/** @description the chain to use */
chain?: string;
/** @description suppress the header in the output */
noHeader?: boolean;
/** @description export format, one of [ txt | csv | json ] */
fmt?: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description returns the requested data */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
/** @description Produces Appearance, AppearanceTable, ChunkAddress, ChunkBloom, ChunkIndex, ChunkPin, ChunkRecord, ChunkStats, Count, IpfsPin, Manifest, Message, RangeDates or ReportCheck data. Corresponds to the chifra chunks command line. */
data?: (components["schemas"]["appearance"] | components["schemas"]["appearanceTable"] | components["schemas"]["chunkAddress"] | components["schemas"]["chunkBloom"] | components["schemas"]["chunkIndex"] | components["schemas"]["chunkPin"] | components["schemas"]["chunkRecord"] | components["schemas"]["chunkStats"] | components["schemas"]["count"] | components["schemas"]["ipfsPin"] | components["schemas"]["manifest"] | components["schemas"]["message"] | components["schemas"]["rangeDates"] | components["schemas"]["reportCheck"])[];
};
};
};
/** @description bad input parameter */
400: {
headers: {
[name: string]: unknown;
};
content?: never;
};
};
};
"admin-init": {
parameters: {
query?: {
/** @description in addition to Bloom filters, download full index chunks (recommended) */
all?: boolean;
/** @description create an example for the SDK with the given name */
example?: string;
/** @description display the results of the download without actually downloading */
dryRun?: boolean;
/** @description do not download any chunks earlier than this block */
firstBlock?: number;
/** @description seconds to sleep between downloads */
sleep?: number;
/** @description the chain to use */
chain?: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description returns the requested data */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
/** @description Produces ChunkRecord or Manifest data. Corresponds to the chifra init command line. */
data?: (components["schemas"]["chunkRecord"] | components["schemas"]["manifest"])[];
};
};
};
/** @description bad input parameter */
400: {
headers: {
[name: string]: unknown;
};
content?: never;
};
};
};
"other-slurp": {
parameters: {
query: {
/** @description one or more addresses to slurp from Etherscan */
addrs: string[];
/** @description an optional range of blocks to slurp */
blocks?: string[];
/** @description which types of transactions to request */
parts?: ("ext" | "int" | "token" | "nfts" | "1155" | "miner" | "uncles" | "withdrawals" | "some" | "all")[];
/** @description show only the blocknumber.tx_id appearances of the exported transactions */
appearances?: boolean;
/** @description articulate the retrieved data if ABIs can be found */
articulate?: boolean;
/** @description the source of the slurped data */
source?: "etherscan" | "covalent" | "alchemy";
/** @description for --appearances mode only, display only the count of records */
count?: boolean;
/** @description the page to retrieve (page number) */
page?: number;
/** @description the page to retrieve (page ID) */
pageId?: string;
/** @description the number of records to request on each page */
perPage?: number;
/** @description seconds to sleep between requests */
sleep?: number;
/** @description the chain to use */
chain?: string;
/** @description suppress the header in the output */
noHeader?: boolean;
/** @description force the results of the query into the cache */
cache?: boolean;
/** @description removes related items from the cache */
decache?: boolean;
/** @description export values in ether */
ether?: boolean;
/** @description export format, one of [ txt | csv | json ] */
fmt?: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description returns the requested data */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
/** @description Produces Appearance, Function, Monitor, Parameter or Slurp data. Corresponds to the chifra slurp command line. */
data?: (components["schemas"]["appearance"] | components["schemas"]["function"] | components["schemas"]["monitor"] | components["schemas"]["parameter"] | components["schemas"]["slurp"])[];
};
};
};
/** @description bad input parameter */
400: {
headers: {
[name: string]: unknown;
};
content?: never;
};
};
};
}
//# sourceMappingURL=generated.d.ts.map