Telecom v1 / Telecom
Analiză numere de telefon în lot
Aceeaşi analiză ca analizeaza, pe cel mult 50 de numere într-o cerere, în ordinea trimisă. Fiecare rezultat
poartă introdus, ca răspunsul să se lege înapoi de rândul din baza clientului.
POST
https://oneapi.ro/api/telecom/v1/analizeaza-lot
Corpul cererii
Se trimite ca JSON, în corpul cererii (Content-Type: application/json) — nu în şirul de interogare.
NumeTipDescriereValori acceptate
numereobligatoriu
string[]
Lista de numere de analizat, cel mult 50 într-o cerere. Fiecare 3–32 de caractere; se acceptă
0721…, +40 264 … şi formele cu spaţii.
O bază mică de contacte
Corpul cererii
{
"numere": [
"0721234567",
"+40 264 405 300",
"0312345678",
"1910"
]
}
Un mobil şi un fix
Corpul cererii
{
"numere": [
"0721234567",
"0264405300"
]
}
Prefix internaţional, scurt şi gratuit
Corpul cererii
{
"numere": [
"+40721234567",
"1910",
"0800800800"
]
}
Parametri de interogare
Ruta nu acceptă parametri de interogare.
Cum se comportă
- Corpul cererii are un singur câmp,
numere: o listă de 1–50 de numere, fiecare de 3–32 de caractere, în orice formă uzuală. Pentru mai multe, trimite loturi succesive. - Fiecare rezultat e exact cel de la
POST /analizeaza, inclusivoperator_curent: null— portabilitatea nu e publicată nici aici. - Un număr cu format nerecunoscut nu oprește lotul: primește
valid: falsecu motivul, iar restul se analizează normal. - Metoda e POST din același motiv ca la analiza unui număr: numerele sunt datele clientului și nu se scriu nicăieri.
La ce folosește
- Curățarea unei baze de clienți: marchezi numerele care nu pot exista (bloc nealocat) și le separi pe cele mobile de cele fixe.
- Pregătirea unei campanii SMS: păstrezi doar numerele mobile, fără sute de apeluri separate.
- Normalizarea unui import de contacte la forma E.164, pe bucăți de câte 50.
Structura răspunsului
Toate câmpurile de mai jos sunt în data.
CâmpTipDescriere
inregistrari
integer
Câte numere s-au analizat.
sumar
object
Numărătoarea rezultatelor:
valide, invalide, bloc_nealocat (format valid, dar în afara oricărui bloc alocat), mobil, fix.
sumar.valide
integer
Câte au
valid: true.
sumar.invalide
integer
Câte au
valid: false.
sumar.bloc_nealocat
integer
Câte au format valid, dar nu sunt în niciun bloc alocat.
sumar.mobil
integer
Câte sunt mobile.
sumar.fix
integer
Câte sunt fixe.
rezultate[]
object[]
Câte un rezultat pe număr, în ordinea trimisă, cu exact forma de la
/analizeaza.
observatie
string
Cum se citește lotul.
rezultate[].introdus
string
Numărul trimis, ca rezultatul să se lege de rândul din baza ta.
Exemple de răspuns
body: {"numere": ["0721234567", "+40 264 405 300", "0312345678", "1910"]}
POSThttps://oneapi.ro/api/telecom/v1/analizeaza-lot
{
"data": {
"inregistrari": 4,
"sumar": {
"valide": 4,
"invalide": 0,
"bloc_nealocat": 1,
"mobil": 1,
"fix": 2
},
"rezultate": [
{
"valid": true,
"introdus": "0721234567",
"format": {
"e164": "+40721234567",
"national": "0721234567",
"fara_prefix": "721234567"
},
"tip": "mobil",
"bloc_alocat": true,
"operator_alocare": "VODAFONE ROMANIA S.A.",
"bloc": {
"domeniu": "72",
"primul": "721000000",
"ultimul": "721999999",
"dimensiune": 1000000
},
"observatie": "Operatorul e cel care a primit blocul la alocare. Dacă numărul a fost portat, deținătorul actual poate fi altul — ANCOM nu publică portabilitatea.",
"sursa": {
"ancom": "Resurse de numerotație",
"actualizat": "2026-10-02 11: 46: 30"
}
}
],
"observatie": "Rezultatele sunt în ordinea trimisă; `introdus` leagă fiecare rezultat de numărul lui. `bloc_nealocat` numără numerele cu format valid care nu se află în niciun bloc alocat — cel mai probabil inventate."
}
}
body: {"numere": ["0721234567", "0264405300"]}
POSThttps://oneapi.ro/api/telecom/v1/analizeaza-lot
{
"data": {
"inregistrari": 2,
"sumar": {
"valide": 2,
"invalide": 0,
"bloc_nealocat": 0,
"mobil": 1,
"fix": 1
},
"rezultate": [
{
"valid": true,
"introdus": "0721234567",
"format": {
"e164": "+40721234567",
"national": "0721234567",
"fara_prefix": "721234567"
},
"tip": "mobil",
"bloc_alocat": true,
"operator_alocare": "VODAFONE ROMANIA S.A.",
"bloc": {
"domeniu": "72",
"primul": "721000000",
"ultimul": "721999999",
"dimensiune": 1000000
},
"observatie": "Operatorul e cel care a primit blocul la alocare. Dacă numărul a fost portat, deținătorul actual poate fi altul — ANCOM nu publică portabilitatea.",
"sursa": {
"ancom": "Resurse de numerotație",
"actualizat": "2026-10-02 11: 46: 30"
}
}
],
"observatie": "Rezultatele sunt în ordinea trimisă; `introdus` leagă fiecare rezultat de numărul lui. `bloc_nealocat` numără numerele cu format valid care nu se află în niciun bloc alocat — cel mai probabil inventate."
}
}
body: {"numere": ["+40721234567", "1910", "0800800800"]}
POSThttps://oneapi.ro/api/telecom/v1/analizeaza-lot
{
"data": {
"inregistrari": 3,
"sumar": {
"valide": 3,
"invalide": 0,
"bloc_nealocat": 0,
"mobil": 1,
"fix": 0
},
"rezultate": [
{
"valid": true,
"introdus": "0721234567",
"format": {
"e164": "+40721234567",
"national": "0721234567",
"fara_prefix": "721234567"
},
"tip": "mobil",
"bloc_alocat": true,
"operator_alocare": "VODAFONE ROMANIA S.A.",
"bloc": {
"domeniu": "72",
"primul": "721000000",
"ultimul": "721999999",
"dimensiune": 1000000
},
"observatie": "Operatorul e cel care a primit blocul la alocare. Dacă numărul a fost portat, deținătorul actual poate fi altul — ANCOM nu publică portabilitatea.",
"sursa": {
"ancom": "Resurse de numerotație",
"actualizat": "2026-10-02 11: 46: 30"
}
}
],
"observatie": "Rezultatele sunt în ordinea trimisă; `introdus` leagă fiecare rezultat de numărul lui. `bloc_nealocat` numără numerele cu format valid care nu se află în niciun bloc alocat — cel mai probabil inventate."
}
}
Coduri de eroare
| Cod | Slug | Când apare |
|---|---|---|
| 401 | neautentificat | Token lipsă, invalid, expirat sau revocat. |
| 403 | feature_indisponibil | Planul curent nu include funcţia de care ţine ruta. |
| 422 | validare | Lipsește numere, nu e o listă, are peste 50 de elemente ori un element depășește 32 de caractere. |
| 429 | cota_depasita | Cota lunară a planului a fost depăşită (vezi Retry-After). |
Toate erorile au aceeași formă. eroare.cod e stabil și e cel după care trebuie să ramifici în cod — nu după textul din mesaj, care se poate schimba.
{
"eroare": {
"cod": "validare",
"mesaj": "Lipsește numere, nu e o listă, are peste 50 de elemente ori un element depășește 32 de caractere."
}
}