``` pragma solidity ^0.6.0; import "https://raw.githubusercontent.com/smartcontractkit/chainlink/develop/evm-contracts/src/v0.6/ChainlinkClient.sol"; contract GetAddressBalance is ChainlinkClient { uint256 public address_balance; address private oracle; bytes32 private jobId; uint256 private fee; constructor() public { setPublicChainlinkToken(); oracle = 0x2f90A6D021db21e1B2A077c5a37B3C7E75D15b7e; jobId = "29fa9aa13bf1468788b7cc4a500a45b8"; fee = 0.1 * 10 ** 18; // 0.1 LINK } function requestBTCAddressBalance(string memory _btcAddress) public returns (bytes32 requestId) { Chainlink.Request memory request = buildChainlinkRequest(jobId, address(this), this.fulfill.selector); // Set the URL to perform the GET request on request.add("get", this.getReqURL(_btcAddress)); return sendChainlinkRequestTo(oracle, request, fee); } function requestURLBalance(string memory url) public returns (bytes32 requestId) { Chainlink.Request memory request = buildChainlinkRequest(jobId, address(this), this.fulfill.selector); return sendChainlinkRequestTo(oracle, request, fee); } function requestEthereumPrice() public returns (bytes32 requestId) { Chainlink.Request memory request = buildChainlinkRequest(jobId, address(this), this.fulfill.selector); // Set the URL to perform the GET request on request.add("get", "https://min-api.cryptocompare.com/data/price?fsym=ETH&tsyms=USD"); // Set the path to find the desired data in the API response, where the response format is: // {"USD":243.33} request.add("path", "USD"); // Multiply the result by 100 to remove decimals request.addInt("times", 100); // Sends the request return sendChainlinkRequestTo(oracle, request, fee); } /** * Receive the response in the form of uint256 */ function fulfill(bytes32 _requestId, uint256 total_received) public recordChainlinkFulfillment(_requestId) { address_balance = total_received; } function getReqURL(string memory _btcAddress) public pure returns(string memory) { return string(abi.encodePacked("https://api.blockcypher.com/v1/btc/main/addrs/", _btcAddress, "/balance")); } function destroy() public{ selfdestruct(msg.sender); } } ```