You are helping me integrate the Ticker API.
# API basics
- Base URL: https://api.tickerapp.net/v2
- Auth: pass `x-api-key: <my-api-key>` on every request
- Docs: https://developers.ticker.app/docs
- Full reference: https://developers.ticker.app/api-reference
# Main endpoint
`GET /disclosures/sources/rns/items` returns RNS announcements.
Key query parameters:
- `dateFrom`, `dateTo`: inclusive ISO8601 bounds; partial dates accepted (e.g. `2026`, `2026-03`).
- `isin` / `isins`: filter by ISIN. Singular repeated (`isin=A&isin=B`) or plural comma-separated (`isins=A,B`).
- `symbol` / `symbols`: filter by LSE ticker symbol (e.g. `VOD`, `LLOY`).
- `fcaCategory` / `fcaCategories`: filter by FCA DTR 8 Annex 2 codes.
- `tickerCategory` / `tickerCategories`: filter by one of 11 Ticker categories: AA, BC, CS, CU, DD, DI, HO, ME, RE, TU, XX.
- `q`: substring search over the headline.
- `pageSize`: default 50, capped per plan at 50, 100, or 200.
- Pagination (mutually exclusive): `pageCursor` (walk a result set), `pageNumber` (1-indexed classic), `sinceCursor` (poll for new items).
# Response shape
```json
{
"data": [
{
"rnsId": "1234W",
"timestamp": "2026-03-15T07:00:02Z",
"issuer": {
"name": "Example plc",
"instrument": { "isin": "GB00...", "symbol": { "mnemonic": "EXAM" } }
},
"headline": "Half-year Results",
"category": [{ "kind": "FCA", "code": "IR", "name": "Half-year Report" }],
"publication": [...]
}
],
"meta": {
"paging": { "pageSize": 50, "nextCursor": "...", "latestCursor": "..." }
}
}
```
# Rate limits
- Token-bucket throttle (per-second rate + burst) and a weekly request quota, both plan-tiered.
- `429 Too Many Requests` may be either throttle (back off and retry with exponential delay) or quota (won't clear until the weekly reset).
- See https://developers.ticker.app/docs/core-concepts/rate-limits for per-tier limits.
# Polling for new items
Pass `sinceCursor=<latestCursor from previous response>` to fetch only items newer than the last one you saw. Empty polls return immediately with zero items, so 1-minute polling is cheap. Don't use `pageCursor` or `pageNumber` for polling.
---
Now, please [describe what you want to build].