Les GID de champs personnalisés Asana sont de longues chaînes numériques. Quand tu les passes comme clés imbriquées avec la syntaxe bracket d’HTTPie, HTTPie voit une clé numérique et suppose que tu construis un tableau, puis essaie d’allouer de la mémoire jusqu’à cet index. Avec un GID à 16 chiffres, c’est suffisant pour faire planter le processus en OOM.
Ça brise :
https --session pat PUT https://app.asana.com/api/1.0/tasks/1208765432100001 \
data[custom_fields][1205432109876543]="1205432109876544"
HTTPie lit 1205432109876543 comme un index de tableau et tente de construire un tableau
sparse de cette taille. Il n’arrive même jamais à faire la requête.
La solution est de contourner complètement la syntaxe bracket et de passer les champs
personnalisés comme un objet JSON brut avec l’opérateur := d’HTTPie :
https --session pat PUT https://app.asana.com/api/1.0/tasks/1208765432100001 \
data[custom_fields]:='{"1205432109876543":"1205432109876544"}'
:= indique à HTTPie que la valeur est déjà du JSON: pas de parsing, pas d’inférence de
tableau, pas d’OOM. Fonctionne pour n’importe quelle structure imbriquée où les clés sont
des chaînes numériques plutôt que des entiers.