Search
This guide outlines the functions which can be used with Chainlink's Feed Registry. You can learn more about the feed registry here.
Name | Description |
---|---|
decimals | The number of decimals in the response. |
description | The description of the aggregator that the proxy points to. |
getRoundData | Get data from a specific round. |
latestRoundData | Get data from the latest round. |
version | The version representing the type of aggregator the proxy points to. |
getFeed | Returns the primary aggregator address of a base / quote pair. |
getPhaseFeed | Returns the aggregator address of a base / quote pair at a specified phase. |
isFeedEnabled | Returns true if an aggregator is enabled as primary on the registry. |
getPhase | Returns the raw starting and ending aggregator round ids of a base / quote pair. |
getRoundFeed | Returns the underlying aggregator address of a base / quote pair at a specified round. |
getPhaseRange | Returns the starting and ending round ids of a base / quote pair at a specified phase. |
getPreviousRoundId | Returns the previous round id of a base / quote pair given a specified round. |
getNextRoundId | Returns the next round id of a base / quote pair given a specified round. |
getCurrentPhaseId | Returns the current phase id of a base / quote pair. |
Get the number of decimals present in the response value.
function decimals(address base, address quote) external view returns (uint8)
base
: The base asset address.quote
: The quote asset address.RETURN
: The number of decimals.Get the description of the underlying aggregator that the proxy points to.
function description(address base, address quote) external view returns (string memory)
base
: The base asset address.quote
: The quote asset address.RETURN
: The description of the underlying aggregator.Get data about a specific round, using the roundId
.
function getRoundData(address base, address quote, uint80 _roundId) external view
returns (
uint80 roundId,
int256 answer,
uint256 startedAt,
uint256 updatedAt,
uint80 answeredInRound
)
base
: The base asset address.quote
: The quote asset address.roundId
: The round ID.roundId
: The round ID.answer
: The price.startedAt
: Timestamp of when the round started.updatedAt
: Timestamp of when the round was updated.answeredInRound
: The round ID of the round in which the answer was computed.Get the price from the latest round.
function latestRoundData(address base, address quote) external view
returns (
uint80 roundId,
int256 answer,
uint256 startedAt,
uint256 updatedAt,
uint80 answeredInRound
)
roundId
: The round ID.answer
: The price.startedAt
: Timestamp of when the round started.updatedAt
: Timestamp of when the round was updated.answeredInRound
: The round ID of the round in which the answer was computed.The version representing the type of aggregator the proxy points to.
function version(address base, address quote) external view returns (uint256)
base
: The base asset address.quote
: The quote asset address.RETURN
: The version number.Returns the primary aggregator address of a base / quote pair. Note that on-chain contracts cannot read from aggregators directly, only through Feed Registry or Proxy contracts.
function getFeed(
address base,
address quote
)
external
view
returns (
AggregatorV2V3Interface aggregator
);
base
: The base asset address.quote
: The quote asset address.aggregator
: The primary aggregator address.Returns the underlying aggregator address of a base / quote pair at a specified phase. Note that on-chain contracts cannot read from aggregators directly, only through Feed Registry or Proxy contracts.
Phase ids start at 1
. You can get the current Phase by calling getCurrentPhaseId()
.
function getPhaseFeed(
address base,
address quote,
uint16 phaseId
)
external
view
returns (
AggregatorV2V3Interface aggregator
);
base
: The base asset address.quote
: The quote asset address.phaseId
: The phase id.aggregator
: The primary aggregator address at the specified phase.Returns true if an aggregator is enabled as primary on the feed registry. This is useful to check if you should index events from an aggregator contract, because you want to only index events of primary aggregators.
function isFeedEnabled(
address aggregator
)
external
view
returns (
bool
);
aggregator
: The aggregator addressRETURN
: true
if the supplied aggregator is a primary aggregator for any base / quote pair.Returns the starting and ending aggregator round ids of a base / quote pair.
function getPhase(
address base,
address quote,
uint16 phaseId
)
external
view
returns (
Phase memory phase
);
Phases hold the following information:
struct Phase {
uint16 phaseId;
uint80 startingAggregatorRoundId;
uint80 endingAggregatorRoundId;
}
base
: The base asset address.quote
: The quote asset address.phaseId
: The phase id.RETURN
: Phase
details of a base / quote pair.Returns the underlying aggregator address of a base / quote pair at a specified round. Note that on-chain contracts cannot read from aggregators directly, only through Feed Registry or Proxy contracts.
function getRoundFeed(
address base,
address quote,
uint80 roundId
)
external
view
returns (
AggregatorV2V3Interface aggregator
);
base
: The base asset address.quote
: The quote asset address.roundId
: The round id.aggregator
: The underlying aggregator address of a base / quote pair at the specified round.Returns the starting and ending round ids of a base / quote pair at a specified phase.
Please note that this roundId
is calculated from the phase id and the underlying aggregator's round id. To get the raw aggregator round ids of a phase for indexing purposes, please use getPhase()
.
function getPhaseRange(
address base,
address quote,
uint16 phaseId
)
external
view
returns (
uint80 startingRoundId,
uint80 endingRoundId
);
base
: The base asset address.quote
: The quote asset address.phaseId
: The phase id.startingRoundId
: The starting round idendingRoundId
: The ending round idReturns the previous round id of a base / quote pair given a specified round. Note that rounds are non-monotonic across phases.
function getPreviousRoundId(
address base,
address quote,
uint80 roundId
) external
view
returns (
uint80 previousRoundId
);
base
: The base asset address.quote
: The quote asset address.roundId
: The round id.previousRoundId
: The previous round id of a base / quote pair.Returns the next round id of a base / quote pair given a specified round. Note that rounds are non-monotonic across phases.
function getNextRoundId(
address base,
address quote,
uint80 roundId
) external
view
returns (
uint80 nextRoundId
);
base
: The base asset address.quote
: The quote asset address.roundId
: The round id.nextRoundId
: The next round id of a base / quote pair.Returns the current phase id of a base / quote pair.
function getCurrentPhaseId(
address base,
address quote
)
external
view
returns (
uint16 currentPhaseId
);
base
: The base asset address.quote
: The quote asset address.phaseId
: The current phase id of a base / quote pair.