Aller au contenu principal

Rendez-vous

Remplacez votre jeton par l’espace réservé entre crochets dans la partie en-tête, et votre sous-domaine de localisation dans la partie URL comme indiqué ci-dessous.

Liste

Vous pouvez récupérer la liste des rendez-vous en utilisant l'appel API suivant :

curl -H "Authorization: Token [api_token]" https://[location_subdomain].datadocks.com/api/v1/appointments

Si votre jeton API est 12345 et votre sous-domaine de localisation est toronto-acme, cela ressemblerait à :

curl -H "Authorization: Token 12345" https://toronto-acme.datadocks.com/api/v1/appointments

Vous pouvez passer les paramètres suivants pour filtrer la liste des rendez-vous retournés :

Pagination

Lors de la liste des rendez-vous, la réponse est paginée pour rendre les données plus gérables. Chaque page affichera 20 rendez-vous par défaut. Pour naviguer parmi les pages, vous devez ajouter le paramètre page à la chaîne de requête dans votre appel API comme suit :

curl -H "Authorization: Token [api_token]" https://[location_subdomain].datadocks.com/api/v1/appointments?page=2

Remplacez [api_token] par votre véritable jeton API et [location_subdomain] par votre véritable sous-domaine de localisation. Pour accéder à une page différente, changez simplement le numéro dans le paramètre page par le numéro de page que vous souhaitez visualiser.

Filtrage

po_number

  • Type : String
  • Description : Le numéro de bon de commande pour filtrer. C'est une correspondance exacte si fourni.
curl -H "Authorization: Token [api_token]" https://[location_subdomain].datadocks.com/api/v1/appointments?po_number=12345

from

  • Type : Représentation sous forme de chaîne d'une date / heure.
  • Description : Filtrer les résultats programmés à partir de la date / heure passée ou après. La date / heure passée sera localisée au fuseau horaire de l'emplacement.
curl -H "Authorization: Token [api_token]" https://[location_subdomain].datadocks.com/api/v1/appointments?from=2020-01-01%2012:00%20PM

to

  • Type : Représentation sous forme de chaîne d'une date / heure.
  • Description : Filtrer les résultats programmés avant la date / heure passée. La date / heure passée sera localisée au fuseau horaire de l'emplacement.
curl -H "Authorization: Token [api_token]" https://[location_subdomain].datadocks.com/api/v1/appointments?to=2020-01-02%2012:00%20PM

Combinaison des filtres

Vous pouvez combiner les paramètres en les séparant par un esperluette comme suit :

curl -H "Authorization: Token [api_token]" https://[location_subdomain].datadocks.com/api/v1/appointments?po_number=12345&from=2020-01-01%2012:00%20PM&to=2020-01-02%2012:00%20PM

Exemple de charge utile

[
{
"id": 1,
"appointment_number": 1,
"state": "left",
"duration": 120,
"shipping_number": "57886",
"trailer_number": "2222222",
"bol_number": "922",
"carrier_name": "FastCo",
"driver_name": "Jason Smith",
"created_by": "Sysadmin",
"outbound": false,
"drop_trailer": false,
"queued": false,
"dock_name": "Dock 2",
"yard_name": null,
"free_until": null,
"scheduled_at": "2020-09-30T06:00:00-04:00",
"approved_at": "2020-09-22T13:35:00-04:00",
"arrived_at": null,
"started_at": "2020-09-24T13:35:00-04:00",
"completed_at": "2020-09-24T13:35:00-04:00",
"left_at": "2020-09-25T13:35:00-04:00",
"cancelled_at": null,
"custom_values": {
"expected_at": "2020-10-01",
"travel_type": "Truck",
"forklift_operator": "Sue",
"inspection_passed": "1"
},
"packing_lists": [
{
"id": 4,
"po_number": "A-2000",
"customer_name": "FishCo",
"product_name": "Trout",
"unit_name": "Skid",
"booked_quantity": 10,
"booked_weight": 152,
"actual_quantity": 12,
"actual_weight": 160,
"custom_values": {
"barcode": "11223344",
"dimensions": "S",
"temperature_celcius": "-5"
}
}
],
"notes": [
{
"id": 3,
"body": "First note."
},
{
"id": 4,
"body": "Second note."
},
{
"id": 5,
"body": "Third note."
}
],
"documents": []
},
{
"id": 2,
"appointment_number": 2,
"state": "left",
"duration": 180,
"shipping_number": "18234",
"trailer_number": "432233222",
"bol_number": "37014",
"carrier_name": "FastCo",
"driver_name": "Brad Jones",
"created_by": "Sysadmin",
"outbound": true,
"drop_trailer": false,
"queued": false,
"dock_name": null,
"yard_name": "Yard A",
"free_until": null,
"scheduled_at": "2020-09-22T13:00:00-04:00",
"approved_at": "2020-09-22T13:35:00-04:00",
"arrived_at": null,
"started_at": "2020-09-24T13:35:00-04:00",
"completed_at": "2020-09-24T13:35:00-04:00",
"left_at": "2020-09-25T13:35:00-04:00",
"cancelled_at": null,
"custom_values": {
"expected_at": "2020-09-22",
"travel_type": "Ship",
"forklift_operator": "Mary"
},
"packing_lists": [
{
"id": 5,
"po_number": "A-4000",
"customer_name": "FishCo",
"product_name": "Trout",
"unit_name": "Skid",
"booked_quantity": 13,
"booked_weight": 298,
"actual_quantity": 12,
"actual_weight": 290,
"custom_values": {
"barcode": "33222311",
"dimensions": "M",
"temperature_celcius": "-4"
}
},
{
"id": 6,
"po_number": "B-4000",
"customer_name": "FishCo",
"product_name": "Trout",
"unit_name": "Skid",
"booked_quantity": 16,
"booked_weight": 111,
"actual_quantity": 17,
"actual_weight": 120,
"custom_values": {
"barcode": "23302911",
"dimensions": "L",
"temperature_celcius": "-2"
}
}
],
"notes": [
{
"id": 1,
"body": "This is a note."
},
{
"id": 2,
"body": "This is another note."
}
],
"documents": []
}
]

Champs

id

  • Type : Integer
  • Requis : Oui
  • Description : Identifiant unique interne DataDocks.
  • Valeurs possibles : Ne peut pas être défini en externe.

appointment_number

  • Type : Integer
  • Requis : Oui
  • Description : Le numéro séquentiel attribué automatiquement au rendez-vous.
  • Valeurs possibles : Ne peut pas être défini en externe.

state

  • Type : String
  • Requis : Oui
  • Description : L'état / le statut des rendez-vous.
  • Valeurs possibles :
    • needs_booking
    • pending
    • booked
    • arrived
    • started
    • completed
    • left
    • cancelled

duration

  • Type : Integer
  • Requis : Oui
  • Description : La durée du rendez-vous en minutes.
  • Valeurs possibles : Doit être supérieur à 0.

shipping_number

  • Type : String
  • Requis : Non
  • Description : Le numéro d'expédition.

trailer_number

  • Type : String
  • Requis : Non
  • Description : Le numéro de la remorque.

bol_number

  • Type : String
  • Requis : Non
  • Description : Le numéro de BOL.

carrier_name

  • Type : String
  • Requis : Non
  • Description : Le nom du transporteur auquel le rendez-vous est assigné.

carrier_email

  • Type : String
  • Requis : Non
  • Description : L'email du transporteur auquel le rendez-vous est assigné si aucun transporteur n'a été trouvé / spécifié.

driver_name

  • Type : String
  • Requis : Non
  • Description : Le nom du conducteur.

created_by

  • Type : String
  • Requis : Non
  • Description : Le nom de l'utilisateur qui a créé le rendez-vous.

outbound

  • Type : Boolean
  • Requis : Oui
  • Description : Vrai s'il s'agit d'un rendez-vous sortant, Faux s'il s'agit d'un rendez-vous entrant. La valeur par défaut est Faux.

drop_trailer

  • Type : Boolean
  • Requis : Oui
  • Description : Indique s'il s'agit d'une remorque déposée. La valeur par défaut est Faux.

queued

  • Type : Boolean
  • Requis : Oui
  • Description : Indique si cela a été mis en file d'attente pour une date spécifique, mais pas encore programmé. La valeur par défaut est Faux.

dock_name

  • Type : String
  • Requis : Non
  • Description : Le nom du quai auquel le rendez-vous est assigné.
  • Valeurs possibles : Un quai valide à l'emplacement du rendez-vous.

yard_name

  • Type : String
  • Requis : Non
  • Description : Le nom de la cour auquel le rendez-vous est assigné.
  • Valeurs possibles : Une cour valide à l'emplacement du rendez-vous.

free_until

  • Type : DateTime
  • Requis : Non
  • Description : ?

scheduled_at

  • Type : DateTime
  • Requis : Non
  • Description : Quand le rendez-vous est programmé.

approved_at

  • Type : DateTime
  • Requis : Non
  • Description : Quand le rendez-vous a été approuvé.

arrived_at

  • Type : DateTime
  • Requis : Non
  • Description : Quand le rendez-vous est arrivé.

started_at

  • Type : DateTime
  • Requis : Non
  • Description : Quand le traitement du rendez-vous a commencé.

completed_at

  • Type : DateTime
  • Requis : Non
  • Description : Quand le traitement du rendez-vous s’est terminé.

left_at

  • Type : DateTime
  • Requis : Non
  • Description : Quand le rendez-vous a quitté la propriété.

cancelled_at

  • Type : DateTime
  • Requis : Non
  • Description : Quand le rendez-vous a été annulé.

custom_values

  • Type : Hash
  • Requis : Non
  • Description : Un hachage (objet) de paires clé / valeur des champs personnalisés qui ont été remplis pour le rendez-vous.

packing_lists

  • Type : Array
  • Requis : Non
  • Description : Les listes d'emballage appartenant au rendez-vous.

packing_lists > id

  • Type : Integer
  • Requis : Oui
  • Description : Identifiant unique interne DataDocks.
  • Valeurs possibles : Ne peut pas être défini en externe.

packing_lists > po_number

  • Type : String
  • Requis : Non
  • Description : Le numéro de bon de commande auquel la liste d'emballage est associée.

packing_lists > customer_name

  • Type : String
  • Requis : Non
  • Description : Le nom du client auquel la liste d'emballage est associée.

packing_lists > product_name

  • Type : String
  • Requis : Non
  • Description : Le nom du produit auquel la liste d'emballage est associée.

packing_lists > unit_name

  • Type : String
  • Requis : Non
  • Description : Le nom de l'unité auquel la liste d'emballage est associée.

packing_lists > booked_quantity

  • Type : Décimal
  • Requis : Non
  • Description : La quantité réservée.

packing_lists > booked_weight

  • Type : Décimal
  • Requis : Non
  • Description : Le poids réservé.

packing_lists > actual_quantity

  • Type : Décimal
  • Requis : Non
  • Description : La quantité réelle.

packing_lists > actual_weight

  • Type : Décimal
  • Requis : Non
  • Description : Le poids réel.

packing_lists > custom_values

  • Type : Hash
  • Requis : Non
  • Description : Un hachage (objet) de paires clé / valeur des champs personnalisés qui ont été remplis pour la liste d'emballage.

notes

  • Type : Array
  • Requis : Non
  • Description : Les notes jointes au rendez-vous.

notes > id

  • Type : Integer
  • Requis : Oui
  • Description : Identifiant unique interne DataDocks.
  • Valeurs possibles : Ne peut pas être défini en externe.

notes > body

  • Type : String
  • Requis : Oui
  • Description : Le contenu / corps de la note.

documents

  • Type : Array
  • Requis : Non
  • Description : Les documents attachés au rendez-vous.

Création de rendez-vous

Vous pouvez créer un rendez-vous en utilisant l'appel API suivant et en fournissant les données de rendez-vous au format JSON.

curl -v \
-H "Accept: application/json" \
-H "Content-type: application/json" \
-H "Authorization: Token [api_token]" \
-X POST \
-d '{"appointment": {"carrier_name": "My Shipping Co.", "shipping_number": "AA11223344"}}' \
https://[location_subdomain].datadocks.com/api/v1/appointments

Si votre jeton API est 12345, et votre sous-domaine de localisation est toronto-acme, cela ressemblerait à :

curl -v \
-H "Accept: application/json" \
-H "Content-type: application/json" \
-H "Authorization: Token 12345" \
-X POST \
-d '{"appointment": {"carrier_name": "My Shipping Co.", "shipping_number": "AA11223344"}}' \
https://toronto-acme.datadocks.com/api/v1/appointments

Mise à jour des rendez-vous

Vous pouvez mettre à jour un rendez-vous en utilisant l'appel API suivant et en fournissant les données de rendez-vous au format JSON. Notez que l'URL nécessite l'identifiant du rendez-vous à la fin (l'identifiant du rendez-vous DataDocks).

curl -v \
-H "Accept: application/json" \
-H "Content-type: application/json" \
-H "Authorization: Token [api_token]" \
-X PUT \
-d '{"appointment": {"shipping_number": "BB55667788"}}' \
https://[location_subdomain].datadocks.com/api/v1/appointments/[appointment_id]

Si votre jeton API est 12345, votre sous-domaine de localisation est toronto-acme, et l'identifiant du rendez-vous que vous souhaitez mettre à jour est 1, cela ressemblerait à :

curl -v \
-H "Accept: application/json" \
-H "Content-type: application/json" \
-H "Authorization: Token 12345" \
-X PUT \
-d '{"appointment": {"shipping_number": "BB55667788"}}' \
https://toronto-acme.datadocks.com/api/v1/appointments/1