Get Address Funding Details
curl --request GET \
--url https://api.range.org/v1/address/fundedBy \
--header 'X-API-KEY: <api-key>'import requests
url = "https://api.range.org/v1/address/fundedBy"
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.range.org/v1/address/fundedBy', 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.range.org/v1/address/fundedBy",
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.range.org/v1/address/fundedBy"
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.range.org/v1/address/fundedBy")
.header("X-API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.range.org/v1/address/fundedBy")
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{
"address": {
"address": "<string>",
"network": "<string>",
"tags": [
"<string>"
],
"network_icon_url": "<string>",
"category": "<string>",
"entity_name": "<string>",
"entity_icon_url": "<string>",
"label": "<string>",
"risk_score": {
"riskScore": 8,
"riskLevel": "CRITICAL RISK (Directly malicious)",
"numHops": 123,
"maliciousAddressesFound": [
{
"address": "<string>",
"distance": 123,
"name_tag": "<string>",
"entity": "<string>",
"category": "<string>"
}
],
"reasoning": "<string>",
"attribution": {
"name_tag": "Token Program",
"entity": "Solana",
"category": "SYSTEM",
"address_role": "Program"
}
},
"confidential": true,
"verified": true
},
"network": "<string>",
"tx_hash": "<string>",
"time": "<string>",
"amount": "<string>",
"token": "<string>"
}{
"statusCode": 404,
"message": "No funder found for this address"
}Addresses & Entities
Get Address Funding Details
Returns funding details of this address with the network. Elasticsearch only — the days-deep EVM transfers index, not full history. Other networks use the declared Elasticsearch transfers index (e.g. cosmos, stellar) or interchain payments only when no such index is declared (e.g. solana). For ClickHouse-backed first-funder lookup use GET /v2/address/fundedBy. Responses are cached; send Cache-Control: no-cache to force a fresh lookup.
GET
/
v1
/
address
/
fundedBy
Get Address Funding Details
curl --request GET \
--url https://api.range.org/v1/address/fundedBy \
--header 'X-API-KEY: <api-key>'import requests
url = "https://api.range.org/v1/address/fundedBy"
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.range.org/v1/address/fundedBy', 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.range.org/v1/address/fundedBy",
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.range.org/v1/address/fundedBy"
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.range.org/v1/address/fundedBy")
.header("X-API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.range.org/v1/address/fundedBy")
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{
"address": {
"address": "<string>",
"network": "<string>",
"tags": [
"<string>"
],
"network_icon_url": "<string>",
"category": "<string>",
"entity_name": "<string>",
"entity_icon_url": "<string>",
"label": "<string>",
"risk_score": {
"riskScore": 8,
"riskLevel": "CRITICAL RISK (Directly malicious)",
"numHops": 123,
"maliciousAddressesFound": [
{
"address": "<string>",
"distance": 123,
"name_tag": "<string>",
"entity": "<string>",
"category": "<string>"
}
],
"reasoning": "<string>",
"attribution": {
"name_tag": "Token Program",
"entity": "Solana",
"category": "SYSTEM",
"address_role": "Program"
}
},
"confidential": true,
"verified": true
},
"network": "<string>",
"tx_hash": "<string>",
"time": "<string>",
"amount": "<string>",
"token": "<string>"
}{
"statusCode": 404,
"message": "No funder found for this address"
}Authorizations
Authorization method required to allow user to access the api endpoints.
Last modified on October 2, 2026
Was this page helpful?