---
title: "Drishti Signals developer resources"
description: "Read-only JSON feeds, OpenAPI 3.1, rate limits, and deprecation policy for the Pro book."
canonical: https://www.drishtisignals.in/developers/
last-updated: 2026-08-24
---

# Drishti Signals developer resources

Read-only JSON and Markdown. There is no API key, no write endpoint, no MCP server, and no official CLI.

## Feeds

| What | URL |
|---|---|
| All signals + stats | `/signals.json` |
| Headline stats | `/api/stats.json` |
| Stats with JSON errors | `/api/v1/stats` |
| Signals with JSON errors | `/api/v1/signals` |
| OpenAPI 3.1 | `/openapi.json` |
| Agent map | `/llms.txt` |
| Zero-JS HTML | `/live` |

## Errors

`/api/v1/*` returns `application/problem+json` (RFC 9457) with `code`, `title`, `detail`, and `hint`. Unknown resources are HTTP 404 JSON, not an HTML shell.

## Rate limits

`/api/v1/*` allows 60 requests per minute per client IP. Responses carry `RateLimit-Limit`, `RateLimit-Remaining`, `RateLimit-Reset`; over the limit you get HTTP 429 problem+json with `Retry-After`. Raw feeds are CDN-cached 30s and declare `RateLimit-Policy: 60;w=60`. Feeds update every 15 minutes.

## Versioning & deprecation

Versioned routes live under `/api/v1/`. No route is removed or changed incompatibly without 90 days notice, announced in `/changelog.json` and signalled with `Deprecation` and `Sunset` headers on the affected route. Unknown JSON fields are ignorable additions.

## Markdown

`Accept: text/markdown` on `/`, `/about/`, `/contact/`, `/developers/`, `/privacy` returns `text/markdown; charset=utf-8` with `Vary: Accept`.
