Can someone explain to me how, where, and when is the https://github.com/oraclize/ethereum-api/blob/master/connectors/oraclizeConnector.sol deployed to ethereum blockchain ? This is the implementation of doing the queries. The user only imports the OraclizeAPI https://github.com/oraclize/ethereum-api/blob/master/oraclizeAPI_0.4.sol in his own contract. Where does reside the connector implementation? it's not specified in the OraclizeAPI. Thanks.


Let's do some detective work.

In the oraclizeAPI contract, there are these lines that connect to an OraclizeAddressResolver (OAR). If we look at the rest of the code, this OAR is queried for the current OraclizeConnector address, and then initialized.

The following lines state the active OARs on various networks the API will connect with:

https://github.com/oraclize/ethereum-api/blob/master/oraclizeAPI_0.4.sol#L322-L327 OAR = OraclizeAddrResolverI(0x1d3B2638a7cC9f2CB3D298A3DA7a90B67E5506ed);

So from that, it would appear giving 0x1d3B2638a7cC9f2CB3D298A3DA7a90B67E5506ed address on mainnet a look would be worthwhile.


Reading the contract, as of this date it appears to have 0x3dbdc81a6edc94c720b0b88fb65dbd7e395fdcf6 address in its storage.

When we go to this address on etherscan, its verified code appears to point to it being Oraclize Connector v1.2.0

  • Doesn't that mean they can switch out the implementation under the hood at will, for example raising fees for deployed contracts that are already using their api? – user1282931 Aug 22 '18 at 12:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.