Reward Products
curl --request GET \
--url https://api.blockradar.co/v1/rewards/products \
--header 'x-api-key: <api-key>'import requests
url = "https://api.blockradar.co/v1/rewards/products"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.blockradar.co/v1/rewards/products', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.blockradar.co/v1/rewards/products",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.blockradar.co/v1/rewards/products"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.blockradar.co/v1/rewards/products")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.blockradar.co/v1/rewards/products")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"message": "Earn products retrieved successfully",
"statusCode": 200,
"data": [
{
"productId": "5d0cc05d-d792-4cfe-a189-4a552b2c917a",
"productKey": "aave-base-usdc",
"strategyId": "aave-base-usdc",
"provider": "aave",
"type": "defi",
"name": "Aave V3 USDC",
"blockchain": "base",
"network": "mainnet",
"apy": "2.41",
"apyUpdatedAt": "2026-09-01T10:00:00.000Z",
"minDeposit": null,
"depositsEnabled": true,
"providerPaused": {
"deposits": false,
"withdrawals": false
},
"isActive": true,
"createdAt": "2026-08-31T10:00:00.000Z",
"asset": {
"id": "b1deda8d-7609-4895-b584-e8ef1f13e354",
"name": "USD Coin",
"symbol": "USDC",
"decimals": 6,
"currency": "USD",
"network": "mainnet"
}
},
{
"productId": "8f2f6a4d-90c1-4a52-b9be-52f10c8f6f21",
"productKey": "compound-base-usdc",
"strategyId": "compound-base-usdc",
"provider": "compound",
"type": "defi",
"name": "Compound V3 USDC",
"blockchain": "base",
"network": "mainnet",
"apy": "4.43",
"apyUpdatedAt": "2026-09-01T10:00:00.000Z",
"minDeposit": null,
"depositsEnabled": true,
"providerPaused": {
"deposits": false,
"withdrawals": false
},
"isActive": true,
"createdAt": "2026-08-31T10:00:00.000Z",
"asset": {
"id": "b1deda8d-7609-4895-b584-e8ef1f13e354",
"name": "USD Coin",
"symbol": "USDC",
"decimals": 6,
"currency": "USD",
"network": "mainnet"
}
}
]
}Rewards
Reward Products
Lists the earn product catalogue — every product (a provider + blockchain + asset combination) currently offered, with its net APY and availability flags. An asset on one chain can have more than one product (for example Aave USDC and Compound USDC on Base); use productId from this catalogue to route deposits and withdrawals.
Query Parameters
| Key | Required | Type | Description |
|---|---|---|---|
| blockchain | false | string | Filter by blockchain slug (e.g. base). |
| asset | false | string | Filter by asset symbol (case-insensitive, e.g. USDC). |
GET
/
v1
/
rewards
/
products
Reward Products
curl --request GET \
--url https://api.blockradar.co/v1/rewards/products \
--header 'x-api-key: <api-key>'import requests
url = "https://api.blockradar.co/v1/rewards/products"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.blockradar.co/v1/rewards/products', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.blockradar.co/v1/rewards/products",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.blockradar.co/v1/rewards/products"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.blockradar.co/v1/rewards/products")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.blockradar.co/v1/rewards/products")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"message": "Earn products retrieved successfully",
"statusCode": 200,
"data": [
{
"productId": "5d0cc05d-d792-4cfe-a189-4a552b2c917a",
"productKey": "aave-base-usdc",
"strategyId": "aave-base-usdc",
"provider": "aave",
"type": "defi",
"name": "Aave V3 USDC",
"blockchain": "base",
"network": "mainnet",
"apy": "2.41",
"apyUpdatedAt": "2026-09-01T10:00:00.000Z",
"minDeposit": null,
"depositsEnabled": true,
"providerPaused": {
"deposits": false,
"withdrawals": false
},
"isActive": true,
"createdAt": "2026-08-31T10:00:00.000Z",
"asset": {
"id": "b1deda8d-7609-4895-b584-e8ef1f13e354",
"name": "USD Coin",
"symbol": "USDC",
"decimals": 6,
"currency": "USD",
"network": "mainnet"
}
},
{
"productId": "8f2f6a4d-90c1-4a52-b9be-52f10c8f6f21",
"productKey": "compound-base-usdc",
"strategyId": "compound-base-usdc",
"provider": "compound",
"type": "defi",
"name": "Compound V3 USDC",
"blockchain": "base",
"network": "mainnet",
"apy": "4.43",
"apyUpdatedAt": "2026-09-01T10:00:00.000Z",
"minDeposit": null,
"depositsEnabled": true,
"providerPaused": {
"deposits": false,
"withdrawals": false
},
"isActive": true,
"createdAt": "2026-08-31T10:00:00.000Z",
"asset": {
"id": "b1deda8d-7609-4895-b584-e8ef1f13e354",
"name": "USD Coin",
"symbol": "USDC",
"decimals": 6,
"currency": "USD",
"network": "mainnet"
}
}
]
}
