OmniRoute / Surface API

Un endpoint, plus que du chat.

Chat, embeddings, reranking, images, vidéo, musique, parole, OCR, fichiers et lots, dans le format de requête que votre client parle déjà.

Formats de requête

Gardez le format de requête que votre client envoie déjà.

Un seul processus accepte plusieurs formats, donc un outil conçu pour le SDK d'un éditeur n'a besoin que d'un changement d'URL de base.

OpenAI

Chat Completions, embeddings, images, audio et fichiers, sans changement.

/v1/chat/completions

Anthropic

Le format Messages, y compris le comptage de tokens.

/v1/messages

OpenAI Responses

Le format de la Responses API, avec compaction de la sortie des outils.

/v1/responses

Gemini

generateContent et la liste des modèles Gemini.

/v1beta/models

Ollama

Remplacement direct pour les outils qui parlent l'API locale Ollama.

/v1/api/chat

Rerank and Jina

Reranking Cohere/Voyage plus classification et segmentation Jina.

/v1/rerank

Endpoints

Plus que des chat completions.

Groupés selon ce que vous cherchez à faire plutôt que selon le fournisseur qui le sert.

Chat et messages

Trois formats de requête atteignent le même routeur, donc un client garde le format qu'il parle déjà.

  • POST/v1/chat/completionsOpenAI Chat Completions, en streaming ou en bloc
  • POST/v1/messagesAnthropic Messages
  • POST/v1/responsesOpenAI Responses
  • POST/v1/messages/count_tokensComptez les tokens avant de les dépenser

Embeddings, recherche et classement

La moitié récupération d'une stack RAG derrière le même endpoint et la même clé.

  • POST/v1/embeddingsEmbeddings texte et multimodaux
  • POST/v1/rerankReranking compatible Cohere et Voyage
  • POST/v1/searchAbstraction de recherche web multi-fournisseurs
  • POST/v1/classifyClassification de texte Jina
  • POST/v1/segmentSegmentation de contenu Jina
  • POST/v1/web/fetchExtraction de page lisible

Image, vidéo et musique

La génération passe par le même repli et la même comptabilité des coûts que le texte.

  • POST/v1/images/generationsSynthèse d'images
  • POST/v1/images/editsÉdition et inpainting
  • POST/v1/videos/generationsGénération de vidéo
  • POST/v1/music/generationsSynthèse musicale

Audio et documents

Parole dans les deux sens, plus OCR pour les documents scannés.

  • POST/v1/audio/transcriptionsParole vers texte
  • POST/v1/audio/translationsTranscription avec traduction
  • POST/v1/audio/speechTexte vers parole
  • POST/v1/ocrOCR de documents

Fichiers et lots

Téléversez une fois, puis exécutez le travail de façon asynchrone au lieu de garder une connexion ouverte.

  • POST/v1/filesTéléverser un fichier
  • GET/v1/files/{id}/contentRécupérer le contenu d'un fichier en flux
  • POST/v1/batchesCréer un traitement par lot
  • GET/v1/batches/{id}Interroger l'état d'un lot
  • POST/v1/batches/{id}/cancelAnnuler un lot en cours

Découverte et contrôle

Tout ce dont un client a besoin pour choisir un modèle et rester dans un budget.

  • GET/v1/modelsCatalogue de modèles groupé par fournisseur
  • GET/v1/quotas/checkPré-valider le quota restant
  • POST/v1/moderationsModération de contenu
  • GET/v1/wsUpgrade WebSocket pour les clients en streaming

Protocoles d'agents

Un serveur MCP avec 110 outils et une agent card A2A, servis par le même processus.

  • GET/api/mcp/streamMCP sur HTTP, 33 périmètres
  • GET/api/mcp/sseMCP sur Server-Sent Events
  • POST/a2aJSON-RPC 2.0, 6 compétences d'agent
  • GET/.well-known/agent.jsonAgent card publique

En-têtes

Chaque réponse indique comment elle a été servie.

Le routage n'est pas une boîte noire : la décision, le coût et la compression à l'origine d'une réponse voyagent avec elle.

En-têtes de réponse

  • X-OmniRoute-DecisionStratégie, alias de fournisseur et latence qui ont servi la requête
  • X-OmniRoute-ProviderL'alias du fournisseur réellement utilisé
  • X-OmniRoute-ModelL'identifiant du modèle résolu
  • X-OmniRoute-Latency-MsLatence amont en millisecondes
  • X-OmniRoute-Tokens-InNombre de tokens en entrée
  • X-OmniRoute-Tokens-OutNombre de tokens en sortie
  • X-OmniRoute-Response-CostCoût en USD de cette réponse
  • X-OmniRoute-Cost-SavedUSD évités sur un hit du cache
  • X-OmniRoute-CacheHIT ou MISS sur les requêtes sans streaming
  • X-OmniRoute-CompressionMode de compression appliqué et son origine
  • X-OmniRoute-Fallback-AttemptsSauts de repli effectués, s'il y en a eu
  • X-OmniRoute-Request-IdIdentifiant de corrélation pour le journal des requêtes

En-têtes de requête

  • x-omniroute-compressionRemplacer le profil de compression pour une requête
  • X-OmniRoute-No-CacheContourner le cache sémantique
  • x-omniroute-no-memoryIgnorer l'injection de mémoire et de compétences
  • X-Session-IdClé d'affinité de session et d'attribution des coûts
  • Idempotency-KeyDédupliquer une requête relancée
Lire la référence API (s'ouvre dans un nouvel onglet)

OmniRoute par Cheaper Inference

Choisissez comment exécuter OmniRoute.

Auto-hébergez OmniRoute, ou utilisez Cheaper Inference pour une passerelle hébergée classée par coût.