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.