Authentification
Authentification
qr3.app utilise des clés API (Bearer token) pour l’authentification. Il n’y a pas de flux OAuth — générez simplement une clé et utilisez-la immédiatement.
Créer une clé API
- Connectez-vous sur app.qr3.app
- Allez dans Paramètres → Clés API
- Cliquez sur Nouvelle clé
- Sélectionnez les autorisations (scopes) souhaitées
- Copiez la clé — elle ne sera affichée qu’une seule fois !
Types de clés
| Type | Préfixe | Utilisation |
|---|---|---|
| Secret Key | qr3_sk_ | Côté serveur (API, backend) |
| Publishable Key | qr3_pk_ | Côté client (lecture seule) |
| Test Key | qr3_test_sk_ | Développement (limites de requêtes propres) |
Les Publishable Keys (qr3_pk_) ne reçoivent aucune donnée personnelle. Les routes qui renvoient des noms, des adresses e-mail ou des identifiants d’utilisateur répondent 403 à ces clés : GET /v1/members, GET /v1/workspace/stats/code-creators, GET /v1/audit-logs, GET /v1/organizations, GET /v1/organizations/:id, GET /v1/codes/:id/comments.
Utilisation
En-tête HTTP
Authorization: Bearer qr3_sk_your_key_herecURL
curl https://qr3.app/v1/codes \ -H "Authorization: Bearer qr3_sk_your_key_here"SDK TypeScript
import { QR3 } from "@qr3/sdk";
const client = new QR3({ apiKey: "qr3_sk_your_key_here" });const codes = await client.codes.list();CLI
qr3 login# or:export QR3_API_KEY=qr3_sk_your_key_hereLimites de requêtes
Chaque clé API peut envoyer 60 requêtes par minute, quel que soit le forfait. La limite s’applique par clé, et non par espace de travail ou organisation.
En cas de dépassement, l’API renvoie un code HTTP 429 :
{ "type": "https://docs.qr3.app/errors/rate-limited", "title": "Too Many Requests", "status": 429, "detail": "Rate limit of 60 requests/minute exceeded for this API key"}Scopes
| Scope | Description |
|---|---||
| * | Accès complet |
| codes:read | Lire les QR codes |
| codes:write | Créer et modifier des QR codes |
| scans:read | Lire les statistiques de scan |
| webhooks:write | Configurer les webhooks |
| account:read | Lire les informations du compte |