"use client"; /** * CollectFlow — Informations de connexion à l'API `/api/v1`. * * Tout ce qu'il faut pour appeler l'API depuis un script : URL de base, en-tête * d'authentification, liste des endpoints et exemples copiables. L'URL de base est * déduite de l'origine courante, pour rester juste quel que soit le déploiement. */ import { useEffect, useState, type ReactNode } from "react"; import { Copy, Check, ExternalLink, Bot, ChevronRight } from "lucide-react"; import { Card, CardContent, CardHeader } from "@/components/ui/card"; import { Button } from "@/components/ui/button"; import { toast } from "@/components/ui/feedback"; function CopyButton({ text }: { text: string }) { const [copied, setCopied] = useState(false); const copier = async () => { try { await navigator.clipboard.writeText(text); setCopied(true); setTimeout(() => setCopied(false), 1500); } catch { toast.erreur("La copie automatique a échoué : sélectionnez le texte et copiez-le à la main."); } }; return ( ); } function CodeLine({ children, copy }: { children: string; copy?: string }) { return (
{children}
Chaque appel doit porter une clé (à créer dans le cadre « Clés d'accès à l'API » ci-dessous), dans l'un ou l'autre de ces en-têtes. Depuis un navigateur déjà connecté à CollectFlow, aucune clé n'est nécessaire.
X-API-Key,
et collez votre clé.
rechercherProduits.
Si l'adresse publique de l'application diffère de celle affichée ici, renseignez la variable
d'environnement COLLECTFLOW_PUBLIC_URL : elle fixe l'adresse
annoncée dans la description.
| Méthode | Adresse | Contenu |
|---|---|---|
| {e.method} | {e.path} | {e.desc} |
| Paramètre | Effet |
|---|---|
| {p.name} | {p.desc} |
Tout un fournisseur en un seul appel : il suffit d'omettre limit,
et meta.complet confirme qu'il ne reste rien à lire.
Gros fournisseur (plusieurs dizaines de milliers d'articles) : lister d'abord les postes de nomenclature, puis les traiter un par un.
Bon à savoir
L'API lit des grilles déjà calculées, enregistrées quand la Grille est ouverte dans
l'application ou par le préchauffage ci-dessous. Un fournisseur jamais calculé l'est au premier
appel, qui est alors plus lent ; avec compute=0, l'API répond
aussitôt 202 not_ready.
Les ventes du réseau (network) et la gamme
enregistrée (codeGammeServeur) sont relues à chaque appel.{" "}
network vaut null quand le produit
n'a pas de données réseau.
En cas d'erreur, la réponse a la forme {`{ "error": { "code", "message" } }`} avec
le code 401 (clé absente, invalide ou révoquée), 400{" "}
(paramètre incorrect) ou 404 (introuvable).