Algorand Daemon - Algorand Specifications

Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Algorand Specifications

The main daemon running in an Algorand Node is called algod.

It is responsible for providing access to core blockchain data and functionality. This includes transaction details, account balances, smart contract state, and other node-level information.

The algod REST API is used to GET:

The algod REST API is used to POST:

Tasks involving the management and the usage of private keys are handled by a separate daemon, called Key Management Daemon (kmd).

Some algod endpoints perform sensitive actions that require authorization.

The X-Algo-API-Token header is used to authenticate requests to the private algod endpoints.

By default, the API can be configured with two separate X-Algo-API-Token values:

Each algod endpoint path has two tags to separate endpoints into groups:

Important

IMPLEMENTATION:

Each endpoint implements a Handler and a Client.

The following constants define key limits and default behaviors for various algod API endpoints.

These values serve as practical defaults for most use cases. Developers implementing their own tooling or integrations can use these as general guidelines.

Constant Value Description
MaxTealSourceBytes 524,288 bytes Maximum allowed size for TEAL source code in API requests.
MaxTealDryrunBytes 1,000,000 bytes Maximum allowed size for dryrun simulation requests.
MaxAssetResults 1,000 Maximum number of assets returned in a single call to /v2/accounts/{address}/assets.
DefaultAssetResults 1,000 Default number of assets returned if no explicit limit is provided (up to MaxAssetResults).
WaitForBlockTimeout 1e+10 nanoseconds (1 min.) Timeout duration for the WaitForBlock endpoint when waiting for the next block to be generated.