Integrate iFreeChecker into your apps, websites, or DHRU panels. All responses are JSON.
Every request requires an API key. Get yours from My Account after registering.
Pass the key as a query parameter apikey or as an HTTP header X-Api-Key.
https://ifreechecker.com/check
Content-Type: application/jsonAll endpoints share the same base URL. The endpoint parameter selects the service. Common parameters apply to all:
| Parameter | Type | Required | Description |
|---|---|---|---|
endpoint | string | required | Service name (see below) |
id | string | required | Serial number or IMEI (8–20 alphanumeric, case-insensitive) |
apikey | string | required | Your iFreeChecker API key |
Credits are deducted per successful check only. Failed checks (invalid serial, API errors) are not charged.
Every response contains these top-level fields:
| Field | Type | Description |
|---|---|---|
ok | boolean | true on success |
service | string | Endpoint used (e.g. full, case_history) |
summary | object | Parsed device data (serial, model, warranty, FMI, etc.) |
details | object | Raw GSX device details |
eligibility | object|null | Find My / repair eligibility (null if not included) |
cases | object|null | Case history (null if not included) |
repairs | object|null | Repair history (null if not included) |
blacklist | object|null | Blacklist status (null if not included or non-cellular) |
isCellular | boolean | Whether the device has IMEI |
_meta | object | Request metadata (endpoint, time, timestamp) |
| Field | Description |
|---|---|
serial | Serial number |
imei | Primary IMEI (empty for Wi-Fi devices) |
model | Product description (e.g. "iPhone 17 Pro Max") |
config | Full config (e.g. "IPHONE 17 PRO MAX,CHINA,256GB,SLV") |
fmi | "ON", "OFF", or "unknown" |
warranty | Warranty description |
warrantyCode | AP (AppleCare+), LP (Limited), OO (Out of Warranty) |
daysRemaining | Days of coverage left |
purchaseDate | ISO 8601 date |
purchaseCountry | Country of purchase |
laborCovered | Boolean |
partCovered | Boolean |
soldTo | Distributor / channel name (full, soldby_*, gsx_policy only) |
productLine | Product line code (full, soldby_*, gsx_policy only) |
| HTTP | Code | Meaning |
|---|---|---|
| 400 | Bad Request | Missing or invalid parameters |
| 402 | Payment Required | Insufficient balance — top up your account |
| 403 | Forbidden | Invalid API key or account suspended |
| 405 | Not Allowed | Only GET method is accepted |
| 429 | Too Many Requests | Rate limit exceeded (max 10/min) |
| 502 | Bad Gateway | Upstream GSX API error |
Error responses always include "ok": false and an "error" message:
// Example error response { "ok": false, "error": "Insufficient balance ($2.30). Please top up.", "code": 402, "balance": 2.30, "cost": 0.55 }
429 with Retry-After: 60 header when exceededWhen you create an account, you get access to API keys. That key is the only credential you need for DHRU:
ifc_xxxxxxxxxxxx). You can create multiple keys with labels (e.g. Production, DHRU).apiaccesskey). No separate username or password is required — the API key alone authenticates you.apiaccesskey in DHRU. Ensure your account has sufficient balance (top up from Account if needed).iFreeChecker exposes a DHRU Fusion–compatible API at /dhru. DHRU can synchronize services, place orders, and fetch results (HTML report) using the same actions as other DHRU suppliers.
| Setting | Value |
|---|---|
| API URL | https://ifreechecker.com/dhru |
| API Access Key | Your iFreeChecker API key (from Account → API Keys) |
| Username | Optional; leave blank or use any value. Auth is by key only. |
Actions supported:
| Action | Description |
|---|---|
accountinfo | Returns your balance, user ID, currency (USD). Use for “test connection” or balance check in DHRU. |
imeiservicelist | Returns all 9 iFreeChecker services with IDs and pricing. Use “Setup my IMEI services same as this API services” in DHRU to sync automatically. |
placeimeiorder | Place an order: pass IMEI/Serial + Service ID. Balance is charged and the check runs immediately. Returns ORDERID. |
getimeiorder | Fetch result by Order ID or by Serial/IMEI (returns latest order for that device). Returns STATUS 4 when complete and CODE = formatted HTML report. |
Service IDs (for placeimeiorder and synced list):
| ID | Service | Includes | Cost |
|---|---|---|---|
| 1 | Full GSX Check | Details, FMI, activation policy, cases, repairs, replacement, blacklist, Sold To | $0.55 |
| 2 | Case History | Device details, warranty, FMI, case history | $0.25 |
| 3 | Case + Repair + Replacement | Device details, warranty, FMI, cases, repairs, replacement | $0.40 |
| 4 | Blacklist | Device details, warranty, blacklist status | $0.15 |
| 5 | Sold By + Case | Device details, Sold By, Country, case history | $0.30 |
| 6 | Sold By + Case + Repair | Device details, Sold By, Country, cases, repairs | $0.45 |
| 7 | GSX Sold By + Policy | Device details, Sold By, Country, full activation policy & SIM info | $0.20 |
| 8 | Repair + Replacement | Device details, repair history, replacement history | $0.40 |
| 9 | Basic Info | Device details, warranty, FMI, SIM-Lock, Activation Status | $0.10 |
Parameters can be sent as GET or POST. For placeimeiorder, parameters can be XML (<PARAMETERS><IMEI>...</IMEI><SERVICEID>1</SERVICEID></PARAMETERS>) or base64-encoded JSON. For getimeiorder, pass either the numeric Order ID or the original IMEI/Serial to fetch the latest result for that device.
The CODE field in a completed getimeiorder response is a styled HTML report tailored to the requested service — suitable for embedding directly in DHRU result pages.
https://ifreechecker.com/dhru (without www) as the API URL in DHRU to avoid 307 redirects that cause “Invalid json response” errors.If you prefer a simple URL-per-request setup instead of the DHRU Fusion API:
iFreeCheckerSet the API URL to:
https://ifreechecker.com/check?endpoint={{service}}&id={{imei}}&apikey=YOUR_API_KEY
Create a service in DHRU for each endpoint you want to offer:
| Service Code (endpoint=) | Cost |
|---|---|
full | $0.55 |
basic_info | $0.10 |
case_history | $0.25 |
repair_history | $0.40 |
device_blacklist | $0.15 |
soldby_case | $0.30 |
soldby_case_repair | $0.45 |
gsx_policy | $0.20 |
repair_replacement | $0.40 |
Response: JSON with ok: true on success; ok: false + error on failure. Credits deducted on success only.