---
title: "Get Operator Code and Circle API Reference"
description: "Auto-detect a mobile number's recharge operator code and telecom circle."
canonical: "https://eps.eko.in/docs/bbps-operator-code-circle"
---


> **Canonical URL:** https://eps.eko.in/docs/bbps-operator-code-circle
> This is a machine-readable Markdown version of the page for AI agents and LLMs. The primary (HTML) version lives at the canonical URL above.

# Get Operator Code and Circle API Reference

`GET https://staging.eko.in/ekoapi/v3/customer/payment/bbps/recharge/{customer_mobile}/operator`

Auto-detect a mobile number's recharge operator code and telecom circle.

**Behaviour**

- **Read-only**: Changes nothing; only returns data.

Detects the telecom operator and circle for a customer mobile number, returned as name/value pairs under `dependent_params` at the top level of the response (not under `data`).

**Watch the rename:** this endpoint returns `circle_area`, but Get Recharge Plans expects that value as the **`circleid`** query parameter. The `phone_operator_code` value carries over under the same name.

> View product & pricing details: [Bharat Bill Payment System (BBPS)](https://eps.eko.in/products/bbps-api.md)

## Path parameters

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| customer_mobile | string | yes | Customer's mobile number. e.g. 9876543210 |

## Query parameters

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| initiator_id | string | yes | Registered mobile number of the API user (see Platform Credentials). e.g. 9962981729 |
| client_ref_id | string | no | Unique reference ID per API call, generated by your system (10–20 characters; 10 recommended). The SDKs generate one for every non-GET call when you don't. e.g. 2026010100123456789 |

## Headers

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| developer_key | string | yes | Static API key issued to your account after KYC. |
| secret-key | string | yes | Dynamic per-request signature: base64(HMAC-SHA256(timestamp, base64(access_key))). |
| secret-key-timestamp | string | yes | Current time in milliseconds since UNIX epoch, used to compute secret-key. Must match server time. |
| content-type | string | yes | application/json e.g. application/json |

## Response

⭐ marks fields highlighted as verifiable.

| Field | Type | Description |
| --- | --- | --- |
| status | number | Primary success indicator (0 = success). |
| message | string | Human-readable response / error message. |
| response_status_id | number | UI display hint only (-1/0 success, 1 failure, 2 initiated, 3 refund initiated, 4 refunded). Never branch on it — use `status` (and `tx_status` for financial APIs), or `response_type_id` where documented. |
| response_type_id | number | A unique id for every possible response shape (success or error) — useful for client logic branching and analytics. |
| data | object | API-specific response payload. |
| data.dependent_params ⭐ | array | Resolved operator/circle as name-value pairs (`phone_operator_code`, `circle_area`) — returned at the top level, not under `data`. |
| data.dependent_params.name | string | Parameter name (`phone_operator_code` or `circle_area`). |
| data.dependent_params.value | number | Parameter value. Pass `circle_area`'s value on as `circleid` to Get Recharge Plans. |

## Response types

Branch on `response_type_id` to decide the next call:

| response_type_id | Meaning | Next step |
| --- | --- | --- |
| 1804 | Operator and circle detected — list the plans available for them. | [bbps-recharge-plans](https://eps.eko.in/docs/bbps-recharge-plans.md) |

## Example response

`response_type_id` `1804` — Operator and circle detected — list the plans available for them.. Next step: [bbps-recharge-plans](https://eps.eko.in/docs/bbps-recharge-plans.md).

```json
{
  "response_status_id": 0,
  "dependent_params": [
    {
      "name": "phone_operator_code",
      "value": 1
    },
    {
      "name": "circle_area",
      "value": "23"
    }
  ],
  "data": {
    "updates": ""
  },
  "response_type_id": 1804,
  "message": "success",
  "status": 0
}
```
