Elenchi
Operatori
Copertura: Le zone provengono dal piano di numerazione ufficiale del paese di ogni edizione. La Spagna indica una provincia per ogni numerazione fissa; molti altri paesi pubblicano i propri prefissi e città. I cellulari non hanno una zona in nessun paese, e alcuni paesi non pubblicano ancora un piano che possiamo leggere: lì mostriamo solo il tipo di linea.
Apri lo strumentoIn questa pagina
A cosa serve
Apri l’elenco della tua edizione, scegli una categoria e apri una scheda. I conteggi descrivono i dati disponibili in NoCall, non tutte le chiamate del paese. L’assenza di dati non dimostra che un numero sia sicuro.
Requisiti
Chiunque può leggere queste guide, senza account. Alcuni strumenti richiedono Pro, come indicato in ogni guida.
Come usarlo
Seleziona l’edizione del paese, apri la categoria o la riga desiderata e consulta i dettagli disponibili.
Filtra per operatore o prefisso
Operatori
Esempio inventato
Esempio inventato, non una ricerca reale. Non chiamare e non aprire i suoi link.
+44 1632 960123Interpretare il risultato
Informazioni indicative tratte dai piani di numerazione pubblicati. Descrivono il tipo di numero, mai la persona o l’azienda che c’è dietro.
Mostriamo solo dati tecnici verificati o pubblici. Identità private e segnali di protezione restano nascosti.
Limiti
Solo formati e prefissi supportati. Non confermano posizione, intestatario o attività del numero. Alcuni prefissi sono condivisi.
Risoluzione dei problemi
Prova con un altro marchio, ragione sociale o prefisso a tre cifre.
Riprova tra qualche minuto o cerca direttamente un numero.
Usare con l’API
Richiede una API key e dei crediti. Ogni chiamata completata costa 1 credito, anche quando non ci sono dati. Un account Pro attivo include 20 crediti per mese solare UTC, condivisi da tutte le rotte API e consumati per primi; i crediti mensili non usati non passano al mese successivo. I crediti acquistati nella pagina del tuo account funzionano senza Pro e non scadono mai.
Gli errori non vengono mai addebitati: 401 invalid_api_key (chiave mancante o non valida), 403 pro_required (nessun credito Pro e nessun credito acquistato), 422 input non valido, 429 quota_exceeded (crediti esauriti), rate_limit_exceeded o ai_busy (l’IA di sms-check è al limite della capacità), 503 tool_warming (i dati sono ancora in preparazione) o tool o provider non disponibile. Dopo un 429 o un 503, riprova quando sono trascorsi i secondi indicati nell’intestazione Retry-After.
Operatori spagnoli con i loro prefissi, tipo di numero e conteggio spam, più i prefissi speciali. Solo ES.
Invia il corpo JSON alla rotta specifica del tool, oppure a POST /v2/tools aggiungendo il campo tool. Entrambe le rotte restituiscono lo stesso risultato.
POST https://api.nocall.io/v2/operator-directory
POST https://api.nocall.io/v2/tools {"tool":"operator-directory","country":"ES","operator":"Movistar"}Parametri
| Nome | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| country | "ES" | No (predefinito: "ES") | Paese dei dati. È supportato solo ES. |
| operator | string (1–60) | No | Solo questo operatore, per nome. |
REQUEST_ID="$(uuidgen)" && [ -n "$REQUEST_ID" ] &&
curl --request POST 'https://api.nocall.io/v2/operator-directory' \
--header "Authorization: Bearer $NOCALL_API_KEY" \
--header 'Content-Type: application/json' \
--header "Idempotency-Key: $REQUEST_ID" \
--data '{"country":"ES","operator":"Movistar"}'import json
import os
import urllib.request
import uuid
api_key = os.environ.get('NOCALL_API_KEY')
if not api_key:
raise SystemExit('Set NOCALL_API_KEY')
request = urllib.request.Request(
'https://api.nocall.io/v2/operator-directory',
method='POST',
data=json.dumps({'country': 'ES', 'operator': 'Movistar'}).encode(),
headers={
'Authorization': 'Bearer ' + api_key,
'Content-Type': 'application/json',
'Idempotency-Key': str(uuid.uuid4()),
},
)
with urllib.request.urlopen(request, timeout=30) as response:
result = json.load(response)
print(result['data']['result'], result['meta']['unitsCharged'])import { randomUUID } from 'node:crypto';
const requestId = randomUUID();
const apiKey = process.env.NOCALL_API_KEY;
if (!apiKey) throw new Error('Set NOCALL_API_KEY');
const response = await fetch('https://api.nocall.io/v2/operator-directory', {
method: 'POST',
headers: {
Authorization: 'Bearer ' + apiKey,
'Content-Type': 'application/json',
'Idempotency-Key': requestId,
},
body: JSON.stringify({ country: 'ES', operator: 'Movistar' }),
});
const result = await response.json();
if (!response.ok) throw new Error(result.error?.code ?? 'request_failed');
console.log(result.data.result, result.meta.unitsCharged);Esempio di risposta (200)
Questo è l’esempio documentato nel riferimento API. Le ricerche usano un numero fittizio, mentre aggregati e risposte dell’IA mostrano la struttura del risultato, non dati reali.
{
"data": {
"tool": "operator-directory",
"result": {
"operators": [
{
"name": "Movistar",
"prefixes": [
"609",
"619"
],
"numberType": "mobile",
"spamCount": 0
}
],
"specialPrefixes": [
{
"prefix": "400",
"name": "Llamadas comerciales",
"type": "commercial",
"cost": "no_callback",
"risk": "medium"
},
{
"prefix": "800",
"name": "Llamada gratuita",
"type": "toll_free",
"cost": "free",
"risk": "low"
},
{
"prefix": "900",
"name": "Llamada gratuita",
"type": "toll_free",
"cost": "free",
"risk": "low"
},
{
"prefix": "901",
"name": "Coste compartido",
"type": "premium",
"cost": "shared",
"risk": "medium"
},
{
"prefix": "902",
"name": "Coste extra",
"type": "premium",
"cost": "expensive",
"risk": "high"
},
{
"prefix": "903",
"name": "Teléfono premium",
"type": "premium",
"cost": "very_expensive",
"risk": "critical"
},
{
"prefix": "905",
"name": "Televoto",
"type": "premium",
"cost": "very_expensive",
"risk": "critical"
},
{
"prefix": "906",
"name": "Teléfono premium",
"type": "premium",
"cost": "very_expensive",
"risk": "critical"
},
{
"prefix": "907",
"name": "VoIP España",
"type": "premium",
"cost": "expensive",
"risk": "high"
},
{
"prefix": "908",
"name": "VoIP España",
"type": "premium",
"cost": "expensive",
"risk": "high"
},
{
"prefix": "909",
"name": "VoIP España",
"type": "premium",
"cost": "expensive",
"risk": "high"
},
{
"prefix": "803",
"name": "Servicios para adultos",
"type": "premium",
"cost": "very_expensive",
"risk": "critical"
},
{
"prefix": "806",
"name": "Entretenimiento",
"type": "premium",
"cost": "very_expensive",
"risk": "high"
},
{
"prefix": "807",
"name": "Servicios profesionales",
"type": "premium",
"cost": "very_expensive",
"risk": "high"
},
{
"prefix": "704",
"name": "Número personal",
"type": "premium",
"cost": "expensive",
"risk": "medium"
}
]
}
},
"meta": {
"requestId": "req_example",
"unitsCharged": 1,
"usage": {
"periodStart": "2026-10-01",
"unitLimit": 20,
"unitsUsed": 3,
"unitsRemaining": 17
}
}
}Campi del risultato (data.result)
| Campo | Tipo | Descrizione |
|---|---|---|
| operators | array<object> | Operatori con i loro prefissi, tipo di numero e conteggio spam (null se non disponibile). |
| specialPrefixes | array<object> | Prefissi speciali con nome, tipo, costo e rischio. |
