Daniel Vieira
Daniel Vieira

Reputation: 471

Error with RequestMultipleParameters and FulfillMultipleParameters Chainlink

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

Answers (1)

Harry Papacharissiou
Harry Papacharissiou

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

Related Questions