Browse documentation
Guides

Pagination and filtering

Most list endpoints accept bounded filters and return data plus has_next.

Symbols and scrip codes

Symbol filters accept either comma-separated values or repeated query parameters. Keep requests bounded to 20 symbols or scrip codes unless an endpoint states otherwise.

bash
curl -G "https://developers.manasija.in/v1/announcements" \
  -H "X-API-Key: $DRISHTI_API_KEY" \
  --data-urlencode "symbols=RELIANCE,TCS"

Date windows

from and to accept ISO dates or datetimes. Use narrow windows for polling and broader windows for backfills.

Date and timestamp field meanings

The meaning of a date or timestamp field depends on the product and endpoint. Ingestion time is when Drishti ingested the record.

ProductFieldMeaning
announcementsdateIngestion time
earningsdateIngestion time of the results filing
earnings/upcomingdateScheduled results date
concallsdateIngestion time of the concall filing
concalls/upcomingmeeting_dateScheduled call time
newsdateArticle publish time
block-dealsdateIngestion time
alertstimestampAlert creation time
alertsprice.as_ofPrice observation time

Detailed mode

announcements, earnings, and concalls support detailed=true on list endpoints. Detailed mode returns richer rows and bills at the detailed list rate.

Pagination loop

ts
let page = 1
const rows = []

while (true) {
  const result = await client.getAnnouncements({
    symbols: ["RELIANCE"],
    page,
    limit: 50,
  })

  rows.push(...result.data)
  if (!result.has_next) break
  page += 1
}