IAirnodeRrpV0
Title: IAirnodeRrpV0
Author: Vendored minimal subset of API3 (https://github.com/api3dao/airnode/blob/master/packages/airnode-protocol/contracts/rrp/interfaces/IAirnodeRrpV0.sol).
Upstream license: MIT.
Minimal interface for the API3 Airnode Request-Response Protocol (RRP), used by QRNG.
Vendored subset — do not add an api3 dependency. The Airnode fulfils a full request by calling
the registered fulfillFunctionId on fulfillAddress; that callback must verify
msg.sender == airnodeRrp (the onlyAirnodeRrp guard).
Functions
setSponsorshipStatus
Sets whether requester is sponsored by the caller (the sponsor).
A full request only succeeds if its sponsor has sponsored its requester.
function setSponsorshipStatus(address requester, bool sponsorshipStatus) external;Parameters
| Name | Type | Description |
|---|---|---|
| requester | address | The requester contract being (un)sponsored. |
| sponsorshipStatus | bool | True to sponsor, false to revoke. |
makeFullRequest
Makes a full request whose template + parameters are fully supplied on-chain.
function makeFullRequest(
address airnode,
bytes32 endpointId,
address sponsor,
address sponsorWallet,
address fulfillAddress,
bytes4 fulfillFunctionId,
bytes calldata parameters
) external returns (bytes32 requestId);Parameters
| Name | Type | Description |
|---|---|---|
| airnode | address | The Airnode address serving the request. |
| endpointId | bytes32 | The endpoint identifier on that Airnode. |
| sponsor | address | The sponsor account funding fulfilment via sponsorWallet. |
| sponsorWallet | address | The wallet (derived from the sponsor) that pays for fulfilment gas. |
| fulfillAddress | address | The contract the Airnode calls back. |
| fulfillFunctionId | bytes4 | The selector the Airnode calls on fulfillAddress. |
| parameters | bytes | ABI-encoded request parameters (encoded per Airnode ABI spec). |
Returns
| Name | Type | Description |
|---|---|---|
| requestId | bytes32 | The identifier assigned to this request. |