Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions astro.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,11 @@ export default defineConfig({
return false
}

// Old v1 glossary. The URL stays. It is not a current product page.
if (cleanPath === "/resources/glossary") {
return false
}

return !redirectSources.has(cleanPath)
},
serialize(item) {
Expand Down
2 changes: 1 addition & 1 deletion src/components/HeadSEO.astro
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ const structuredDataObjects =
<meta name="author" content="Chainlink Labs" />
<meta
name="robots"
content={sunsetPage
content={sunsetPage || metadata?.noindex
? "noindex, follow"
: "index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"}
/>
Expand Down
142 changes: 12 additions & 130 deletions src/config/sidebar.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1536,10 +1536,6 @@ export const SIDEBAR_WITH_SUNSET_PRODUCTS: Partial<Record<Sections, SectionEntry
title: "Chainlink Architecture",
url: "architecture-overview/architecture-overview?parent=dataFeeds",
children: [
{
title: "Basic Request Model",
url: "architecture-overview/architecture-request-model?parent=dataFeeds",
},
{
title: "Decentralized Data Model",
url: "architecture-overview/architecture-decentralized-model?parent=dataFeeds",
Expand All @@ -1551,12 +1547,8 @@ export const SIDEBAR_WITH_SUNSET_PRODUCTS: Partial<Record<Sections, SectionEntry
],
},
{
title: "Developer Communications",
url: "resources/developer-communications?parent=dataFeeds",
children: [
{ title: "Getting Help", url: "resources/getting-help?parent=dataFeeds" },
{ title: "Hackathon Resources", url: "resources/hackathon-resources?parent=dataFeeds" },
],
title: "Getting Help",
url: "resources/getting-help?parent=dataFeeds",
},
{
title: "Integrating EVM Networks",
Expand Down Expand Up @@ -1909,30 +1901,8 @@ export const SIDEBAR_WITH_SUNSET_PRODUCTS: Partial<Record<Sections, SectionEntry
],
},
{
title: "Chainlink Architecture",
url: "architecture-overview/architecture-overview?parent=dataStreams",
children: [
{
title: "Basic Request Model",
url: "architecture-overview/architecture-request-model?parent=dataStreams",
},
{
title: "Decentralized Data Model",
url: "architecture-overview/architecture-decentralized-model?parent=dataStreams",
},
{
title: "Offchain Reporting",
url: "architecture-overview/off-chain-reporting?parent=dataStreams",
},
],
},
{
title: "Developer Communications",
url: "resources/developer-communications?parent=dataStreams",
children: [
{ title: "Getting Help", url: "resources/getting-help?parent=dataStreams" },
{ title: "Hackathon Resources", url: "resources/hackathon-resources?parent=dataStreams" },
],
title: "Getting Help",
url: "resources/getting-help?parent=dataStreams",
},
{
title: "Integrating EVM Networks",
Expand Down Expand Up @@ -2118,30 +2088,8 @@ export const SIDEBAR_WITH_SUNSET_PRODUCTS: Partial<Record<Sections, SectionEntry
],
},
{
title: "Chainlink Architecture",
url: "architecture-overview/architecture-overview?parent=automation",
children: [
{
title: "Basic Request Model",
url: "architecture-overview/architecture-request-model?parent=automation",
},
{
title: "Decentralized Data Model",
url: "architecture-overview/architecture-decentralized-model?parent=automation",
},
{
title: "Offchain Reporting",
url: "architecture-overview/off-chain-reporting?parent=automation",
},
],
},
{
title: "Developer Communications",
url: "resources/developer-communications?parent=automation",
children: [
{ title: "Getting Help", url: "resources/getting-help?parent=automation" },
{ title: "Hackathon Resources", url: "resources/hackathon-resources?parent=automation" },
],
title: "Getting Help",
url: "resources/getting-help?parent=automation",
},
{
title: "Integrating EVM Networks",
Expand Down Expand Up @@ -2335,30 +2283,8 @@ export const SIDEBAR_WITH_SUNSET_PRODUCTS: Partial<Record<Sections, SectionEntry
],
},
{
title: "Chainlink Architecture",
url: "architecture-overview/architecture-overview?parent=chainlinkFunctions",
children: [
{
title: "Basic Request Model",
url: "architecture-overview/architecture-request-model?parent=chainlinkFunctions",
},
{
title: "Decentralized Data Model",
url: "architecture-overview/architecture-decentralized-model?parent=chainlinkFunctions",
},
{
title: "Offchain Reporting",
url: "architecture-overview/off-chain-reporting?parent=chainlinkFunctions",
},
],
},
{
title: "Developer Communications",
url: "resources/developer-communications?parent=chainlinkFunctions",
children: [
{ title: "Getting Help", url: "resources/getting-help?parent=chainlinkFunctions" },
{ title: "Hackathon Resources", url: "resources/hackathon-resources?parent=chainlinkFunctions" },
],
title: "Getting Help",
url: "resources/getting-help?parent=chainlinkFunctions",
},
{
title: "Integrating EVM Networks",
Expand Down Expand Up @@ -2516,30 +2442,8 @@ export const SIDEBAR_WITH_SUNSET_PRODUCTS: Partial<Record<Sections, SectionEntry
],
},
{
title: "Chainlink Architecture",
url: "architecture-overview/architecture-overview?parent=vrf",
children: [
{
title: "Basic Request Model",
url: "architecture-overview/architecture-request-model?parent=vrf",
},
{
title: "Decentralized Data Model",
url: "architecture-overview/architecture-decentralized-model?parent=vrf",
},
{
title: "Offchain Reporting",
url: "architecture-overview/off-chain-reporting?parent=vrf",
},
],
},
{
title: "Developer Communications",
url: "resources/developer-communications?parent=vrf",
children: [
{ title: "Getting Help", url: "resources/getting-help?parent=vrf" },
{ title: "Hackathon Resources", url: "resources/hackathon-resources?parent=vrf" },
],
title: "Getting Help",
url: "resources/getting-help?parent=vrf",
},
{
title: "Integrating EVM Networks",
Expand Down Expand Up @@ -2914,30 +2818,8 @@ export const SIDEBAR_WITH_SUNSET_PRODUCTS: Partial<Record<Sections, SectionEntry
],
},
{
title: "Chainlink Architecture",
url: "architecture-overview/architecture-overview",
children: [
{
title: "Basic Request Model",
url: "architecture-overview/architecture-request-model",
},
{
title: "Decentralized Data Model",
url: "architecture-overview/architecture-decentralized-model",
},
{
title: "Offchain Reporting",
url: "architecture-overview/off-chain-reporting",
},
],
},
{
title: "Developer Communications",
url: "resources/developer-communications",
children: [
{ title: "Getting Help", url: "resources/getting-help" },
{ title: "Hackathon Resources", url: "resources/hackathon-resources" },
],
title: "Getting Help",
url: "resources/getting-help",
},
{
title: "Integrating EVM Networks",
Expand Down
1 change: 1 addition & 0 deletions src/content.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@ const metadata = z
datePublished: z.string().optional(), // ISO date string
lastModified: z.string().optional(), // ISO date string
version: z.string().optional(), // For API references
noindex: z.boolean().optional(), // Keep the URL, but ask crawlers not to index the page
})
.optional()

Expand Down
2 changes: 1 addition & 1 deletion src/content/any-api/find-oracle.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ This page explains how to find an existing Oracle Job to suit the needs of your

Oracles enable smart contracts to retrieve data from the outside world. Each oracle node can be configured to perform a wide range of tasks depending on the adapters it supports. For example, if your contract needs to make an HTTP GET request, it needs to use an oracle that supports the HTTP GET adapter.

Oracles [jobs](/chainlink-nodes/oracle-jobs/jobs) can be specialized even further by implementing the configuration using [External Adapters](/chainlink-nodes/external-adapters/external-adapters). For example, an Oracle job could implement URL, parameters, and conversion to Solidity compatible data, to retrieve a very specific piece of data from a specific API endpoint. This process is demonstrated in [Make an Existing Job Request](/any-api/get-request/examples/existing-job-request).
Oracles [jobs](/chainlink-nodes/oracle-jobs/jobs) can be specialized even further by implementing the configuration using an adapter from the [external adapters repository](https://github.com/smartcontractkit/external-adapters-js). For example, an Oracle job could implement URL, parameters, and conversion to Solidity compatible data, to retrieve a very specific piece of data from a specific API endpoint. This process is demonstrated in [Make an Existing Job Request](/any-api/get-request/examples/existing-job-request).

## Find a job

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ The response should be similar to the following:
}
```

For this example, we created a job that leverages the [EtherScan External Adapter](https://github.com/smartcontractkit/external-adapters-js/tree/develop/packages/sources/etherscan) to fetch the _SafeGasPrice_ , _ProposeGasPrice_ and _FastGasPrice_. You can learn more about External Adapters [here](/chainlink-nodes/external-adapters/external-adapters).
For this example, we created a job that leverages the [EtherScan External Adapter](https://github.com/smartcontractkit/external-adapters-js/tree/develop/packages/sources/etherscan) to fetch the _SafeGasPrice_ , _ProposeGasPrice_ and _FastGasPrice_. You can learn more in the [external adapters repository](https://github.com/smartcontractkit/external-adapters-js).
To consume an API, your contract must import [ChainlinkClient.sol](https://github.com/smartcontractkit/chainlink/blob/contracts-v1.3.0/contracts/src/v0.8/ChainlinkClient.sol). This contract exposes a struct named `Chainlink.Request`, which your contract can use to build the API request. The request must include the following parameters:

- Link token address
Expand Down
2 changes: 1 addition & 1 deletion src/content/any-api/get-request/introduction.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -48,4 +48,4 @@ This [guide](/any-api/get-request/examples/large-responses) explains how to make

### Make an Existing Job Request

This [guide](/any-api/get-request/examples/existing-job-request) explains how to call a job that leverages [External adapters](/chainlink-nodes/external-adapters/external-adapters) and returns the relevant data to the smart contract. This allows building succinct smart contracts that do not need to comprehend the URL or the response format of the target API.
This [guide](/any-api/get-request/examples/existing-job-request) explains how to call a job that uses an adapter from the [external adapters repository](https://github.com/smartcontractkit/external-adapters-js) and returns the relevant data to the smart contract. This allows building succinct smart contracts that do not need to comprehend the URL or the response format of the target API.
4 changes: 2 additions & 2 deletions src/content/any-api/getting-started.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ Chainlink nodes require [**Jobs**](/chainlink-nodes/oracle-jobs/jobs) to do anyt
Each oracle job has a configured set of tasks it must complete when it is run. These tasks are split into two subcategories:

- [**Tasks**](/chainlink-nodes/oracle-jobs/all-tasks) - These are tasks that come built-in to each node. (examples: http, ethabidecode, etc).
- [**External Adapters**](/chainlink-nodes/external-adapters/external-adapters) - These are custom adapters built by node operators and community members, which perform specific tasks like calling a particular endpoint with a specific set of parameters (like authentication secrets that shouldn't be publicly visible).
- [**External adapters repository**](https://github.com/smartcontractkit/external-adapters-js) - These are custom adapters built by node operators and community members, which perform specific tasks like calling a particular endpoint with a specific set of parameters (like authentication secrets that shouldn't be publicly visible).

### Tasks

Expand Down Expand Up @@ -116,7 +116,7 @@ function requestVolumeData() public returns (bytes32 requestId) {
```

You can follow a full _Existing Job Tutorial_ [here](/any-api/get-request/examples/existing-job-request).
More on External Adapters can be found [here](/chainlink-nodes/external-adapters/external-adapters).
Adapter code is in the [external adapters repository](https://github.com/smartcontractkit/external-adapters-js).

## Further reading

Expand Down
18 changes: 9 additions & 9 deletions src/content/any-api/introduction.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -37,16 +37,16 @@ If your smart contracts need access to price feed data, try using [Chainlink Dat

Outlined below are multiple ways developers can connect smart contracts to offchain data feeds. Click a request type to learn more about it:

| Request Type | Description |
| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [HTTP GET Single Word Response](/any-api/get-request/examples/single-word-response) | This guide explains how to make an HTTP GET request and parse the _json_ response to retrieve the value of one single attribute. |
| [HTTP GET Multi-Variable Responses](/any-api/get-request/examples/multi-variable-responses) | This guide explains how to make an HTTP GET request and parse the _json_ response to retrieve the values of multiple attributes. |
| [HTTP GET Element in Array Response](/any-api/get-request/examples/array-response) | This guide explains how to make an HTTP GET request that returns a _json_ array and parse it to retrieve the target element's value. |
| [HTTP GET Large Responses](/any-api/get-request/examples/large-responses) | This guide explains how to make an HTTP Get request that returns a _json_ containing an arbitrary-length raw byte data and parse it to return the data as _bytes_ data type. |
| [Existing Job Request](/any-api/get-request/examples/existing-job-request) | This guide explains how to call a job that leverages [External adapters](/chainlink-nodes/external-adapters/external-adapters) and returns the relevant data to the smart contract. This allows building succinct smart contracts that do not need to comprehend the URL or the response format of the target API. |
| Request Type | Description |
| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [HTTP GET Single Word Response](/any-api/get-request/examples/single-word-response) | This guide explains how to make an HTTP GET request and parse the _json_ response to retrieve the value of one single attribute. |
| [HTTP GET Multi-Variable Responses](/any-api/get-request/examples/multi-variable-responses) | This guide explains how to make an HTTP GET request and parse the _json_ response to retrieve the values of multiple attributes. |
| [HTTP GET Element in Array Response](/any-api/get-request/examples/array-response) | This guide explains how to make an HTTP GET request that returns a _json_ array and parse it to retrieve the target element's value. |
| [HTTP GET Large Responses](/any-api/get-request/examples/large-responses) | This guide explains how to make an HTTP Get request that returns a _json_ containing an arbitrary-length raw byte data and parse it to return the data as _bytes_ data type. |
| [Existing Job Request](/any-api/get-request/examples/existing-job-request) | This guide explains how to call a job that leverages the [external adapters repository](https://github.com/smartcontractkit/external-adapters-js) and returns the relevant data to the smart contract. This allows building succinct smart contracts that do not need to comprehend the URL or the response format of the target API. |

### Building external adapters

To learn more about building external adapters and adding them to nodes, refer to the [External Adapters](/chainlink-nodes/external-adapters/external-adapters) documentation.
To learn more about building external adapters and adding them to nodes, see the [external adapters repository](https://github.com/smartcontractkit/external-adapters-js).

To understand different use cases for using any API, refer to [Other Tutorials](/getting-started/other-tutorials).
To understand different use cases for using any API, see the [Chainlink Documentation](https://docs.chain.link).
Loading
Loading