Functions icon

Securely connect the world's APIs to Web3 in minutes

Chainlink Functions BETA is a serverless developer platform for fetching data from any API and running custom compute using Chainlink’s highly secure and reliable network. 

// Fetch your data from one or more APIs
const weather = await Functions.makeHttpRequest({ url:`https://example.comloc=bali&key=${secrets.key}`})

// Run any custom compute needed
const baliDegree = Math.round(["temp"] * 100)

// Write data to the blockchain using decentralized oracles
return Functions.encodeUint256(baliDegree)

Decentralized compute runtime connecting data, devices, and systems to blockchains

Extensive connectivity

Connect your smart contract to any data source, ranging from public or password-protected APIs to IoT devices and enterprise systems.

Customizable computation

Aggregate and transform your data using highly scalable and customizable serverless runtime environments.

Trust-minimized security

Build upon Chainlink's time-tested decentralized infrastructure that already helps secure billions of dollars  for Web3 apps.

Self-service in minutes

Get started in minutes with Function’s serverless developer solution featuring a CLI, starter kits, and debugging environment.

Serverless runtime

Run Javascript code in a serverless manner so you can focus less on infrastructure and more on your core application.

How Chainlink Functions works


An end user initiates the Chainlink Function embedded within the dApp.


The dApp makes a request to the Chainlink Functions smart contract. This request consists of the API endpoint, any transformations to the data and encrypted credentials (if any).


A decentralized oracle network (DON) continuously listens to the Chainlink Functions smart contract. When it picks up the request, each node independently triggers their runtime environment to fetch external data, performs any computations on it, and returns the result.


The nodes reach a consensus on the final answer using OCR 2.0. One node is then picked to transmit the result back onchain. In the unlikely event that the node fails to publish the data, another node is chosen to transmit it onchain. The end result is high reliability and trust-minimized security.

Need help with your use case?

What developers are saying

Space and Time logo
Chainalysis logo
DeSci logo
Postmint logo

“Space and Time has natively integrated with Chainlink Functions to allow our users to send zk-proven query results onchain. The integration enables smart contracts to leverage the Space and Time data warehouse and ask data-driven questions without spending more gas onchain. Space and Time and Chainlink are bridging the gap between onchain and offchain systems to unlock new use cases for DeFi, Web3 gaming, dApp developers, and the enterprise adoption of blockchain technology.”

Scott Dykstra

CTO & Co-Founder

“Chainlink Functions and subgraphs on The Graph Network make it easy to access traditionally offchain data with blockchain-native methods. Now, smart contract developers can leverage the data integrity guarantees of both Chainlink Functions and The Graph's decentralized network, unlocking new, advanced decentralized use cases.”

Kyle Rojas

Director of Global Business

“We are excited about the potential of Chainlink Functions connecting Chainalysis’s APIs to smart contracts at the protocol level, making it easier for the Web3 developer community to protect their dApps using Chainalysis data and unlock new innovative use cases.”

Sanjay Wahi

VP of Product

“Chainlink Functions allows us to reward knowledge creation by generating a "proof of thought" attestation, used to track contributions to and usage of LLM products. Through royalties, bounties and grants, our framework guarantees transparency of provenance for research applications in AI, in a truly decentralised manner.”

Joshua Bate


“Chainlink Functions allow postmint to be decentralized from the get-go, enabling automated scoring and payout to its affiliates & creators in a trust-minimized way.”

Phil Kothe

CEO and Founder

Get started in minutes with just a few lines of code


Fetch your data from one or more APIs


Run any custom compute needed


Send your data to the blockchain using decentralized oracles

Get the latest Chainlink content straight to your inbox.