Telecom Operator Lookup
Contact & AddressOperator, circle, connection type and porting status for any Indian mobile number.
Check whether a number is active, which operator serves it now (after porting), its circle, prepaid or postpaid status and whether it appears on the revoked-number list, before you rely on it for OTPs or collections.
Endpoint
POST
https://app.emver.io/api/sandbox/v1/telecom-operator-lookup
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
Accept: application/json
Request parameters
| Field | Type | Description |
|---|---|---|
mobile
required
|
phone | Mobile number |
Example request
cURL
curl -X POST https://app.emver.io/api/sandbox/v1/telecom-operator-lookup \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"mobile": "9999999999"
}'
import requests
response = requests.post(
"https://app.emver.io/api/sandbox/v1/telecom-operator-lookup",
headers={
"Authorization": "Bearer YOUR_API_KEY",
"Accept": "application/json",
},
json={
"mobile": "9999999999"
},
timeout=60,
)
response.raise_for_status()
data = response.json()
const response = await fetch("https://app.emver.io/api/sandbox/v1/telecom-operator-lookup", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
"Accept": "application/json",
},
body: JSON.stringify({
"mobile": "9999999999"
}),
});
const data = await response.json();
$response = Http::withToken('YOUR_API_KEY')
->acceptJson()
->post('https://app.emver.io/api/sandbox/v1/telecom-operator-lookup', {
"mobile": "9999999999"
});
$data = $response->json();
Replace YOUR_API_KEY and the placeholder values. Use the switch above to see production URLs.
Response
Structure · 200
{
"status": INTEGER,
"message": STRING,
"data": {
"active": BOOLEAN,
"operator": STRING,
"circle": STRING,
"connection_type": STRING,
"ported": BOOLEAN,
"revoked": BOOLEAN
}
}
Example · 200
{
"status": 200,
"message": "string",
"data": {
"active": true,
"operator": "string",
"circle": "string",
"connection_type": "string",
"ported": true,
"revoked": true
}
}
Error · 4xx / 5xx
{
"status": INTEGER,
"message": STRING
}
See Errors & status codes for what each status means and which calls are billed.
About this API
Send the mobile number; receive current operator, home circle, connection type, porting history and the revoked or recycled flag.
Typical uses
- Contact hygiene for lenders. Clean collections dialler lists monthly.
- Onboarding. Route OTPs correctly and block risky numbers.
Questions
- What is the revoked-number list?
- A regulator-published list of numbers disconnected and eligible for reassignment. A hit means the number may no longer belong to your customer.