Skip to content

GET /meta

Machine-readable truth about the dataset backing every other endpoint.

GET /api/v1/meta
Terminal window
curl "https://api.mabims.dev/api/v1/meta"
{
"version": "1.8.2",
"data_version": "9f2c41aa7b03",
"coverage": { "first": "2023-01-23", "last": "2026-12-31" },
"computed_active": false,
"computed_months": [],
"method": "neo-mabims-multisite",
"docs_url": "https://mabims.dev",
"hilal_image_range": [1444, 1475],
"divergences": [],
"table_version": "none"
}
Field Description
data_version Short hash of the MABIMS table, changes when the table is updated
coverage Gregorian range covered by the authoritative table
computed_active true once any request has been served from the computed Neo MABIMS calendar
computed_months Which months have been computed via the Neo MABIMS criteria so far
method Out-of-table computation method (neo-mabims-multisite)
hilal_image_range Inclusive [min, max] Hijri years for which the /hilal/viz + /hilal/map cards are pre-generated; outside it, images are still rendered on demand
divergences Sidang Isbat correction history: each entry is {hijri_month, delta_days}, the corrected month and how many days it shifted. Empty when there has never been one
table_version Version token of the correction history; "none" when there are no corrections, changes whenever one is applied, compare against your stored value to know when to re-fetch
  1. Poll /meta daily (it is cheap and cacheable for 5 minutes).
  2. If computed_active is true, show a subtle notice in your UI. dates may drift ±1 day from official announcements.
  3. Compare table_version against your stored value; when it changes, read divergences[] and re-fetch dates in the corrected month. Details: Sidang Isbat Corrections.

Every response also carries an ETag. Send If-None-Match: <etag> and the server answers 304 Not Modified (empty body) when the data has not changed, with the same Cache-Control and ETag headers.

Liveness probe for uptime monitors.

GET /healthz
Terminal window
curl "https://api.mabims.dev/healthz"
{
"status": "ok",
"version": "1.8.2",
"build_hash": "a3f8c1e2b4d6f7a8"
}

Returns Cache-Control: public, max-age=10.