Reputation: 471
I am trying to run a chainlink multiword request adapting the code in the docs but I keep getting an error:
transact to MultiWordConsumer.fulfillMultipleParameters errored: Error encoding arguments: Error: invalid arrayify value (argument="value", value="", code=INVALID_ARGUMENT, version=bytes/5.4.0)
My code is pretty similar to the one in the example docs:
function requestMultipleParameters(
bytes32 specId,
uint256 payment) public{
specId = 0x3934636531316335393937643432336338646331383761653431306536653163;
payment = 100000000000000;
Chainlink.Request memory req = buildChainlinkRequest(specId, address(this), this.fulfillMultipleParameters.selector);
req.addUint("times", 10000);
requestOracleData(req, payment);}
with:
event RequestMultipleFulfilled(
bytes32 indexed requestId,
uint256 indexed usd,
uint256 indexed eur,
uint256 jpy);
and:
function fulfillMultipleParameters(
bytes32 requestId,
uint256 usdResponse,
uint256 eurResponse,
uint256 jpyResponse)
public
recordChainlinkFulfillment(requestId){
emit RequestMultipleFulfilled(requestId, usdResponse, eurResponse, jpyResponse);
usd = usdResponse;
eur = eurResponse;
jpy = jpyResponse;}
What am I doing wrong? thanks !
Upvotes: 0
Views: 173
Reputation: 856
are you running this via remix? If so, you need to provide inputs to the function in the correct format. See this response https://ethereum.stackexchange.com/questions/96383/invalid-arrayify-value-while-using-bytes32-array/96399
Upvotes: 1