curl --request GET \
--url https://api.webacy.com/rwa/{address} \
--header 'x-api-key: <api-key>'import requests
url = "https://api.webacy.com/rwa/{address}"
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.webacy.com/rwa/{address}', 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.webacy.com/rwa/{address}",
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.webacy.com/rwa/{address}"
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.webacy.com/rwa/{address}")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.webacy.com/rwa/{address}")
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{
"token": {
"address": "<string>",
"chain": "<string>",
"symbol": "<string>",
"name": "<string>",
"assetType": "<string>",
"assetTypeReason": "<string>",
"denomination": {
"code": "<string>",
"name": "<string>",
"category": "<string>",
"pegRatio": "<string>",
"pegType": "<string>"
},
"token_labels": [
"<string>"
],
"peg_range": [
123
],
"is_collapsed": true,
"is_rwa_nav": true,
"rwa_nav_usd": 123,
"rwa_nav_as_of": "<string>",
"market_cap_usd": 123,
"total_market_cap_usd": 123,
"market_cap_by_chain": {},
"circulating_supply": 123,
"total_supply_on_chain": 123,
"total_supply_cross_chain": 123,
"fdv_usd": 123,
"volume_24h": 123,
"volume_24h_usd": 123,
"dex_volume_24h_usd": 123,
"markets": [
{
"dex": "<string>",
"pair": "<string>",
"pool_address": "<string>",
"chain": "<string>",
"liquidity_usd": 123,
"volume_24h_usd": 123
}
],
"migration": {
"target_symbol": "<string>",
"target_address": "<string>",
"ratio": 123,
"notes": "<string>"
},
"project_info": {
"issuer": "<string>",
"audit_count": 123,
"audit_firms": [
"<string>"
],
"last_audit_date": "<string>",
"audit_report_urls": [
"<string>"
],
"notes": "<string>"
},
"score_delta_24h": 123,
"score_delta_7d": 123
},
"snapshot": {
"ts": "<string>",
"score": 123,
"drivers": [
{
"name": "<string>",
"raw": 123,
"normalized": 123,
"weight": 123,
"contribution": 123
}
],
"price": 123,
"peg_value": 123,
"abs_dev_clean": 123,
"dev_clean": 123,
"reference_price": 123,
"reference_prices": {},
"price_source": "<string>",
"price_sources_agree": true,
"price_source_deviation": 123,
"within_expected_range": true,
"data_alerts": [
"<string>"
]
},
"risk": {},
"history": {
"hours": 84,
"series": [
{
"ts": "<string>",
"score": 123,
"abs_dev_clean": 123,
"price": 123,
"peg_value": 123
}
],
"consecutive_days_below_peg": 123
},
"depegEvents": [
{
"eventType": "<string>",
"oldTier": "<string>",
"newTier": "<string>",
"riskScore": 123,
"deviationPct": 123,
"detectedAt": "2023-11-07T05:31:56Z"
}
],
"events": [
{
"id": "<string>",
"name": "<string>",
"symbol": "<string>",
"chain": "<string>",
"address": "<string>",
"start": "<string>",
"end": "<string>",
"notes": "<string>"
}
],
"stale": true
}{
"message": "Unauthorized"
}Get Depeg Risk Detail for a Pegged Token
Returns the full token detail: identity, classification, market data (with cross-chain rollups, DEX markets, migration lifecycle, audit provenance, score deltas), the latest depeg snapshot with full score decomposition, history series, and recorded depeg events. Address is resolved against the DB; supply chain when the same address exists on multiple chains. During partial outage the response carries stale: true.
CU cost: 1 CU per request (rwa-detail).
curl --request GET \
--url https://api.webacy.com/rwa/{address} \
--header 'x-api-key: <api-key>'import requests
url = "https://api.webacy.com/rwa/{address}"
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.webacy.com/rwa/{address}', 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.webacy.com/rwa/{address}",
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.webacy.com/rwa/{address}"
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.webacy.com/rwa/{address}")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.webacy.com/rwa/{address}")
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{
"token": {
"address": "<string>",
"chain": "<string>",
"symbol": "<string>",
"name": "<string>",
"assetType": "<string>",
"assetTypeReason": "<string>",
"denomination": {
"code": "<string>",
"name": "<string>",
"category": "<string>",
"pegRatio": "<string>",
"pegType": "<string>"
},
"token_labels": [
"<string>"
],
"peg_range": [
123
],
"is_collapsed": true,
"is_rwa_nav": true,
"rwa_nav_usd": 123,
"rwa_nav_as_of": "<string>",
"market_cap_usd": 123,
"total_market_cap_usd": 123,
"market_cap_by_chain": {},
"circulating_supply": 123,
"total_supply_on_chain": 123,
"total_supply_cross_chain": 123,
"fdv_usd": 123,
"volume_24h": 123,
"volume_24h_usd": 123,
"dex_volume_24h_usd": 123,
"markets": [
{
"dex": "<string>",
"pair": "<string>",
"pool_address": "<string>",
"chain": "<string>",
"liquidity_usd": 123,
"volume_24h_usd": 123
}
],
"migration": {
"target_symbol": "<string>",
"target_address": "<string>",
"ratio": 123,
"notes": "<string>"
},
"project_info": {
"issuer": "<string>",
"audit_count": 123,
"audit_firms": [
"<string>"
],
"last_audit_date": "<string>",
"audit_report_urls": [
"<string>"
],
"notes": "<string>"
},
"score_delta_24h": 123,
"score_delta_7d": 123
},
"snapshot": {
"ts": "<string>",
"score": 123,
"drivers": [
{
"name": "<string>",
"raw": 123,
"normalized": 123,
"weight": 123,
"contribution": 123
}
],
"price": 123,
"peg_value": 123,
"abs_dev_clean": 123,
"dev_clean": 123,
"reference_price": 123,
"reference_prices": {},
"price_source": "<string>",
"price_sources_agree": true,
"price_source_deviation": 123,
"within_expected_range": true,
"data_alerts": [
"<string>"
]
},
"risk": {},
"history": {
"hours": 84,
"series": [
{
"ts": "<string>",
"score": 123,
"abs_dev_clean": 123,
"price": 123,
"peg_value": 123
}
],
"consecutive_days_below_peg": 123
},
"depegEvents": [
{
"eventType": "<string>",
"oldTier": "<string>",
"newTier": "<string>",
"riskScore": 123,
"deviationPct": 123,
"detectedAt": "2023-11-07T05:31:56Z"
}
],
"events": [
{
"id": "<string>",
"name": "<string>",
"symbol": "<string>",
"chain": "<string>",
"address": "<string>",
"start": "<string>",
"end": "<string>",
"notes": "<string>"
}
],
"stale": true
}{
"message": "Unauthorized"
}Authorizations
Path Parameters
Token contract address (hex format).
Query Parameters
Chain disambiguator (required if the address exists on multiple chains).
Hours of history to return (default 24, max 168).
1 <= x <= 168Response
Full token detail with depeg snapshot, score decomposition, and history
Token identity + classification + market data for the detail endpoint.
Show child attributes
Show child attributes
Full point-in-time depeg snapshot returned by the detail endpoint.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
