---
title: "Market news sentiment per currency or instrument"
method: GET
path: "/rest/api/v1/projects/{projectId}/marketNews/sentiment"
tags: ["News API"]
---

# Market news sentiment per currency or instrument

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

## Request

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

Counts the per symbol sentiment of the articles published in the range. Without from/to the last 24 hours are used, the range is at most 31 days. Articles summarised before per symbol sentiment existed are not counted.

## Path parameters

- `projectId` string, uuid, required

## Query parameters

- `from` string
- `to` string
- `symbols` string
- `impact` string
- `category` string

## Response `200`

OK

- MarketNewsSentimentDTO: Market news sentiment per currency or instrument over a time range
  - `articles` integer: Articles with a per symbol sentiment that were counted
  - `fromUtc` string, date-time: Start of the range (publication time, UTC)
  - `symbols` MarketNewsSymbolSentimentDTO[]: Most discussed symbol first
    - `articles` integer: Articles that name this symbol
    - `bearish` integer: Articles bearish for this symbol
    - `bullish` integer: Articles bullish for this symbol
    - `lastPublishedAt` string, date-time: Publication time of the newest counted article
    - `neutral` integer: Articles neutral for this symbol
    - `score` number, double: (bullish - bearish) / articles, in [-1, 1]. At least 0.2 is BULLISH, at most -0.2 is BEARISH
    - `sentiment` 'BEARISH' | 'NEUTRAL' | 'BULLISH': Overall label, derived from score
    - `symbol` string: Currency or instrument code
  - `toUtc` string, date-time: End of the range (publication time, UTC)
  - `truncated` boolean: True when the range held more articles than are counted in one call. Only the newest are included, narrow the range for a complete count

## Changes

- **2026-10-05** `565708f214a0`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/metacopier/apis/metacopier-api/changes/rest/api/v1/projects/:projectId/marketNews/sentiment/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/cbf3e7810fc2?raw)
