POST/ledger/v3/blockchains/besu
Hyperledger Besu Ethereum Enterprise Client JSON-RPC API. For some protected methods, the endpoint requires authentication via the Authorisation API. It accepts OAuth2 tokens (for Trusted Apps) or SIOP tokens (for DIDs). The protected methods are:
- eth_sendRawTransaction
- eth_estimateGas
Request
- application/json
Body
required
The body follows the JSON-RPC 2.0 specification. It requires the following fields:
- jsonrpc: Must be exactly "2.0"
- method: Hyperledger Besu JSON-RPC native method that is invoked. The list of available methods can be found in the Ledger API technical specifications List of JSON-RPC methods.
- params: Array of parameters.
- id: Identifier established by the client.
- Array [
- MOD1
- MOD3
- ]
Must be exactly "2.0"
Besu JSON-RPC native method to be invoked
params object[]required
Array of parameters
Identifier established by the client
Responses
- 200
- 400
- 401
- 403
Response
- application/json
- Schema
- Example (from schema)
- Get Block
- Get Transaction
- Send Transaction
Schema
- MOD2
- MOD4
Must be exactly "2.0"
Same identifier established by the client in the call
result object
Result of the call
error object
Error details
Error code
Error message
{
"jsonrpc": "string",
"id": 0,
"result": [
null
],
"error": {
"code": 0,
"message": "string"
}
}
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"number": "0x1e240",
"hash": "0x266bd6a41047c0929ebedd56cae148caab0d20a23aa1895bb95524a300ef9187",
"parentHash": "0x705094eb8ca67929254bedaff973d254311d72a38dc2b95a8711682f034fd3b4",
"nonce": "0x0000000000000000",
"sha3Uncles": "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347",
"logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
"transactionsRoot": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
"stateRoot": "0x4b7559720ae8af08782bcadc07c94243ceaf5fe1d7ee0914d76ad37969791dc4",
"receiptsRoot": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
"miner": "0x7df7b640d9c4c24f563a7d5702499521255fc165",
"difficulty": "0x1",
"totalDifficulty": "0x1e241",
"extraData": "0xf90148a00000000000000000000000000000000000000000000000000000000000000000f854947df7b640d9c4c24f563a7d5702499521255fc165949d2375d1b45b54603a365e23e0197c0a7a8150c894da316adfafdfe6c627e9429176954f25e4a2fb8e94f618d305b3cc3e7181937da874ad07d6f2d67c10808400000000f8c9b841e5e6da6c913c81673972889aeaf5b1dc1b4ae3070ed9dcc3a9e8d7de36a7f778694ff632bdc8fd8964e6b95e592eb17132f8eeb42ebd8044e3646bc7d7154fde01b841e7d6e72d7423f1eb9ba5448fd7c4c2f2770a668bdf187aa3a330e708bf369cf1645ea3d2f03924125509c3aaaef01c1efd8c26122abcd7c96ba080f391d1db6801b841c30e22e5549ed4b06ab8a9f19cd1b41d250e06e5229b945475f2616b9c6eb3a9325a9ea57926da4081a33279a78fab219f803ed638300378e819bb6ffc60479100",
"size": "0x350",
"gasLimit": "0x1fffffffffffff",
"gasUsed": "0x0",
"timestamp": "0x5e7b16f4",
"uncles": [],
"transactions": []
}
}
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"blockHash": "0x1d59ff54b1eb26b013ce3cb5fc9dab3705b415a67127a003c3e61eb445bb8df2",
"blockNumber": "0x5daf3b",
"from": "0xa7d9ddbe1f17865597fbd27ec712455208b6b76d",
"gas": "0xc350",
"gasPrice": "0x0",
"hash": "0x88df016429689c079f3b2f6ad39fa052532c56795b733da78a91ebe6a713944b",
"input": "0x68656c6c6f21",
"nonce": "0x15",
"to": "0xf02c1c8e6114b1dbe8937a39260b5b0a374432bb",
"transactionIndex": "0x41",
"value": "0xf3dbb76162000",
"v": "0x25",
"r": "0x1b5e176d927f8e9ab405058b2d2457392da3e20f328b16ddabcebc33eaac5fea",
"s": "0x4ba69724e8f69de52f0125ad8b3c5c2cef33019bac3249e2c0a2192766d1721c"
}
}
{
"jsonrpc": "2.0",
"id": 1,
"result": "0xe670ec64341771606e55d6b4ca35a1a6b75ee3d5145a99d05921026d1527331"
}
Bad request
- application/problem+json
- Schema
- Example (from schema)
- Bad Request
- Invalid Token
- Method Disabled
- Invalid Method
Schema
Default value: about:blank
An absolute URI that identifies the problem type. When dereferenced, it SHOULD provide human-readable documentation for the problem type.
A short summary of the problem type.
Possible values: >= 400
and <= 600
The HTTP status code generated by the origin server for this occurrence of the problem.
A human readable explanation specific to this occurrence of the problem.
An absolute URI that identifies the specific occurrence of the problem. It may or may not yield further information if dereferenced.
{
"type": "about:blank",
"title": "Internal Server Error",
"status": 500,
"detail": "Connection timeout",
"instance": "string"
}
{
"title": "Bad Request",
"status": 400,
"detail": "Bad request.",
"type": "about:blank"
}
{
"title": "Invalid Token",
"status": 400,
"detail": "Token has expired. Max age of a token is 15 min.",
"type": "about:blank"
}
{
"title": "Bad Request",
"status": 400,
"detail": "The method 'eth_compileSolidity' is currently disabled",
"type": "about:blank"
}
{
"title": "Bad Request",
"status": 400,
"detail": "The method {method} does not exist",
"type": "about:blank"
}
Unauthorized
- application/problem+json
- Schema
- Example (from schema)
- Unauthorized
Schema
Default value: about:blank
An absolute URI that identifies the problem type. When dereferenced, it SHOULD provide human-readable documentation for the problem type.
A short summary of the problem type.
Possible values: >= 400
and <= 600
The HTTP status code generated by the origin server for this occurrence of the problem.
A human readable explanation specific to this occurrence of the problem.
An absolute URI that identifies the specific occurrence of the problem. It may or may not yield further information if dereferenced.
{
"type": "about:blank",
"title": "Internal Server Error",
"status": 500,
"detail": "Connection timeout",
"instance": "string"
}
{
"title": "Unauthorized",
"status": 401,
"detail": "The method 'eth_sendRawTransaction' is not available for anonymous access",
"type": "about:blank"
}
Forbidden
- application/problem+json
- Schema
- Example (from schema)
- Forbidden
- Deployment Forbidden
Schema
Default value: about:blank
An absolute URI that identifies the problem type. When dereferenced, it SHOULD provide human-readable documentation for the problem type.
A short summary of the problem type.
Possible values: >= 400
and <= 600
The HTTP status code generated by the origin server for this occurrence of the problem.
A human readable explanation specific to this occurrence of the problem.
An absolute URI that identifies the specific occurrence of the problem. It may or may not yield further information if dereferenced.
{
"type": "about:blank",
"title": "Internal Server Error",
"status": 500,
"detail": "Connection timeout",
"instance": "string"
}
{
"title": "Forbidden",
"status": 403,
"detail": "The method 'eth_sendRawTransaction' needs besu permissions",
"type": "about:blank"
}
{
"title": "Forbidden",
"status": 403,
"detail": "Deployment of new smart contracts is not allowed",
"type": "about:blank"
}