Requêtes par lot

custombatch est une méthode courante qui vous permet de regrouper plusieurs appels d'API, ou "entrées", dans une seule requête HTTP. Chaque entrée ne fait référence qu'à un seul appel de méthode.

Nous vous recommandons d'utiliser cette méthode si :

  • vous venez de commencer à utiliser l'API et que vous avez de nombreuses données produit à importer ;
  • vous devez synchroniser les données locales avec le serveur en envoyant de nombreuses mises à jour et suppressions.

Envoyer des requêtes par lot

Envoyer des requêtes par lot revient à envoyer plusieurs appels d'API parallèlement. Notez qu'il n'y a aucune garantie que les entrées soient exécutées dans l'ordre défini dans la requête. Nous vous recommandons de ne pas émettre d'appels interdépendants dans une seule requête par lot (par exemple, créer et mettre à jour une même livraison).

De même, il est possible que vous receviez les réponses à vos requêtes par lot dans un ordre différent de celui dans lequel vous avez envoyé les entrées. Le BatchId peut être utilisé pour corréler les requêtes et les réponses, car les réponses peuvent être envoyées dans le désordre.

Vous pouvez envoyer des requêtes groupées dans l'API en appelant la méthode custombatch appropriée :

Ressources et méthodes custombatch correspondantes
Accounts accounts.custombatch
Accountstatuses accountstatuses.custombatch
Accounttax accounttax.custombatch
Datafeeds datafeeds.custombatch
Datafeedstatuses datafeedstatuses.custombatch
Localinventory localinventory.custombatch
Liasettings liasettings.custombatch
Pos pos.custombatch
Products products.custombatch
Productstatuses productstatuses.custombatch
Shippingsettings shippingsettings.custombatch

Limites

Pour éviter les erreurs lors de l'importation de lots volumineux, nous vous recommandons de limiter la taille des requêtes custombatch à 1 000 entrées maximum. Les valeurs maximales suivantes s'appliquent aux requêtes custombatch :

  • 10 000 entrées par requête custombatch
  • Taille de transfert de 32 Mo

Les appels qui dépassent les valeurs maximales génèrent les erreurs request_too_large suivantes :

  • "Too many requests in a batch."
  • "Request payload size exceeds the limit: %d bytes."