INTRODUCTION Tutorials The Basics Random Numbers API Calls Other Tutorials Architecture Overview Basic Request Model Decentralized Data Model Off-Chain Reporting
USING DATA FEEDS Introduction to Data Feeds Get the Latest Price (EVM) Get the Latest Price (Solana) Historical Price Data Feed Registry API Reference Contract Addresses ENS Ethereum Data Feeds Binance Smart Chain Data Feeds Polygon (Matic) Data Feeds xDai Data Feeds Huobi Eco Chain Data Feeds Avalanche Data Feeds Fantom Data Feeds Arbitrum Data Feeds Harmony Data Feeds Solana Data Feeds Optimism Data Feeds
USING RANDOMNESS Introduction to Chainlink VRF Get a Random Number API Reference Security Considerations Contract Addresses Best Practices
USING CHAINLINK KEEPERS Introduction Making Compatible Contracts Register Upkeep for a Contract Patterns and Best Practices Network Overview FAQs
USING ANY API Introduction to Using Any API Make a GET Request Make an Existing Job Request Multi-Variable Responses Large Responses Find Existing Jobs API Reference Contract Addresses
DEVELOPER REFERENCE Install Instructions LINK Token Contracts Developer Communications Getting Help Data Provider Nodes Hackathon Resources Contributing to Chainlink User Guides Install, configure & fund MetaMask Acquire testnet LINK Deploy your first contract Fund your contract Use your first contract!
Chainlink VRF API Reference
API reference for VRFConsumerBase
.
Index
Constructors
Name | Description |
---|---|
constructor | Initialize your consumer contract. |
Functions
Name | Description |
---|---|
requestRandomness | Make a request to the VRFCoordinator. |
fulfillRandomness | Called by VRFCoordinator when it receives a valid VRF proof. |
Constructor
Initialize your consumer contract.
constructor(address _vrfCoordinator, address _link) public
_vrfCoordinator
: Address of the Chainlink VRF Coordinator. See Chainlink VRF Addresses for details._link
: Address of the LINK token. See LINK Token Addresses for details.
Note:
_seed
has recently been depreciated.
Functions
requestRandomness
Make a request to the VRF coordinator.
function requestRandomness(bytes32 _keyHash, uint256 _fee)
public returns (bytes32 requestId)
_keyHash
: The public key against which randomness is generated. See Chainlink VRF Addresses for details._fee
: The fee, in LINK, for the request. Specified by the oracle.RETURN
: The ID unique to a single request.
fulfillRandomness
Called by VRFCoordinator when it receives a valid VRF proof. Override this function to act upon the random number generated by Chainlink VRF.
function fulfillRandomness(bytes32 requestId, uint256 randomness)
external virtual;
requestId
: The Id initially returned byrequestRandomness
.randomness
: Random number generated by Chainlink VRF.
Reference
Maximizing security
Chainlink VRF provides powerful security guarantees and is easy to integrate. However, smart contract security is a nuanced topic. You can read about the top security considerations for VRF.