Pour commencer à utiliser l'API SnapGrab:
L'API de SnapGrab vous fournit une interface claire et simple pour générer des devis de livraison, commander des livraisons sur la plate-forme SnapGrab, consulter, suivre et annuler vos livraisons.
Vous pouvez utiliser l'API SnapGrab pour profiter de notre flotte de chauffeurs, obtenir des commandes ou livrer des colis en seulement 60 minutes dans notre zone de livraison géographique, desservant la ville suivante:
Voici ce que les développeurs font généralement avec l'API:
Avec l'API SnapGrab, vous pouvez faire livrer la plupart des articles transportables par une personne. Veuillez consulter nos conditions d'utilisation de l'API, notre politique d'expédition et notre code de conduite avec nos partenaires pour plus d'informations.
Tous les endpoints fournis par SnapGrab sont reliés à un partenaire commerçant spécifique. Vous aurez besoin de votre clé API lors de chaque demande.
L'URL de base est: https://api.snapgrabdelivery.com/v1/
Afin de faciliter l'intégration de notre API, nous mettons à votre disposition un mode test. Vous pouvez vous entraîner sur tous les endpoints sans être facturé en utilisant votre clé test API qui se trouve dans les paramètres de votre tableau de bord commerçant. Les livraisons commandées en mode test ne seront pas effectuées par un vrai livreur.
Veuillez basculer entre votre touche live et test pour passer du mode live au mode test.
Pour obtenir une clé live active, mettez à jour votre mode de paiement dans la page Paramètres du tableau de bord commerçant. Une fois votre mode de paiement enregistré, votre clé live sera alors valide.
IMPORTANT: votre clé live est une donnée sensible. Conservez-la avec précaution et ne la partagez pas avec des parties hors de votre contrôle direct. Vos clés API vous donnent un accès direct à l'API SnapGrab en votre nom.
Le contrôle de version nous permet de fournir aux développeurs une expérience d’une qualité constante.
Tous les endpoints sont préfixés avec une version telle que / v1. Cette version fait référence à la présentation générale des endpoints et des normes de services.
Veuillez fournir l'adresse de dépôt au format suivant:
Adresse, ville, province, code postal
Important: il est recommandé de fournir à l'API SnapGrab les adresses générées par Google Maps ou les adresses au format Google Maps pour garantir un géocodage efficace.
Toutes autres informations telles que les codes de porte, les codes d’interphones, et les numéros d'appartement doivent être ajoutées dans le champ "Instructions". Toute information supplémentaire ajoutée dans le champ "DropOffAddress" peut entraîner un mauvais format d’adresse dans notre système et gêner la détection exacte de l'emplacement, voire totalement.
La structure à suivre pour les demandes POST est la suivante.
{ "Key":"26cac56d-1d00-4c73-827e-4f9a66473445"; ... }
L’API SnapGrab utilise des codes HTTP pour indiquer le statut de vos demandes.
Toutes les réponses sont données en JSON.
L’API SnapGrab classifie les erreurs selon 2 types: validation erros (Code 1xx) ou processing errors (code 2xx). Ces deux types d'erreurs renvoient 400 codes de statut HTTP avec la structure suivante.
{ "Code":"101"; "Message":"DropOff address is not located in serviced delivery area." }
101 | ||
102 | ||
103 | ||
104 | ||
105 | ||
106 | ||
107 | ||
108 | ||
109 | ||
110 |
La première étape à la création d’une demande de livraison en passant par l’API SnapGrab est de générer un devis. Ce devis facilitera vos décisions ainsi que celles de vos clients pour les frais de livraisons et la disponibilité. Le calcul des frais se base sur plusieurs facteurs tels que la distance, la complexité de la livraison, la disponibilité des chauffeurs et le trafic routier.
La prise en charge par le chauffeur sera toujours effectuée dans les 60 minutes qui suivent l'heure de prise en charge prévue. La livraison sera effectuée immédiatement après la collecte de la commande.
Note *: L'heure de prise en charge prévue n'est pas l'heure exacte à laquelle le livreur se présentera à votre lieu de prise en charge.
Le devis de livraison est valable pour une période de 30 minutes à compter de sa demande.
* IMPORTANT * Veuillez entrer l'adresse de livraison au format suivant:
Adresse, ville, province, code postal
Important: il est recommandé de fournir à l'API SnapGrab les adresses générées par Google Maps ou les adresses au format Google Maps pour garantir un géocodage efficace.
Toutes autres informations telles que les codes de porte, les codes d’interphones, et les numéros d'appartement doivent être ajoutées dans le champ "Instructions". Toute information supplémentaire ajoutée dans le champ "DropOffAddress" peut entraîner un mauvais format d’adresse dans notre système et gêner la détection exacte de l'emplacement, voire totalement.
POST: /order/prepare
{ "Key": "26cac56d-1d00-4c73-827e-4f9a66473445" "ScheduledAt": "2020-08-01T23:35:36.628Z" "DropOffAddress": "1600 Henri-Bourassa Boulevard West, Montreal, QC, Canada"; "CustomerName": "Tyler Bryant"; "CustomerPhone": "5141234567"; "CustomerEmail": "Tyler@SnapGrab.com"; "Instructions": "Unit 1"; "LargeOrder": false, "BringBack": false, }
DEMANDE D’INFORMATION | ||
---|---|---|
Key | ||
ScheduledAt | ||
DropOffAddress | ||
CustomerName | ||
CustomerPhone | ||
CustomerEmail | ||
Instructions | DEMANDE D’INFORMATION | DEMANDE D’INFORMATION |
LargeOrder | ||
BringBack |
{ "Token": "21bd6cb0-89fa-4738-a659-7667f0446f3d" "Prices": { "BaseFare": 12.99; "DistanceFare": 0.50; "LargeOrderFare": 0; "SurgeTime": false; "tvq": 1.35; "tps": 0.67; "TotalAmount": 15.51; "DeliveryCharge": 13.49; "Distance": 3200; "ServiceFee": 0; } }
Token | |
BaseFare | |
DistanceFare | |
LargeOrderFare | |
SurgeTime | |
tvq | |
tps | |
TotalAmount | |
DeliveryCharge | |
Distance | |
ServiceFee |
101 | |
102 | |
103 | |
104 | |
105 | |
106 | |
107 | |
108 | |
109 | |
110 |
Une fois votre devis reçu, il est alors temps de créer un ordre de livraison réel sur la plateforme SnapGrab. Pour ce faire, vous devrez fournir votre clé API live personnelle ainsi que la clé générée lors du devis. N'oubliez pas que cette dernière n’est active que pendant 30 minutes à partir du moment où votre demande de devis a été effectuée. Une fois votre livraison créée, les frais de livraison seront déduits du mode de paiement que vous avez fourni dans les paramètres de votre tableau de bord Commerçant.
POST: /order
{ "Key": "26cac56d-1d00-4c73-827e-4f9a66473445"; "Token": "21bd6cb0-89fa-4738-a659-7667f0446f3d"; }
Key | ||
Token |
{ "Id": 3456; "TrackingLink": "https://api.snapgrabdelivery.com/track/7df5805d-3ce8-4dc9-b229-1440a013c3b7"; "CustomerName": "Tyler Bryant"; "DeliveryAddress": "1600 Henri-Bourassa Boulevard West, Montreal, QC, Canada"; "CustomerPhone": "5141234567"; "Instructions": "Unit 1"; "ScheduledTime": "2020-08-01T23:35:36.628Z"; "DeliveryStage": "Received"; "DriverName": "null"; }
Id | |
TrackingLink | |
CustomerName | |
DeliveryAddress | |
CustomerPhone | |
Instructions | |
ScheduledTime | |
DeliveryStage | |
DriverName |
201 | |
202 |
Une fois que votre livraison a correctement été formulée sur la plateforme SnapGrab, il vous est alors possible de récupérer des informations précises à son sujet.
POST: /order/track
{ "Key": "26cac56d-1d00-4c73-827e-4f9a66473445" "Id": 3456 }
Key | ||
Id |
{ "Id": 3456; "TrackingLink": "https://api.snapgrabdelivery.com/track/7df5805d-3ce8-4dc9-b229-1440a013c3b7"; "CustomerName": "Tyler Bryant"; "DeliveryAddress": "1600 Henri-Bourassa Boulevard West, Montreal, QC, Canada"; "CustomerPhone": "5141234567"; "Instructions": "Unit 1"; "ScheduledTime": "2020-08-01T23:35:36.628Z"; "DeliveryStage": "Received"; "DriverName": "Steve Leonard"; }
Id | |
TrackingLink | |
CustomerName | |
DeliveryAddress | |
CustomerPhone | |
Instructions | |
ScheduledTime | |
DeliveryStage | |
DriverName |
203 |
Une fois votre demande de livraison effectuée sur la plateforme SnapGrab, il vous est possible d’annuler une commande en cours. Des frais de livraison peuvent cependant encore s'appliquer.
POST: /order/cancel
{ "Key": "26cac56d-1d00-4c73-827e-4f9a66473445" "Id": 3456; "Reason": "Customer isn't home right now"; }
Key | ||
Id | ||
Reason |
{ "Id": 3456; "CustomerName": "Tyler Bryant"; "DeliveryAddress": "1600 Henri-Bourassa Boulevard West, Montreal, QC, Canada"; "CustomerPhone": "5141234567"; "Instructions": "Unit 1"; "ScheduledTime": "2020-08-01T23:35:36.628Z"; "DeliveryStage": "Cancelled"; "DriverName": "Steve Leonard"; }
Id | |
TrackingLink | |
CustomerName | |
DeliveryAddress | |
CustomerPhone | |
Instructions | |
ScheduledTime | |
DeliveryStage | |
DriverName |
203 | |
204 | |
205 |
Vous pouvez extraire et répertorier votre commande confirmée depuis la plateforme SnapGrab pour voir quelle livraison a été passée avec succès. Cet outil est particulièrement utile sur le mode Test pour vérifier si votre demande d'API est réussie.
POST: /orders
{ "Key": "26cac56d-1d00-4c73-827e-4f9a66473445"; "Offset": 0; "OrderType": ["Booking"]; "Limit": 20; "DeliveryStage": ["Received","Completed"]; "SortBy": "ScheduledAt"; "OrderBy": "Desc"; "Period": ["2020-05-22T08:15:07.943Z","2020-08-14T16:15:07.943Z"]; }
Key | ||
Offset | ||
Limit | ||
DeliveryStage | ||
SortBy | ||
OrderBy | ||
Period | ||
OrderType |
{ "Count":2, "Orders": [ { "Id":"2891", "TrackingLink":"https://sgswiftadmin.snapgrabdelivery.com/track/0706cd14-b af0-4e59-a242-7df6d38e6ab8", "CustomerName":"Terry", "DeliveryAddress":"1600 Henri-Bourassa Boulevard West, Montreal, QC, Canada", "CustomerPhone":"1231231231", "Instructions":"Unit 4", "ScheduledTime":"2020-05-22T08:15:07.943Z", "DeliveryStage":"Completed", "DriverName":null, }, { "Id":"2873", "TrackingLink":"https://sgswiftadmin.snapgrabdelivery.com/track/ab9cb42e-8 a8b-4446-b05a-c71336e02a2b", "CustomerName":"Fred Jordan", "DeliveryAddress":"1000 Rue Ottawa, Montréal, QC H3C 0P3, Canada" "CustomerPhone":"1231231231", "Instructions":"Unit 1", "ScheduledTime":"2020-05-22T09:15:07.943Z", "DeliveryStage":"Completed", "DriverName":"Henry Brown", } ] }
Count | |
Orders |
110 |
Le livreur dispose d’un délai de 5 minutes pour déposer la commande au client une fois arrivé sur les lieux de la livraison. Si le destinataire n’est pas chez lui ou indisponible, le livreur pourra marquer "client indisponible" sur la livraison. Un retour sur les lieux de la collecte du commerçant est alors enclenché, impliquant des frais de livraison additionnels. Le livreur n’a en aucun cas la possibilité de statuer la livraison comme “client indisponible” avant la fin des 5 minutes d’attente réglementaires.
Les livraisons peuvent être annulées à tout moment jusqu'à ce que la livraison soit faite ou au stade de “Finalisée”. Des frais de livraisons peuvent tout de même s’appliquer. Veuillez consulter notre politique de frais d'annulation.
Pour toute question concernant l’API SNAPGRAB COURSIERS, veuillez nous contacter.