API
The application exposes an API that can be used to:
Read and write blocks and transactions.
Create transactions.
Submit transactions to the chain.
Query balances.
API Services
A node exposes several API services that provide the network layer of the blockchain. All services are authorized by including an Authorization Token as a Bearer Token in the Authorization header.
Block Services
- GET /api/block
Returns the latest block of the longest chain.
Example request:
GET /api/block HTTP/1.1 Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJmb28ifQ.PCYPJkVZfox0jxt9jWJ44DJaQZ4-d2lnAMzvfLx9mXU
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "idx": 6079, "timestamp": "2022-04-12T15:07:48Z", "block_hash": "000000039dce716d704f90d0264a3448786dd67d7586fb21d1643eee300a5d27", "prev_hash": "000000038d7e9c1881afe43c74765ad3501a6d83d4f3969c855c533d0d52a622", "target": "00000005bff4bb076c3280000000000000000000000000000000000000000000", "proof_of_work": 26749217, "merkle_root": "fce05f6c12e5f58de612e35cc2733af4b1e4f2fde90c92f3f634d9f0d9879913", "txns": [ { "timestamp": "2022-04-12T15:06:24Z", "txid": "111e01606fe162cda80f2ff56dff97454246c8f75534574f2863782399bfeb7b", "address": "CCDNF5ybECTLcTkaHAtxzTtgkyu4X6hBZETgez6xJygVZ4CC", "public_key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAlB8JV/ZuTX9CTAw182QUzSfTYbJ9AzpFyFjqpxn3piniqYwA4wGbzSpVSt8GrZ0agwRFuF9OpnQXawn28i3n2bTlF1MB130v1C9AH3sHAaRfz6kdQP553e5jKkbLsK1pxgaEMAd5i9lkbXP3LV0QVdmDV6IGb6MGpxRENjyVXAZOxLfBht5ACboHnLpS6QYZTIfY5luqeeQsrqasxHA6mRMR1xo5a+1KJE0TZvfFyibqg3g4nUU3aC7n6jxcb9fDAXe5OixzfrKQt0lF1oDVzg9B3WnogvJI9uYttnn0zUPzGDR4XIqgFqAVtC4azKZnqWegn/bQq9K7de9Z8pifDQIDAQAB", "signature": "Vl6N+AIdU8m7SFtisftM6WCgtZ6ZLc42PJxJwq7baW5Dsby2A4m1SsIHd4IHjh/YDGJp8LvjT14dJLH4yh0jOrvbpLxHad/nBtedeZF8fdwqvTBYozY/1Bqhze2uROAuqNjJBOIsT3xnWNonPlyaqVOjW0jRmA2HHWLeHsG6WXLsUrJk29BkmzXiqLEu6AxkSpcWtpDy/aWgLRE4DIVjGGcveT+g0h0aTFo+h8zVYXZVFEhiZkA5P+pkSCLAqvjT8TQpNV4xy/WNz1RugccNNPAnQJck5jd4jDpP/bq1AeheDV5dYzjdTjanlIee7iXJUALehDb1ZWkspeVEqq8/+w==", "inflows": [ { "outflow_txid": "7cbc0b8aeee94dc7777af6e0a0f14a4b0617b6b25f9656cc7fbfafc7814e4934", "outflow_idx": 1 } ], "outflows": [ { "amount": 200, "subject": "Vm9nb24gUG9ldHJ5" } ], "version": "1" }, { "timestamp": "2022-04-12T15:07:48Z", "txid": "d0dc6c546227b1cd31bff4fdcc25ef003c6284d003021c297e4118775fdd2dac", "address": "CCCDwzcN5sNSyH5rTjj4mEPLSSDEb6Vz356e3YGMuWT4roCC", "public_key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmK5Qb4j6sKwcnCaVpS1JSMPX6IrNx4FkR8B3xh6ZmXFH5kGDGfRrSPwQdN18tAG9dv1AAr1uvLHc7pX3TucPppnm6JBaqzE6eaR3Y71kD+qrDdnOuGQhOmTpMg9zyC7Oo2QerHQfP67v14Jf6tnUORNivFGEbeuCCUHSvwJmP6ZrjXZiaRZEnQYgIio8537XqnkDj6jM4LKtqjz+tx8KOt24a71NaTeR/zjjD/sbKX5pw+dODP2ClsP+LEgY6gX4a6QYx8ANQlNCdu3nVtLyQX8OYjN4ROf3cWzBbpNmjIzyOr/yQUiCc1l+N1dMXkLud+AsiRV/7+LBQkQvCWCUxQIDAQAB", "signature": "DYFvjj42MIcuNZWyqVl9ghkZ9xAi8U9ujGq50p4jnlYoY/MQXv4aDq0mTROv3nVnE5uGexQvicAbUlP3VBooQlskFxfMDaDw9X8EK2K6APZp6HzYA2xy0CaTiLshjWPFogcBTj3ZSAqQyyxqP52M7iuNbQCP4+hqvdn7tHOIp9ybLAVDNuyX5SpV+ZT3WayhlHnuC2BMTnbuEA3peugcuZQjv2H6O/xcoxA+MFYiitgWLZcZU3qECCwVtX7e0P1JmCp+UHEDTn8yZWqKOqUUyOTBXujzdEHl66Z2mVh/yqAZFe6l6aebuGoUb7Qq1afnBWTj4HRIM3HtBqzAqwzJSA==", "inflows": [], "outflows": [ { "amount": 10000, "address": "CCCDwzcN5sNSyH5rTjj4mEPLSSDEb6Vz356e3YGMuWT4roCC" }, { "amount": 100, "address": "CCCDwzcN5sNSyH5rTjj4mEPLSSDEb6Vz356e3YGMuWT4roCC" } ], "version": "1" } ], "version": "1" }
- Required Role:
- Request Headers:
Authorization – An Authorization Token as a Bearer Token.
- Status Codes:
200 OK – Success.
400 Bad Request – Bad request. See the Response JSON Object error property for messages.
401 Unauthorized – Unauthorized.
404 Not Found – The block was not found.
500 Internal Server Error – Server error.
- Response Headers:
Content-Type –
application/json
- Response:
The Block JSON data.
- Response JSON Object:
error – Error messages.
- GET /api/block/(block_hash)
Returns the block with the given block_hash.
Example request:
GET /api/block/000000039dce716d704f90d0264a3448786dd67d7586fb21d1643eee300a5d27 HTTP/1.1 Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJmb28ifQ.PCYPJkVZfox0jxt9jWJ44DJaQZ4-d2lnAMzvfLx9mXU
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "idx": 6079, "timestamp": "2022-04-12T15:07:48Z", "block_hash": "000000039dce716d704f90d0264a3448786dd67d7586fb21d1643eee300a5d27", "prev_hash": "000000038d7e9c1881afe43c74765ad3501a6d83d4f3969c855c533d0d52a622", "target": "00000005bff4bb076c3280000000000000000000000000000000000000000000", "proof_of_work": 26749217, "merkle_root": "fce05f6c12e5f58de612e35cc2733af4b1e4f2fde90c92f3f634d9f0d9879913", "txns": [ { "timestamp": "2022-04-12T15:06:24Z", "txid": "111e01606fe162cda80f2ff56dff97454246c8f75534574f2863782399bfeb7b", "address": "CCDNF5ybECTLcTkaHAtxzTtgkyu4X6hBZETgez6xJygVZ4CC", "public_key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAlB8JV/ZuTX9CTAw182QUzSfTYbJ9AzpFyFjqpxn3piniqYwA4wGbzSpVSt8GrZ0agwRFuF9OpnQXawn28i3n2bTlF1MB130v1C9AH3sHAaRfz6kdQP553e5jKkbLsK1pxgaEMAd5i9lkbXP3LV0QVdmDV6IGb6MGpxRENjyVXAZOxLfBht5ACboHnLpS6QYZTIfY5luqeeQsrqasxHA6mRMR1xo5a+1KJE0TZvfFyibqg3g4nUU3aC7n6jxcb9fDAXe5OixzfrKQt0lF1oDVzg9B3WnogvJI9uYttnn0zUPzGDR4XIqgFqAVtC4azKZnqWegn/bQq9K7de9Z8pifDQIDAQAB", "signature": "Vl6N+AIdU8m7SFtisftM6WCgtZ6ZLc42PJxJwq7baW5Dsby2A4m1SsIHd4IHjh/YDGJp8LvjT14dJLH4yh0jOrvbpLxHad/nBtedeZF8fdwqvTBYozY/1Bqhze2uROAuqNjJBOIsT3xnWNonPlyaqVOjW0jRmA2HHWLeHsG6WXLsUrJk29BkmzXiqLEu6AxkSpcWtpDy/aWgLRE4DIVjGGcveT+g0h0aTFo+h8zVYXZVFEhiZkA5P+pkSCLAqvjT8TQpNV4xy/WNz1RugccNNPAnQJck5jd4jDpP/bq1AeheDV5dYzjdTjanlIee7iXJUALehDb1ZWkspeVEqq8/+w==", "inflows": [ { "outflow_txid": "7cbc0b8aeee94dc7777af6e0a0f14a4b0617b6b25f9656cc7fbfafc7814e4934", "outflow_idx": 1 } ], "outflows": [ { "amount": 200, "subject": "Vm9nb24gUG9ldHJ5" } ], "version": "1" }, { "timestamp": "2022-04-12T15:07:48Z", "txid": "d0dc6c546227b1cd31bff4fdcc25ef003c6284d003021c297e4118775fdd2dac", "address": "CCCDwzcN5sNSyH5rTjj4mEPLSSDEb6Vz356e3YGMuWT4roCC", "public_key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmK5Qb4j6sKwcnCaVpS1JSMPX6IrNx4FkR8B3xh6ZmXFH5kGDGfRrSPwQdN18tAG9dv1AAr1uvLHc7pX3TucPppnm6JBaqzE6eaR3Y71kD+qrDdnOuGQhOmTpMg9zyC7Oo2QerHQfP67v14Jf6tnUORNivFGEbeuCCUHSvwJmP6ZrjXZiaRZEnQYgIio8537XqnkDj6jM4LKtqjz+tx8KOt24a71NaTeR/zjjD/sbKX5pw+dODP2ClsP+LEgY6gX4a6QYx8ANQlNCdu3nVtLyQX8OYjN4ROf3cWzBbpNmjIzyOr/yQUiCc1l+N1dMXkLud+AsiRV/7+LBQkQvCWCUxQIDAQAB", "signature": "DYFvjj42MIcuNZWyqVl9ghkZ9xAi8U9ujGq50p4jnlYoY/MQXv4aDq0mTROv3nVnE5uGexQvicAbUlP3VBooQlskFxfMDaDw9X8EK2K6APZp6HzYA2xy0CaTiLshjWPFogcBTj3ZSAqQyyxqP52M7iuNbQCP4+hqvdn7tHOIp9ybLAVDNuyX5SpV+ZT3WayhlHnuC2BMTnbuEA3peugcuZQjv2H6O/xcoxA+MFYiitgWLZcZU3qECCwVtX7e0P1JmCp+UHEDTn8yZWqKOqUUyOTBXujzdEHl66Z2mVh/yqAZFe6l6aebuGoUb7Qq1afnBWTj4HRIM3HtBqzAqwzJSA==", "inflows": [], "outflows": [ { "amount": 10000, "address": "CCCDwzcN5sNSyH5rTjj4mEPLSSDEb6Vz356e3YGMuWT4roCC" }, { "amount": 100, "address": "CCCDwzcN5sNSyH5rTjj4mEPLSSDEb6Vz356e3YGMuWT4roCC" } ], "version": "1" } ], "version": "1" }
- Required Role:
- Request Headers:
Authorization – An Authorization Token as a Bearer Token.
- Status Codes:
200 OK – Success.
400 Bad Request – Bad request. See the Response JSON Object error property for messages.
401 Unauthorized – Unauthorized.
404 Not Found – Invalid block_hash or the block was not found.
500 Internal Server Error – Server error.
- Response Headers:
Content-Type –
application/json
- Response:
The Block JSON data.
- Response JSON Object:
error – Error messages.
- POST /api/block/(block_hash)
Submit a milled block.
Example request:
POST /api/block/000000039dce716d704f90d0264a3448786dd67d7586fb21d1643eee300a5d27 HTTP/1.1 Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJmb28ifQ.PCYPJkVZfox0jxt9jWJ44DJaQZ4-d2lnAMzvfLx9mXU Content-Type: application/json { "idx": 6079, "timestamp": "2022-04-12T15:07:48Z", "block_hash": "000000039dce716d704f90d0264a3448786dd67d7586fb21d1643eee300a5d27", "prev_hash": "000000038d7e9c1881afe43c74765ad3501a6d83d4f3969c855c533d0d52a622", "target": "00000005bff4bb076c3280000000000000000000000000000000000000000000", "proof_of_work": 26749217, "merkle_root": "fce05f6c12e5f58de612e35cc2733af4b1e4f2fde90c92f3f634d9f0d9879913", "txns": [ { "timestamp": "2022-04-12T15:06:24Z", "txid": "111e01606fe162cda80f2ff56dff97454246c8f75534574f2863782399bfeb7b", "address": "CCDNF5ybECTLcTkaHAtxzTtgkyu4X6hBZETgez6xJygVZ4CC", "public_key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAlB8JV/ZuTX9CTAw182QUzSfTYbJ9AzpFyFjqpxn3piniqYwA4wGbzSpVSt8GrZ0agwRFuF9OpnQXawn28i3n2bTlF1MB130v1C9AH3sHAaRfz6kdQP553e5jKkbLsK1pxgaEMAd5i9lkbXP3LV0QVdmDV6IGb6MGpxRENjyVXAZOxLfBht5ACboHnLpS6QYZTIfY5luqeeQsrqasxHA6mRMR1xo5a+1KJE0TZvfFyibqg3g4nUU3aC7n6jxcb9fDAXe5OixzfrKQt0lF1oDVzg9B3WnogvJI9uYttnn0zUPzGDR4XIqgFqAVtC4azKZnqWegn/bQq9K7de9Z8pifDQIDAQAB", "signature": "Vl6N+AIdU8m7SFtisftM6WCgtZ6ZLc42PJxJwq7baW5Dsby2A4m1SsIHd4IHjh/YDGJp8LvjT14dJLH4yh0jOrvbpLxHad/nBtedeZF8fdwqvTBYozY/1Bqhze2uROAuqNjJBOIsT3xnWNonPlyaqVOjW0jRmA2HHWLeHsG6WXLsUrJk29BkmzXiqLEu6AxkSpcWtpDy/aWgLRE4DIVjGGcveT+g0h0aTFo+h8zVYXZVFEhiZkA5P+pkSCLAqvjT8TQpNV4xy/WNz1RugccNNPAnQJck5jd4jDpP/bq1AeheDV5dYzjdTjanlIee7iXJUALehDb1ZWkspeVEqq8/+w==", "inflows": [ { "outflow_txid": "7cbc0b8aeee94dc7777af6e0a0f14a4b0617b6b25f9656cc7fbfafc7814e4934", "outflow_idx": 1 } ], "outflows": [ { "amount": 200, "subject": "Vm9nb24gUG9ldHJ5" } ], "version": "1" }, { "timestamp": "2022-04-12T15:07:48Z", "txid": "d0dc6c546227b1cd31bff4fdcc25ef003c6284d003021c297e4118775fdd2dac", "address": "CCCDwzcN5sNSyH5rTjj4mEPLSSDEb6Vz356e3YGMuWT4roCC", "public_key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmK5Qb4j6sKwcnCaVpS1JSMPX6IrNx4FkR8B3xh6ZmXFH5kGDGfRrSPwQdN18tAG9dv1AAr1uvLHc7pX3TucPppnm6JBaqzE6eaR3Y71kD+qrDdnOuGQhOmTpMg9zyC7Oo2QerHQfP67v14Jf6tnUORNivFGEbeuCCUHSvwJmP6ZrjXZiaRZEnQYgIio8537XqnkDj6jM4LKtqjz+tx8KOt24a71NaTeR/zjjD/sbKX5pw+dODP2ClsP+LEgY6gX4a6QYx8ANQlNCdu3nVtLyQX8OYjN4ROf3cWzBbpNmjIzyOr/yQUiCc1l+N1dMXkLud+AsiRV/7+LBQkQvCWCUxQIDAQAB", "signature": "DYFvjj42MIcuNZWyqVl9ghkZ9xAi8U9ujGq50p4jnlYoY/MQXv4aDq0mTROv3nVnE5uGexQvicAbUlP3VBooQlskFxfMDaDw9X8EK2K6APZp6HzYA2xy0CaTiLshjWPFogcBTj3ZSAqQyyxqP52M7iuNbQCP4+hqvdn7tHOIp9ybLAVDNuyX5SpV+ZT3WayhlHnuC2BMTnbuEA3peugcuZQjv2H6O/xcoxA+MFYiitgWLZcZU3qECCwVtX7e0P1JmCp+UHEDTn8yZWqKOqUUyOTBXujzdEHl66Z2mVh/yqAZFe6l6aebuGoUb7Qq1afnBWTj4HRIM3HtBqzAqwzJSA==", "inflows": [], "outflows": [ { "amount": 10000, "address": "CCCDwzcN5sNSyH5rTjj4mEPLSSDEb6Vz356e3YGMuWT4roCC" }, { "amount": 100, "address": "CCCDwzcN5sNSyH5rTjj4mEPLSSDEb6Vz356e3YGMuWT4roCC" } ], "version": "1" } ], "version": "1" }
Example response:
HTTP/1.1 201 CREATED Content-Type: application/json {"received": "2022-04-12T15:13:56Z"}
- Required Role:
- Request Headers:
Authorization – An Authorization Token as a Bearer Token.
Content-Type –
application/json
- Request Body:
The Block JSON data.
- Status Codes:
200 OK – The block already exists.
201 Created – The block has been received and processed.
202 Accepted – The block has been received and will be processed.
400 Bad Request – Bad request. See the Response JSON Object error property for messages.
401 Unauthorized – Unauthorized.
404 Not Found – Invalid block_hash or the posted block’s previous block was not found. The node can not add the block to any of its chains.
500 Internal Server Error – Server error.
- Response Headers:
Content-Type –
application/json
- Response JSON Object:
received – The ISO8601 timestamp at which the block was received.
error – Error messages.
Transaction Services
- GET /api/transaction/transfer
Get an unsigned transfer transaction.
Example request:
GET /api/transaction/transfer?public_key=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAlB8JV%2FZuTX9CTAw182QUzSfTYbJ9AzpFyFjqpxn3piniqYwA4wGbzSpVSt8GrZ0agwRFuF9OpnQXawn28i3n2bTlF1MB130v1C9AH3sHAaRfz6kdQP553e5jKkbLsK1pxgaEMAd5i9lkbXP3LV0QVdmDV6IGb6MGpxRENjyVXAZOxLfBht5ACboHnLpS6QYZTIfY5luqeeQsrqasxHA6mRMR1xo5a%2B1KJE0TZvfFyibqg3g4nUU3aC7n6jxcb9fDAXe5OixzfrKQt0lF1oDVzg9B3WnogvJI9uYttnn0zUPzGDR4XIqgFqAVtC4azKZnqWegn%2FbQq9K7de9Z8pifDQIDAQAB&amount=200&address=CCCDwzcN5sNSyH5rTjj4mEPLSSDEb6Vz356e3YGMuWT4roCC HTTP/1.1 Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJmb28ifQ.PCYPJkVZfox0jxt9jWJ44DJaQZ4-d2lnAMzvfLx9mXU
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "timestamp": "2022-04-12T16:05:07Z", "txid": "9c40a8a46214d85abc883ccc6e89789be637353e047b363b234665916e2de116", "address": "CCDNF5ybECTLcTkaHAtxzTtgkyu4X6hBZETgez6xJygVZ4CC", "public_key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAlB8JV/ZuTX9CTAw182QUzSfTYbJ9AzpFyFjqpxn3piniqYwA4wGbzSpVSt8GrZ0agwRFuF9OpnQXawn28i3n2bTlF1MB130v1C9AH3sHAaRfz6kdQP553e5jKkbLsK1pxgaEMAd5i9lkbXP3LV0QVdmDV6IGb6MGpxRENjyVXAZOxLfBht5ACboHnLpS6QYZTIfY5luqeeQsrqasxHA6mRMR1xo5a+1KJE0TZvfFyibqg3g4nUU3aC7n6jxcb9fDAXe5OixzfrKQt0lF1oDVzg9B3WnogvJI9uYttnn0zUPzGDR4XIqgFqAVtC4azKZnqWegn/bQq9K7de9Z8pifDQIDAQAB", "inflows": [ { "outflow_txid": "649ec09329a21306b1c0509c0610274f395d72eb19c5f67a7add15d4beec264c", "outflow_idx": 1 } ], "outflows": [ { "amount": 200, "address": "CCCDwzcN5sNSyH5rTjj4mEPLSSDEb6Vz356e3YGMuWT4roCC" } ], "version": "1" }
- Required Role:
- Request Headers:
Authorization – An Authorization Token as a Bearer Token.
- Query Parameters:
public_key – The public key of the source address.
amount – The amount of CCC to transfer from the source address to the destination address.
address – The destination address.
- Status Codes:
200 OK – The unsigned transaction was successfully created.
400 Bad Request – Bad request. See the Response JSON Object error property for messages.
401 Unauthorized – Unauthorized.
500 Internal Server Error – Server error.
- Response Headers:
Content-Type –
application/json
- Response:
The unsigned Transaction JSON data.
- Response JSON Object:
error – Error messages.
- GET /api/transaction/subject
Get an unsigned subject (“cancel”) transaction.
Example request:
GET /api/transaction/subject?public_key=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAlB8JV%2FZuTX9CTAw182QUzSfTYbJ9AzpFyFjqpxn3piniqYwA4wGbzSpVSt8GrZ0agwRFuF9OpnQXawn28i3n2bTlF1MB130v1C9AH3sHAaRfz6kdQP553e5jKkbLsK1pxgaEMAd5i9lkbXP3LV0QVdmDV6IGb6MGpxRENjyVXAZOxLfBht5ACboHnLpS6QYZTIfY5luqeeQsrqasxHA6mRMR1xo5a%2B1KJE0TZvfFyibqg3g4nUU3aC7n6jxcb9fDAXe5OixzfrKQt0lF1oDVzg9B3WnogvJI9uYttnn0zUPzGDR4XIqgFqAVtC4azKZnqWegn%2FbQq9K7de9Z8pifDQIDAQAB&amount=100&subject=Vogon+Poetry HTTP/1.1 Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJmb28ifQ.PCYPJkVZfox0jxt9jWJ44DJaQZ4-d2lnAMzvfLx9mXU
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "timestamp": "2022-04-12T16:33:03Z", "txid": "10518a73e85d0cba82496212fa85ee21729e2cb09d6db73f224f380e1113f4b5", "address": "CCDNF5ybECTLcTkaHAtxzTtgkyu4X6hBZETgez6xJygVZ4CC", "public_key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAlB8JV/ZuTX9CTAw182QUzSfTYbJ9AzpFyFjqpxn3piniqYwA4wGbzSpVSt8GrZ0agwRFuF9OpnQXawn28i3n2bTlF1MB130v1C9AH3sHAaRfz6kdQP553e5jKkbLsK1pxgaEMAd5i9lkbXP3LV0QVdmDV6IGb6MGpxRENjyVXAZOxLfBht5ACboHnLpS6QYZTIfY5luqeeQsrqasxHA6mRMR1xo5a+1KJE0TZvfFyibqg3g4nUU3aC7n6jxcb9fDAXe5OixzfrKQt0lF1oDVzg9B3WnogvJI9uYttnn0zUPzGDR4XIqgFqAVtC4azKZnqWegn/bQq9K7de9Z8pifDQIDAQAB", "inflows": [ { "outflow_txid": "649ec09329a21306b1c0509c0610274f395d72eb19c5f67a7add15d4beec264c", "outflow_idx": 1 } ], "outflows": [ { "amount": 100, "subject": "Vm9nb24gUG9ldHJ5" }, { "amount": 100, "address": "CCDNF5ybECTLcTkaHAtxzTtgkyu4X6hBZETgez6xJygVZ4CC" } ], "version": "1" }
- Required Role:
- Request Headers:
Authorization – An Authorization Token as a Bearer Token.
- Query Parameters:
public_key – The public key of the source address.
amount – The amount of CCC to apply to the subject.
subject – The raw (unencoded) subject string.
- Status Codes:
200 OK – The unsigned transaction was successfully created.
400 Bad Request – Bad request. See the Response JSON Object error property for messages.
401 Unauthorized – Unauthorized.
500 Internal Server Error – Server error.
- Response Headers:
Content-Type –
application/json
- Response:
The unsigned Transaction JSON data.
- Response JSON Object:
error – Error messages.
- GET /api/transaction/forgive
Get an unsigned forgive transaction.
Example request:
GET /api/transaction/forgive?public_key=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAlB8JV%2FZuTX9CTAw182QUzSfTYbJ9AzpFyFjqpxn3piniqYwA4wGbzSpVSt8GrZ0agwRFuF9OpnQXawn28i3n2bTlF1MB130v1C9AH3sHAaRfz6kdQP553e5jKkbLsK1pxgaEMAd5i9lkbXP3LV0QVdmDV6IGb6MGpxRENjyVXAZOxLfBht5ACboHnLpS6QYZTIfY5luqeeQsrqasxHA6mRMR1xo5a%2B1KJE0TZvfFyibqg3g4nUU3aC7n6jxcb9fDAXe5OixzfrKQt0lF1oDVzg9B3WnogvJI9uYttnn0zUPzGDR4XIqgFqAVtC4azKZnqWegn%2FbQq9K7de9Z8pifDQIDAQAB&amount=100&subject=Vogon+Poetry HTTP/1.1 Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJmb28ifQ.PCYPJkVZfox0jxt9jWJ44DJaQZ4-d2lnAMzvfLx9mXU
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "timestamp": "2022-04-12T17:04:26Z", "txid": "ee0d2dc269c1a33eb63f3c0d9fc7de5d1890aafa981cc83eb3d5aa3de8fc3a7e", "address": "CCDNF5ybECTLcTkaHAtxzTtgkyu4X6hBZETgez6xJygVZ4CC", "public_key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAlB8JV/ZuTX9CTAw182QUzSfTYbJ9AzpFyFjqpxn3piniqYwA4wGbzSpVSt8GrZ0agwRFuF9OpnQXawn28i3n2bTlF1MB130v1C9AH3sHAaRfz6kdQP553e5jKkbLsK1pxgaEMAd5i9lkbXP3LV0QVdmDV6IGb6MGpxRENjyVXAZOxLfBht5ACboHnLpS6QYZTIfY5luqeeQsrqasxHA6mRMR1xo5a+1KJE0TZvfFyibqg3g4nUU3aC7n6jxcb9fDAXe5OixzfrKQt0lF1oDVzg9B3WnogvJI9uYttnn0zUPzGDR4XIqgFqAVtC4azKZnqWegn/bQq9K7de9Z8pifDQIDAQAB", "inflows": [ { "outflow_txid": "6944c502a49db47918756ad9c3f1086c0c7ab17367ddf95cfae72f5fd4cc3c22", "outflow_idx": 0 } ], "outflows": [ { "amount": 100, "forgive": "Vm9nb24gUG9ldHJ5" }, { "amount": 400, "subject": "Vm9nb24gUG9ldHJ5" } ], "version": "1" }
- Required Role:
- Request Headers:
Authorization – An Authorization Token as a Bearer Token.
- Query Parameters:
public_key – The public key of the source address.
amount – The amount of CCC to forgive the subject.
subject – The raw (unencoded) subject string.
- Status Codes:
200 OK – The unsigned transaction was successfully created.
400 Bad Request – Bad request. See the Response JSON Object error property for messages.
401 Unauthorized – Unauthorized.
500 Internal Server Error – Server error.
- Response Headers:
Content-Type –
application/json
- Response:
The unsigned Transaction JSON data.
- Response JSON Object:
error – Error messages.
- GET /api/transaction/support
Get an unsigned support transaction.
Example request:
GET /api/transaction/support?public_key=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAlB8JV%2FZuTX9CTAw182QUzSfTYbJ9AzpFyFjqpxn3piniqYwA4wGbzSpVSt8GrZ0agwRFuF9OpnQXawn28i3n2bTlF1MB130v1C9AH3sHAaRfz6kdQP553e5jKkbLsK1pxgaEMAd5i9lkbXP3LV0QVdmDV6IGb6MGpxRENjyVXAZOxLfBht5ACboHnLpS6QYZTIfY5luqeeQsrqasxHA6mRMR1xo5a%2B1KJE0TZvfFyibqg3g4nUU3aC7n6jxcb9fDAXe5OixzfrKQt0lF1oDVzg9B3WnogvJI9uYttnn0zUPzGDR4XIqgFqAVtC4azKZnqWegn%2FbQq9K7de9Z8pifDQIDAQAB&amount=100&subject=Towel HTTP/1.1 Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJmb28ifQ.PCYPJkVZfox0jxt9jWJ44DJaQZ4-d2lnAMzvfLx9mXU
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "timestamp": "2022-04-12T17:15:04Z", "txid": "79b2bc3a23a8b9fe6bf7c36f21c60cf9b220429beed2f2be28792604ad3e2dd8", "address": "CCDNF5ybECTLcTkaHAtxzTtgkyu4X6hBZETgez6xJygVZ4CC", "public_key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAlB8JV/ZuTX9CTAw182QUzSfTYbJ9AzpFyFjqpxn3piniqYwA4wGbzSpVSt8GrZ0agwRFuF9OpnQXawn28i3n2bTlF1MB130v1C9AH3sHAaRfz6kdQP553e5jKkbLsK1pxgaEMAd5i9lkbXP3LV0QVdmDV6IGb6MGpxRENjyVXAZOxLfBht5ACboHnLpS6QYZTIfY5luqeeQsrqasxHA6mRMR1xo5a+1KJE0TZvfFyibqg3g4nUU3aC7n6jxcb9fDAXe5OixzfrKQt0lF1oDVzg9B3WnogvJI9uYttnn0zUPzGDR4XIqgFqAVtC4azKZnqWegn/bQq9K7de9Z8pifDQIDAQAB", "inflows": [ { "outflow_txid": "649ec09329a21306b1c0509c0610274f395d72eb19c5f67a7add15d4beec264c", "outflow_idx": 1 } ], "outflows": [ { "amount": 100, "support": "VG93ZWw" }, { "amount": 100, "address": "CCDNF5ybECTLcTkaHAtxzTtgkyu4X6hBZETgez6xJygVZ4CC" } ], "version": "1" }
- Required Role:
- Request Headers:
Authorization – An Authorization Token as a Bearer Token.
- Query Parameters:
public_key – The public key of the source address.
amount – The amount of CCC to support the subject.
subject – The raw (unencoded) subject string.
- Status Codes:
200 OK – The unsigned transaction was successfully created.
400 Bad Request – Bad request. See the Response JSON Object error property for messages.
401 Unauthorized – Unauthorized.
500 Internal Server Error – Server error.
- Response Headers:
Content-Type –
application/json
- Response:
The unsigned Transaction JSON data.
- Response JSON Object:
error – Error messages.
- POST /api/transaction/(txid)
Submit a complete (signed) transaction.
Example request:
POST /api/transaction/111e01606fe162cda80f2ff56dff97454246c8f75534574f2863782399bfeb7b HTTP/1.1 Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJmb28ifQ.PCYPJkVZfox0jxt9jWJ44DJaQZ4-d2lnAMzvfLx9mXU Content-Type: application/json { "timestamp": "2022-04-12T15:06:24Z", "txid": "111e01606fe162cda80f2ff56dff97454246c8f75534574f2863782399bfeb7b", "address": "CCDNF5ybECTLcTkaHAtxzTtgkyu4X6hBZETgez6xJygVZ4CC", "public_key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAlB8JV/ZuTX9CTAw182QUzSfTYbJ9AzpFyFjqpxn3piniqYwA4wGbzSpVSt8GrZ0agwRFuF9OpnQXawn28i3n2bTlF1MB130v1C9AH3sHAaRfz6kdQP553e5jKkbLsK1pxgaEMAd5i9lkbXP3LV0QVdmDV6IGb6MGpxRENjyVXAZOxLfBht5ACboHnLpS6QYZTIfY5luqeeQsrqasxHA6mRMR1xo5a+1KJE0TZvfFyibqg3g4nUU3aC7n6jxcb9fDAXe5OixzfrKQt0lF1oDVzg9B3WnogvJI9uYttnn0zUPzGDR4XIqgFqAVtC4azKZnqWegn/bQq9K7de9Z8pifDQIDAQAB", "signature": "Vl6N+AIdU8m7SFtisftM6WCgtZ6ZLc42PJxJwq7baW5Dsby2A4m1SsIHd4IHjh/YDGJp8LvjT14dJLH4yh0jOrvbpLxHad/nBtedeZF8fdwqvTBYozY/1Bqhze2uROAuqNjJBOIsT3xnWNonPlyaqVOjW0jRmA2HHWLeHsG6WXLsUrJk29BkmzXiqLEu6AxkSpcWtpDy/aWgLRE4DIVjGGcveT+g0h0aTFo+h8zVYXZVFEhiZkA5P+pkSCLAqvjT8TQpNV4xy/WNz1RugccNNPAnQJck5jd4jDpP/bq1AeheDV5dYzjdTjanlIee7iXJUALehDb1ZWkspeVEqq8/+w==", "inflows": [ { "outflow_txid": "7cbc0b8aeee94dc7777af6e0a0f14a4b0617b6b25f9656cc7fbfafc7814e4934", "outflow_idx": 1 } ], "outflows": [ { "amount": 200, "subject": "Vm9nb24gUG9ldHJ5" } ], "version": "1" }
Example response:
HTTP/1.1 201 CREATED Content-Type: application/json {"received": "2022-04-12T16:28:01Z"}
- Required Role:
- Request Headers:
Authorization – An Authorization Token as a Bearer Token.
Content-Type –
application/json
- Request Body:
The Transaction JSON data.
- Status Codes:
200 OK – The transaction already exists.
201 Created – The transaction has been received and processed.
202 Accepted – The transaction has been received and will be processed.
400 Bad Request – Bad request. See the Response JSON Object error property for messages.
401 Unauthorized – Unauthorized.
500 Internal Server Error – Server error.
- Response Headers:
Content-Type –
application/json
- Response JSON Object:
received – The ISO8601 timestamp at which the transaction was received.
error – Error messages.
- GET /api/transaction/pending
Get pending transactions.
Example request:
GET /api/transaction/pending?earliest=20220415T041537Z HTTP/1.1 Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJmb28ifQ.PCYPJkVZfox0jxt9jWJ44DJaQZ4-d2lnAMzvfLx9mXU
Example response:
HTTP/1.1 200 OK Content-Type: application/json [ { "timestamp": "2022-04-15T04:20:32Z", "txid": "1c95010b33468d720d579ecee95f9830cd93b7fd2b08d71e91e5471e4655267d", "address": "CCFGYFvC9LmMH4bRqC2U5e9HTWbz4sAMKDcU3jX7XKLbHwCC", "public_key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAt3kxpLXrgJccMOAUqNyDAP2zxeAb5rSojkYRSgRUN1YTlbpItHMRclg961uRFNZM8fCghnux9zRjOGg8UxTlftGXq0B4y5Xja3M+uOSVHO5EuLHgxrMqRm8Hz+3WNSvOYoLInTKvgEAQPL45QjREsB+O3Db9mb2WnRbghbS0Fn1vhhwrd8MVaSMy+xVe9+u+cZYrGfE7SqHdgRczDEJIGi+unTfvGN8bFQHosuVSApX8KWn0juTxhsgmBlZ1u8XcfSVZk7/OtRQ+h29YAYm/K5za+MHJpqWEAddMZirBnvi81facsWAbAFtNLtuVVBluNxWGCs80t4Dw8VtpR7XN+wIDAQAB", "signature": "oK7uEW1EPus8ysdHZgUlExf7cxXifpQJ2vvCERgIMACwiL/ARwkBbfrYqoKzt1akxBHSt+8B3xaKEedcSKLbWCb0z0k/w99bJBr1AVAoHovjEMQq5DWoz/oPpMtkUevSIuCET47LJpGKm94j1R1CSVq+Xq/9WAeKK2J2fIN/62vrdNBKLWZTYdVZ5Ed22pLptSHe2t7xc1EBB8xCGMxOomGBk4iInM/hNydfh31KdeMtQzw/Jnimr4OAJu5YvBxh0sr3kFrFfLXje+akT4YYblPWadvyFhVOoDyY9vDmCPEzvJPpHtRb7GiNrkfDtbTL1LX+KOa6cfRNIyzrLWgpbQ==", "inflows": [ { "outflow_txid": "908a8c102cb84a93242a71d904f3853a66e800c8c158db33c00b0d939feb68a8", "outflow_idx": 0 } ], "outflows": [ {"amount": 100, "support": "VG93ZWw"}, {"amount": 400, "address": "CCFGYFvC9LmMH4bRqC2U5e9HTWbz4sAMKDcU3jX7XKLbHwCC"} ], "version": "1" }, { "timestamp": "2022-04-15T04:24:13Z", "txid": "c51f33a0b6057750ec7fee3ad46a880f59032f9e8e0724c0456ccb020ed3b5da", "address": "CCFGYFvC9LmMH4bRqC2U5e9HTWbz4sAMKDcU3jX7XKLbHwCC", "public_key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAt3kxpLXrgJccMOAUqNyDAP2zxeAb5rSojkYRSgRUN1YTlbpItHMRclg961uRFNZM8fCghnux9zRjOGg8UxTlftGXq0B4y5Xja3M+uOSVHO5EuLHgxrMqRm8Hz+3WNSvOYoLInTKvgEAQPL45QjREsB+O3Db9mb2WnRbghbS0Fn1vhhwrd8MVaSMy+xVe9+u+cZYrGfE7SqHdgRczDEJIGi+unTfvGN8bFQHosuVSApX8KWn0juTxhsgmBlZ1u8XcfSVZk7/OtRQ+h29YAYm/K5za+MHJpqWEAddMZirBnvi81facsWAbAFtNLtuVVBluNxWGCs80t4Dw8VtpR7XN+wIDAQAB", "signature": "RCC0qYRqRapcSMLSzvQa7ihtqpQZkNZvEJerSAfkT6WKBdVIuQ6gr4xK9AcZ2CxRkuBZIc2Hcz2bCEWSnTT0MXOMZGe24NhLQQo+gK2KxWN+JMTDCu7lWx7GaBN2WwEGxMzSXCS1qU12y3Ji8ovX3YYRTgh1fD4E0sG9aaYp8N7/cIHgSJg4qWgxWBxcm+0nzzC3DhptdmxjtegMtCzcrb/0bZfFigvzLPZGVZcYi3Zy1t6t2jF1+qThaJte5NCwy2+Au/4LHpBopIOghFt4cgOJROQuHEsg/x+ahVhzbupQ504vfswpXQkBW9d5xbmRN/RhK5lgKUg91qQdC4Jh0g==", "inflows": [ { "outflow_txid": "908a8c102cb84a93242a71d904f3853a66e800c8c158db33c00b0d939feb68a8", "outflow_idx": 0 } ], "outflows": [ {"amount": 100, "subject": "Vm9nb24gUG9ldHJ5"}, {"amount": 400, "address": "CCFGYFvC9LmMH4bRqC2U5e9HTWbz4sAMKDcU3jX7XKLbHwCC"} ], "version": "1" }, { "timestamp": "2022-04-15T04:26:19Z", "txid": "eae076dced7412a4f951d9dc0b1d2d5786407c38dcf039bedb809e071f1f3fcc", "address": "CCFGYFvC9LmMH4bRqC2U5e9HTWbz4sAMKDcU3jX7XKLbHwCC", "public_key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAt3kxpLXrgJccMOAUqNyDAP2zxeAb5rSojkYRSgRUN1YTlbpItHMRclg961uRFNZM8fCghnux9zRjOGg8UxTlftGXq0B4y5Xja3M+uOSVHO5EuLHgxrMqRm8Hz+3WNSvOYoLInTKvgEAQPL45QjREsB+O3Db9mb2WnRbghbS0Fn1vhhwrd8MVaSMy+xVe9+u+cZYrGfE7SqHdgRczDEJIGi+unTfvGN8bFQHosuVSApX8KWn0juTxhsgmBlZ1u8XcfSVZk7/OtRQ+h29YAYm/K5za+MHJpqWEAddMZirBnvi81facsWAbAFtNLtuVVBluNxWGCs80t4Dw8VtpR7XN+wIDAQAB", "signature": "WCHBQ/mM2apUCJ+ao7ZXOo3bt8z7GCwEZKgUIPqOn7j2pfKwg2mjgFjKX4pf2kgJ1ZAxVImaBJZSP4JoVWVSEmnrdE4pclg4IeYA9fDhWTJqoJ1YxqxIgrYBrq7Hqth6f1kdWEctZQrg7hdXRau5mT7l9PwKusUKlt+ktVzaaijD3Lnr6pTY1miEPFsPiYPG7kgvWzm1glrPmKU62E9LKqJl6Pca5vayn/1+3VgLGqA/evznLcr2MgJea442WDcva0L3GGE7Wo+LFeCreno819/sWI0jGK0z3zUK7gWU1FojB0v07FdUu6jFdTYSrBTLUR5zHVN7TMWYT4Nd+JtV3g==", "inflows": [ { "outflow_txid": "908a8c102cb84a93242a71d904f3853a66e800c8c158db33c00b0d939feb68a8", "outflow_idx": 0 } ], "outflows": [ {"amount": 100, "address": "CCCDwzcN5sNSyH5rTjj4mEPLSSDEb6Vz356e3YGMuWT4roCC"}, {"amount": 400, "address": "CCFGYFvC9LmMH4bRqC2U5e9HTWbz4sAMKDcU3jX7XKLbHwCC"} ], "version": "1" } ]
- Required Role:
- Request Headers:
Authorization – An Authorization Token as a Bearer Token.
- Query Parameters:
earliest – (Optional) Only return pending transactions received by the node since this timestamp (provided in compact ISO8601 format (
yyyymmddThhmmssZ
)). If not provided, all valid pending transactions will be returned.
- Status Codes:
200 OK – Success.
400 Bad Request – Bad request. See the Response JSON Object error property for messages.
401 Unauthorized – Unauthorized.
500 Internal Server Error – Server error.
- Response Headers:
Content-Type –
application/json
- Response:
A JSON list of pending Transaction data.
- Response JSON Object:
error – Error messages.
- GET /wallet/(address)/balance
Get the balance in CCC for address.
Example request:
GET /api/wallet/CCFGYFvC9LmMH4bRqC2U5e9HTWbz4sAMKDcU3jX7XKLbHwCC/balance HTTP/1.1 Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJmb28ifQ.PCYPJkVZfox0jxt9jWJ44DJaQZ4-d2lnAMzvfLx9mXU
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "balance": 100, "as_of_block": "000000039dce716d704f90d0264a3448786dd67d7586fb21d1643eee300a5d27" }
- Required Role:
- Request Headers:
Authorization – An Authorization Token as a Bearer Token.
- Status Codes:
200 OK – Success.
400 Bad Request – Bad request. See the Response JSON Object error property for messages.
401 Unauthorized – Unauthorized.
404 Not Found – Invalid address.
500 Internal Server Error – Server error.
- Response Headers:
Content-Type –
application/json
- Response JSON Object:
balance – The wallet balance in CCC.
as_of_block – The latest block’s hash used to calculate the balance.
error – Error messages.
- GET /subject/(subject)/balance
Get the balance (i.e. subject transactions minus forgiveness transactions) in CCC for the (encoded) subject.
Example request:
GET /api/subject/Vm9nb24gUG9ldHJ5/balance HTTP/1.1 Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJmb28ifQ.PCYPJkVZfox0jxt9jWJ44DJaQZ4-d2lnAMzvfLx9mXU
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "balance": 300, "as_of_block": "000000039dce716d704f90d0264a3448786dd67d7586fb21d1643eee300a5d27" }
- Required Role:
- Request Headers:
Authorization – An Authorization Token as a Bearer Token.
- Status Codes:
200 OK – Success.
400 Bad Request – Bad request. See the Response JSON Object error property for messages.
401 Unauthorized – Unauthorized.
404 Not Found – Invalid subject encoding.
500 Internal Server Error – Server error.
- Response Headers:
Content-Type –
application/json
- Response JSON Object:
balance – The subject balance in CCC.
as_of_block – The latest block’s hash used to calculate the balance.
error – Error messages.
- GET /subject/(subject)/support
Get the support total in CCC for the (encoded) subject.
Example request:
GET /api/subject/Vm9nb24gUG9ldHJ5/balance HTTP/1.1 Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJmb28ifQ.PCYPJkVZfox0jxt9jWJ44DJaQZ4-d2lnAMzvfLx9mXU
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "support": 1200, "as_of_block": "000000039dce716d704f90d0264a3448786dd67d7586fb21d1643eee300a5d27" }
- Required Role:
- Request Headers:
Authorization – An Authorization Token as a Bearer Token.
- Status Codes:
200 OK – Success.
400 Bad Request – Bad request. See the Response JSON Object error property for messages.
401 Unauthorized – Unauthorized.
404 Not Found – Invalid subject encoding.
500 Internal Server Error – Server error.
- Response Headers:
Content-Type –
application/json
- Response JSON Object:
support – The support total in CCC.
as_of_block – The latest block’s hash used to calculate the support total.
error – Error messages.
JSON Schemas
Block
type |
object |
|
properties |
||
|
type |
integer |
minimum |
0 |
|
|
type |
date-time |
|
type |
string |
maxLength |
64 |
|
minLength |
64 |
|
|
type |
string |
maxLength |
64 |
|
minLength |
64 |
|
|
type |
string |
maxLength |
64 |
|
minLength |
64 |
|
|
type |
integer |
exclusiveMinimum |
0 |
|
|
type |
string |
maxLength |
64 |
|
minLength |
64 |
|
|
type |
array |
items |
Transaction |
|
|
type |
string |
pattern |
^[1]$ |
Transaction
type |
object |
|||
properties |
||||
|
type |
date-time |
||
|
type |
string |
||
maxLength |
64 |
|||
minLength |
64 |
|||
|
type |
string |
||
|
type |
string |
||
|
type |
string |
||
|
type |
array |
||
items |
Inflow |
|||
type |
object |
|||
properties |
||||
|
type |
string |
||
maxLength |
64 |
|||
minLength |
64 |
|||
|
type |
integer |
||
minimum |
0 |
|||
|
type |
array |
||
items |
Outflow |
|||
type |
object |
|||
properties |
||||
|
type |
integer |
||
minimum |
1 |
|||
|
type |
string |
||
|
type |
string |
||
minLength |
1 |
|||
|
type |
string |
||
minLength |
1 |
|||
|
type |
string |
||
minLength |
1 |
|||
|
type |
string |
||
pattern |
^[1]$ |
(Properties in bold are required.)