IVerifierProxy

Git Source

Functions

s_feeManager

Gets the fee manager contract.

function s_feeManager() external view returns (IFeeManager feeManager_);

Returns

NameTypeDescription
feeManager_IFeeManagerThe fee manager contract.

verify

Verifies that the data encoded has been signed correctly by routing to the correct verifier, and bills the user if applicable.

function verify(bytes calldata payload, bytes calldata parameterPayload)
    external
    payable
    returns (bytes memory verifierResponse);

Parameters

NameTypeDescription
payloadbytesThe encoded data to be verified, including the signed report.
parameterPayloadbytesThe fee metadata for billing.

Returns

NameTypeDescription
verifierResponsebytesThe encoded report from the verifier.

verifyBulk

Bulk verifies that the data encoded has been signed correctly by routing to the correct verifier, and bills the user if applicable.

function verifyBulk(bytes[] calldata payloads, bytes calldata parameterPayload)
    external
    payable
    returns (bytes[] memory verifiedReports);

Parameters

NameTypeDescription
payloadsbytes[]The encoded payloads to be verified, including the signed report.
parameterPayloadbytesThe fee metadata for billing.

Returns

NameTypeDescription
verifiedReportsbytes[]The encoded reports from the verifier.

getVerifier

Retrieves the verifier address that verifies reports for a config digest.

function getVerifier(bytes32 configDigest) external view returns (address verifierAddress);

Parameters

NameTypeDescription
configDigestbytes32The config digest to query for.

Returns

NameTypeDescription
verifierAddressaddressThe address of the verifier contract that verifies reports for a given config digest.

Structs

ReportV3

Represents a data report from a Data Streams for v3 schema (crypto streams).

The price, bid, and ask values are carried to either 8 or 18 decimal places, depending on the streams. For more information, see https://docs.chain.link/data-streams/crypto-streams and https://docs.chain.link/data-streams/reference/report-schema.

struct ReportV3 {
    bytes32 feedId;
    uint32 validFromTimestamp;
    uint32 observationsTimestamp;
    uint192 nativeFee;
    uint192 linkFee;
    uint32 expiresAt;
    int192 price;
    int192 bid;
    int192 ask;
}

Properties

NameTypeDescription
feedIdbytes32The stream ID the report has data for.
validFromTimestampuint32The earliest timestamp for which price is applicable.
observationsTimestampuint32The latest timestamp for which price is applicable.
nativeFeeuint192The base cost to validate a transaction using the report, denominated in the chain’s native token (e.g., WETH/ETH).
linkFeeuint192The base cost to validate a transaction using the report, denominated in LINK.
expiresAtuint32The latest timestamp where the report can be verified onchain.
priceint192The DON consensus median price (8 or 18 decimals).
bidint192The simulated price impact of a buy order up to the X% depth of liquidity usage (8 or 18 decimals).
askint192The simulated price impact of a sell order up to the X% depth of liquidity usage (8 or 18 decimals).