Aller au contenu principal

Bons de commande

Remplacez votre jeton par le placeholder entre crochets dans la partie en-tête, et votre sous-domaine d'emplacement dans la partie URL comme indiqué ci-dessous.

Liste

Vous pouvez récupérer la liste des bons de commande en utilisant l'appel API suivant :

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

Si votre jeton API est 12345 et votre sous-domaine d'emplacement est toronto-acme, cela ressemblera à :

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

Exemple de Charge Utile

[
{
"id": 1,
"po_number": "A-1000",
"name": "A-1000-FastCo-Cereal",
"carrier_name": "FastCo",
"location_name": "Toronto",
"outbound": false,
"expected_starts_at": "2020-10-09T13:35:00-04:00",
"expected_ends_at": "2020-10-15T13:35:00-04:00",
"custom_values": {
"expected_at": "2020-10-09",
"travel_type": "Plane",
"forklift_operator": "Joe "
},
"purchase_order_items": [
{
"id": 2,
"customer_name": "FishCo",
"product_name": "Trout",
"unit_name": "Skid",
"quantity": 16,
"weight": 102,
"custom_values": {}
},
{
"id": 1,
"customer_name": "FishCo",
"product_name": "Cereal",
"unit_name": "Skid",
"quantity": 33,
"weight": 581,
"custom_values": {}
}
]
},
{
"id": 2,
"po_number": "A-2000",
"name": "A-2000-FastCo-Laptops",
"carrier_name": "FastCo",
"location_name": "Vancouver",
"outbound": false,
"expected_starts_at": "2020-09-30T13:35:00-04:00",
"expected_ends_at": "2020-10-14T13:35:00-04:00",
"custom_values": {
"travel_type": "Bike",
"forklift_operator": "Frank"
},
"purchase_order_items": [
{
"id": 3,
"customer_name": "FishCo",
"product_name": "Laptops",
"unit_name": "Box",
"quantity": 40,
"weight": 795,
"custom_values": {
"travel_type": "Truck",
"forklift_operator": "Sam"
}
},
{
"id": 4,
"customer_name": "FishCo",
"product_name": "Trout",
"unit_name": "Skid",
"quantity": 10,
"weight": 152,
"custom_values": {
"travel_type": "Bike",
"forklift_operator": "Jenny"
}
}
]
}
]

Champs

id

  • Type : Integer
  • Requis : Oui
  • Description : Identifiant unique interne à DataDocks.
  • Valeurs possibles : Ne peut pas être défini de manière externe.

po_number

  • Type : String
  • Requis : Oui
  • Description : Numéro de bon de commande.

name

  • Type : String
  • Requis : Oui
  • Description : Nom assemblé en interne par DataDocks en fonction des valeurs des champs et des articles du bon de commande.
  • Valeurs possibles : Ne peut pas être défini de manière externe.

carrier_name

  • Type : String
  • Requis : Non
  • Description : Le nom du transporteur auquel le bon de commande est attribué.

location_name

  • Type : String
  • Requis : Non
  • Description : Nom de l'emplacement associé au bon de commande.
  • Valeurs possibles : Optionnel. Les bons de commande n'ont pas besoin d'être spécifiques à un emplacement.

outbound

  • Type : Boolean
  • Requis : Oui
  • Description : True s'il s'agit d'un bon de commande sortant, False s'il s'agit d'un bon de commande entrant. La valeur par défaut est False.

expected_starts_at

  • Type : DateTime
  • Requis : Non
  • Description : Quand le bon de commande devrait commencer.

expected_ends_at

  • Type : DateTime
  • Requis : Non
  • Description : Quand le bon de commande devrait se terminer.

custom_values

  • Type : Hash
  • Requis : Non
  • Description : Un hash (objet) de paires clé / valeur des champs personnalisés remplis pour le bon de commande.

purchase_order_items

  • Type : Array
  • Requis : Non
  • Description : Les articles (listes d'emballage) appartenant au bon de commande.

purchase_order_items > id

  • Type : Integer
  • Requis : Oui
  • Description : Identifiant unique interne à DataDocks.
  • Valeurs possibles : Ne peut pas être défini de manière externe.

purchase_order_items > customer_name

  • Type : String
  • Requis : Non
  • Description : Le nom du client auquel l'article est associé.

purchase_order_items > product_name

  • Type : String
  • Requis : Oui
  • Description : Nom du produit auquel l'article est associé.

purchase_order_items > unit_name

  • Type : String
  • Requis : Non
  • Description : Nom de l'unité à laquelle l'article est associé.

purchase_order_items > quantity

  • Type : Decimal
  • Requis : Non
  • Description : La quantité.

purchase_order_items > weight

  • Type : Decimal
  • Requis : Non
  • Description : Le poids.

purchase_order_items > custom_values

  • Type : Hash
  • Requis : Non
  • Description : Un hash (objet) de paires clé / valeur des champs personnalisés remplis pour l'article.

Création de bons de commande

Vous pouvez créer un bon de commande en utilisant l'appel API suivant et en fournissant les données du bon de commande en format JSON.

curl -v \
-H "Accept: application/json" \
-H "Content-type: application/json" \
-H "Authorization: Token [api_token]" \
-X POST \
-d '{"purchase_order": {"po_number": "A12345"}}' \
https://[location_subdomain].datadocks.com/api/v1/purchase_orders

Si votre jeton API est 12345, et votre sous-domaine d'emplacement est toronto-acme, cela ressemblera à :

curl -v \
-H "Accept: application/json" \
-H "Content-type: application/json" \
-H "Authorization: Token 12345" \
-X POST \
-d '{"purchase_order": {"po_number": "A12345"}}' \
https://toronto-acme.datadocks.com/api/v1/purchase_orders

Mise à jour de bons de commande

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

curl -v \
-H "Accept: application/json" \
-H "Content-type: application/json" \
-H "Authorization: Token [api_token]" \
-X PUT \
-d '{"purchase_order": {"po_number": "A123456"}}' \
https://[location_subdomain].datadocks.com/api/v1/purchase_orders/[purchase_order_id]

Si votre jeton API est 12345, votre sous-domaine d'emplacement est toronto-acme, et l'ID du bon de commande que vous souhaitez mettre à jour est 1, cela ressemblera à :

curl -v \
-H "Accept: application/json" \
-H "Content-type: application/json" \
-H "Authorization: Token 12345" \
-X PUT \
-d '{"purchase_order": {"po_number": "A123456"}}' \
https://toronto-acme.datadocks.com/api/v1/purchase_orders/1

Suppression de bons de commande

Vous pouvez supprimer un bon de commande en utilisant l'appel API suivant. Notez que l'URL nécessite l'ID du bon de commande à la fin (l'ID du bon de commande de DataDocks).

curl -v \
-H "Accept: application/json" \
-H "Content-type: application/json" \
-H "Authorization: Token [api_token]" \
-X DELETE \
https://[location_subdomain].datadocks.com/api/v1/purchase_orders/[purchase_order_id]

Si votre jeton API est 12345, votre sous-domaine d'emplacement est toronto-acme, et l'ID du bon de commande que vous souhaitez mettre à jour est 1, cela ressemblera à :

curl -v \
-H "Accept: application/json" \
-H "Content-type: application/json" \
-H "Authorization: Token 12345" \
-X DELETE \
https://toronto-acme.datadocks.com/api/v1/purchase_orders/1