API
Gli stessi dati del sito, in JSON o testo semplice. Nessuna chiave, nessun account; si applicano limiti di uso corretto.
curl https://ipaddress.tr/api/v1/my-ip?format=textEndpoint
| Percorso | Descrizione | Dati | Limiti di richieste |
|---|---|---|---|
| GET/api/v1/my-ipProva: /api/v1/my-ip | Il tuo indirizzo IP (anche come testo semplice con ?format=text). | Set di dati propri | 120 · 240/min |
| GET/api/v1/ip/{address}Prova: /api/v1/ip/144.122.145.153 | Dati di rete, routing, registro e posizione di un indirizzo. | Set di dati propri | 30 · 30/min |
| GET/api/v1/ip/geolocation?ip=Prova: /api/v1/ip/geolocation?ip=177.224.0.1 | Solo la stima di posizione di un indirizzo (DB-IP Lite), sempre segnata come stima. | Set di dati propri | 30 · 30/min |
| GET/api/v1/ip/asn?ip=Prova: /api/v1/ip/asn?ip=2001:1208::1 | L'AS di origine e il prefisso annunciato di un indirizzo, e la delega del registro in cui ricade. | Set di dati propri | 30 · 30/min |
| GET/api/v1/ip/reverse?ip=Prova: /api/v1/ip/reverse?ip=8.8.8.8 | Il record PTR di un indirizzo pubblico, in tempo reale, con conferma diretta. | Interrogazione in tempo reale | 40 · 60/min |
| GET/api/v1/ip/blacklist?ip=Prova: /api/v1/ip/blacklist?ip=8.8.8.8 | Risultati DNSBL in tempo reale (SpamCop, PSBL, DroneBL, s5h.net) e il flag di uscita Tor per un indirizzo pubblico. | Interrogazione in tempo reale | 40 · 60/min |
POST/api/v1/bulkcurl --data-binary $'1.1.1.1\n9.9.9.9' https://ipaddress.tr/api/v1/bulk | Fino a 100 indirizzi alla volta (JSON {"addresses": […]} o uno per riga), con risposta solo dai nostri dataset. Non si salva nulla. | Set di dati propri | 6 · 3/min |
| GET/api/v1/asn/{asn}Prova: /api/v1/asn/AS8151 | Titolare, registro e prefissi annunciati di un sistema autonomo. | Set di dati propri | 30 · 30/min |
| GET/api/v1/network/{cidr}Prova: /api/v1/network/144.122.0.0/16 | Una rete in notazione CIDR: dimensione, intervallo, uso speciale, chi la annuncia (con RPKI), la delega del registro e una stima di posizione. | Set di dati propri | 30 · 30/min |
| GET/api/v1/network/ipv4?cidr=Prova: /api/v1/network/ipv4?cidr=192.168.1.37/24 | Calcolo di sottorete per una rete IPv4 o IPv6: rete, broadcast, maschere, intervallo utilizzabile e conteggi. | Set di dati propri | 120 · 240/min |
| GET/api/v1/network/ipv6?cidr=Prova: /api/v1/network/ipv6?cidr=2001:db8::/48 | Calcolo di sottorete per una rete IPv4 o IPv6: rete, broadcast, maschere, intervallo utilizzabile e conteggi. | Set di dati propri | 120 · 240/min |
| GET/api/v1/country/{cc}Prova: /api/v1/country/MX | Spazio di indirizzi e numeri AS registrati di un paese, cosa annunciano le sue reti, copertura RPKI e reti principali (per TR anche la stima per provincia). | Set di dati propri | 30 · 30/min |
| GET/api/v1/dns/{domain}?type=A,MXProva: /api/v1/dns/metu.edu.tr?type=A,MX | Record DNS in tempo reale di un dominio. | Interrogazione in tempo reale | 40 · 60/min |
| GET/api/v1/dns/propagation?name=&type=Prova: /api/v1/dns/propagation?name=metu.edu.tr&type=A | La stessa domanda DNS posta a più resolver pubblici, con ogni risposta e se concordano. | Interrogazione in tempo reale | 40 · 60/min |
| GET/api/v1/rdap/{query}Prova: /api/v1/rdap/AS8151 | Dati di registrazione dal server RDAP competente. | Interrogazione in tempo reale | 10 · 6/min |
| GET/api/v1/healthProva: /api/v1/health | Stato di funzionamento del servizio. | Set di dati propri | 120 · 240/min |
| GET/api/v1/data-statusProva: /api/v1/data-status | Età e dimensione di ogni set di dati. | Set di dati propri | 120 · 240/min |
Scorciatoie in testo semplice fuori da /api/v1: /raw stampa il tuo indirizzo, /json lo stesso oggetto di /my-ip, /country il codice paese stimato.
Ogni endpoint a percorso ha anche una forma con parametri: /ip/lookup?ip=, /asn/lookup?asn=, /dns/lookup?name=, /network/cidr?cidr=. Ogni risposta include l'intestazione X-Request-Id.
curl ipaddress.tr/rawcurl ipaddress.tr/jsoncurl ipaddress.tr/countryLimiti di richieste
Le richieste sono limitate per indirizzo client con un token bucket. Al raggiungimento del limite l'API risponde 429 con l'header Retry-After. I limiti sono conteggiati in memoria con una chiave hash ruotata ogni giorno; gli indirizzi non vengono memorizzati.
Errori
Gli errori usano i codici di stato HTTP e un corpo JSON della forma {"error": {"code": "…", "message": "…"}}.
Versionamento
I percorsi sotto /api/v1/ mantengono la struttura della risposta. Possono essere aggiunti nuovi campi; quelli esistenti non vengono rimossi né rinominati nella v1.
Attribuzione
I dati di posizione provengono da DB-IP (CC BY 4.0). Se li mostri, cita DB-IP come richiesto dalla licenza.