Skip to content
News tone
  1. REST reference
  2. Market context
  3. News tone

Get headline tone for an asset class

GET/public/v1/news-tone/class/{asset_class}

How the headlines about one asset class were worded, per UTC hour or day. Counts and ratios only, point in time: a row never changes after it is written, and hours with no headline are explicit zero rows. Headline tone, not a price direction.

PremiumAnnualLifetime

Request

curl "https://api.tradeeasyai.net/public/v1/news-tone/class/forex?interval=1d&start=2026-09-21" \
  -H "X-API-Key: $TRADEEASY_API_KEY"

Response shape

Field names and types; no sample values.

200 · application/json
{
  "success": true,
  "data": {
    "rows": [ … ],
    "point_in_time": "<boolean>"
  },
  "meta": { "timestamp": "<string>", "request_id": "<string>" }
}

Parameters#

  • asset_classstringpathRequired

    forex, commodities, global_equities or crypto.

  • intervalstringquery

    1h (UTC hours, up to 31 days a request) or 1d (UTC days, up to 1,825). Default 1h.

  • startstringquery

    ISO 8601 date or date-time, UTC. Default 7 days (1h) or 90 days (1d) before end.

  • endstringquery

    ISO 8601, UTC. Default now.

  • min_nintegerquery

    Minimum headlines for net_tone and strong_share. Default 12 per class.

  • limitintegerquery

    Rows per page, 1 to 2,000. Default 500.

  • cursorstringquery

    meta.next_cursor from the previous page, with the same query.

Response fields#

  • rows[].tstring · ISO 8601

    Start of the UTC hour or day.

  • rows[].ninteger

    Headlines in the bucket; 0 rows are explicit.

  • rows[].positive · negative · neutralinteger

    Counts by wording.

  • rows[].net_tone · strong_sharenumber | null

    Ratios; null below min_n.

  • point_in_timeboolean

    Always true: rows are never rewritten.

  • meta.next_cursorstring | null

    Pass it back for the next page.

window, day_basis, model (id, revision, method_version), coverage_from, newest_hour, licence and disclaimer.

Errors#

  • 401detail

    Missing, invalid or revoked key, or a locked account. FastAPI {"detail": …} body, not the envelope.

  • 403detail

    The plan does not include the REST API, or the subscription is not active.

  • 422detail[]

    A query value is outside its range (FastAPI validation).

  • 429RATE_LIMIT_EXCEEDED

    Per-key minute or day bucket spent. Honour Retry-After.

  • 503TONE_UNAVAILABLE

    The hourly rollup is behind. Honour Retry-After.