Tickers (Batch)

Map a bounded batch of texts to listed-company tickers, in input order.

POST/api/models/tickers/batch

Authorizations

Bearer
Authorizationstringrequiredheader

Required Bearer API key. Programmatic access to the World API needs a key; browsing nosible.world in a browser does not.

Example: Bearer nos_sk_...

Body

application/json
textsstring[]requiredbody

1–32 nonempty texts, at most 8,000 characters each and 32,000 characters total (UTF-16 code units). JSON body limit: 256 KiB. Upload deadline: 5 seconds; upstream deadline: 10 seconds. Uses the release knowledge snapshot.

Example: ["NVIDIA Corporation reported strong earnings from GPU sales.","A quiet day."]

How to use this endpoint

guidance

Use Tickers (Batch) for 1–32 short texts. Each text is limited to 8,000 characters, with 32,000 characters total per request. Results preserve input order and use the same predictions as Tickers (Single). Empty predictions means no match. A malformed or failed upstream item fails the whole request; it is never silently replaced with an empty result. Split larger workloads into bounded batches and use modest concurrency. No automatic upstream retries are made.

Response body

application/json

These are the fields you can build against. Nested names use dot notation; optional sections are called out in their descriptions.

schemastring

Stable response schema shared with the other text model endpoints.

Example: nosible_model_classification_v1

modelstring

Pinned v2.0-preview ticker engine revision. The release uses bundle 12281f4cd630b7d2.

Example: NOSIBLE/ticker-tagger-v2.0-preview@revision:7c07d504ecbb5a0a40d17091b29f3d7a74e389ad

resultsobject[]

One result per input text, in input order.

Example: [{ text, predictions }]

results[].textstring

The exact input text.

Example: NVIDIA Corporation reported strong earnings from GPU sales.

results[].predictionsobject[]

Ranked ticker matches. Empty when no listed company is identified.

Example: [{ label, score, companyv5_id, name, why }]

results[].predictions[].labelstring

Ticker symbol with the engine's exchange suffix. Preserve it exactly.

Example: NVDA.US

results[].predictions[].scorenumber

Ticker relevance score from 0 to 1; not a calibrated probability.

Example: 0.97

results[].predictions[].companyv5_idstring | null

Stable CompanyV5 company identifier, when available.

Example: c5-1b5479ea345b

results[].predictions[].namestring | null

Company display name.

Example: NVIDIA Corporation

results[].predictions[].websitestring | null

Company website.

Example: https://nvidia.com

results[].predictions[].wiki_qidstring | null

Wikidata identifier.

Example: Q182477

results[].predictions[].isinstring | null

International Securities Identification Number.

Example: US67066G1040

results[].predictions[].leistring | null

Legal Entity Identifier, when available.

Example: null

results[].predictions[].figistring | null

Financial Instrument Global Identifier, when available.

Example: null

results[].predictions[].sectorstring | null

Company sector.

Example: Information Technology

results[].predictions[].industrystring | null

Company industry.

Example: Semiconductors & Semiconductor Equipment

results[].predictions[].country_isostring | null

Company country code, when available.

Example: US

results[].predictions[].exchangestring | null

Listing exchange.

Example: NASDAQ

results[].predictions[].micstring | null

Market Identifier Code, when available.

Example: XNAS

results[].predictions[].whyobject[]

Supporting text mentions and graph connections, strongest first.

Example: [{ entity, score, chain }]

results[].predictions[].why[].entitystring

Matched entity surface or graph entity name.

Example: NVIDIA

results[].predictions[].why[].scorenumber

Evidence relevance score.

Example: 0.97

results[].predictions[].why[].chainobject[]

Relationship steps connecting the mentioned entity to the company. Empty for a direct match.

Example: [{ subject, predicate, object, known_as_of }]

results[].predictions[].why[].chain[].known_as_ofdate | null

Earliest known relationship date when available. The shipped bundle lacks per-step dates; a link-level date may be used.

Example: null

Responses and errors

HTTP
200Request succeeded. The response body is shown in the panel on the right.
408request_timeout — Request body did not finish within 5 seconds.
413request_too_large — JSON request body exceeds 256 KiB.
400invalid_json — The request body is not valid JSON.
401api_key_required / invalid_api_key — A valid NOSIBLE bearer API key is required.
422validation_error — Supply only texts: 1–32 nonempty strings, at most 8,000 characters each and 32,000 characters total.
429rate_limited / model_rate_limited — Caller or upstream rate limit exceeded. Respect Retry-After when present.
503model_not_configured — The ticker service is not configured for this deployment.
503api_key_auth_not_configured / api_key_auth_unavailable / api_key_metering_unavailable — Authentication or quota metering is temporarily unavailable. Retry after the indicated delay.
502model_invalid_response — The ticker service returned a malformed response. This is distinct from a successful empty predictions array.
502model_upstream_error / model_upstream_unreachable — The ticker service rejected the request or could not be reached.
504model_upstream_timeout — The ticker service did not respond within 10 seconds. Automatic retries are disabled to avoid amplifying overload.