CustomerReview — a cr.hjlabs.in service by hjLabs.in
CustomerReview exposes one read-only JSON endpoint so a store, a booking system or an internal tool can screen a mobile number automatically instead of a human opening a tab. It is free. Fair-use limits apply only to stop bots from scraping people’s data — there is nothing to pay for and nothing to buy. This v1 endpoint is deprecated in favour of the free v2 merchant API.
GET https://cr.hjlabs.in/api/v1/check/{phone} — where {phone} is an E.164 number with the leading plus percent-encoded as %2B, for example https://cr.hjlabs.in/api/v1/check/%2B919876543210. A health check lives at GET https://cr.hjlabs.in/api/v1/health.
Only GET and OPTIONS are accepted. Responses carry Access-Control-Allow-Origin: *, so the call works from a browser as well as from your server.
A JSON object with the anonymous summary: found (whether anything is on record), primaryName, reviewCount, the trust verdict, tagCounts (how many businesses picked each incident tag) and the reported loss in rupees. Individual review text is not part of the public API. Responses also carry a Deprecation: true header and a Link header pointing here.
Reviewer identity is never part of the payload, in any field, under any parameter. There is no endpoint that returns it.
400 invalid_phone if the segment is not a valid E.164 number. 404 not_found for an unknown API path. 405 method_not_allowed for anything but GET or OPTIONS. 429 rate_limited with a Retry-After header when the fair-use limit is reached. 502 upstream_error if the data store cannot be reached — retry rather than treating it as “no history”.
Successful lookups are cached for 60 seconds at the edge, so a burst of identical checks for one number costs one upstream read.
The pattern that works: call the endpoint when a cash-on-delivery order is placed, not when the cart is viewed. Treat found: false as normal — most numbers have no history. Act on signal, not on absence: a low avgRating across several reviews, repeated refused-COD or return-fraud tags, or a meaningful totalFraudValue are worth routing to prepaid or to manual review.
Fail open. If the call errors or times out, let the order through — a screening service that blocks checkout when it is unavailable costs more than the fraud it prevents. And never surface another business’s review text to the customer inside your own checkout.