Chainlink Developers

Welcome to the Chainlink documentation site. You'll find comprehensive guides and documentation to help you start working with Chainlink as quickly as possible, as well as support if you get stuck. Click here for an introductory walkthrough on how to create a Chainlink request on the Ropsten test network!

Building on Chainlink? Click here to get started!

Get Started


What is the latest progress of the project?

We usually have many development efforts going on at once with the node, the GUI, and the contracts. Check out the project tracker (linked below) to see the current development status.


When is <something> expected?

We do not usually give time frames unless something is visibly near completion on the project tracker. This includes features, contracts, and integration with other projects. If something is immediately pending to be merged within the code base, it will be visible as an open PR (pull request) in the repository.


How many members does the team have?

The team is visible on our website. We also encourage community contributions to our Github repository.

Are you hiring?

We are always looking for talented and experienced individuals. Please visit our careers page.


Running a node

How do I set up a Chainlink node?

You can set up a node to run on a test network or the Ethereum mainnet right now. The node will not be able to participate in fulfilling service agreement requests yet, but will in the near future. However, it can be used to fulfill requests sent to your oracle contract address and you can add external adapters to it for extending its functionality.


How much LINK to run a node?

You will be able to run a Chainlink node with 0 LINK, however, you will not be able to participate in requests that require a deposit until you’ve earned some LINK first.

Requesters may specify an amount of LINK that all nodes must deposit as a penalty fee in case the node doesn’t fulfill the request. However, since penalty fees are optional, not all requests will require it.

What are the hardware requirements for a Chainlink node?

The hardware requirements of the Chainlink node are very minimal to operate. It should run with 1 core and 1 GB of RAM, though you may want to up the RAM to 2 GB for better reliability. However, connectivity to an Ethereum client is required for communication with the blockchain. If you decide to run your own Ethereum client, you will want to run that on a separate machine. Hardware requirements of Ethereum clients may change over time.


Do I need to have access to APIs in order to provide data?

The Chainlink node can fulfill requests from open (unauthenticated) APIs out-of-the-box, without the need for External Adapters as long as you've added the jobs in the Fulfilling Requests guide. For these requests, requesters would supply the URL to the open API they wish each node to retrieve, and the Chainlink node will use its core adapters to fulfill the request.

If you would like to provide access to an API which requires authentication, you will need to create a job specific for that API, either with an external adapter or by using the parameters of the HttpGet adapter.


Is there a list of external adapters available?

Currently, the community maintains lists of available external adapters.


How many nodes are currently running?

The Chainlink Market keeps a list of node operators registered with them across multiple networks.


Smart contract creators

How do I request data from Chainlink?

You can use our Truffle Box to get started by unboxing a developer-focused template.

If you already have a project started and would like to integrate Chainlink, you can add Chainlink to your existing project by using our chainlink NPM package.


Can Chainlink be used to connect to <some blockchain/API>?

Yes, the Chainlink node can connect to most APIs out-of-the-box. Some APIs require authentication by providing request headers for the operator's API key, which the Chainlink node supports. Additionally, external adapters allow for connectivity to any resource as long as the adapter conforms to a minimal JSON specification for communicating to and from the Chainlink node.


How do I select Chainlink nodes for my requests?

You can use the Chainlink Market to select nodes for your requests. Then with the node's oracle contract address and Job ID, you will use the sendChainlinkRequestTo method to create requests to oracles.



What is the LINK token used for?

The LINK token is an ERC677 token that inherits functionality from the ERC20 token standard and allows token transfers to contain a data payload. It is used to pay node operators for retrieving data for smart contracts and also for deposits placed by node operators as required by contract creators.


What wallet do I use to store LINK?

Any wallet that handles ERC20 tokens should work fine. The ERC677 token standard that the LINK token implements still retains all functionality of ERC20 tokens.

Updated 7 months ago


Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.