Aller au contenu principal

Gérer les abonnements

Créer un abonnement​

curl -X POST https://staging.api.v2.wino.fr/webhooks/subscriptions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $WINO_API_KEY" \
-d '{ "shopId": "<your shop ID>", "url": "https://example.com/wino-webhooks", "clientState": "<a secret of yours>" }'
Champ du corpsObligatoireDescription
shopIdouiLa boutique à suivre
urlouiL'URL à notifier. Elle doit être une URL http ou https valide, pas localhost, et faire 255 caractères au plus
clientStatenon, mais renseignez-leUn secret de votre choix (255 caractères au plus), renvoyé dans chaque notification. Votre récepteur le vérifie pour savoir que la notification vient de Wino (voir Recevoir les notifications)
disablednontrue pour le créer en pause. Par défaut : false

Tout autre champ est refusé. La réponse est 201 Created avec l'abonnement :

{
"id": "0b7e…",
"createdAt": 1793869920000,
"updatedAt": 1793869920000,
"userId": "…",
"url": "https://example.com/wino-webhooks",
"clientState": "<a secret of yours>",
"shopId": "<your shop ID>",
"disabled": false,
"settings": {
"Product": true,
"Variant": true,
"VariantPrice": true,
"StockActivity": true,
"Customer": false,
"…": false
}
}

createdAt et updatedAt sont des timestamps en millisecondes. userId identifie le compte derrière la clé qui a créé l'abonnement. Pour suivre plusieurs boutiques, créez un abonnement par boutique.

Le POST n'accepte pas settings : un nouvel abonnement démarre avec les types par défaut ci-dessous. Pour choisir d'autres types, créez-le, puis envoyez un PATCH.

localhost est refusé. Pour tester depuis votre ordinateur, exposez votre serveur local via un service de tunnel qui vous donne une URL HTTPS publique, et abonnez cette URL.

Activez ou désactivez des types avec PATCH. Seuls les types que vous envoyez changent (subscriptionId est l'id renvoyé à la création) :

curl -X PATCH https://staging.api.v2.wino.fr/webhooks/subscriptions/<subscription id> \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $WINO_API_KEY" \
-d '{ "settings": { "Customer": true, "SalesReceipt": true } }'

PATCH modifie aussi url, clientState, disabled ou shopId. Il ignore les champs qu'il ne connaît pas, sans erreur : vérifiez l'abonnement qu'il renvoie. Si vous changez clientState, continuez d'accepter l'ancienne valeur pendant 5 minutes : les notifications la portent encore jusqu'à ce que le changement s'applique. PUT remplace tout l'abonnement avec un corps comme celui du POST, et remet settings aux valeurs par défaut. Renvoyez clientState : sans lui, PUT le supprime. Sans disabled, PUT réactive aussi un abonnement en pause.

Lister, récupérer et supprimer​

# List your subscriptions
curl https://staging.api.v2.wino.fr/webhooks/subscriptions \
-H "Authorization: Bearer $WINO_API_KEY"

# Delete one
curl -X DELETE https://staging.api.v2.wino.fr/webhooks/subscriptions/<subscription id> \
-H "Authorization: Bearer $WINO_API_KEY"

La liste ne contient que les abonnements créés avec votre clé. Avec un id, vous pouvez aussi lire, modifier ou supprimer un autre abonnement d'une boutique à laquelle votre clé donne accès (par exemple celui de la boutique en ligne de la boutique) : vérifiez son shopId et son url avant de le modifier. PUT vous en rend propriétaire. Les erreurs utilisent les codes de statut HTTP : voir Erreurs.