Comment pouvons-nous vous aider ?

Recherches fréquentes
ExportWorkflowCatalogue
AccueilTechnique

Obtenir un jeton, faire un premier appel et retrouver ses comptes : dix minutes pour démarrer avec l'API REST de Grand Shooting.

L'API Grand Shooting est une API REST qui échange du JSON. Elle donne accès aux mêmes données que l'application : Catalogue, Productions, médias, Cahier des charges, stock, diffusion.

  • URL de base : https://api.grand-shooting.com/v3
  • Format : JSON (Content-Type: application/json), sauf l'upload de fichiers (multipart/form-data)
  • Référence complète : api.grand-shooting.com, spécification OpenAPI sur /swagger.json

1. Obtenir un jeton d'API

Un jeton (appelé « clé API » dans l'interface) est rattaché à un utilisateur API de votre compte. Un administrateur du compte le crée dans l'administration du compte, menu Équipe > API, avec Ajouter une clé API.

Deux niveaux de droits :

DroitCe qu'il permet
apiLecture et écriture
api_roLecture seule : les requêtes POST, PUT, PATCH et DELETE sont refusées (401)

Choisissez api_ro dès que l'intégration ne fait que lire (reporting, synchronisation vers un DAM) : en cas de fuite, le jeton ne permet de rien modifier.

Le jeton n'est affiché qu'une seule fois, à sa création : conservez-le dans un coffre-fort de secrets, jamais dans le code. Il n'expire pas : il reste valable tant que l'utilisateur API est actif. Pour le révoquer, bloquez la clé dans Équipe > API.

2. Premier appel

Le jeton se passe dans l'en-tête Authorization, précédé de Bearer :

curl -H "Authorization: Bearer $GS_TOKEN" https://api.grand-shooting.com/v3/account/me

/account/me décrit l'utilisateur du jeton et les comptes auxquels il a accès. Pour chaque compte, le champ api_host donne l'adresse de l'API à utiliser : la plateforme est répartie sur plusieurs serveurs, et un compte peut être servi par une autre adresse que api.grand-shooting.com (par exemple https://api-19.grand-shooting.com). Lisez api_host au démarrage de votre intégration plutôt que de coder l'adresse en dur.

3. Lire des données

Lister les Productions du compte :

curl -H "Authorization: Bearer $GS_TOKEN" https://api.grand-shooting.com/v3/production

Chercher les médias validés (picturestatus 50) modifiés depuis le 1er octobre, les plus récents d'abord :

curl -i -H "Authorization: Bearer $GS_TOKEN" \
  "https://api.grand-shooting.com/v3/picture?picturestatus=50&date_mod=gte:2026-10-01&sort_by=-date_mod"

L'option -i affiche les en-têtes de la réponse : X-Total-Count donne le nombre total de résultats. La pagination, les filtres et les statuts sont expliqués dans Concepts de l'API.

4. Écrire des données

Créer ou mettre à jour une Référence du Catalogue (la Référence est identifiée par ref : si elle existe, elle est mise à jour) :

curl -X POST -H "Authorization: Bearer $GS_TOKEN" -H "Content-Type: application/json" \
  -d '{"ref":"SS26-ROBE-110","smalltext":"Robe bohème"}' \
  https://api.grand-shooting.com/v3/reference

Charger une photo sur l'étape Live d'une Production :

curl -X POST -H "Authorization: Bearer $GS_TOKEN" -F "file=@photo.jpg" -F "path=/" \
  https://api.grand-shooting.com/v3/production/{bench_root_id}/bench/{bench_id}/upload

Ou faire charger des fichiers par Grand Shooting depuis leurs URL (jusqu'à 200 par appel), en les associant directement à une Référence :

curl -X POST -H "Authorization: Bearer $GS_TOKEN" -H "Content-Type: application/json" \
  -d '{"urls":[{"url":"https://cdn.example.com/a.jpg","filename":"a.jpg","ref":"SS26-ROBE-110"}]}' \
  https://api.grand-shooting.com/v3/production/{bench_root_id}/bench/{bench_id}/upload/url

5. Agir pour un autre compte

Un prestataire (studio, producteur) travaille souvent pour le compte de ses clients. Si le client lui a donné une délégation, son jeton peut agir sur le compte du client : ajoutez l'en-tête account_id avec l'identifiant du compte cible.

curl -H "Authorization: Bearer $GS_TOKEN" -H "account_id: 57" https://api.grand-shooting.com/v3/production

Sans cet en-tête, les requêtes portent sur le compte du jeton. Les comptes accessibles sont listés par /account/me.

Et ensuite ?

  • Concepts de l'API : objets, statuts, pagination, filtres, erreurs.
  • Cookbooks : les intégrations courantes, pas à pas.
  • Webhooks : être notifié des changements au lieu d'interroger l'API.

L'API vérifie aussi des jetons OAuth, obtenus par une application OAuth : ils se passent avec le préfixe access_token (Authorization: access_token <jeton>) au lieu de Bearer. Le reste de l'API est identique.