Reference / API

API reference

Generated from approved schemas. OpenAI-compatible paths are served in parallel with native ones.

Inference

Chat-shaped routes share one pipeline: the same routing, evidence and charge.

POST/v1/chat/completionsinference:invoke
OpenAI-compatible chat completion, streaming or buffered, with a yelno object carrying attempts, usage units and cost. Reference →
POST/v1/responsesinference:invoke
OpenAI Responses shape — input items and instructions — translated to the same canonical request. Server-side state (previous_response_id) is not held; resend the full input.
POST/v1/messagesinference:invoke
Anthropic-compatible messages, translated to the same canonical request and routed the same way.
POST/v1/mcpper tool
Yelno as an MCP server (Streamable HTTP): list_models, chat, get_usage and get_balance, each listed only when your key carries its scope. Reference →
POST/v1/a2ainference:invoke
Agent2Agent JSON-RPC: message/send, message/stream, tasks/get, tasks/cancel. The Agent Card is at /.well-known/agent-card.json. Reference →

Model APIs

One route per model type beyond chat. Each JSON response carries yelno with the request id, provider, model, endpoint and charge.

POST/v1/images/generationsinference:invoke
Generate images from a prompt; returns base64 images with their media type. Reference →
POST/v1/videosinference:invoke
Create an asynchronous video job; answers 202 with a vid_… id to poll. Reference →
GET/v1/videos/{id}inference:invoke
The job's status (pending, in_progress, completed, failed, cancelled, expired), refreshed from the provider. Reference →
GET/v1/videos/{id}/contentinference:invoke
The finished video as video/mp4. Only the organization that created the job can read it. Reference →
POST/v1/audio/speechinference:invoke
Text-to-speech; the body is the audio, the evidence is in X-Request-Id and Yelno-* headers. Reference →
POST/v1/audio/transcriptionsinference:invoke
Speech-to-text from a multipart file or base64 JSON, up to 25 MB. Reference →
POST/v1/embeddingsinference:invoke
Embeddings in the OpenAI shape (input string or list), with usage and the charge in yelno. Reference →
POST/v1/rerankinference:invoke
Rank documents by relevance to a query. Reference →
POST/v1/decisionsinference:invoke
Typed answers to named questions about a piece of content. Reference →
GET/v1/realtime?model=…inference:invoke
WebSocket session in the OpenAI Realtime protocol, for models their provider serves directly; the final price arrives in a yelno.session event. Reference →

Catalog

What your organization can route to, with every model's type.

GET/v1/modelscatalog:read
Models your organization's policy can route to: id, modalities, output_modalities, operations, context window, max output tokens.
GET/v1/models/{model_id}catalog:read
One model — including voices for a text-to-speech model — or 404 when it is not available to your organization.

Fine-tuning

Train a supported open model on your data and serve it on a dedicated endpoint billed per GPU-hour while it runs. Off until your organization turns on allow_fine_tuning.

POST/v1/fileskey:create
Upload a JSON Lines dataset with purpose=fine-tune; validated on upload, the report comes back. Reference →
POST/v1/fine_tuning/estimateusage:read
The estimate and the wallet hold for a job, without starting it. Reference →
POST/v1/fine_tuning/jobskey:create
Create a job (OpenAI-compatible, Idempotency-Key supported); also list, retrieve, events, checkpoints and cancel. Reference →
POST/v1/fine_tuning/endpointskey:create
Deploy a fine-tuned model on dedicated hardware with auto-stop; also list, update, start, stop and delete. Reference →
GET/v1/fine_tuning/hardware?model=usage:read
Hardware a model can run on, with its final price per hour. Reference →

Management

Under /api/v1 with a session bearer token; X-Yelno-Organization selects among your memberships.

GET/api/v1/usage/requests/{request_id}usage:read
Full request trail: state, attempts, usage events, ratings, reservation and journals.
GET/api/v1/usageusage:read
Requests, tokens and customer cost, bucketed by day, hour, model, project or state.
GET/api/v1/walletwallet:read
Purchased, promotional, consumed, held and available balances, in nanos.
PUT/api/v1/organizations/{organization_id}/policypolicy:update
The routing policy every request is evaluated against: require_zdr, max_retention_days, allowed_regions, provider and model allow/block lists, allow_byok. Send version for optimistic concurrency.
POST/api/v1/keyskey:create
Mint an API key (yk_live_… or yk_test_…). The plaintext is returned once and never again.

Conventions

Generated from approved schemas, with human guidance layered on: idempotency, retry semantics, partial streams, provider differences, usage finality, and rate limits. Base URL https://yelno.ai/v1 · gateway calls authenticate with Authorization: Bearer yk_live_…, accept an optional Idempotency-Key, and every response carries X-Request-Id. The management API lives under /api/v1 with a session bearer token — the full list is served at /openapi.json.