Stablecoin Transfers - Aggregated Insights
curl --request GET \
--url https://api.amberdata.com/blockchains/analytics/stablecoins/transfers \
--header 'x-api-key: <api-key>'import requests
url = "https://api.amberdata.com/blockchains/analytics/stablecoins/transfers"
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.amberdata.com/blockchains/analytics/stablecoins/transfers', 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.amberdata.com/blockchains/analytics/stablecoins/transfers",
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.amberdata.com/blockchains/analytics/stablecoins/transfers"
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.amberdata.com/blockchains/analytics/stablecoins/transfers")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.amberdata.com/blockchains/analytics/stablecoins/transfers")
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{
"status": 200,
"title": "OK",
"description": "Successful request",
"payload": {
"data": [
{
"assetAddress": "0x94b008aa00579c1307b0ef2c499ad98a8ce58e58",
"assetName": "Tether USD",
"assetSymbol": "USDT",
"blockchain": "optimism-mainnet",
"burnVolume": "1038393.596801",
"mintVolume": "328456.31803",
"numberOfBurns": "26",
"numberOfMints": "10",
"numberOfTransfers": "4137",
"numberOfUniqueReceivers": "460",
"numberOfUniqueSenders": "395",
"timestamp": "2025-07-25T01:00:00Z",
"transferVolume": "612098.87144"
}
],
"metadata": {}
}
}Transfer Analytics
Stablecoin Transfers - Aggregated Insights
Analyze stablecoin adoption, liquidity flows and transaction values across multiple chains and multiple assets. The dataset is updated on an hourly cadence.
GET
/
analytics
/
stablecoins
/
transfers
Stablecoin Transfers - Aggregated Insights
curl --request GET \
--url https://api.amberdata.com/blockchains/analytics/stablecoins/transfers \
--header 'x-api-key: <api-key>'import requests
url = "https://api.amberdata.com/blockchains/analytics/stablecoins/transfers"
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.amberdata.com/blockchains/analytics/stablecoins/transfers', 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.amberdata.com/blockchains/analytics/stablecoins/transfers",
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.amberdata.com/blockchains/analytics/stablecoins/transfers"
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.amberdata.com/blockchains/analytics/stablecoins/transfers")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.amberdata.com/blockchains/analytics/stablecoins/transfers")
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{
"status": 200,
"title": "OK",
"description": "Successful request",
"payload": {
"data": [
{
"assetAddress": "0x94b008aa00579c1307b0ef2c499ad98a8ce58e58",
"assetName": "Tether USD",
"assetSymbol": "USDT",
"blockchain": "optimism-mainnet",
"burnVolume": "1038393.596801",
"mintVolume": "328456.31803",
"numberOfBurns": "26",
"numberOfMints": "10",
"numberOfTransfers": "4137",
"numberOfUniqueReceivers": "460",
"numberOfUniqueSenders": "395",
"timestamp": "2025-07-25T01:00:00Z",
"transferVolume": "612098.87144"
}
],
"metadata": {}
}
}If the
startDate and endDate query parameters are not provided, the API will return the data from the previous 24 hrs of data.If the
blockchain query parameter is not provided, the API will return data from all of the supported chains.Contract addresses for an asset are unique per blockchain. If you would like to see the analytics for a specific asset, say USDC across all chains, use the
assetSymbol query parameter and omit the blockchain query parameter.Authorizations
Query Parameters
[optional] The symbol of the asset to filter the dataset by
[optional] The contract address of the asset to filter the dataset by
[optional] The oldest date to filter the dataset by (inclusive)
[optional] The latest data to filter the dataset by (exclusive)
[optional] The name slug of the chain to filter the dataset by
Available options:
arbitrum-mainnet, avalanche-mainnet, base-mainnet, bnb-mainnet, ethereum-mainnet, polygon-mainnet, optimism-mainnet, tron-mainnet Was this page helpful?