Jina

Reader, Search, embeddings, rerank, and classify — one key

View as Markdown

Proxies Jina’s Search Foundation APIs. These are several products under one key, spread across several hosts. The gateway maps each product to its host by the sub-prefix after /jina:

GET|POST /jina/<service>/<path> → <service host>/<path>

GET and POST — the methods these products document (the Reader/Search GET form carries the target URL and params in the path/query; the model APIs POST a JSON body).

Services

The gateway accepts exactly this whitelist; any other /jina/<service> returns the gateway’s 404 without reaching Jina.

ServiceUpstream hostPurpose
readerhttps://r.jina.aiRead a URL as clean markdown/text
searchhttps://s.jina.aiWeb search
embeddingshttps://api.jina.ai/v1/embeddingsText/image embeddings
rerankhttps://api.jina.ai/v1/rerankRerank documents
classifyhttps://api.jina.ai/v1/classifyZero-shot classification

The path after /jina/<service> is forwarded verbatim — e.g. /jina/reader/https://example.comhttps://r.jina.ai/https://example.com.

What the gateway injects and strips

Jina authenticates with the Authorization: Bearer header — the same header you use for your gateway token. So the gateway overwrites it with the injected Jina key:

  • The Authorization header is overwritten with the secret Jina key. Your gateway token is consumed by the gateway and never reaches Jina.
  • Jina has no query-param spelling of the key, so nothing is dropped from the query string.

Examples

$curl "$GATEWAY/jina/reader/https://example.com" \
> -H "Authorization: Bearer $TOKEN"

The response is Jina’s JSON (or, for Reader/Search, markdown/text), returned unchanged. For request and response fields, follow Jina’s documentation — the gateway does not alter them.