Skip to main content

Telnyx Provider Guide

Telnyx is a Tier-2 catalog provider: its integration is one JSON file (src/lib/providers/catalog/telnyx.json) rather than hand-written code. That file is the source of truth for this page.

Verification status: this entry is docs-verified only, not yet live-verified. Telnyx's GET /v2/ai/openai/models needs a key (it answers HTTP 401 without one), so the model ids come from Telnyx's public models page and the roster has not been checked. No account was created and no API key was used to build this entry. evidence.liveMatrix is null until someone runs the live capability matrix with a real key (see Verification status below).


Key Facts​

  • Provider id: telnyx
  • Protocol: OpenAI-compatible (/chat/completions) — the Quickstart says "The Inference API is OpenAI-compatible."
  • Base URL: https://api.telnyx.com/v2/ai/openai
  • Default model: zai-org/GLM-5.3-Flash — NeuroLink default. The models page tags it "(Recommended)", and the Quickstart's first chat-completions example uses it
  • Models in catalog: 9 — the nine chat models the models page lists on 2026-09-29
  • Streaming: supported — the Quickstart's Streaming section says "Server-sent events, same as OpenAI."
  • Tool calling: true — the Function Calling page says "While we recommend you start with this model, every model in our API supports the tools interface."
  • Tools while streaming: true — the Streaming and Parallel Calls page shows a streamed chat completion with tools on zai-org/GLM-5.3-Flash
  • Structured output: true — the JSON Mode page documents response_format with json_schema and with json_object
  • Structured output + tools together: not declared (false) — no combined probe was run without credentials
  • Embeddings: not declared on this catalog entry. The models page lists three embedding models on POST /v2/ai/openai/embeddings, but NeuroLink's generic ConfiguredOpenAICompatProvider (which every Tier-2 catalog entry uses) does not implement embed()/embedMany(), so this flag tracks that, not the vendor's own API surface
  • Thinking: not declared — the Chat Completions reference documents reasoning_effort and the Quickstart documents a reasoning_content response field, but this entry sets no reasoning request parameter
  • Max output tokens: models.defaultMaxOutputTokens is 8192, the max_tokens default the Chat Completions reference states. The reference also says "Reasoning models consume this budget across reasoning and answer tokens combined."
  • Vision: each model's vision field is false, a placeholder for a boolean the catalog schema requires; it is not a vendor statement
  • Billing: see Billing below
  • Key format: none declared

Quick Start​

1. Get an API key​

  1. Visit: https://telnyx.com/sign-up and create a Telnyx account — the Inference API Quickstart (https://developers.telnyx.com/docs/inference/getting-started) lists a "Telnyx account" and an "API Key" under Prerequisites
  2. Create an API key at https://portal.telnyx.com/#/app/auth/v2, the link the Quickstart gives for the API Key
  3. Authentication is HTTP Bearer: the Service tiers page (https://developers.telnyx.com/docs/inference/service-tiers) shows a curl request to https://api.telnyx.com/v2/ai/openai/models with the header Authorization: Bearer $TELNYX_API_KEY
  4. Billing as the vendor states it: see Billing below
  5. Set TELNYX_API_KEY in your .env file (the docs' examples read TELNYX_API_KEY)

2. Configure​

export TELNYX_API_KEY=your-api-key
export TELNYX_MODEL=zai-org/GLM-5.3-Flash # optional — overrides the default model
export TELNYX_BASE_URL=https://api.telnyx.com/v2/ai/openai # optional — proxy or self-hosted gateway

3. Use it​

import { NeuroLink } from "@juspay/neurolink";

const neurolink = new NeuroLink();

const result = await neurolink.generate({
input: { text: "Explain context windows in one paragraph." },
provider: "telnyx",
model: "zai-org/GLM-5.3-Flash",
});

console.log(result.content);
# CLI
npx @juspay/neurolink generate "Hello" --provider telnyx

Per-request credentials work as they do for every provider:

await neurolink.generate({
input: { text: "Hello" },
provider: "telnyx",
credentials: { telnyx: { apiKey: process.env.TELNYX_API_KEY } },
});

Billing​

billingPolicy in the catalog file is recorded as unknown in the growth queue; the catalog schema has no unknown value, so the file holds no-free-tier as a placeholder. It is not a vendor statement of signup terms.

What the vendor's pages say:

  • The Inference pricing page shows a plan named PAY AS YOU GO described as "Standard rates. Card on file. Automatic tier discounts as usage crosses thresholds, no contract needed."
  • The docs pricing page says "Pay-per-token. No minimums, no commitments." and points to telnyx.com/pricing/inference-api for current per-model pricing.

Models​

ModelContextVision$/M in · out (cached)Notes
zai-org/GLM-5.3-Flash ⭐1Mfalse placeholder$0.135 / $0.450 (cached $0.027)NeuroLink default. Best For "Efficient multimodal coding and agentic workflows", tagged "(Recommended)"; the Quickstart's example model.
zai-org/GLM-5.31Mfalse placeholder$1.250 / $4.000 (cached $0.240)Fallback. Best For "Complex coding and long-horizon agent tasks"; pricing row "GLM-5.3 — Flagship frontier intelligence".
deepseek-ai/DeepSeek-V4.1-Flash1Mfalse placeholder$0.300 / $1.200 (cached $0.006)Fallback. Best For "Low-latency multimodal inference"; the Service tiers page's Flex example model.
moonshotai/Kimi-K31Mfalse placeholder$2.700 / $13.500 (cached $0.270)Fallback. Best For "State-of-the-art open-weight intelligence for coding, reasoning, and multimodal work".
moonshotai/Kimi-K2.6256Kfalse placeholder$0.665 / $4.000 (cached $0.080)Fallback. Best For "Voice AI"; Voice AI column "Verified — default".
zai-org/GLM-5.21Mfalse placeholder$1.000 / $4.000 (cached $0.200)Fallback. Best For "Coding, reasoning, 1M context window"; Voice AI column "Verified".
MiniMaxAI/MiniMax-M3-MXFP81Mfalse placeholder$0.270 / $1.100 (cached $0.080)Fallback. Best For "Cheapest while maintaining high intelligence".
deepseek-ai/DeepSeek-V4-Flash-07311Mfalse placeholdernot setFallback. Best For "Advanced coding, tool use, and long-horizon agentic workflows".
Qwen/Qwen3.8-27B256Kfalse placeholder$0.400 / $3.000 (cached $0.050)Fallback. Best For "Multimodal coding and visual understanding across documents, diagrams, and video"; Voice AI column "Not supported".

Model ids, Context Length labels and the Best For text are read from the models page, retrieved 2026-09-29. contextWindow is NeuroLink's decimal reading of the label (1M is 1,000,000 and 256K is 256,000). models.defaultContextWindow (128,000) is a placeholder the vendor does not publish, for model ids outside the catalog.

Prices come from the second of the three chat-completions tables on the Inference pricing page (the page's selector lists Flex, Default and Priority in that order; the docs pricing page says omitting service_tier uses default). That page names rows by display name, and NeuroLink matched each row to a models-page id. The row "DeepSeek V4 Flash — Ultra-fast, cost-efficient inference" is not matched to a models-page id, so deepseek-ai/DeepSeek-V4-Flash-0731 has no price in the catalog.

Fallback order when the default is unavailable follows the models page's row order: zai-org/GLM-5.3 → deepseek-ai/DeepSeek-V4.1-Flash → moonshotai/Kimi-K3 → moonshotai/Kimi-K2.6 → zai-org/GLM-5.2 → MiniMaxAI/MiniMax-M3-MXFP8 → deepseek-ai/DeepSeek-V4-Flash-0731 → Qwen/Qwen3.8-27B.


Verification status​

Tier-2 onboarding requires evidence before a provider is accepted, and pnpm run verify:provider-onboarding gates it in CI. This is what the catalog currently records for Telnyx — docs-verified only, not live-verified:

ProbeResult
Rosterunauthenticated GET https://api.telnyx.com/v2/ai/openai/models answers HTTP 401 without a key, 2026-09-29; model ids come from the models page and the roster has not been checked
Auth-failure shapeunauthenticated GET /models: HTTP 401, header www-authenticate: Bearer resource_metadata="https://api.telnyx.com/.well-known/oauth-protected-resource", JSON body errors[0] code 10009, title "Authentication failed", detail "Could not find any usable credentials in the request." An unauthenticated GET /chat/completions answered HTTP 404 with code 10005, title "Resource not found". No POST request was sent. errorRules holds one rule, for status 401
Billingpublic pricing pages quoted under Billing, 2026-09-29; no signup was performed
Streaming / tools / structured outputdocumented on the Quickstart, Function Calling, Streaming and Parallel Calls and JSON Mode pages; these were not exercised live, and no combined tools+schema request was sent — structuredOutputWithTools stays false
Live capability sweepnot run. evidence.liveMatrix is null. Before treating this provider as production-ready, run npx tsx test/continuous-test-suite-provider-matrix.ts --provider=telnyx with a real key and record the result.

Do not treat this entry as equivalent to a live-verified Tier-2 provider (e.g. FriendliAI, Novita AI) until that live matrix has been run and evidence.liveMatrix is filled in.


Troubleshooting​

SymptomCauseFix
HTTP 401, code 10009Telnyx's error catalog describes 10009 "Authentication failed" as "The required authentication headers were either invalid or not included in the request."Set TELNYX_API_KEY; the docs' examples read the same variable
Structured output ignored with tools attachedstructuredOutputWithTools is false on this entry — untested combinationNeuroLink omits response_format automatically whenever tools are present, before sending

See also​