POST
Changer le statut d'article
Changer le statut d'un article individuel. Déclenche les notifications lorsqu'elles sont configurées sur le statut cible.
Point de terminaison
Requête HTTP
POST /v1/line-items/:lineItemId/statusAuthentification
Ce point de terminaison nécessite une clé API valide avec la permission
canChangeOrderStatus . La clé API doit être passée dans l'en-tête X-API-Key .En-tête requis
X-API-Key: your_api_key_hereParamètres d'URL
| Paramètre | Type | Requis | Défaut | Description |
|---|---|---|---|---|
lineItemId | string (UUID) | Oui | - | ID interne de l'article (SyncedLineItem.id) |
Corps de la requête
| Paramètre | Type | Requis | Défaut | Description |
|---|---|---|---|---|
status_id | string (UUID) | Oui | - | ID du statut cible |
sub_status_option_id | string (UUID) | Conditionnel | - | Requis lorsque le statut cible a un groupe de sous-statuts avec des options |
Réponse
Retourne la confirmation avec le statut d'article mis à jour:
200 OK - Réponse de succès
{
"success": true,
"data": {
"message": "Line item status updated successfully",
"line_item": {
"id": "li-uuid-123",
"status": {
"id": "uuid-status-1",
"name": "In Production",
"color": "#FFA500"
},
"sub_status": {
"id": "uuid-substatus-1",
"name": "Cutting"
}
}
}
}Champs de réponse
Objet de réponse racine
| Champ | Type | Description |
|---|---|---|
success | boolean | Indique si l'opération a réussi |
data | object | Objet de données de réponse |
message | string | Message de confirmation |
line_item | object | Objet d'article mis à jour |
line_item
| Champ | Type | Description |
|---|---|---|
id | string | ID interne de l'article |
status | object | Objet de statut actuel |
sub_status | object | null | Objet de sous-statut actuel, ou null |
status / sub_status
| Champ | Type | Description |
|---|---|---|
id | string | Identifiant du statut |
name | string | Nom d'affichage du statut |
color | string | Code couleur hexadécimal du statut |
Exemples
Requête de base
Requête cURL
curl -X POST "https://api.ultimate-custom-order-status.apps.msmtech.ca/api/v1/line-items/li-uuid-123/status" \
-H "X-API-Key: your_api_key_here" \
-H "X-API-Version: 1.4" \
-H "Content-Type: application/json" \
-d '{
"status_id": "uuid-status-1",
"sub_status_option_id": "uuid-substatus-1"
}'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 Requête invalide
Statut d'article non activé, validation échouée, ou violation de la chaîne de produits
400 Requête invalide
{
"success": false,
"error": "Line item status changes are not enabled. Set status tracking level to \"line_item\" or \"combined\" in settings."
}401 Non autorisé
Clé API manquante ou invalide
401 Non autorisé
{
"error": "Unauthorized"
}403 Interdit
La clé API manque de permissions requises
403 Interdit
{
"error": "Insufficient permissions"
}404 Non trouvé
Article, statut ou sous-statut non trouvé
404 Non trouvé
{
"error": "Line item not found",
"details": {
"lineItemId": "li-uuid-123"
}
}500 Erreur interne du serveur
Une erreur du serveur s'est produite
500 Erreur interne du serveur
{
"error": "Internal server error",
"details": {
"message": "Error description"
}
}