> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solya.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Recettes API

> Exemples prêts à copier-coller, de bout en bout, pour les flux API Solya courants — en cURL, Python et JavaScript.

Exemples pratiques et exécutables pour les flux d'intégration les plus courants. Ils s'appuient sur les
concepts présentés dans [Intégration API](/fr/developers/overview) — URL de base, authentification, pagination et
l'enveloppe de réponse.

<CardGroup cols={2}>
  <Card title="Lire des données" icon="download" href="/fr/developers/recipes/read-data">
    Lister le catalogue, paginer et lire les risques de rupture de stock.
  </Card>

  <Card title="Créer un plan" icon="upload" href="/fr/developers/recipes/create-a-plan">
    Créer un plan de réassort et ajouter un article — le flux d'écriture.
  </Card>
</CardGroup>

## Avant de commencer

* **URL de base** — `https://app.solya.app` ; les endpoints sont sous `/api/`.
* **Authentification** — chaque requête porte l'en-tête `Authorization: Bearer solya_sa_…` (un
  [token de compte de service](/fr/developers/authentication)).
* **Enveloppe** — les réponses d'écriture/action utilisent `{ "success": true, "data": … }` ou
  `{ "success": false, "errorCode": … }`. Branchez sur `errorCode`, pas sur le texte. Voir
  [Codes d'erreur](/fr/developers/error-codes).

## Vérifiez votre token

Un appel rapide confirme que le token se résout sur la bonne organisation et ses permissions.

<Tabs>
  <Tab title="cURL">
    ```bash theme={null}
    curl https://app.solya.app/api/auth/whoami \
      -H "Authorization: Bearer solya_sa_xxx"
    ```
  </Tab>

  <Tab title="Python">
    ```python theme={null}
    import requests

    BASE = "https://app.solya.app"
    TOKEN = "solya_sa_xxx"
    headers = {"Authorization": f"Bearer {TOKEN}"}

    r = requests.get(f"{BASE}/api/auth/whoami", headers=headers)
    r.raise_for_status()
    print(r.json())  # { authKind, organizationId, effectivePermissions, ... }
    ```
  </Tab>

  <Tab title="JavaScript">
    ```javascript theme={null}
    const BASE = "https://app.solya.app"
    const TOKEN = "solya_sa_xxx"
    const headers = { Authorization: `Bearer ${TOKEN}` }

    const res = await fetch(`${BASE}/api/auth/whoami`, { headers })
    if (!res.ok) throw new Error(`whoami failed: ${res.status}`)
    console.log(await res.json())
    ```
  </Tab>
</Tabs>

<Note>
  Préférez ne pas écrire les requêtes à la main ? Pointez un agent IA vers la [passerelle MCP](/fr/mcp/overview)
  et il découvrira et appellera ces endpoints pour vous.
</Note>
