Tor Exit Nodes Geolocated API

On this page

Tor routes traffic through a network of volunteer-operated nodes, with the final node — the exit node — being the IP address that destination servers see. This API returns a current list of active Tor exit nodes, geolocated to country level, along with the carrier information for each.

It's useful for applications that need to identify or flag Tor traffic — content personalisation that requires accurate location, fraud detection, or access control policies. The list is paginated and reflects the current state of active exit nodes. For an interactive view, see the Tor Exit Nodes insights page.

Endpoint

GEThttps://api-bdc.net/data/tor-exit-nodes-list

Parameters

ParameterTypeRequiredDescription
batchSizeinteger (int32)OptionalRequested batch size. Maximum value = 1000
offsetinteger (int32)OptionalOffset. Number of entries to skip
sortstring, enum (ip, countryCode, countryName, carriers)OptionalSort response by a field value. Default value: ip
orderstring, enum (asc, desc)OptionalSort order. Default value: asc
localityLanguagestringOptionalPreferred language for locality names in ISO 639-1 format, such as 'en' for English, 'es' for Spanish etc. If the requested language is not available for a requested location, it will default to English. If no English variant is known, will provide the native, local names
keystringOptionalYour API key

Responses

200OK

Sample Request

https://api-bdc.net/data/tor-exit-nodes-list?batchSize=10&offset=0&localityLanguage=en&key=[YOUR API KEY]

Sample Response

JSON View

Response Schema

totalintegerTotal number of nodes available
offsetintegerNumber of entries skipped (pagination offset)
batchintegerNumber of entries in the current batch
▶nodesarrayArray of node entries returned
ipstringTOR node IP address
countryNamestringCountry name localised to the language as defined by 'localityLanguage' request parameter
countryCodestringCountry ISO 3166-1 Alpha-2 code
▶carriersarrayList of Autonomous Systems (AS) announcing this IP address on BGP
asnstringThe Autonomous System Number in prefixed string format (e.g. "AS13335").
asnNumericintegerThe Autonomous System Number as an unsigned integer (e.g. 13335).
organisationstringThe organisation or entity the AS is registered for, as recorded in the RIR database.
namestringThe short handle or network name assigned to the AS by the RIR (e.g. "CLOUDFLARENET").
registrystringThe Regional Internet Registry (RIR) the AS is registered with
registeredCountrystringRegistered Country ISO 3166-1 Alpha-2 code
registeredCountryNamestringRegistered Country localised name. The language is as defined by the 'localityLanguage' request parameter
registrationDatestringInitial registration date of the autonomous system in 'yyyy-MM-dd' format. This field is omitted when unavailable from the source Regional Internet Registry.
registrationLastChangestringDate of the most recent registration update or modification in 'yyyy-MM-dd' format. This field is omitted when unavailable from the source Regional Internet Registry.
totalIpv4AddressesintegerTotal number of IP addresses announced by the AS
totalIpv4PrefixesintegerTotal number of ipV4 BGP prefixes announced by the AS
totalIpv4BogonPrefixesintegerTotal number of ipV4 bogon prefixes announced by the AS
totalIpv6PrefixesintegerTotal number of ipV6 BGP prefixes announced by the AS
totalIpv6BogonPrefixesintegerTotal number of ipV6 bogon prefixes announced by the AS
rankintegerGlobal rank by total number of IP addresses announced. Omitted when the ASN is not ranked (i.e. ASNs with no active IP announcements)
rankTextstringHuman-readable global rank string including the total number of ranked ASNs (e.g. "#297 out of 79,835"). Omitted when the ASN is not ranked

400Bad request

Sample Response

JSON View

403Access denied, or your quota limit has exceeded

Sample Response

JSON View

404Found no valid entry for the request

Sample Response

JSON View

406Found too many result items. Please reduce the scope of your request

Sample Response

JSON View

500An error has occurred and did not complete your request. Please try again

Sample Response

JSON View