Planifier les expéditions
Toutes les expéditions doivent être planifiées à l'avance en créant une commande d'expédition entrante ou sortante. Le non-respect de cette consigne peut entraîner le rejet de l'expédition. Seul un utilisateur du Equinix Customer Portal disposant de l'autorisation de commande d'expéditions peut planifier ces expéditions. Les types d'expéditions actuellement pris en charge par les API du Equinix Customer Portal sont disponibles ici.
Préalable
-
Pour obtenir les détails de l'expédition, l'utilisateur doit disposer des autorisations de commande « Expéditions ».
-
Authentification: soumettez vos identifiants utilisateur, votre identifiant client et votre clé secrète pour l’authentification OAuth2. Consultez la documentation relative à l’authentification API (Authentification API) pour savoir comment appeler l’API OAuth afin de valider et d’authentifier vos identifiants.
-
Pour programmer un envoi, vous devez déterminer l'identifiant exact de la cage et le numéro de compte. Ces valeurs seront transmises dans les paramètres
cageIdetaccountNumberdu corps de la requête. -
Récupérer les informations de localisation: envoyez une requête
GETau point de terminaison/v1/orders/smarthands/locationspour obtenir les emplacements IBX disponibles auxquels vous avez accès. Vous pouvez sauter cette étape si vous connaissez déjà les informations de localisation.
Planification d'une expédition entrante

Pour programmer un envoi entrant, envoyez une requête POST à [/colocations/v2/orders/shipments](/api-catalog/shipmentsv2/#tag/Shipments/operation/Schedule%20inbound%20 ou%20outbound%Point de terminaison 20shipment. Utilisez le paramètre "type": "INBOUND" pour indiquer qu'il s'agit d'un envoi entrant et fournissez les autres détails de l'envoi dans le corps de la requête. Une demande d'envoi entrant exige au moins le type d'envoi, la date d'envoi, la cage associée, le transporteur et le nombre de colis. Les autres renseignements nécessaires à transmettre dans le corps de la requête dépendent des éléments suivants:
- Si votre envoi entrant provient d'une cage liée à plusieurs comptes.
- Si le transporteur qui livre l'envoi appartient à votre organisation, il peut s'agir d'un transporteur répertorié ou non. Si votre transporteur n'est pas DHL, FedEx ou UPS, il s'agit d'un transporteur non répertorié.
Exemple de requête cURL:
Un envoi entrant provenant d'une cage associée à un seul compte qui sera livré par votre organisation.
Dans ce scénario, votre envoi entrant est livré à votre cage associée à un seul compte par un membre de votre organisation. Les informations minimales requises pour ce scénario sont transmises dans cet exemple de requête.
curl -X
POST "https://api.equinix.com/colocations/v2/orders/shipments"
-H "content-type: application/json"
-H "authorization: Bearer <token>"
-d '{
"type": "INBOUND",
"requestedDateTime": "2020-11-02T10:45:41Z",
"cageId": "AM1:01:000111",
"details": {
"carrier": "CUSTOMER_CARRIER",
"numberOfBoxes": 2
}
}'
Exemple de requête cURL:
Expédition entrante provenant d'une cage associée à plusieurs comptes, livrée par un transporteur non répertorié. Des demandes, informations, coordonnées et pièces jointes Smart Hands supplémentaires sont également incluses.
Avant de créer une commande avec pièce jointe, appelez le point de terminaison Attachments File.
Dans ce scénario, vous avez fourni les informations minimales requises pour faciliter une expédition entrante et inclus des paramètres de corps supplémentaires qui prennent en charge les éléments suivants:
- demande supplémentaire de Smart Hands pour livrer l'envoi à votre cage
- description supplémentaire
- pièces jointes de soutien
- votre propre identifiant de référence
- informations sur le bon de commande
- coordonnées pour les personnes à contacter en cas de notification ou pour les contacts techniques
Tous les paramètres corporels disponibles et applicables sont transmis dans cet exemple de demande.
curl -X
POST "https://api.equinix.com/colocations/v2/orders/shipments"
-H "content-type: application/json"
-H "authorization: Bearer <token>"
-d '{
"type": "INBOUND",
"requestedDateTime": "2020-11-02T10:45:41Z",
"cageId": "AM1:01:000111",
"accountNumber": 901011,
"details": {
"carrier": "OTHER",
"carrierName": "New Carrier",
"numberOfBoxes": 2,
"carrierTrackingNumbers": [
"t1Z294AK92654678989",
"t1Z086DK96424456780"
],
"cageDelivery": true
},
"description": "Package is fragile and heavy. Handle with care. Additional description in attachment.",
"attachments": [
{
"id": "85d9660a-f877-405a-b38e-8e61a4f77f44",
"name": "OrderInstructions.docx"
}
],
"customerReferenceId": "2020/16347",
"purchaseOrder": {
"type": "NEW",
"number": "9654284",
"amount": "10000",
"startDate": "2020-10-01",
"endDate": "2021-09-30",
"attachmentId": "56d10de6-f2c0-4edd-ba29-b70736aa2093"
},
"contacts": [
{
"type": "NOTIFICATION",
"registeredUsers": [
"john_doe1",
"jane_smith1"
]
},
{
"type": "TECHNICAL",
"firstName": "John",
"lastName": "Doe",
"availability": "WORK_HOURS",
"timezone": "America/Los_Angeles",
"details": [
{
"type": "EMAIL",
"value": "johndoe@acme.com""
},
{
"type": "PHONE",
"value": "+1-987654321"
},
{
"type": "MOBILE",
"value": "+1-912345678"
}
]
}
]
}'
La commande est créée avec succès lorsqu'un code HTTP 201 est renvoyé et que l'en-tête de réponse est renvoyé. Il n'y a pas de corps de réponse.
Pour mettre à jour cette commande, consultez /v2/orders/shipments/{orderId}%20inbound%20 ou%20outbound%20shipment) dans la section Référence de l'API pour plus d'informations.
Si vous souhaitez ajouter des notes à cette commande, récupérer et répondre aux négociations relatives à cette commande, ou annuler cette commande, consultez Orders dans la section Référence de l'API pour plus d'informations.
Planifier une expédition sortante

Pour programmer un envoi sortant, envoyez une requête POST à [/colocations/v2/orders/shipments](/api-catalog/shipmentsv2/#tag/Shipments/operation/Schedule%20inbound%20 ou%20outbound%Point de terminaison 20shipment. Utilisez le paramètre "type": "OUTBOUND" pour indiquer qu'il s'agit d'un envoi sortant et fournissez les autres détails de l'envoi dans le corps de la requête. Une demande d'envoi sortant nécessite au minimum le type d'envoi, la date d'envoi, la cage associée et le transporteur. Les autres renseignements nécessaires à transmettre pour l'envoi sortant sont indiqués ci-dessous.
Le corps de la requête dépend des éléments suivants:
- Si votre envoi sortant provient d'une cage liée à plusieurs comptes.
- Si le transporteur qui livre l'envoi appartient à votre organisation, il peut s'agir d'un transporteur répertorié ou non répertorié. Si votre transporteur n'est pas DHL, FedEx ou UPS, il est considéré comme non répertorié.
- Si vous souhaitez qu'une étiquette d'expédition soit imprimée par Equinix.
Exemple de requête cURL:
Un envoi sortant d'une cage associée à un seul compte qui sera livré par une personne de votre organisation.
Dans ce scénario, votre envoi sortant est livré à votre cage associée à un seul compte par un membre de votre organisation. Les informations minimales requises pour ce scénario sont transmises dans cet exemple de requête.
curl -X
POST "https://api.equinix.com/colocations/v2/orders/shipments"
-H "content-type: application/json"
-H "authorization: Bearer <token>"
-d '{
"type": "OUTBOUND",
"requestedDateTime": "2020-11-02T10:45:41Z",
"cageId": "AM1:01:000111",
"details": {
"carrier": "CUSTOMER_CARRIER"
]
}
}'
Exemple de requête cURL:
Un envoi sortant d'une cage associée à plusieurs comptages qui sera livré par un transporteur non répertorié et nécessite Équinix imprimera l'étiquette d'expédition. Les détails de l'étiquette d'expédition sont fournis en pièce jointe. Assistance Smart Hands supplémentaire Les demandes, les informations, les coordonnées et les pièces jointes sont également incluses.
Avant de créer une commande avec pièce jointe, appelez le point de terminaison Attachments File.
Dans ce scénario, vous avez fourni les informations minimales requises pour faciliter une demande d'expédition sortante et inclus des paramètres de corps supplémentaires qui prennent en charge les éléments suivants:
- valeur d'expédition déclarée dans une devise autre que l'USD
- demandes supplémentaires de Smart Hands pour récupérer votre envoi dans votre cage ou pour l'assurer
- description supplémentaire
- pièces jointes de soutien
- votre propre identifiant de référence
- informations sur le bon de commande
- coordonnées pour les personnes à contacter en cas de notification ou pour les contacts techniques
Tous les paramètres corporels disponibles et applicables sont transmis dans cet exemple de demande.
curl -X
POST "https://api.equinix.com/colocations/v2/orders/shipments"
-H "content-type: application/json"
-H "authorization: Bearer <token>"
-d '{
"type": "OUTBOUND",
"requestedDateTime": "2020-11-02T10:45:41Z",
"cageId": "AM1:01:000111",
"accountNumber": 901011,
"details": {
"carrier": "OTHER",
"carrierName": "New Carrier",
"numberOfBoxes": 2,
"declaredValue": 1000,
"declaredValueCurrency": "EUR",
"carrierTrackingNumbers": [
"t1Z294AK92654678989",
"t1Z086DK96424456780"
],
"shipmentLabelRequired": true,
"shipmentAttachmentId": "f49891fc-d9a5-4b4b-bc65-150b1c5e6dff",
"requirePickup": true,
"insureShipment": true
},
"description": "Package is fragile and heavy. Handle with care. Additional description in attachment.",
"attachments": [
{
"id": "85d9660a-f877-405a-b38e-8e61a4f77f44",
"name": "OrderInstructions.docx"
}
],
"customerReferenceId": "2020/16347",
"purchaseOrder": {
"type": "NEW",
"number": "9654284",
"amount": "10000",
"startDate": "2020-10-01",
"endDate": "2021-09-30",
"attachmentId": "56d10de6-f2c0-4edd-ba29-b70736aa2093"
},
"contacts": [
{
"type": "NOTIFICATION",
"registeredUsers": [
"john_doe1",
"jane_smith1"
]
},
{
"type": "TECHNICAL",
"firstName": "John",
"lastName": "Doe",
"availability": "WORK_HOURS",
"timezone": "America/Los_Angeles",
"details": [
{
"type": "EMAIL",
"value": "johndoe@acme.com"
},
{
"type": "PHONE",
"value": "+1-987654321"
},
{
"type": "MOBILE",
"value": "+1-912345678"
}
]
}
]
}'
La commande est créée avec succès lorsqu'un code HTTP 201 est renvoyé et que l'en-tête de réponse est renvoyé. Il n'y a pas de corps de réponse.
Pour mettre à jour cette commande, consultez /v2/orders/shipments/{orderId}%20inbound%20 ou%20outbound%20shipment) dans la section Référence de l'API pour plus d'informations.
Si vous souhaitez ajouter des notes à cette commande, récupérer et répondre aux négociations relatives à cette commande, ou annuler cette commande, consultez Orders dans la section Référence de l'API pour plus d'informations.