# Chatsax > Search infrastructure for agents. One Chatsax key provides Reader, Search, Embeddings, Reranker, Classifier, Segmenter, DeepSearch and Jina VLM through a Cloudflare Worker. ## Connect - API base URL: https://chatsax.com - Authentication: Authorization: Bearer $CHATSAX_API_KEY - [Account registration and keys](https://chatsax.com/api-dashboard/key-manager): email verification, Google or GitHub sign-in; keys share an account token balance. - [CLI](https://chatsax.com/cli.mjs): Node.js 22+, set CHATSAX_API_KEY and run `node cli.mjs --help`. - [Interactive API reference](https://chatsax.com/scalar) - [Model reference for agents](https://chatsax.com/models/llms.txt) - [OpenAPI contract](https://chatsax.com/openapi.json) - [Developer guide](https://chatsax.com/docs) - [MCP endpoint](https://chatsax.com/mcp): stateless Streamable HTTP, POST JSON-RPC, requires the same key. - [Available models](https://chatsax.com/v1/models): public GET. - [Capabilities](https://chatsax.com/api/capabilities): public GET. ## APIs - POST /v1/read {"url":"https://example.com"}; Reader option headers are supported. GET /r/https://example.com is an alias. r.chatsax.com/https://example.com uses the same Worker. - POST /v1/search {"q":"your query"}; X-Respond-With:no-content requests snippets. GET /s/encoded-query is an alias. s.chatsax.com uses the same Worker. - POST /v1/embeddings {"model":"jina-embeddings-v5-text-nano","input":["text"]} - POST /v1/rerank {"model":"jina-reranker-v3.5","query":"question","documents":["document"]} - POST /v1/classify {"model":"jina-embeddings-v5-text-small","input":["text"],"labels":["one","two"]} - POST /v1/segment {"content":"text","return_chunks":true} - POST /v1/deepsearch {"model":"jina-deepsearch-v1","messages":[{"role":"user","content":"question"}],"stream":true} - POST /v1/chat/completions with model jina-vlm or jina-deepsearch-v1. These use different upstream services. - POST /v1/train creates a classifier. Access defaults to private. Use classifier_id with /v1/classify. GET /v1/classifiers; DELETE /v1/classifiers/{id}. - POST /v1/batch/embeddings creates a batch. GET /v1/batches; GET or DELETE /v1/batch/{id}; GET /v1/batch/{id}/output or /errors. - GET /api/me returns key metadata and 30-day usage. Administrator operations: /api/admin/keys and /api/admin/upstream. ## Account and billing Account administration requires the secure browser session cookie, not a model API key. GET /api/account/overview returns wallet, recent ledger and payments. GET/POST /api/account/keys and PATCH/DELETE /api/account/keys/{id} manage your keys. GET /api/billing/plans lists actual prices, currencies and payment availability. Purchase, card setup and automatic recharge endpoints are documented in OpenAPI. Creating a checkout does not credit tokens; verified provider payment is required. Automatic recharge defaults off and requires a saved card plus explicit authorization. Verified new accounts receive a single 10M-token trial. Request budgets reserve balance before execution and settle using authoritative upstream usage. Uncertain usage stays reserved for review. Request-budget estimates are conservative for common text workflows, not a hard upper bound for all multimodal inputs or remote batch files. ## Constraints Never send the underlying Jina provider key to this website or include it in frontend code. Application keys have API scopes, per-minute request limits and UTC daily limits. Honor Retry-After on 429 responses. Inputs must be public HTTP(S) targets. The gateway limits JSON bodies to 8 MiB; account keys default to 2 MiB and a 10M-token request budget. Provider output is passed through; inspect X-Request-ID when debugging. Batch and classifier ownership is isolated per key. Existing provider resources require administrator access. Chatsax is independently operated. Model inference currently uses Jina AI. Grounding is implemented by asking DeepSearch for schema-constrained fact checking; there is no advertised legacy g.jina.ai proxy. Model weight licenses differ from software licenses; consult each model card before self-hosting commercially.