---
title: "Get market news articles"
method: GET
path: "/rest/api/v1/projects/{projectId}/marketNews"
tags: ["News API"]
---

# Get market news articles

`GET /rest/api/v1/projects/{projectId}/marketNews`

## Request

- Base URL: `https://api.metacopier.io`
- URL: `https://api.metacopier.io/rest/api/v1/projects/{projectId}/marketNews`
- Auth: API key in header `X-API-KEY`
- TypeScript: <https://skmtc.dev/metacopier/apis/metacopier-api/docs/rest/api/v1/projects/:projectId/marketNews/get.ts> (a function with typed inputs; its response is checked against the schema)

Headline and summary are written by MetaCopier from the source article, the publisher's own text is never served. Articles that have not been summarised yet are not returned at all.

## Path parameters

- `projectId` string, uuid, required

## Query parameters

- `category` string
- `impact` string
- `sentiment` string
- `currencies` string
- `search` string
- `bookmarked` boolean
- `from` string
- `to` string
- `page` integer
- `size` integer

## Response `200`

OK

- MarketNewsPageDTO: One page of market news articles
  - `items` MarketNewsArticleDTO[]: Articles of this page, newest first
    - `category` string: Feed category
    - `currencies` string[]: Affected ISO-4217 currencies
    - `fetchedAt` string, date-time: When we first fetched it
    - `headlineEn` string: Headline written by us, never the publisher's
    - `id` string: MongoDB document id
    - `impact` 'HOLIDAY' | 'LOW' | 'MEDIUM' | 'HIGH': Impact classification
    - `instruments` string[]: Affected non-currency instruments
    - `publishedAt` string, date-time: Publication time in UTC
    - `sentiment` 'BEARISH' | 'NEUTRAL' | 'BULLISH': Overall sentiment for the main subject of the article, displayed only
    - `sentimentBySymbol` object: Direction per affected currency or instrument. Absent on articles summarised before this field existed
    - `sentimentScore` number, double: Strength of the overall sentiment in [-1, 1]. Always agrees with sentiment: at least 0.2 for BULLISH, at most -0.2 for BEARISH, in between for NEUTRAL
    - `summaryEn` string: Summary written by us, at most 40 words
    - `urlHash` string: SHA-256 of the canonical article URL, the dedup key
  - `page` integer: Zero based page index
  - `size` integer: Page size
  - `total` integer: Total number of matching articles

## Changes

- **2026-10-05** `565708f214a0`: 3 info
  - added the new optional `query` request parameter `from`
  - added the new optional `query` request parameter `to`
  - added the optional property `items/items/sentimentBySymbol` to the response with the `200` status
- **2026-08-30** `69d2d39c695e`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/metacopier/apis/metacopier-api/changes/rest/api/v1/projects/:projectId/marketNews/get.md)

---

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