Atto Node API (v1.0.0)
Download OpenAPI specification:Download
Atto is a high-performance cryptocurrency focused on instant, feeless, and scalable digital cash; this interface is the entry point to the network, allowing clients to publish and receive blocks, query account data, and participate in the network.
Retrieve the latest state (snapshot) of an account. Since transactions mutate accounts, this reflects the result of all previous operations.
Response samples
- 200
{- "publicKey": "45B3B58C26181580EEAFC1791046D54EEC2854BF550A211E2362761077D6590C",
- "network": "LIVE",
- "version": 0,
- "algorithm": "V1",
- "height": 1,
- "balance": 180000000000,
- "lastTransactionHash": "70F9406609BCB2E3E18F22BD0839C95E5540E95489DC6F24DBF6A1F7CFD83A92",
- "lastTransactionTimestamp": 1705517157478,
- "representativeAlgorithm": "V1",
- "representativePublicKey": "99E439410A4DDD2A3A8D0B667C7A090286B8553378CF3C7AA806C3E60B6C4CBE"
}
Response samples
- 200
{- "publicKey": "45B3B58C26181580EEAFC1791046D54EEC2854BF550A211E2362761077D6590C",
- "network": "LIVE",
- "version": 0,
- "algorithm": "V1",
- "height": 1,
- "balance": 180000000000,
- "lastTransactionHash": "70F9406609BCB2E3E18F22BD0839C95E5540E95489DC6F24DBF6A1F7CFD83A92",
- "lastTransactionTimestamp": 1705517157478,
- "representativeAlgorithm": "V1",
- "representativePublicKey": "99E439410A4DDD2A3A8D0B667C7A090286B8553378CF3C7AA806C3E60B6C4CBE"
}
Returns the time difference between the server and client. Useful for clients with unreliable or skewed clocks.
Displays pending incoming funds. When someone sends a transaction, it becomes a "receivable" until the recipient explicitly receives it.
Stream all receivables
path Parameters
publicKey required | string <byte> |
query Parameters
minAmount | string Default: "1" |
Responses
Response samples
- 200
{- "hash": "0AF0F63BFE4DBC588F95FC3B154DE848AA9A5DD5604BAC99AE9E21C5EA8B4F64",
- "version": 0,
- "algorithm": "V1",
- "publicKey": "53F1A85D25EDA5021C01A77A2B1BA99CEF9DD5FD912D7465B8B652FDEDB6A4F8",
- "timestamp": {
- "epochSeconds": 0,
- "nanosecondsOfSecond": 0,
- "value$kotlinx_datetime": "2019-08-24T14:15:22Z"
}, - "receiverAlgorithm": "V1",
- "receiverPublicKey": "0C400961629D759176F009249A33899440900ABCE275F6C5C01C6F7F37A2C59A",
- "amount": 18000000000000000000
}
A user-friendly view of account activity. Recommended for displaying transaction history in UIs.
Stream account entries by height
path Parameters
publicKey required | string <byte> |
query Parameters
fromHeight | string Default: "1" |
toHeight | string Default: "18446744073709551615" |
Responses
Response samples
- 200
{- "hash": "68BA42CDD87328380BE32D5AA6DBB86E905B50273D37AF1DE12F47B83A001154",
- "algorithm": "V1",
- "publicKey": "FD595851104FDDB2FEBF3739C8006C8AAE9B8A2B1BC390D5FDF07EBDD8583FA1",
- "height": 0,
- "blockType": "RECEIVE",
- "subjectAlgorithm": "V1",
- "subjectPublicKey": "2EB21717813E7A0E0A7E308B8E2FD8A051F8724F5C5F0047E92E19310C582E3A",
- "previousBalance": 0,
- "balance": 100,
- "timestamp": 1704616009211
}
Response samples
- 200
{- "hash": "68BA42CDD87328380BE32D5AA6DBB86E905B50273D37AF1DE12F47B83A001154",
- "algorithm": "V1",
- "publicKey": "FD595851104FDDB2FEBF3739C8006C8AAE9B8A2B1BC390D5FDF07EBDD8583FA1",
- "height": 0,
- "blockType": "RECEIVE",
- "subjectAlgorithm": "V1",
- "subjectPublicKey": "2EB21717813E7A0E0A7E308B8E2FD8A051F8724F5C5F0047E92E19310C582E3A",
- "previousBalance": 0,
- "balance": 100,
- "timestamp": 1704616009211
}
Response samples
- 200
{- "hash": "68BA42CDD87328380BE32D5AA6DBB86E905B50273D37AF1DE12F47B83A001154",
- "algorithm": "V1",
- "publicKey": "FD595851104FDDB2FEBF3739C8006C8AAE9B8A2B1BC390D5FDF07EBDD8583FA1",
- "height": 0,
- "blockType": "RECEIVE",
- "subjectAlgorithm": "V1",
- "subjectPublicKey": "2EB21717813E7A0E0A7E308B8E2FD8A051F8724F5C5F0047E92E19310C582E3A",
- "previousBalance": 0,
- "balance": 100,
- "timestamp": 1704616009211
}
Submit or query raw transaction blocks. This endpoint handles the low-level building blocks of the ledger.
Response samples
- 200
{- "block": {
- "publicKey": "string",
- "version": 0,
- "algorithm": "V1",
- "timestamp": 0,
- "network": "LIVE",
- "balance": 0,
- "type": "string",
- "height": 2,
- "previous": "AD675BD718F3D96F9B89C58A8BF80741D5EDB6741D235B070D56E84098894DD5",
- "representativeAlgorithm": "V1",
- "representativePublicKey": "69C010A8A74924D083D1FC8234861B4B357530F42341484B4EBDA6B99F047105"
}, - "signature": "52843B36ABDFA4125E4C0D465A3C976C269F993C7C82645B29AB49B7A5A84FC41E3391D2A41C4CB83DFA3214DA87B099F86EF10402BFB1120A5D34F70CBC2B00",
- "work": "4300FFFFFFFFFFCF"
}
publishAndStream
Publish transaction and stream
Request Body schema: application/jsonrequired
required | AttoChangeBlock (object) or AttoOpenBlock (object) or AttoReceiveBlock (object) or AttoSendBlock (object) The block to be submitted (SEND, RECEIVE, OPEN, CHANGE) |
signature required | string Ed25519 signature of the block |
work required | string Proof-of-work for the block |
Responses
Request samples
- Payload
{- "block": {
- "publicKey": "string",
- "version": 0,
- "algorithm": "V1",
- "timestamp": 0,
- "network": "LIVE",
- "balance": 0,
- "type": "string",
- "height": 2,
- "previous": "AD675BD718F3D96F9B89C58A8BF80741D5EDB6741D235B070D56E84098894DD5",
- "representativeAlgorithm": "V1",
- "representativePublicKey": "69C010A8A74924D083D1FC8234861B4B357530F42341484B4EBDA6B99F047105"
}, - "signature": "52843B36ABDFA4125E4C0D465A3C976C269F993C7C82645B29AB49B7A5A84FC41E3391D2A41C4CB83DFA3214DA87B099F86EF10402BFB1120A5D34F70CBC2B00",
- "work": "4300FFFFFFFFFFCF"
}
Response samples
- 200
[- {
- "block": {
- "publicKey": "string",
- "version": 0,
- "algorithm": "V1",
- "timestamp": 0,
- "network": "LIVE",
- "balance": 0,
- "type": "string",
- "height": 2,
- "previous": "AD675BD718F3D96F9B89C58A8BF80741D5EDB6741D235B070D56E84098894DD5",
- "representativeAlgorithm": "V1",
- "representativePublicKey": "69C010A8A74924D083D1FC8234861B4B357530F42341484B4EBDA6B99F047105"
}, - "signature": "52843B36ABDFA4125E4C0D465A3C976C269F993C7C82645B29AB49B7A5A84FC41E3391D2A41C4CB83DFA3214DA87B099F86EF10402BFB1120A5D34F70CBC2B00",
- "work": "4300FFFFFFFFFFCF"
}
]
Publish a transaction
Request Body schema: application/jsonrequired
required | AttoChangeBlock (object) or AttoOpenBlock (object) or AttoReceiveBlock (object) or AttoSendBlock (object) The block to be submitted (SEND, RECEIVE, OPEN, CHANGE) |
signature required | string Ed25519 signature of the block |
work required | string Proof-of-work for the block |
Responses
Request samples
- Payload
{- "block": {
- "publicKey": "string",
- "version": 0,
- "algorithm": "V1",
- "timestamp": 0,
- "network": "LIVE",
- "balance": 0,
- "type": "string",
- "height": 2,
- "previous": "AD675BD718F3D96F9B89C58A8BF80741D5EDB6741D235B070D56E84098894DD5",
- "representativeAlgorithm": "V1",
- "representativePublicKey": "69C010A8A74924D083D1FC8234861B4B357530F42341484B4EBDA6B99F047105"
}, - "signature": "52843B36ABDFA4125E4C0D465A3C976C269F993C7C82645B29AB49B7A5A84FC41E3391D2A41C4CB83DFA3214DA87B099F86EF10402BFB1120A5D34F70CBC2B00",
- "work": "4300FFFFFFFFFFCF"
}
Response samples
- 200
{- "block": {
- "publicKey": "string",
- "version": 0,
- "algorithm": "V1",
- "timestamp": 0,
- "network": "LIVE",
- "balance": 0,
- "type": "string",
- "height": 2,
- "previous": "AD675BD718F3D96F9B89C58A8BF80741D5EDB6741D235B070D56E84098894DD5",
- "representativeAlgorithm": "V1",
- "representativePublicKey": "69C010A8A74924D083D1FC8234861B4B357530F42341484B4EBDA6B99F047105"
}, - "signature": "52843B36ABDFA4125E4C0D465A3C976C269F993C7C82645B29AB49B7A5A84FC41E3391D2A41C4CB83DFA3214DA87B099F86EF10402BFB1120A5D34F70CBC2B00",
- "work": "4300FFFFFFFFFFCF"
}
Response samples
- 200
{- "block": {
- "publicKey": "string",
- "version": 0,
- "algorithm": "V1",
- "timestamp": 0,
- "network": "LIVE",
- "balance": 0,
- "type": "string",
- "height": 2,
- "previous": "AD675BD718F3D96F9B89C58A8BF80741D5EDB6741D235B070D56E84098894DD5",
- "representativeAlgorithm": "V1",
- "representativePublicKey": "69C010A8A74924D083D1FC8234861B4B357530F42341484B4EBDA6B99F047105"
}, - "signature": "52843B36ABDFA4125E4C0D465A3C976C269F993C7C82645B29AB49B7A5A84FC41E3391D2A41C4CB83DFA3214DA87B099F86EF10402BFB1120A5D34F70CBC2B00",
- "work": "4300FFFFFFFFFFCF"
}
Stream transactions by height
path Parameters
publicKey required | string <byte> |
query Parameters
fromHeight | string Default: "1" |
toHeight | string Default: "18446744073709551615" |
Responses
Response samples
- 200
{- "block": {
- "publicKey": "string",
- "version": 0,
- "algorithm": "V1",
- "timestamp": 0,
- "network": "LIVE",
- "balance": 0,
- "type": "string",
- "height": 2,
- "previous": "AD675BD718F3D96F9B89C58A8BF80741D5EDB6741D235B070D56E84098894DD5",
- "representativeAlgorithm": "V1",
- "representativePublicKey": "69C010A8A74924D083D1FC8234861B4B357530F42341484B4EBDA6B99F047105"
}, - "signature": "52843B36ABDFA4125E4C0D465A3C976C269F993C7C82645B29AB49B7A5A84FC41E3391D2A41C4CB83DFA3214DA87B099F86EF10402BFB1120A5D34F70CBC2B00",
- "work": "4300FFFFFFFFFFCF"
}