Get Address Funding Details (v2)
curl --request GET \
--url https://api.range.org/v2/address/fundedBy \
--header 'X-API-KEY: <api-key>'import requests
url = "https://api.range.org/v2/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/v2/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/v2/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/v2/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/v2/address/fundedBy")
.header("X-API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.range.org/v2/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>"
}Addresses & Entities
Get Address Funding Details (v2)
Returns the first inbound funder of this address. On range2 EVM chains (eth, base, arb1, pol, bnb) the answer is served from ClickHouse full history rather than the days-deep Elasticsearch transfers index. Other networks use the declared Elasticsearch transfers index (stellar) or interchain payments only (solana).
GET
/
v2
/
address
/
fundedBy
Get Address Funding Details (v2)
curl --request GET \
--url https://api.range.org/v2/address/fundedBy \
--header 'X-API-KEY: <api-key>'import requests
url = "https://api.range.org/v2/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/v2/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/v2/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/v2/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/v2/address/fundedBy")
.header("X-API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.range.org/v2/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>"
}Authorizations
Authorization method required to allow user to access the api endpoints.
Last modified on September 3, 2026
Was this page helpful?