Skip to content

trader.news ​

2 methods on trader.news. Each returns the answer's data and throws NoviqaError on a failed answer.

list ​

GET/trader/v1/news

List news for the account

One page of news, newest first, as the account's group news mode allows, echoed in mode: full — whole items; headlines — body is empty; off — always an empty page with total 0. category filters to one exact category, symbol to items that name it (empty = all); from and to narrow published_at (from inclusive, to exclusive). page is 1-based; limit defaults to 50, values outside 1-200 fall back to 50. New items also arrive live as news socket messages.

Parameters
X-HST-Accountstring · header
Intended signed-in login captured by the browser tab before dispatch and retained across retries. A mismatch returns auth.account_changed (409) before mutation or refresh rotation. This never selects or authorizes an account; omission preserves existing API client compatibility.
categorystring · query
symbolstring · query
fromstring · query
published_at, inclusive
tostring · query
published_at, exclusive
pageinteger · query
limitinteger · query
Returns
Promise<Page>
The answer's data.
Errors
400invalid_input: invalid input
401auth.session_expired: session expired, sign in again
403auth.invalid_terminal: this terminal cannot be used here
403auth.otp_enrol_required: your group requires one-time codes: set them up to continue
403auth.password_change_required: you must change your password first
409auth.account_changed: the signed-in account changed; sign in again before continuing
500internal: something went wrong
ts
import { trader } from "@/lib/noviqa"

const data = await trader.news.list({
  category: "string",
  symbol: "string",
  from: "2026-09-25T10:15:00Z"
})
bash
curl -X GET "$NOVIQA_API_URL/trader/v1/news?category=string&symbol=string&from=2026-09-25T10%3A15%3A00Z" \
  -H "Authorization: Bearer $NOVIQA_TOKEN"
json
{
  "success": true,
  "code": "ok",
  "message": "done",
  "data": {
    "items": [
      {
        "body": "string",
        "category": "string",
        "datafeed_id": 1,
        "external_id": "string",
        "id": 1,
        "published_at": "2026-09-25T10:15:00Z",
        "source": "string",
        "subject": "string",
        "symbols": [
          "string"
        ]
      }
    ],
    "mode": "off",
    "page": 1,
    "total": 1
  },
  "request_id": "5b7f2c1e"
}
ts
trader.news.list(query?: { category?, symbol?, from?, to?, page?, limit? }, options?: RequestOptions): Promise<news.Page>

retrieve ​

GET/trader/v1/news/{id}

Read a news item (account)

One item as the account's group news mode allows (headlines: body empty). Refused when the group's news mode is off.

Parameters
X-HST-Accountstring · header
Intended signed-in login captured by the browser tab before dispatch and retained across retries. A mismatch returns auth.account_changed (409) before mutation or refresh rotation. This never selects or authorizes an account; omission preserves existing API client compatibility.
idinteger · pathrequired
Numeric id.
Returns
Promise<News>
The answer's data.
Errors
400invalid_input: invalid input
401auth.session_expired: session expired, sign in again
403auth.invalid_terminal: this terminal cannot be used here
403auth.otp_enrol_required: your group requires one-time codes: set them up to continue
403auth.password_change_required: you must change your password first
403forbidden: you do not have access to this action
404not_found: not found
409auth.account_changed: the signed-in account changed; sign in again before continuing
500internal: something went wrong
ts
import { trader } from "@/lib/noviqa"

const data = await trader.news.retrieve(1)
bash
curl -X GET "$NOVIQA_API_URL/trader/v1/news/1" \
  -H "Authorization: Bearer $NOVIQA_TOKEN"
json
{
  "success": true,
  "code": "ok",
  "message": "done",
  "data": {
    "body": "string",
    "category": "string",
    "datafeed_id": 1,
    "external_id": "string",
    "id": 1,
    "published_at": "2026-09-25T10:15:00Z",
    "source": "string",
    "subject": "string",
    "symbols": [
      "string"
    ]
  },
  "request_id": "5b7f2c1e"
}
ts
trader.news.retrieve(id: number, options?: RequestOptions): Promise<models.News>