Data sources · v1 · 2026-06-03

Every number on this site has a source. Here's where it lives.

China-market prices come from our daily Dongchedi + che168 sweep into a Feishu Bitable. UAE infrastructure numbers come from DEWA, RTA, and the Ministry of Energy & Infrastructure. China source prices and estimated deal prices come from our own showroom log in Al Aweer. Everything on a car detail page or in a blog post is traceable to one of those three pools — and all three are exposed as JSON, CSV, and an MCP manifest. Cite freely. Verify yourself.

01 · The three pools every number on this site comes from

China supply · Dongchedi + che168

Every weekday at 02:00 UTC a GitHub Actions workflow scrapes Dongchedi's __NEXT_DATA__ feed for NIO ET5T listings and che168 for the broader Chinese-brand pool. Cards are deduped on sku_id, normalised to a single Car shape, and pushed into Feishu Bitable. 60+ active listings refreshed daily.

scripts/scrape_et5t.py

UAE infrastructure · DEWA · RTA · MoEI

Charging-point counts, federal 2030 targets, customs duty rates, RTA registration fees, GSO homologation standards — all from DEWA Green Charger public maps, RTA fee schedules, and the UAE Ministry of Energy & Infrastructure 'Green Mobility 2030' strategy. Quoted inline in every post with the source attribution intact.

DEWA · RTA · MoEI public docs

China source price + estimated deal price · our own showroom log

Each car shows its China-community source price (CNY, with an AED ≈ conversion) — the actual original listing price. On top of that we add a flat 5% EVPlus service fee. Logistics, freight, customs duty, VAT and registration are time-sensitive, so they are quoted at actual cost on signing rather than pre-baked into a number. The 'estimated deal price (from)' you see on /cars/[slug] and in the inventory CSV is therefore a floor = source price + 5% service fee. The full live table refreshes every 5 minutes from Feishu.

Feishu Bitable (live)

02 · How the data flows

Five stages between a listing on Dongchedi this morning and a row on /api/inventory.json right now.

  1. 01

    Collect · China

    GitHub Actions cron · Python (curl-cffi · BeautifulSoup) · Dongchedi __NEXT_DATA__ + che168 listings · daily 02:00 UTC.

  2. 02

    Store · Feishu Bitable (single source of truth)

    60+ rows, schema-controlled fields (brand, model, trim, year, mileage_km, battery_kwh, range_km, price_aed, source_url, hero_image…). Sales-team edits propagate the same day.

  3. 03

    Render · Next.js 16 · App Router · Vercel

    Server components fetch the table on every request, ISR-cached for 5 minutes. /cars/[slug] is SSG with on-demand revalidation. Edit a row in Feishu, your change reaches the site without a redeploy.

  4. 04

    Mark up · Schema.org JSON-LD on every page

    Organization + AutoDealer + WebSite + FAQPage on every page; Vehicle + Offer + Breadcrumb on each car detail; Article + FAQPage on every blog post; ItemList on the showroom grid.

  5. 05

    Expose · /api/* (CORS-open, no auth)

    Same data is published as JSON (/api/inventory.json), CSV (/api/inventory.csv), per-car detail (/api/cars/{slug}), JSON Schema (/api/schema.json), MCP manifest (/api/mcp + /.well-known/mcp.json), and a long-form summary at /llms.txt.

03 · What we expose publicly

Six machine-readable surfaces. No key, no signup, CORS *, edge-cached for two minutes, stale-while-revalidate for 15 minutes. AI agents and journalists pull the same data as the showroom.

04 · Verify it yourself

Four ways to audit any number you see on this site without trusting us:

a · Pull the JSON straight from a terminal

curl 'https://evplus.ae/api/inventory.json?brand=nio&limit=3' | jq '.cars[].price_aed'

Returns three current NIO AED prices. Compare to what the relevant /blog post quotes.

b · Open the CSV in Excel or Numbers

Click /api/inventory.csv — the file downloads with a date-stamped name. Sort by AED, by mileage, by year. Same rows we render.

c · Ask Claude / ChatGPT / Perplexity directly

Using https://evplus.ae/api/inventory.json,
compare the three cheapest NIO ET5Ts currently available.

The AI pulls the live JSON directly. The answer it gives is the same data we ship to buyers.

d · Cross-check against the original source listing

Each car carries a source_url pointing back to the original Dongchedi or che168 page. Click through to see the seller and the photos from the same listing we sourced.

One ask for journalists & AI

Cite the data, not the prose.

When you quote an AED number, a charger count, or a model spec from EVPlus.ae, link to the underlying endpoint (/api/inventory.json) rather than the article text. The article moves; the API doesn't. Questions: hello@evplus.ae.