Dhru API Compatibility
Use the Dhru-compatible endpoint for IMEI service lists, order placement, account info, and order status checks.
Modified at Apr 28, 2026, 05:38 AM UTC
Cek Ceir includes a Dhru-compatible form endpoint for legacy IMEI integrations.
Base endpoints:
POST /api/dhruPOST /api/dhru/index.phpPOST /api/index.php/api/dhru/index.php and /api/index.php redirect to /api/dhru.
Different authentication model
Dhru compatibility does not use the Authorization: Bearer <api_key> header. Send username and apiaccesskey as form fields instead.
Authentication
Dhru requests use form fields instead of JSON headers.
| Field | Type | Required | Description |
|---|---|---|---|
| username | form string | Yes | Short security ID or username. Aliases: api_username, user. |
| apiaccesskey | form string | Yes | API key secret. Aliases: key, api_key, apikey, accesskey. |
The API key is built as:
<username>.<apiaccesskey>If either field already contains the full dotted key, the API accepts it.
The Dhru endpoint creates orders with the API key owner account.
Request Format
POST/api/dhruorder.create
Accepts Dhru-compatible form requests and returns account, service, order, or status data.
Send application/x-www-form-urlencoded or multipart/form-data.
Request
Loading cURL...Request Fields
| Field | Type | Required | Description |
|---|---|---|---|
| username | form string | Yes | Short security ID or username. |
| apiaccesskey | form string | Yes | API key secret. |
| requestformat | form string | No | Use JSON for JSON output or XML for XML output. |
| action | form string | Yes | Dhru action to execute. |
| parameters | form JSON or XML string | No | Action-specific parameters for order placement. |
| orderid | form string or number | No | Order ID for status checks. |
requestformat=XML returns XML. Any other value returns JSON.
Supported Actions
| Action | Alias accepted | Purpose |
|---|---|---|
| accountinfo | none | Return balance, email, currency, and username. |
| imeiservicelist | servicelist | Return eligible IMEI services. |
| placeimeiorder | placeorder | Place one IMEI order. |
| placeimeiorderbulk | placeorderbulk | Place multiple IMEI orders. |
| orderstatus | getimeiorder, getserverorder | Return one order status. |
| orderstatusbulk | getimeiorderbulk, getserverorderbulk | Return multiple order statuses. |
Place One Order
parameters may be JSON or a simple XML parameter block. The service ID can be a numeric service ID or a service code.
POST/api/dhruorder.create
Places one IMEI order through the Dhru-compatible action placeimeiorder.
Request
Loading cURL...Request Fields
| Field | Type | Required | Description |
|---|---|---|---|
| username | form string | Yes | Short security ID or username. |
| apiaccesskey | form string | Yes | API key secret. |
| requestformat | form string | No | Use JSON for JSON output. |
| action | form string | Yes | Use placeimeiorder or alias placeorder. |
| parameters.ID | string or number | Yes | Numeric service ID or service code. |
| parameters.IMEI | string | Yes | IMEI value sent to the selected service. |
Success Response
{ "SUCCESS": [ { "MESSAGE": "Order Placed Successfully", "REFERENCEID": "321" } ], "apiversion": "8.2"}Response Fields
| Field | Type | Required | Description |
|---|---|---|---|
| SUCCESS | array | Yes | Success envelope in Dhru format. |
| SUCCESS[].MESSAGE | string | Yes | Human-readable success message. |
| SUCCESS[].REFERENCEID | string | Yes | Order ID in Dhru response format. |
| apiversion | string | Yes | Dhru compatibility API version. |
Check Order Status
POST/api/dhruorder.create
Returns one order status through the Dhru-compatible action orderstatus.
Request
Loading cURL...Request Fields
| Field | Type | Required | Description |
|---|---|---|---|
| username | form string | Yes | Short security ID or username. |
| apiaccesskey | form string | Yes | API key secret. |
| requestformat | form string | No | Use JSON for JSON output. |
| action | form string | Yes | Use orderstatus, getimeiorder, or getserverorder. |
| orderid | form string or number | Yes | Order ID returned as REFERENCEID. |
Success Response
{ "SUCCESS": [ { "STATUS": "4", "CODE": "completed", "REFERENCEID": "321", "MESSAGE": "Order completed" } ], "apiversion": "8.2"}Response Fields
| Field | Type | Required | Description |
|---|---|---|---|
| SUCCESS | array | Yes | Success envelope in Dhru format. |
| SUCCESS[].STATUS | string | Yes | Dhru status code. |
| SUCCESS[].CODE | string | No | API-readable status label when available. |
| SUCCESS[].REFERENCEID | string | Yes | Order ID in Dhru response format. |
| SUCCESS[].MESSAGE | string | No | Status message when available. |
| apiversion | string | Yes | Dhru compatibility API version. |
Dhru status codes:
| Code | Meaning |
|---|---|
| 0 | New or pending. |
| 1 | Processing. |
| 3 | Failed, cancelled, or rejected. |
| 4 | Success, completed, or partial. |
Errors are returned with HTTP 200 in Dhru format:
{ "ERROR": [ { "MESSAGE": "Invalid request", "FULL_DESCRIPTION": "payload_required" } ], "apiversion": "8.2"}