Actions

EACAggregatorProxy Writes: Difference between revisions

From Chainlink Community Wiki

No edit summary
No edit summary
Line 5: Line 5:


This prevents the users from having to update anything if they wanted to move to a new contract version/release
This prevents the users from having to update anything if they wanted to move to a new contract version/release
===='''Read Calls'''====
===='''Write Calls'''====
This page contains all of the read calls you can make to the EACAggregatorProxy contracts.
This page contains all of the write calls you can make to the EACAggregatorProxy contracts.


If you'd like to check out the write calls, please check the [[EACAggregatorProxy_Writes]] page.
If you'd like to check out the read calls, please check the [[EACAggregatorProxy_Reads]] page.


----
----
====='''accessController'''=====
====='''acceptOwnership'''=====
The <code>accessController</code> is a smart contract that acts as a whitelist for which addresses are able to call the contractFor the LINK / USD price feed, the referenced <code>accessController</code> smart contract is a null value set to <code>0x0000000000000000000000000000000000000000</code>
The <code>acceptOwnership</code> call is dependent upon the <code>transferOwnership</code> call.  In order to prevent accidentally transferring the contract to an address that cannot manage it, the ownership will only transfer once the <code>acceptOwnership</code> call has been made from the same address that the <code>transferOwnership</code> call had previously been made to.
*Example Query:
*Example Query:
**<code>ACCESS_CONTROLLER=$(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":"0xbc43cbaf"}, "latest"]}' | jq -r .result) && echo "$ACCESS_CONTROLLER"</code>
**<code>curl</code>
 
*Example Response ('''valid'''):
*Example Response:
** <code>0x0000000000000000000000000000000000000000000000000000000000000000</code>
***(remove leading 24 <code>0</code>'s)
****accessController = <code>'''0x0000000000000000000000000000000000000000'''</code>
*Example Response ('''invalid'''):
** <code>0x0000000000000000000000000000000000000000000000000000000000000000</code>
** <code>0x0000000000000000000000000000000000000000000000000000000000000000</code>
***(remove leading 24 <code>0</code>'s)
***(remove leading 24 <code>0</code>'s)

Revision as of 18:11, 25 May 2022

EACAggregatorProxy

LINK / USD EAC AggregatorProxy contract address: 0x2c1d072e956affc0d435cb7ac38ef18d24d9127c

The Access Controlled Aggregator Proxy is a proxy contract that enables the owner to point it to other contracts as needed/desired.

This prevents the users from having to update anything if they wanted to move to a new contract version/release

Write Calls

This page contains all of the write calls you can make to the EACAggregatorProxy contracts.

If you'd like to check out the read calls, please check the EACAggregatorProxy_Reads page.


acceptOwnership

The acceptOwnership call is dependent upon the transferOwnership call. In order to prevent accidentally transferring the contract to an address that cannot manage it, the ownership will only transfer once the acceptOwnership call has been made from the same address that the transferOwnership call had previously been made to.

  • Example Query:
    • curl
  • Example Response (valid):
    • 0x0000000000000000000000000000000000000000000000000000000000000000
      • (remove leading 24 0's)
        • accessController = 0x0000000000000000000000000000000000000000
  • Example Response (invalid):
    • 0x0000000000000000000000000000000000000000000000000000000000000000
      • (remove leading 24 0's)
        • accessController = 0x0000000000000000000000000000000000000000

aggregator

The aggregator is the on-chain contract that each of the Chainlink Nodes responds to. The AggregatorProxy contract points to the configured Aggregator as it's primary source of information

  • Example Query:
    • 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":"0x2c1d072e956AFFC0D435Cb7AC38EF18d24d9127c","data":"0x245a7bfc"}, "latest"]}' | jq -r .result) && echo "$AGGREGATOR"
  • Example Response:
    • 0x000000000000000000000000dfd03bfc3465107ce570a0397b247f546a42d0fa
      • (remove leading 24 0's)
        • aggregator = 0xdfd03bfc3465107ce570a0397b247f546a42d0fa