Skip to content
SetuसेतुDevelopers

Every Trinetra dataset at a stable address.

Setu is the open-data catalogue for Trinetra. Every product's exports are public files under /api/v1/: no key, no sign-up, readable from any website. Each dataset lists its schema, freshness, sources, licence and the credit line to use.

…
Datasets
…
Files
…
Products
…
Sources
Loading the catalogue.

What is available

Each product publishes its exports with a manifest that names its sources, licences and retrieval times. Pick a product to see its datasets.

  • Loading products.

Quick start

Read the catalogue to find a dataset, read the product's manifest to see where the data came from, then fetch the file. The examples use the river board from Varuna; every other dataset works the same way.

Poll without waste

Responses carry an ETag. Send it back in If-None-Match and an unchanged file answers 304 Not Modified with no body. Most products refresh once a day, some every few hours; the catalogue lists each product's schedule, so there is no need to poll more often than that.

Addresses

/api/v1/ serves the same files as /dashboard/data/. Use /api/v1/ in your code: it is the address we keep stable.

PatternWhat it servesExample
/api/v1/<product>/<file>One export of a product/api/v1/varuna/board.json
/api/v1/<product>/manifest.jsonThe product's sources, licences, retrieval times and file list/api/v1/varuna/manifest.json
/api/v1/<product>/<folder>/{id}.jsonA family of files, one per place, station, day or event. The catalogue lists every member./api/v1/varuna/station/dhubri.json
/api/v1/<file>The console's event exports, which have no product folder/api/v1/events.json
/api/v1/setu/catalog.jsonThis catalogue: every dataset with its address, size, freshness, licences and credit line/api/v1/setu/catalog.json
/api/v1/setu/schemas/<product>.jsonFull inferred schemas, samples, family members and citations for one product/api/v1/setu/schemas/varuna.json
/api/v1/setu/changes.jsonFormat changes found between catalogue builds/api/v1/setu/changes.json

Conventions

Every product follows one data contract. The right-hand column is measured on the current exports, so exceptions are visible rather than hidden.

TopicConventionIn the current exports
TimeISO 8601 in UTC with a trailing Z, such as 2026-10-21T09:15:40Z. Fields that hold local time say so in their name (time_ist).Loading.
Coordinates[lat, lon] in decimal degrees, usually 4 decimal places. GeoJSON files follow RFC 7946, which is [lon, lat].Loading.
UnitsIn the field name wherever a number could be read two ways: discharge_m3s, wave_height_m, wbgt_c, distance_nm.Loading.
Simulated dataSynthetic records carry "simulated": true, and so does the manifest of a simulated product. Keep the flag visible wherever you show the data.Loading.
ManifestsEvery product has manifest.json with module, version, generated_at, simulated, seed, sources (name, URL, licence, retrieval time) and files.Loading.
Freshnessgenerated_at says when a file was written. A failed fetch keeps the last good file and sets "stale": true instead of deleting data.Loading.
SizeEach file stays under 1.5 MB. Large datasets are split into families with one file per place, station or day.Loading.
ErrorsA missing file answers HTTP 404 with an HTML page, so check the status before parsing JSON.Applies to every address
AccessPlain GET and HEAD, with no key and no cookies. Every response carries Access-Control-Allow-Origin: *, so a page on any site can fetch the files. Do not add request headers in a browser: they need a CORS preflight, which these addresses do not allow.Applies to every address

What is public, and what is not

Everything in this catalogue is already public on trinetrahq.com. The console's sign-in page is a demo gate that runs in your browser; it is not access control, and the console reads the same public files listed here.

Setu reads only the export folder. It never reads pipeline caches, .env files or keys, and it makes no network requests. Paths in a manifest that point outside a product's folder, at dotfiles or at caches are refused, and values that look like credentials are shown as [redacted] in schemas and samples.

The exports describe events, places, routes, rivers, weather and sensors, not people. Names of private persons are replaced with role labels before export, and Sakshi scans every JSON, GeoJSON, JSON Lines and CSV export for personal data.

If you find something in an export that should not be public, write to security@trinetra.in. The disclosure policy explains what happens next.

Terms in short

  • Trinetra's own work in these files, its computations, aggregations, simulations and reference lists, is published under CC BY 4.0. Credit Trinetra and the product.
  • Upstream terms still apply to the parts that came from a source, for example ODbL for OpenStreetMap and the Copernicus credit lines. Each dataset page gives the exact credit line to copy.
  • Weather, river and sea data comes from Open-Meteo under CC BY 4.0. Open-Meteo's free API is for non-commercial use, so read its terms before any commercial reuse.
  • Keep simulated data labelled as simulated.
  • Flood, heat, sea-state, road and earthquake outputs are advisory only. Follow official warnings from IMD, CWC, INCOIS, NDMA and local authorities. Nothing here is for navigation.

Licences and attribution, source by source

Limits

  • Whole files only. There is no query interface; filter on your side.
  • Static files on a content delivery network, served on a best-effort basis with no uptime commitment.
  • Schemas are inferred from the data. They describe today's files, not every value a field can take.
  • Products still in build can change their formats without notice. The changelog lists each change Setu detects and what version 1 promises for live products.