Developer guide

S’authentifier avec une clé API

En-tête contenant la clé API et base URL à configurer dans le SDK

Cette page explique comment s’authentifier auprès de la passerelle CLEVI avec une clé API.
Les chemins compatibles avec OpenAI et ceux compatibles avec Anthropic s’authentifient tous deux avec une seule clé,
mais les en-têtes acceptés pour transmettre la clé et la base URL à configurer dans le SDK diffèrent selon la norme.

En-têtes d’authentification

Les deux normes compatibles s’authentifient avec une seule clé API. La clé est émise dans la page des clés API de la console, où vous pouvez également la révoquer et gérer sa portée d’utilisation.

En-têteCompatible avec OpenAICompatible avec Anthropic
X-API-Key: <clé>AcceptéAccepté
Authorization: Bearer <clé>AcceptéAccepté
Authorization: <clé> (sans Bearer)RefuséAccepté

Les noms d’en-tête ne sont pas sensibles à la casse. Le x-api-key envoyé par le SDK Anthropic fonctionne également tel quel.

base URL

Les SDK que vous utilisez déjà fonctionneront tels quels si vous remplacez uniquement la base URL par l’une des adresses ci-dessous. Les deux adresses diffèrent quant à l’inclusion de /v1.

Normebase URLRègle de chemin
Compatible avec OpenAIhttps://platform.clevi.net/api/v2/aiservice/openai/v1Incluez /v1 dans la base URL.
Compatible avec Anthropichttps://platform.clevi.net/api/v2/aiservice/anthropicLe SDK Anthropic ajoute automatiquement /v1 au chemin, la base URL se termine donc avant /v1.

Vérifier l’authentification

Vous pouvez vérifier immédiatement l’authentification en entrant la clé et la base URL, puis en récupérant la liste des modèles. Les trois exemples ci-dessous effectuent la même requête avec curl, le SDK OpenAI et le SDK Anthropic.

curl https://platform.clevi.net/api/v2/aiservice/openai/v1/models \
  -H "X-API-Key: sk-..."

curl https://platform.clevi.net/api/v2/aiservice/anthropic/v1/models \
  -H "Authorization: Bearer sk-..." \
  -H "anthropic-version: 2023-06-01"
from openai import OpenAI

client = OpenAI(
    api_key="sk-...",
    base_url="https://platform.clevi.net/api/v2/aiservice/openai/v1",
)

for model in client.models.list():
    print(model.id)
from anthropic import Anthropic

client = Anthropic(
    api_key="sk-...",
    base_url="https://platform.clevi.net/api/v2/aiservice/anthropic",
)

for model in client.models.list(limit=20).data:
    print(model.id)

À la place de sk-..., saisissez la clé émise dans la page des clés API.

  • Si la réponse est 200, l’authentification a réussi. data contient la liste des modèles que cette clé peut appeler.
  • Si la réponse est 401, vérifiez les éléments dans l’ordre indiqué dans la section sur l’échec de l’authentification ci-dessous.

En-tête utilisé conjointement

Tout est facultatif. Pour faciliter le suivi des problèmes, il est recommandé d’inclure X-Request-Id.

En-têteUtilisationSi omis
X-Request-IdIdentifiant de suivi de la requête. Dans les réponses compatibles avec Anthropic, il est renvoyé sous forme d’en-tête request-id.Émis par le serveur.
X-Region-CodeRégion d’appelglobal.
X-Product-Sku (également possible avec le paramètre de requête product_sku)Spécifie directement le Product SKU à utiliser pour la facturation. L’en-tête est prioritaire sur le paramètre de requête et est principalement utilisé pour les chemins audio et vocaux.Nécessaire pour les chemins vocaux. audio/speech et audio/transcriptions sélectionnent le Product avec model dans le corps de la requête.
anthropic-version / anthropic-betaTransmis tel quel dans les chemins compatibles avec Anthropic.La version est 2023-06-01.

Échec de l’authentification

Si vous n’envoyez aucune clé ou si vous envoyez une clé expirée ou révoquée, le code est 401. Si vous effectuez un appel sans clé dans un chemin compatible avec OpenAI, le corps ci-dessous est renvoyé; dans un chemin compatible avec Anthropic, error.type est authentication_error.

{
  "error": {
    "message": "API key is required.",
    "type": "invalid_request_error"
  }
}
  1. Vérifiez l’état de la clé dans l’écran des clés API. Si elle est expirée ou révoquée, générez-en une nouvelle.
  2. Vérifiez que le nom de l’en-tête est X-API-Key ou Authorization.
  3. Si vous utilisez Authorization dans un chemin compatible avec OpenAI, vérifiez le préfixe Bearer.
CLEVI

Langue et région

Les langues traduites automatiquement sont indiquées. La disponibilité suit la version publiée du site.

136 langues

Recommandé

1

Asie orientale

7

Asie du Sud-Est

11

Asie du Sud

18

Asie centrale

5

Moyen-Orient et Caucase

10

Europe occidentale et Europe méridionale

16

Royaume-Uni et Irlande

4

Europe septentrionale

10

Europe centrale et Balkans

14

Europe orientale

5

Afrique orientale

8

Afrique occidentale et Afrique centrale

9

Afrique australe

8

Amériques

5

Océanie

5