Verifee API

The same JSON API that powers this website. Public endpoints need no key.

This API is in beta. It has no keys, no uptime guarantee and no stability promise, and fields may change. Please do not use it for anything where a wrong price would cause real harm.

Base URL

https://verifee.onrender.com/api/v1

Responses use one envelope: { success, data } on success and { success: false, message } on failure. A health check is at https://verifee.onrender.com/health.

Public endpoints

POST/ai/fair-priceFair range, bargaining plan and confidence for a product in a city.
POST/ai/scam-checkScam probability and verdict for a quoted price.
POST/ai/translateTranslate a shopping phrase into an Indian language.
POST/ai/chatConversational shopping assistant.
POST/ai/markets-searchSearch markets by name or city.
GET/ai/city-places/:cityPopular shopping areas in a city.
GET/pricesCommunity price reports (filters: product, city, category, limit, page).
GET/prices/stats/:productAverage, min, max and count of verified reports (optional ?city=).
GET/scam-reportsRecent overcharging reports (filters: city, category, limit, page).
GET/shopsShops and markets directory.
GET/payments/configPlans and which payment methods are enabled.

Example: fair price

curl -X POST https://verifee.onrender.com/api/v1/ai/fair-price \
  -H "Content-Type: application/json" \
  -d '{"product":"Pashmina shawl","city":"Srinagar"}'
{
  "success": true,
  "data": {
    "fairPriceMin": 2400,
    "fairPriceMax": 3200,
    "dataSource": "ai_estimate",
    "confidenceScore": 45
  }
}

Example: scam check

curl -X POST https://verifee.onrender.com/api/v1/ai/scam-check \
  -H "Content-Type: application/json" \
  -d '{"product":"Pashmina shawl","offeredPrice":8000,"city":"Srinagar"}'

Errors look like this:

{
  "success": false,
  "message": "Product is required"
}

Free daily quota

These endpoints cost more to run, so free users get 3 calls per day (counted per account, or per IP address when signed out). Verifee Pro is unlimited. Past the quota you get HTTP 402 with code: "UPGRADE_REQUIRED".

POST/payments/guardAI Pay Guard verdict before paying a vendor.
POST/ai/bargain-scriptFull bargaining script in a chosen language.
POST/ai/bargain-replyLive comeback to what a seller just said.
POST/ai/verify-receiptCheck a receipt photo against fair prices.

Authentication

Account endpoints use a JWT. Sign in to get a token, then send it as a Bearer token.

# 1. sign in
curl -X POST https://verifee.onrender.com/api/v1/auth/login \
  -H "Content-Type: application/json" \
  -d '{"email":"you@example.com","password":"your-password"}'

# 2. use the returned token
curl https://verifee.onrender.com/api/v1/auth/me -H "Authorization: Bearer <token>"

Rate limits

  • 150 requests per 15 minutes per IP across the whole API.
  • 30 requests per minute per IP on /ai/*.
  • 15 requests per minute per IP on /payments/guard.
  • 20 requests per 15 minutes per IP on /auth/*.

Exceeding a limit returns HTTP 429. Back off and retry later.