LINK / USD AccessControlledOffchainAggregator contract address: 0xDfd03BfC3465107Ce570a0397b247F546a42D0fA
The Access Controlled Offchain Aggregator is the Aggregator contract that each Chainlink Node sends its observations/transmissions to.
This contract is read by the EACAggregatorProxy
This page contains all of the read calls you can make to the AccessControlledOffchainAggregator contracts.
If you'd like to check out the write calls, please check the AccessControlledOffchainAggregator_Writes page.
The LINK query will provide you with the contract address of the Chainlink token that the contract compensates the nodes in
curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0x1b6b6d23"}, "latest"]}' | jq -r .result0x000000000000000000000000514910771af9ca656af840dff83e8264ecf986ca
0's)0x514910771af9ca656af840dff83e8264ecf986ca
The billingAccessController is the address that has the permissions to modify the billing variables for the contract. More details regarding the billing variables are available below in the getBilling call
curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0x996e8298"}, "latest"]}' | jq -r .result0x0000000000000000000000009db83cef9f68b63989e4e82d65d549e7ff2acda9
0's)0x9db83cef9f68b63989e4e82d65d549e7ff2acda9
The checkEnabled call will return a boolean. If true, then the read access of the aggregator contract is limited by the AccessController contract.
curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0xdc7f0124"}, "latest"]}' | jq -r .result0x0000000000000000000000000000000000000000000000000000000000000001
0x0...1 is true and 0x0...0 is false
true
The decimals value tells the reader of the contract how many decimal places they need to adjust to get the proper value.
For example, if the LINK / USD price feed has a decimlas value of 8, and the latest round shows a response of 726792272, then we would shift the decimal 8 places to end with a value of 7.26792272.
DECIMALS=$(curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0x313ce567"}, "latest"]}' | jq -r .result) && echo "$((DECIMALS))"8
8
The desctiption of the Proxy is just a friendly name, in this case displaying LINK / USD*Example Query:
DESCRIPTION=$(curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0x7284e416"}, "latest"]}' | jq -r .result) && echo $DESCRIPTION | xxd -r -pLINK / USD
LINK / USD
This call will provide you with the data for the round you have specified.
GET_ANSWER=$(curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0xb5ab58dc000000000000000000000000000000000000000000000005000000000000347a"}, "latest"]}' | jq -r .result) && echo "$((GET_ANSWER))"726792272
726792272 or, after adjusting decimals, 7.26792272
The getBilling call will return a few values. These values are intended to be updated semi regularly via the setBilling write call. The values and a brief description are below
curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0x29937268"}, "latest"]}' | jq -r .result0x0000000000000000000000000000000000000000000000000000000000000bb80000000000000000000000000000000000000000000000000000000000000064000000000000000000000000000000000000000000000000000000001082af400000000000000000000000000000000000000000000000000000000005b3f1e10000000000000000000000000000000000000000000000000000000022379f81uint320000000000000000000000000000000000000000000000000000000000000bb8
3000uint320000000000000000000000000000000000000000000000000000000000000064
100uint256000000000000000000000000000000000000000000000000000000001082af40
277000000uint320000000000000000000000000000000000000000000000000000000005b3f1e1
95678945uint320000000000000000000000000000000000000000000000000000000022379f81
574070657
Similar to the getAnswer call, this call will get additional information from the round you have specified.
curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0x9a6fc8f50000000000000000000000000000000000000000000000050000000000003493"}, "latest"]}' | jq -r .result0x000000000000000000000000000000000000000000000005000000000000349300000000000000000000000000000000000000000000000000000000287aa86900000000000000000000000000000000000000000000000000000000628ce73900000000000000000000000000000000000000000000000000000000628ce7390000000000000000000000000000000000000000000000050000000000003493uint800000000000000000000000000000000000000000000000050000000000003493
92233720368547771539int25600000000000000000000000000000000000000000000000000000000287aa869
679127145uint25600000000000000000000000000000000000000000000000000000000628ce739
1653401401uint25600000000000000000000000000000000000000000000000000000000628ce739
1653401401uint800000000000000000000000000000000000000000000000050000000000003493
92233720368547771539
This getTimestamp call will provide you with the timestamp of the block containing the data from the round you have specified.
GET_TIMESTAMP=$(curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0xb633620c000000000000000000000000000000000000000000000005000000000000347a"}, "latest"]}' | jq -r .result) && LOCALTIME=$((GET_TIMESTAMP)) && date -d @$LOCALTIMEMon 23 May 2022 03:47:51 PM CDT
This call will let you know if the provided address has access to the specified call function. For example, does Address A have permissions to request a new round? The response is a bool.
0x21f73D42Eb58Ba49dDB685dc29D3bF5c0f0373CA)has permissions to request a new round (98e5b12a).curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0x6b14daf800000000000000000000000021f73d42eb58ba49ddb685dc29d3bf5c0f0373ca0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000498e5b12a00000000000000000000000000000000000000000000000000000000"}, "latest"]}' | jq -r .result0x0000000000000000000000000000000000000000000000000000000000000000
0x0...1 is true and 0x0...0 is false
falseThe latestAnswer call provides you with the value that was written to chain during the most recent completed round
LATEST_ANSWER=$(curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0x50d25bcd"}, "latest"]}' | jq -r .result) && echo "$((LATEST_ANSWER))"701697722
701697722 or, after adjusting decimals, 7.01697722
This call will provide you with the aggregator contract's
curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0x81ff7048"}, "latest"]}' | jq -r .result0x00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000be394f5fe8b4285e42eec4b0f9ab7add44b00e00000000000000000000000000000000uint320000000000000000000000000000000000000000000000000000000000000002
2uint320000000000000000000000000000000000000000000000000000000000be394f
12466511bytes165fe8b4285e42eec4b0f9ab7add44b00e00000000000000000000000000000000
0x5fe8b4285e42eec4b0f9ab7add44b00e
This call will provide you with the most recent completed round number.
LATEST_ROUND=$(curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0x668a0f02"}, "latest"]}' | jq -r .result) && echo "$((LATEST_ROUND))"13462
13462
This call is similar to getRoundData, but it will automatically get the round data for the most recently completed round.
curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0x2c1d072e956AFFC0D435Cb7AC38EF18d24d9127c","data":"0xfeaf968c"}, "latest"]}' | jq -r .result0x00000000000000000000000000000000000000000000000500000000000034960000000000000000000000000000000000000000000000000000000029d30eba00000000000000000000000000000000000000000000000000000000628cfe6400000000000000000000000000000000000000000000000000000000628cfe640000000000000000000000000000000000000000000000050000000000003496uint800000000000000000000000000000000000000000000000050000000000003496
92233720368547771542int256 0000000000000000000000000000000000000000000000000000000029d30eba
701697722uint25600000000000000000000000000000000000000000000000000000000628cfe64
1653407332uint25600000000000000000000000000000000000000000000000000000000628cfe64
1653407332uint800000000000000000000000000000000000000000000000050000000000003496
92233720368547771542
This call will provide you with the most timestamp (unix epoch format) of the most recently completed round.
LATEST_TIMESTAMP=$(curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"8205bf6a"}, "latest"]}' | jq -r .result) && LOCALTIME=$((LATEST_TIMESTAMP)) && date -d @$LOCALTIMEWed 31 Dec 1969 06:00:00 PM CST
This call will provide you with some detailed information regarding the most recently completed round.
curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0xe5fe4577"}, "latest"]}' | jq -r .result0x5fe8b4285e42eec4b0f9ab7add44b00e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002c2d200000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000029e4922600000000000000000000000000000000000000000000000000000000628e9818bytes165fe8b4285e42eec4b0f9ab7add44b00e00000000000000000000000000000000
0x5fe8b4285e42eec4b0f9ab7add44b00euint32000000000000000000000000000000000000000000000000000000000002c2d2
180926uint80000000000000000000000000000000000000000000000000000000000000006
6int1920000000000000000000000000000000000000000000000000000000029e49226
702845478uint6400000000000000000000000000000000000000000000000000000000628e9818
1653512216
This will respond with the amount of LINK that is available in the contract to pay the node operators. The value is in gwei
curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0xd09dc339"}, "latest"]}' | jq -r .result0x00000000000000000000000000000000000000000000013fdaf35c23ebc34a40int25600000000000000000000000000000000000000000000013fdaf35c23ebc34a40
5900288414742305000000
5900.288414742305000000
The maxAnsweris the largest value that the aggregator contract will accept as valid.
curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0x70da2f67"}, "latest"]}' | jq -r .result0x000000000000000000000000000000000000000000000000000000174876e800int1920x00000000000000000000000000000000000000000000000000000000000f4240
100000000000
1000.00000000The minAnsweris the smallest value that the aggregator contract will accept as valid.
curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0x22adbc78"}, "latest"]}' | jq -r .result0x00000000000000000000000000000000000000000000000000000000000f4240int1920x00000000000000000000000000000000000000000000000000000000000f4240
1000000
0.01000000
The response will provide you with the number of observations the specified Chainlink Node has made
0xcC29be4Ca92D4Ecc43C8451fBA94C200B83991f6)has madeOBSERV_COUNT=$(curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0xe4902f82000000000000000000000000cc29be4ca92d4ecc43c8451fba94c200b83991f6"}, "latest"]}' | jq -r .result) && echo "$((OBSERV_COUNT))"9
9
Querying this will provide you with the amount of LINK (in gwei) that is owed to the specified Chianlink Node
curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0x0eafb25b000000000000000000000000218B5a7861dBf368D09A84E0dBfF6C6DDbf99DB8"}, "latest"]}' | jq -r .result0x0000000000000000000000000000000000000000000000000bf3477122e1da00uint2560000000000000000000000000000000000000000000000000bf3477122e1da00
861110505000000000
0.861110505000000000
This query will provide you with the address of the owner of the aggregator contract
curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0x8da5cb5b"}, "latest"]}' | jq -r .result0x00000000000000000000000021f73d42eb58ba49ddb685dc29d3bf5c0f0373ca
0's0x21f73d42eb58ba49ddb685dc29d3bf5c0f0373ca
This call will provide you with the address of the AccessController contract
curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0x70efdf2d"}, "latest"]}' | jq -r .result0x000000000000000000000000641b698ad1c6e503470520b0eecb472c0589dfe6
0's)0x641B698aD1C6E503470520B0EeCb472c0589dfE6
This will provide you with the Chainlink Node accound addresses of each Chainlink Node Operator participating in the specified price feed
curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0x81411834"}, "latest"]}' | jq -r .result0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000001f000000000000000000000000e3e0596ac55ae6044b757bab27426f7dc9e018d4000000000000000000000000cf4be57aa078dc7568c631be7a73adc1cda992f800000000000000000000000057cd4848b12469618b689163f507817940acca020000000000000000000000007663c5790e1ebf04197245d541279d13f3c2f362000000000000000000000000bbf078a8849d74623e36e6dbbdc8e0a35e657c26000000000000000000000000c74ce67bfc623c803d48afc74a09a6ff6b599003000000000000000000000000b976d01275b809333e3efd76d1d31fe9264466d00000000000000000000000005565b5362ff9f468ba2f144f38b87187c9a010a8000000000000000000000000218b5a7861dbf368d09a84e0dbff6c6ddbf99db8000000000000000000000000edbed9f5dea03dd0ec484577c41502af68b7c46a0000000000000000000000002a4a7afa40a9d03b425752fb4cfd5f0ff5b3964c000000000000000000000000dbfea8d5822141c13f92caa06eb94d0f3d67c243000000000000000000000000f16e77a989529aa4c58318acee8a1548df3fccc10000000000000000000000003c4ad65f5b4884397e1f09596c7ac7f8f95b3ff3000000000000000000000000cc29be4ca92d4ecc43c8451fba94c200b83991f60000000000000000000000009cfab1513ffa293e7023159b3c7a4c984b6a3480000000000000000000000000f07131f578a5f708ae2ccb9faf98458099e0ffb40000000000000000000000008b1d49a93a84b5da0917a1ed42d8a3e191c28524000000000000000000000000f34ac04a28f7cb5324a167c96b24ade9c742b44f00000000000000000000000061317c73d0225b2e37140fb9664d607b450613c600000000000000000000000043793ee58e0a3d920e3e4a115a9fa07dc4b09715000000000000000000000000f42336e35d5c1d1d0db3140e174bcfc3945f6822000000000000000000000000ddeb598fe902a13cc523aaff5240e9988edce1700000000000000000000000007bfb89db2d7217c57c3ad3d4b55826efd17dc2e90000000000000000000000008f3ab0e87b70a57bd4980111a99a1b2c4b8334f40000000000000000000000000312ea121df0a323ff535b753172736cc9d53d13000000000000000000000000a938d77590af1d98bab7dc4a0bde594fc3f9c40300000000000000000000000064c735d72eab90c04da523b6b9895773acb60f5d0000000000000000000000005a8216a9c47ee2e8df1c874252fdee467215c25b000000000000000000000000dde59ceec7a2cc8b2bd78199877ba22018966813000000000000000000000000c4b732fd121f2f3783a9ac2a6c62fd535fd13fdaaddresses [] (an array of addresses)0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000001f000000000000000000000000e3e0596ac55ae6044b757bab27426f7dc9e018d4000000000000000000000000cf4be57aa078dc7568c631be7a73adc1cda992f800000000000000000000000057cd4848b12469618b689163f507817940acca020000000000000000000000007663c5790e1ebf04197245d541279d13f3c2f362000000000000000000000000bbf078a8849d74623e36e6dbbdc8e0a35e657c26000000000000000000000000c74ce67bfc623c803d48afc74a09a6ff6b599003000000000000000000000000b976d01275b809333e3efd76d1d31fe9264466d00000000000000000000000005565b5362ff9f468ba2f144f38b87187c9a010a8000000000000000000000000218b5a7861dbf368d09a84e0dbff6c6ddbf99db8000000000000000000000000edbed9f5dea03dd0ec484577c41502af68b7c46a0000000000000000000000002a4a7afa40a9d03b425752fb4cfd5f0ff5b3964c000000000000000000000000dbfea8d5822141c13f92caa06eb94d0f3d67c243000000000000000000000000f16e77a989529aa4c58318acee8a1548df3fccc10000000000000000000000003c4ad65f5b4884397e1f09596c7ac7f8f95b3ff3000000000000000000000000cc29be4ca92d4ecc43c8451fba94c200b83991f60000000000000000000000009cfab1513ffa293e7023159b3c7a4c984b6a3480000000000000000000000000f07131f578a5f708ae2ccb9faf98458099e0ffb40000000000000000000000008b1d49a93a84b5da0917a1ed42d8a3e191c28524000000000000000000000000f34ac04a28f7cb5324a167c96b24ade9c742b44f00000000000000000000000061317c73d0225b2e37140fb9664d607b450613c600000000000000000000000043793ee58e0a3d920e3e4a115a9fa07dc4b09715000000000000000000000000f42336e35d5c1d1d0db3140e174bcfc3945f6822000000000000000000000000ddeb598fe902a13cc523aaff5240e9988edce1700000000000000000000000007bfb89db2d7217c57c3ad3d4b55826efd17dc2e90000000000000000000000008f3ab0e87b70a57bd4980111a99a1b2c4b8334f40000000000000000000000000312ea121df0a323ff535b753172736cc9d53d13000000000000000000000000a938d77590af1d98bab7dc4a0bde594fc3f9c40300000000000000000000000064c735d72eab90c04da523b6b9895773acb60f5d0000000000000000000000005a8216a9c47ee2e8df1c874252fdee467215c25b000000000000000000000000dde59ceec7a2cc8b2bd78199877ba22018966813000000000000000000000000c4b732fd121f2f3783a9ac2a6c62fd535fd13fda
[0xe3E0596AC55Ae6044b757baB27426F7dC9e018d4,0xCF4Be57aA078Dc7568C631BE7A73adc1cdA992F8,0x57CD4848b12469618b689163f507817940AccA02,0x7663C5790E1eBf04197245d541279D13f3c2f362,0xBbf078A8849D74623e36E6DBBdC8e0a35E657C26,0xc74cE67BfC623c803D48AFc74a09A6FF6b599003,0xb976d01275B809333E3EfD76D1d31fE9264466D0,0x5565b5362FF9f468bA2f144f38b87187C9a010A8,0x218B5a7861dBf368D09A84E0dBfF6C6DDbf99DB8,0xEdBED9F5dEA03dD0ec484577C41502af68B7c46a,0x2a4a7afA40a9D03B425752fb4cFd5f0FF5b3964C,0xDbfea8D5822141c13f92CaA06EB94d0F3d67C243,0xf16e77a989529AA4C58318acEe8A1548Df3fcCc1,0x3C4ad65F5b4884397e1F09596c7ac7F8F95b3fF3,0xcC29be4Ca92D4Ecc43C8451fBA94C200B83991f6,0x9cFAb1513FFA293E7023159B3C7A4C984B6a3480,0xF07131F578a5F708AE2CCB9faF98458099E0FFB4,0x8b1d49a93A84B5dA0917a1ed42D8a3E191C28524,0xf34aC04a28F7CB5324A167C96B24ADE9c742B44f,0x61317C73d0225b2E37140fb9664d607B450613C6,0x43793ee58E0a3D920e3e4a115A9FA07dc4B09715,0xF42336e35D5C1D1D0DB3140E174BcFc3945f6822,0xddEB598fe902A13Cc523aaff5240e9988eDCE170,0x7BFb89db2d7217c57C3Ad3d4B55826eFD17dC2e9,0x8F3Ab0e87B70a57bD4980111a99a1b2c4b8334F4,0x0312EA121df0a323fF535B753172736cc9d53d13,0xa938d77590aF1d98BaB7dc4a0bde594fC3F9c403,0x64c735D72EAB90C04da523B6b9895773ACb60F5D,0x5a8216a9c47ee2E8Df1c874252fDEe467215C25b,0xDdE59ceeC7A2cC8B2bD78199877BA22018966813,0xC4b732Fd121F2f3783A9Ac2a6C62fD535FD13FdA]
This query will provide you with the type and the release version of the aggregator.
curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0x181f5a77"}, "latest"]}' | jq -r .result0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000028416363657373436f6e74726f6c6c65644f6666636861696e41676772656761746f7220322e302e30000000000000000000000000000000000000000000000000string0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000028416363657373436f6e74726f6c6c65644f6666636861696e41676772656761746f7220322e302e30000000000000000000000000000000000000000000000000
AccessControlledOffchainAggregator 2.0.0
This will respond with the address of the validator contract and the gasLimit
curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0xDfd03BfC3465107Ce570a0397b247F546a42D0fA","data":"0x8e0566de"}, "latest"]}' | jq -r .result0x000000000000000000000000bcfd9b1a97ccd0a3942f0408350cdc281cdca1b10000000000000000000000000000000000000000000000000000000000033450address000000000000000000000000bcfd9b1a97ccd0a3942f0408350cdc281cdca1b1
0xBcFd9b1a97cCD0a3942f0408350cdc281cDCa1B1uint320000000000000000000000000000000000000000000000000000000000033450
210000
This gets you the version of the contract you're querying.
VERSION=$(curl -s -H "Content-Type: application/json" https://$YOUR_RPC_ENDPOINT -d '{"jsonrpc": "2.0", "id": 123, "method": "eth_call", "params":[{"from":null,"to":"0x2c1d072e956AFFC0D435Cb7AC38EF18d24d9127c","data":"0x54fd4d50"}, "latest"]}' | jq -r .result) && echo "$((VERSION))"4
4