Aller au contenu
Documentation développeursRéférence de l'APIModèles

Mettre à jour un modèle

Modifie un modèle.

PATCHhttps://runner.cargoduo.com/v1/templates/{id}

Les articles déjà présents dans des projets conservent leur propre copie. Gratuit : aucun crédit n'est débité.

Authentification

Clé API Bearer avec l'autorisationresources:writeEn savoir plus

Paramètres de chemin

NomTypeObligatoireDescription
idstringobligatoire
string
Oui

ID du modèle (tpl_…).

Paramètres du corps

application/json
NomTypeObligatoireDescription
labelstring
string
Non

Libellé affiché.

≤ 255 chars
shapestring
string
Non

Forme de l'article. cylinder et drum utilisent radius + height au lieu de length + width ; pallet et drum restent toujours debout.

boxcylinderpalletbagdrumPar défaut "box"
lengthnumber · cm
number · cm
Non

Longueur. Obligatoire sauf si shape vaut cylinder ou drum.

widthnumber · cm
number · cm
Non

Largeur. Obligatoire sauf si shape vaut cylinder ou drum.

heightnumber · cm
number · cm
Non

Hauteur (le côté vertical lorsque l'article est posé tel que défini).

radiusnumber · cm
number · cm
Non

Rayon. Obligatoire lorsque shape vaut cylinder ou drum.

weightnumber · kg
number · kg
Non

Poids d'UNE unité.

stackableboolean
boolean
Non

D'autres articles peuvent être placés dessus.

Par défaut true
max_stack_weightnumber · kg
number · kg
Non

Poids maximal pouvant reposer sur une unité. 0 = illimité.

Par défaut 0
rotationstring
string
Non

all = l'une des six orientations ; upright = rotation autour de l'axe vertical uniquement (ce côté vers le haut) ; fixed = jamais tourné.

alluprightfixedPar défaut "all"
hazardousboolean
boolean
Non

Marchandise dangereuse : placée près du plancher et séparée des autres articles dangereux.

Par défaut false
priorityinteger
integer
Non

Priorité de chargement. Plus élevée = chargé en premier et conservé quand l'espace manque. 0 = aucune.

Par défaut 0
colorstring
string
Non

Couleur d'affichage au format #rrggbb (visionneuse et PDF uniquement).

nesting_heightnumber · cm
number · cm
Non

Recouvrement télescopique lorsque des unités identiques s'empilent (caisses ou seaux emboîtables).

Par défaut 0

Exemple de requête

curl -X PATCH "https://runner.cargoduo.com/v1/templates/tpl_42" \
  -H "Authorization: Bearer $CARGODUO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "weight": 480
  }'

Exemple de réponse

200 OK · Template
{
  "id": "tpl_42",
  "object": "template",
  "label": "Euro pallet",
  "shape": "box",
  "length": 120,
  "width": 80,
  "height": 140,
  "radius": 0,
  "weight": 480,
  "stackable": false,
  "max_stack_weight": 0,
  "rotation": "all",
  "hazardous": false,
  "priority": 0,
  "color": "#3b82f6",
  "nesting_height": 0,
  "created_by": {
    "id": "usr_7",
    "name": "Elif Kaya"
  },
  "updated_by": {
    "id": "usr_7",
    "name": "Elif Kaya"
  },
  "created_at": "2026-09-28T14:05:52Z",
  "updated_at": "2026-10-19T09:12:03Z"
}

Réponses

  • 200OKLe modèle après la modification.
    NomTypeObligatoireDescription
    idstring
    string
    Non

    ID du modèle (tpl_…).

    objectstring
    string
    Non
    template
    labelstring
    string
    Non

    Libellé affiché.

    shapestring
    string
    Non

    Forme de l'article. cylinder et drum utilisent radius + height au lieu de length + width ; pallet et drum restent toujours debout.

    boxcylinderpalletbagdrum
    lengthnumber · cm
    number · cm
    Non

    Longueur. Obligatoire sauf si shape vaut cylinder ou drum.

    widthnumber · cm
    number · cm
    Non

    Largeur. Obligatoire sauf si shape vaut cylinder ou drum.

    heightnumber · cm
    number · cm
    Non

    Hauteur (le côté vertical lorsque l'article est posé tel que défini).

    radiusnumber · cm
    number · cm
    Non

    Rayon. Obligatoire lorsque shape vaut cylinder ou drum.

    weightnumber · kg
    number · kg
    Non

    Poids d'UNE unité.

    stackableboolean
    boolean
    Non

    D'autres articles peuvent être placés dessus.

    max_stack_weightnumber · kg
    number · kg
    Non

    Poids maximal pouvant reposer sur une unité. 0 = illimité.

    rotationstring
    string
    Non

    all = l'une des six orientations ; upright = rotation autour de l'axe vertical uniquement (ce côté vers le haut) ; fixed = jamais tourné.

    alluprightfixed
    hazardousboolean
    boolean
    Non

    Marchandise dangereuse : placée près du plancher et séparée des autres articles dangereux.

    priorityinteger
    integer
    Non

    Priorité de chargement. Plus élevée = chargé en premier et conservé quand l'espace manque. 0 = aucune.

    colorstring
    string
    Non

    Couleur d'affichage au format #rrggbb (visionneuse et PDF uniquement).

    nesting_heightnumber · cm
    number · cm
    Non

    Recouvrement télescopique lorsque des unités identiques s'empilent (caisses ou seaux emboîtables).

    created_byUserRef | null
    UserRef | null
    Non

    Le membre qui l'a créé (pour les appels API : le membre qui a créé la clé). null si inconnu.

    updated_byUserRef | null
    UserRef | null
    Non

    Le dernier membre à l'avoir modifié.

    created_atstring
    string
    Non

    RFC 3339.

    updated_atstring
    string
    Non

    RFC 3339.

  • 400Bad requestinvalid_json
    • invalid_jsonLe corps n'est pas un JSON valide ou un champ a un type incorrect.
    NomTypeObligatoireDescription
    errorErrorBodyobligatoire
    ErrorBody
    Oui
    Tous les codes d'erreur
  • 401Unauthorizedunauthorizedkey_revokedkey_expired
    • unauthorizedClé API absente, mal formée ou inconnue.
    • key_revokedLa clé a été révoquée.
    • key_expiredLa clé a dépassé sa date d'expiration.
    NomTypeObligatoireDescription
    errorErrorBodyobligatoire
    ErrorBody
    Oui
    Tous les codes d'erreur
  • 403Forbiddenip_not_allowedsubscription_inactiveaccount_inactivescope_missing
    • ip_not_allowedL'adresse IP appelante ne figure pas dans la liste des adresses IP autorisées de la clé.
    • subscription_inactiveL'organisation n'a aucun abonnement actif incluant l'API.
    • account_inactiveL'organisation est suspendue ou n'a aucun propriétaire dont le compte est actif.
    • scope_missingIl manque à la clé une autorisation requise par cet endpoint.
    NomTypeObligatoireDescription
    errorErrorBodyobligatoire
    ErrorBody
    Oui
    Tous les codes d'erreur
  • 404Not foundtemplate_not_found
    • template_not_foundAucun modèle avec cet ID dans votre organisation.
    NomTypeObligatoireDescription
    errorErrorBodyobligatoire
    ErrorBody
    Oui
    Tous les codes d'erreur
  • 422Unprocessable entityvalidation_failed
    • validation_failedLa requête est un JSON bien formé, mais décrit une tâche invalide. details[] liste tous les problèmes.
    NomTypeObligatoireDescription
    errorErrorBodyobligatoire
    ErrorBody
    Oui
    Tous les codes d'erreur
  • 429Too many requestsrate_limited
    • rate_limitedTrop de requêtes dans la minute, l'heure ou la journée en cours (par clé ou par organisation), ou plus de 60 échecs d'authentification par minute depuis votre adresse IP.
    NomTypeObligatoireDescription
    errorErrorBodyobligatoire
    ErrorBody
    Oui
    Tous les codes d'erreur
  • 500Internal server errorinternal_error
    • internal_errorUne erreur s'est produite de notre côté.
    NomTypeObligatoireDescription
    errorErrorBodyobligatoire
    ErrorBody
    Oui
    Tous les codes d'erreur
  • 503Service unavailableapi_disabled
    • api_disabledL'API est temporairement désactivée (maintenance) ou désactivée pour l'organisation.
    NomTypeObligatoireDescription
    errorErrorBodyobligatoire
    ErrorBody
    Oui
    Tous les codes d'erreur