SDK

Utilisez l’API publique BARFLAB depuis Java, Python ou Node.js.

Générer un client local

Les paquets publics pour Java, Python et Node.js ne sont pas encore publiés. Générez un client local à partir du contrat public versionné avec la commande du générateur épinglée indiquée ci-dessous. Une version fixe du générateur rend les mises à jour du contrat intentionnelles.

Configurer les requêtes

Exécutez les appels depuis un serveur de confiance, lisez le jeton d’accès depuis l’environnement et utilisez l’adresse de base et les délais d’attente indiqués dans les exemples. Ne placez jamais le jeton dans le code du navigateur.

Lister les animaux

Les exemples Java, Python et Node.js ci-dessous effectuent la même première opération avec les bibliothèques standard de chaque plateforme ; ils ne dépendent donc pas d’un paquet non publié.

Gérer les erreurs

Vérifiez le statut et le corps de la réponse. Conservez l’identifiant de la requête lorsque vous contactez l’assistance, mais n’enregistrez jamais le jeton d’accès. Ne réessayez une écriture ou une génération de régime que lorsque la requête peut être répétée sans risque.

Version et source

Générez les clients à partir du bundle public OpenAPI. Épinglez les versions du contrat et du générateur dans votre processus de compilation afin que les mises à niveau soient examinées et reproductibles.

Java
curl --fail --silent --show-error https://api.barflab.io/openapi.yaml -o openapi.yaml
docker run --rm -v "$PWD:/local" openapitools/openapi-generator-cli:v7.24.0 generate \
  -i /local/openapi.yaml -g java -o /local/generated/barflab-java \
  --additional-properties=library=native
Java HTTP
var request = HttpRequest.newBuilder(URI.create(
    "https://api.barflab.io/v1/pets"))
  .header("Authorization", "Bearer " + System.getenv("BARFLAB_TOKEN"))
  .header("Accept", "application/json")
  .timeout(Duration.ofSeconds(30))
  .GET()
  .build();
var response = httpClient.send(request, BodyHandlers.ofString());
Python
curl --fail --silent --show-error https://api.barflab.io/openapi.yaml -o openapi.yaml
docker run --rm -v "$PWD:/local" openapitools/openapi-generator-cli:v7.24.0 generate \
  -i /local/openapi.yaml -g python -o /local/generated/barflab-python
Python HTTP
import os
import urllib.request

request = urllib.request.Request(
    "https://api.barflab.io/v1/pets",
    headers={
        "Authorization": f"Bearer {os.environ['BARFLAB_TOKEN']}",
        "Accept": "application/json",
    },
)
with urllib.request.urlopen(request, timeout=30) as response:
    body = response.read()
Node.js
curl --fail --silent --show-error https://api.barflab.io/openapi.yaml -o openapi.yaml
docker run --rm -v "$PWD:/local" openapitools/openapi-generator-cli:v7.24.0 generate \
  -i /local/openapi.yaml -g typescript-fetch -o /local/generated/barflab-node
Node.js HTTP
const response = await fetch(
  "https://api.barflab.io/v1/pets",
  {
    headers: {
      Authorization: `Bearer ${process.env.BARFLAB_TOKEN}`,
      Accept: "application/json",
    },
    signal: AbortSignal.timeout(30_000),
  },
);
const body = await response.json();
ID d’opération
petsList