GET
Obtenir une commande
Récupérer des informations détaillées sur une commande spécifique par son ID.
Point de terminaison
Requête HTTP
GET /v1/orders/:order_idAuthentification
Ce point de terminaison nécessite une clé API valide avec la permission
canViewOrders . La clé API doit être passée dans l'en-tête X-API-Key .En-tête requis
X-API-Key: ucos_live_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXParamètres d'URL
| Paramètre | Type | Requis | Description |
|---|---|---|---|
order_id | string | Oui | Identifiant de commande (UUID par défaut, ou partie numérique de l'ID Shopify si le paramètre de requête use_shopify_order_id est true). Pour les ID de commande Shopify, extraire le numéro du format GID (par ex., pour 'gid://shopify/Order/450789469', utiliser '450789469'). |
Paramètres de requête
| Paramètre | Type | Requis | Défaut | Description |
|---|---|---|---|---|
use_shopify_order_id | boolean | Non | false | Définir à 'true' pour rechercher la commande en utilisant l'ID Shopify au lieu de l'UUID. Extraire le numéro du format GID Shopify (gid://shopify/Order/450789469 → 450789469) et l'utiliser dans le paramètre de chemin order_id. |
Réponse
Retourne un objet JSON avec les détails de la commande:
200 OK - Réponse de succès
{
"success": true,
"data": {
"order": {
"id": "string",
"shopify_order_id": "string",
"name": "string",
"created_at": "string",
"custom_status": {
"id": "string",
"name": "string",
"color": "string"
},
"custom_sub_status": {
"id": "string",
"name": "string"
},
"customer": {
"first_name": "string",
"last_name": "string",
"email": "string",
"phone": "string"
},
"shipping_address": {
"company": "string",
"address1": "string",
"address2": "string",
"city": "string",
"province": "string",
"zip": "string",
"country": "string",
"latitude": "string",
"longitude": "string"
},
"total_price": "string",
"currency": "string",
"line_items": [
{
"id": "string",
"shopify_line_item_id": "string",
"name": "string",
"quantity": 0,
"title": "string",
"variant_title": "string",
"sku": "string",
"shopify_product_id": null,
"shopify_variant_id": null,
"custom_status": {
"id": "string",
"name": "string",
"color": "string"
},
"custom_sub_status": {
"id": "string",
"name": "string"
}
}
],
"note": "string",
"cancelled": true,
"cancelled_at": null,
"addon_statuses": [
{
"id": "string",
"name": "string",
"display_name": "string",
"color": "string",
"sub_status": {
"id": "string",
"name": "string"
},
"assigned_at": "string"
}
],
"workflow_id": null,
"workflow_name": null
}
}
}Champs de réponse
Objet de réponse racine
| Champ | Type | Description |
|---|---|---|
success | boolean | Toujours true pour une réponse réussie. |
data | object | Charge utile de le point de terminaison. Ses champs sont détaillés dans les tableaux ci-dessous. |
order | object | L'objet de commande contenant tous les détails de la commande |
Objet de commande
| Champ | Type | Description |
|---|---|---|
id | string | Identifiant unique de la commande (UUID) |
shopify_order_id | string | ID global Shopify de la commande |
name | string | Numéro de commande (par ex., #1001) |
created_at | string | null | Horodatage ISO 8601 de création de la commande dans Shopify |
custom_status | object | Informations sur le statut personnalisé |
custom_sub_status | object | Informations sur le sous-statut personnalisé |
customer | object | Informations du client |
shipping_address | object | Informations d'adresse de livraison |
total_price | string | null | Prix total de la commande |
currency | string | null | Code de devise (par ex., USD, CAD) |
line_items | array | Tableau d'objets d'articles de ligne |
addon_statuses | array | Tableau d'objets de statuts additionnels (v1.1+ seulement) |
note | string | null | Note/commentaires de la commande |
cancelled | boolean | Indique si la commande est annulée |
cancelled_at | string | null | Horodatage ISO 8601 de l'annulation de la commande |
workflow_id | string | null | UUID du flux de travail auquel cette commande appartient (v1.3+ uniquement) |
workflow_name | string | null | Nom du flux de travail auquel cette commande appartient (v1.3+ uniquement) |
Champs d'objet de statut
| Champ | Type | Description |
|---|---|---|
id | string | Identifiant unique du statut personnalisé |
name | string | Nom d'affichage du statut (utilise le nom public si configuré) |
color | string | Code couleur hexadécimal du statut |
Objet de sous-statut
| Champ | Type | Description |
|---|---|---|
id | string | Identifiant unique du sous-statut |
name | string | Nom du sous-statut |
Champs d'objet client
| Champ | Type | Description |
|---|---|---|
first_name | string | null | Prénom du client |
last_name | string | null | Nom de famille du client |
email | string | null | Adresse email du client |
phone | string | null | Numéro de téléphone du client |
Champs d'objet d'adresse de livraison
| Champ | Type | Description |
|---|---|---|
company | string | null | Nom de l'entreprise |
address1 | string | null | Ligne d'adresse principale |
address2 | string | null | Ligne d'adresse secondaire |
city | string | null | Nom de la ville |
province | string | null | Code d'état/province |
zip | string | null | Code postal |
country | string | null | Nom du pays |
latitude | string | null | Coordonnée de latitude |
longitude | string | null | Coordonnée de longitude |
Champs d'objet d'article de ligne
| Champ | Type | Description |
|---|---|---|
id | string | Identifiant unique pour l'article de ligne |
shopify_line_item_id | string | ID global Shopify pour l'article de ligne |
name | string | Nom du produit |
quantity | number | Quantité commandée |
title | string | null | Titre du produit |
variant_title | string | null | Titre de la variante, ou null |
sku | string | null | UGS, ou null |
shopify_product_id | string | null | GID du produit Shopify, ou null |
shopify_variant_id | string | null | GID de la variante Shopify, ou null |
Champs d'objet de statut additionnel
| Champ | Type | Description |
|---|---|---|
id | string | Identifiant unique du statut additionnel |
name | string | Nom d'affichage du statut additionnel |
display_name | string | Nom d'affichage public du statut additionnel |
assigned_at | string | Horodatage de l'attribution du statut additionnel à la commande |
color | string | Code couleur hexadécimal du statut additionnel |
sub_status | object | Sous-statut optionnel pour l'addon |
Objet de sous-statut additionnel
| Champ | Type | Description |
|---|---|---|
id | string | Identifiant unique du sous-statut additionnel |
name | string | Nom du sous-statut additionnel |
Exemples
Requête de base (UUID)
Requête cURL
curl -X GET "https://api.ultimate-custom-order-status.apps.msmtech.ca/api/v1/orders/8c1d4e2f-0a53-49b7-b6e4-7f2d9c3a5e10" \
-H "X-API-Key: ucos_live_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" \
-H "X-API-Version: 1.5"Utilisation de l'ID de commande Shopify
Requête cURL
curl -X GET "https://api.ultimate-custom-order-status.apps.msmtech.ca/api/v1/orders/5460132438316?use_shopify_order_id=true" \
-H "X-API-Key: ucos_live_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" \
-H "X-API-Version: 1.5"Obtenir une commande brouillon (v1.2+)
Requête cURL
curl -X GET "https://api.ultimate-custom-order-status.apps.msmtech.ca/api/v1/orders/1234567890?use_shopify_order_id=true" \
-H "X-API-Key: ucos_live_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" \
-H "X-API-Version: 1.5"Limitation de débit
Ce point de terminaison est soumis à des limites de débit par minute et par jour en fonction de votre clé API. Les informations de limite de débit sont renvoyées dans les en-têtes de réponse:
X-RateLimit-Limit-Minute: Nombre maximum de requêtes par minuteX-RateLimit-Remaining-Minute: Requêtes restantes dans la minute en coursX-RateLimit-Reset-Minute: Horodatage Unix de réinitialisation de la fenêtre minuteX-RateLimit-Limit-Day: Nombre maximum de requêtes par jourX-RateLimit-Remaining-Day: Requêtes restantes dans le jour en coursX-RateLimit-Reset-Day: Horodatage Unix de réinitialisation de la fenêtre jourRetry-After: Secondes à attendre avant de réessayer (en cas de limitation)
Réponses d'erreur
400 Mauvaise requête
Format d'ID de commande invalide
400 Mauvaise requête
{
"success": false,
"error": "Validation failed",
"details": {
"errors": [
{
"code": "invalid_type",
"expected": "string",
"received": "undefined",
"path": [
"status_id"
],
"message": "Required"
}
]
}
}401 Non autorisé
Clé API manquante ou invalide
401 Non autorisé
{
"success": false,
"error": "Missing API key. Include it in the X-API-Key header"
}403 Interdit
La clé API manque de permissions requises
403 Interdit
{
"success": false,
"error": "Insufficient permissions. Required: canViewOrders"
}404 Non trouvé
Commande non trouvée ou n'appartient pas à cette boutique
404 Non trouvé
{
"success": false,
"error": "Order not found"
}500 Erreur interne du serveur
Une erreur du serveur s'est produite
500 Erreur interne du serveur
{
"success": false,
"error": "Internal server error",
"details": {
"message": "An unexpected error occurred"
}
}