---
title: "Search News"
method: GET
path: "/v1/news/search"
tags: ["news"]
---

# Search News

`GET /v1/news/search`

## Request

- Base URL: `https://api.obsidianri.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.obsidianri.com/v1/news/search`
- Auth: none declared

Full-text search across news articles.

## Query parameters

- `q` string, required: Search query
- `industry` string, nullable
- `country` string, nullable
- `date_from` string, nullable
- `date_to` string, nullable
- `page` integer
- `per_page` integer
- `match` string: all (default): every word of q must appear. any: q is a list of short phrases separated by '|'; an article matches when any phrase has all its words, ranked by the number of phrases matched, then recency.
- `jurisdictions` string, nullable: Filter by jurisdiction ids, comma separated (FR,US-CA). FEDERATION SCOPE : each id also returns its parents (FR -> EU), its sub-national subdivisions (US -> US-CA) and GLOBAL news.

## Response `200`

Successful Response

- NewsListResponse
  - `data` NewsListItem[], required
    - `news_id` string, required
    - `url` string
    - `title` string
    - `description` string
    - `title_en` string
    - `description_en` string
    - `original_lang` string
    - `pub_date` string, nullable
    - `pub_date_ts` integer
    - `country` string
    - `jurisdiction_ids` string[]
    - `source_name` string
    - `source_short_name` string
    - `source_logo` string
    - `industries` object
    - `frameworks` string[]
    - `factory_has_article` boolean, nullable
    - `factory_severity` string, nullable
    - `factory_change_nature` string, nullable
    - `news_kind` string, nullable
    - `news_kind_confidence` number, nullable
    - `news_kind_source` string, nullable
    - `news_event_type` string, nullable
    - `news_milestone` NewsMilestone: The DATES axis of a news (2026-09-27, option B) : the one dated step the news is about. type : proposal, adoption, publication, entry_into_force, application, application_phase, transition_end, consultation_close, comment_deadline, compliance_deadline, transposition_deadline, reporting_deadline, sunset, repeal, other. date : ISO day, present only when the text gives a full date (sure true). source : rules, llm or hint. The time status (upcoming, since, closed...) is computed by the reader, never stored.
      - `type` string, required
      - `date` string, nullable
      - `sure` boolean
      - `source` string, nullable
      - `label` string, nullable
  - `meta` PaginationMeta, required
    - `total` integer, required
    - `page` integer, required
    - `per_page` integer, required
    - `total_pages` integer, required
  - `filters_applied` object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/obsidianri/apis/obsidian-enterprise-api.md) · [All operations](https://skmtc.dev/obsidianri/apis/obsidian-enterprise-api/llms.txt) · [OpenAPI document](https://skmtc.dev/obsidianri/apis/obsidian-enterprise-api/revisions/50eb2374c5c3?raw)
