Passer au contenu principal

Aperçu

L’API LemonData est compatible avec OpenAI, ce qui signifie que vous pouvez utiliser le SDK officiel OpenAI en ne modifiant que l’URL de base. Pour la plupart des intégrations, commencez par POST /v1/chat/completions. Nous supportons également les formats de requête natifs Anthropic et Gemini, ainsi que POST /v1/responses comme chemin optionnel avancé.

URL de base

https://api.lemondata.cc

Authentification

Tous les points de terminaison API requièrent une authentification via un Bearer token :
Authorization: Bearer sk-your-api-key
Récupérez votre clé API depuis le Dashboard.
À propos du Playground interactif : le playground de ce site de documentation est uniquement à des fins de démonstration et ne permet pas la saisie de clés API. Pour tester l’API, veuillez utiliser :
  • cURL - Copiez les commandes d’exemple et remplacez sk-your-api-key par votre clé réelle
  • Postman - Importez notre OpenAPI spec
  • SDK - Utilisez le SDK OpenAI/Anthropic avec notre URL de base

Points de terminaison pris en charge

Chat et génération de texte

EndpointMethodDescription
/v1/chat/completionsPOSTComplétions de chat compatibles OpenAI
/v1/messagesPOSTAPI de messages compatible Anthropic
/v1/responsesPOSTOpenAI Responses API

Embeddings et rerank

EndpointMethodDescription
/v1/embeddingsPOSTCréer des embeddings textuels
/v1/rerankPOSTRéordonnancer des documents

Images

EndpointMethodDescription
/v1/images/generationsPOSTGénérer des images à partir de texte
/v1/images/editsPOSTModifier des images
/v1/images/generations/{id}GETChemin de statut de tâche pour les réponses d’image basées sur des tâches
Certains modèles d’image peuvent retourner des résultats inline, d’autres peuvent retourner des réponses basées sur des tâches, et certains peuvent se comporter de l’une ou l’autre manière selon le provider routé. Si la réponse de création inclut poll_url, suivez-la exactement.

Audio

EndpointMethodDescription
/v1/audio/speechPOSTSynthèse vocale (TTS)
/v1/audio/transcriptionsPOSTTranscription (STT)

Vidéo

EndpointMethodDescription
/v1/videos/generationsPOSTCréer une tâche de génération vidéo
/v1/tasks/{id}GETObtenir le statut de tâche asynchrone pour les jobs vidéo
/v1/videos/generations/{id}GETChemin de statut de tâche compatible legacy pour la vidéo
Pour les nouveaux clients, privilégiez /v1/tasks/{id} et suivez le poll_url retourné par les réponses de création. Conservez /v1/videos/generations/{id} uniquement pour la rétrocompatibilité.

Tâches asynchrones

EndpointMethodDescription
/v1/tasks/{id}GETPoint de terminaison unifié de statut de tâche asynchrone. Recommandé lorsqu’on suit un poll_url retourné
Ce point de terminaison n’est pas limité à la vidéo, à la musique et au 3D. Certaines tâches d’image peuvent également utiliser /v1/tasks/{id} comme chemin canonique de polling.

Musique

EndpointMethodDescription
/v1/music/generationsPOSTCréer une tâche de génération musicale
/v1/music/generations/{id}GETChemin de statut spécifique à la musique
Pour les nouveaux clients, privilégiez d’abord le poll_url retourné. Si vous avez besoin d’un point de terminaison fixe pour le statut des tâches, utilisez /v1/tasks/{id} ; conservez /v1/music/generations/{id} pour les chemins de compatibilité spécifiques à la musique.

Génération 3D

EndpointMethodDescription
/v1/3d/generationsPOSTCréer une tâche de génération de modèle 3D
/v1/3d/generations/{id}GETChemin de statut spécifique au 3D
Pour les nouveaux clients, privilégiez d’abord le poll_url retourné. Si vous avez besoin d’un point de terminaison fixe pour le statut des tâches, utilisez /v1/tasks/{id} ; conservez /v1/3d/generations/{id} pour les chemins de compatibilité spécifiques au 3D.

Modèles

EndpointMethodDescription
/v1/modelsGETLister tous les modèles disponibles
/v1/models/{model}GETObtenir les informations d’un modèle spécifique

Gemini (v1beta)

Prise en charge du format API Google Gemini natif :
EndpointMethodDescription
/v1beta/models/{model}:generateContentPOSTGénérer du contenu (format Gemini)
/v1beta/models/{model}:streamGenerateContentPOSTGénération de contenu en streaming (format Gemini)
Les endpoints Gemini supportent l’authentification par paramètre de requête ?key= en plus du token Bearer standard.

Format des réponses

Toutes les réponses suivent un format cohérent :

Réponse de succès

{
  "id": "chatcmpl-abc123",
  "object": "chat.completion",
  "created": 1234567890,
  "model": "gpt-4o",
  "choices": [...],
  "usage": {
    "prompt_tokens": 10,
    "completion_tokens": 20,
    "total_tokens": 30
  }
}

Transparence du routage

Toutes les réponses incluent un champ _routing avec les informations de canal :
{
  "id": "chatcmpl-abc123",
  ...,
  "_routing": {
    "channel": {
      "id": "ch_xxx",
      "name": "channel-name",
      "provider": "openai",
      "channelType": "PLATFORM"
    },
    "cached": false,
    "retryCount": 0
  }
}
FieldDescription
channel.idIdentifiant du canal utilisé
channel.providerFournisseur en amont (openai, anthropic, etc.)
channel.channelTypePLATFORM (LemonData) ou PRIVATE (BYOK)
cachedSi la réponse a été servie depuis le cache
retryCountNombre de tentatives de retry (le cas échéant)

Réponse d’erreur

{
  "error": {
    "message": "Invalid API key provided",
    "type": "invalid_api_key",
    "code": "invalid_api_key"
  }
}

Limites de taux

Les limites de taux sont basées sur les rôles et configurables par les administrateurs. Valeurs par défaut :
RoleRequests/min
User60
Partner300
VIP1,000
Contactez le support pour des limites de taux personnalisées. Les valeurs exactes peuvent varier selon la configuration du compte.
Lorsque les limites de taux sont dépassées, l’API renvoie un code d’état 429 avec un en-tête Retry-After indiquant la durée à attendre.

Spécification OpenAPI

Spécification OpenAPI

Téléchargez la spécification complète OpenAPI 3.0