Why AtlasPI, not Wikidata?

Both are free and open. They answer different questions. Here is the same question, run against each.

Wikidata is a magnificent general-purpose knowledge graph. But an AI agent asking “what states existed in 1250, where were their borders, and what was contested?” has to translate that into SPARQL, join across items, fetch external GeoShapes, and then decide for itself how to frame a conquest. AtlasPI answers the same question in one REST call, with the polygon, a confidence score, and the historiographic caveat already attached.

All numbers below were measured on 2026-07-04 against the live atlaspi.it and query.wikidata.org. Wall-clock times vary; AtlasPI is not meaningfully faster than Wikidata — the point is what comes back, not how fast.

Four questions, side by side

QuestionAtlasPIWikidata
Which polities existed in 1250 CE? One call: GET /v1/entities?year=1250 → 300 entities, each with a GeoJSON boundary, native-language name, confidence score and status. ~2 MB, ready to render on a map. A SPARQL query joining P31/P279* to “historical country” plus P571/P576 date filters returns ~586 items — a count and QIDs only. Names, coordinates and any geometry each need further queries; duplicates and anachronistic items must be filtered by hand.
What did the world look like in 1250? One call: GET /v1/snapshot/year/1250 → entities, active periods (by region), and events, pre-joined for that year. No equivalent. You compose several SPARQL queries and assemble the “snapshot” client-side.
Where were the Ottoman Empire’s borders? GET /v1/entities/2 returns a GeoJSON MultiPolygon with documented provenance (boundary_source, Natural Earth / aourednik). The Ottoman Empire item (Q12560) carries a point coordinate (P625) — no polygon. Boundaries live in external Wikimedia GeoShape files, if they exist for the period at all.
What happened on 14 July? GET /v1/events/on-this-day/07-14 → events with date precision, casualties, linked entities, sources and ethical notes. No native “on this day” endpoint; requires SPARQL extracting month/day from P585 point-in-time values across all events.

The real difference: four things AtlasPI attaches that a general graph doesn’t

1. Real boundaries, with provenance. Every entity that has a shape carries a GeoJSON polygon, not just a point, and records where the shape came from (boundary_source). An agent can render a historical map directly from the response.
2. Epistemic honesty, in the data. Each record has a confidence_score (0–1); records below 0.5 are marked uncertain, contested territories are capped and flagged disputed. The database tells you how sure it is ETHICS-013.
3. Native names first, imposed names preserved. The primary name is the local/original form — Mēxihcah, not “Aztec”; Tawantinsuyu, not “Inca”; ⵉⵎⴰⵣⵉⵖⵏ alongside colonial exonyms. Colonial renamings are documented, not silently replaced ETHICS-001.
4. Conquests named as conquests. Succession links carry an explicit transition_typeCONQUEST, ANNEXATION, DECOLONIZATION — with is_violent and perpetrators named; genocides and colonial violence use those words, not euphemisms ETHICS-002 / 007. When historians disagree, both readings are recorded rather than arbitrated.

When to use which

AtlasPI even cross-references Wikidata: most entities carry a wikidata_qid so you can pivot to the broader graph when you need it.

Try it now

/v1/snapshot/year/1250 · /v1/entities?year=1250 · /v1/events/on-this-day/07-14 · /v1/stats · Interactive API docs