> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sacra.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Product updates

> New features, API changes, and improvements to the Sacra API

<Update label="May 14, 2026">
  ## PDF and filing links now use stable Sacra URLs

  Sacra API fields that previously linked directly to underlying PDF files now return stable Sacra URLs.

  The response field names are unchanged. If your backend downloads PDFs directly, make sure your HTTP client follows redirects.

  See the [stable PDF and filing URLs changelog](/changelog/stable-pdf-and-filing-urls) for affected fields and examples.
</Update>

<Update label="January 13, 2026">
  ## Content synchronization updates

  Added time filters and cursor pagination to `/documents`, `/news/company`, and `/events` to support content synchronization workflows.

  All three endpoints now support:

  * Time filters: `created_at_gte`, `created_at_lte`, `updated_at_gte`, `updated_at_lte`
  * Cursor pagination via `page_after`, `page_before`, `page_size` (default for documents and news; opt-in via `pagination=cursor` for events)
  * Cursor responses include `next_link`, `prev_link`, and cursor metadata

  ### Documents

  * Global GET with no company params required
  * Global responses include a `companies` array with `relation` (`subject` / `connected`)
  * Company-scoped responses now include `published_at`, `created_at`, `updated_at`

  ### News

  * `company` object (`id`, `domain`) added per item
  * Domain-less queries require a date window of 14 days or less

  ### Events

  * Cursor pagination is opt-in via `pagination=cursor`; page-based pagination remains the default

  <Note>
    Cursor links URL-encode date values (e.g., `:` becomes `%3A`), which is expected. For daily polls, use a 24-hour window.
  </Note>

  All changes are additive — existing clients can continue using company-scoped queries and page-based events pagination without modification.
</Update>

<Update label="November 19, 2025">
  ## Events API v1 is now the default

  The Events API v1 schema is now the default. v0 remains queryable via `?version=v0` but is deprecated.

  ### Breaking changes from v0

  * **Event type format** — `event_type` values changed from kebab-case to snake\_case (e.g. `funding-round` → `funding_round`). Note: the `types` query parameter still uses kebab-case.
  * **Status terminology** — `planned` renamed to `announced` across all event types
  * **Round type accuracy** — the generic `equity` round type is replaced by `growth` and `crowdfunding`
  * **CorporateAction separation** — corporate actions (stock splits, recapitalizations) are now returned as `corporate_action` instead of `company-milestone`

  ### New fields

  * `event_name` at the event envelope level — simplifies timeline rendering without parsing nested data
  * `event_status` at the event envelope level — mirrors `data.status` for easier filtering
  * `closing_date` on SecondaryTransactions — distinguishes announcement from completion date; inferred from `announced_date` when only one date is known
  * `is_extension` on FundingRounds — identifies rounds that extend or follow on from a prior round

  See the [Events v1 migration guide](/changelog/events-v1) for a full field comparison and before/after examples.
</Update>
