---
title: "Case-insensitive exact keyword search within one filing or transcript, matching typographic punctuation (curly quotes, dashes) interchangeably with ASCII. Returns matching lines with one line of context each; matchCount is the returned-row count and totalMatchingLines the document-wide total."
method: GET
path: "/v1/filings/{documentId}/keyword-search"
tags: ["Filings"]
---

# Case-insensitive exact keyword search within one filing or transcript, matching typographic punctuation (curly quotes, dashes) interchangeably with ASCII. Returns matching lines with one line of context each; matchCount is the returned-row count and totalMatchingLines the document-wide total.

`GET /v1/filings/{documentId}/keyword-search`

## Request

- Base URL: `https://api.equibles.com`
- URL: `https://api.equibles.com/v1/filings/{documentId}/keyword-search`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/equibles/apis/equibles-api/docs/v1/filings/:documentId/keyword-search/get.ts> (a function with typed inputs; its response is checked against the schema)

## Path parameters

- `documentId` string, uuid, required

## Query parameters

- `keyword` string
- `limit` integer

## Response `200`

OK

- DocumentKeywordSearchResponse
  - `documentId` string, uuid
  - `ticker` string, nullable
  - `companyName` string, nullable
  - `documentType` string, nullable
  - `documentTypeName` string, nullable
  - `filedDate` string, date
  - `keyword` string, nullable
  - `matchCount` integer: Matching lines returned in THIS response (the length of data, bounded by limit) — not the document-wide total; see totalMatchingLines for that.
  - `totalMatchingLines` integer: Total lines in the document containing the keyword, before the limit truncation.
  - `hasMore` boolean: True when more matching lines exist than were returned — raise limit (max 500) to retrieve them.
  - `totalLines` integer: Total text lines in the document.
  - `data` KeywordMatchDto[], nullable
    - `lineNumber` integer
    - `text` string, nullable
    - `contextBefore` string, nullable
    - `contextAfter` string, nullable
    - `url` string, nullable

## Other responses

- `400`: Bad Request
- `404`: Not Found

## Changes

- **2026-11-06** `666e06778588`: 3 info
  - added the optional property `data/items/url` to the response with the `200` status
  - added the optional property `error/availableDates` to the response with the `400` status
  - added the optional property `error/availableDates` to the response with the `404` status

[Operation history](https://skmtc.dev/equibles/apis/equibles-api/changes/v1/filings/:documentId/keyword-search/get.md)

---

[API](https://skmtc.dev/equibles/apis/equibles-api.md) - [All operations](https://skmtc.dev/equibles/apis/equibles-api/llms.txt) - [OpenAPI document](https://skmtc.dev/equibles/apis/equibles-api/revisions/713a3e840323?raw)
