Viewing Chainlink Transactions on the Ropsten Testnet

To begin, you can watch the transactions of the deployed LINK token contract on Ropsten here. This link filters for the event topics of data requests. Click on a transaction and go to the Event Logs tab and you’ll notice some of the events contain a lot more data than the others. Those are the requests for data, and you can change the Hex drop-down to Text on the last few entries and see part of the payload.

See the URL and the path that makes up the payload of the request.

You can also use a CBOR decoder to view the full payload in plain text:

We use CBOR to encode requests for data.

For example, here is a transaction of one of my tests. First, you can see that the beginning of the Input Data, 0x620cae68, is the function selector of requestEthereumPrice(string) when you hash it with Keccak-256. Then, if you convert the input data to UTF8, you’ll see that I used “USD” for my input parameter.

USD is the input parameter used.

Going to the Event Logs tab of that transaction, you can again see the requesting payload, and the address of the oracle contract that I used, here. On the oracle contract, you’ll see the transaction that my node created to fulfill the request here, and again, you can convert the Input Data to UTF8 to see the value that was given.

696.64 is the value given to the oracle contract.

Additionally, you can go to the Event Logs tab, and directly obtain the hex value sent to the contract:

Topics[2] contains the requested value.

Once you enter the value of the last topic (Topics[2]) into a hex-to-string converter, you can see the value:

The requesting contract wanted bytes returned.

If you would like to deploy contracts or run your own Chainlink node on Ropsten, check out the examples on our Github. You can now create your own contracts to utilize Chainlink on Ropsten. Feel free to ask us questions on Gitter!