Ottima domanda, concordo che possa essere un po’ confuso. Se vuoi passare più post_ids, dovresti inserire più campi dei dati del modulo per post_ids[] come in questo esempio con curl:
è ancora questo il metodo consigliato per inviare un array all’API? Sto cercando di creare un webhook e non riesco a inviare il parametro array web_hook_event_type_ids.
Ho provato con CURL (come multipart/form-data)
curl -X POST "https://MYSITE.com/admin/api/web_hooks" \
-H "Api-Key: KEY" \
-H "Api-Username: USER" \
-F "payload_url=https://MYOTHERSITE.com" \
-F "content_type=1" \
-F "wildcard_web_hook=false" \
-F "verify_certificate=true" \
-F "active=true" \
-F "web_hook_event_type_ids[]=2"
# Ottengo
{"errors":["param is missing or the value is empty: web_hook"]}%
Sembra che questo intero endpoint richieda i valori in un parametro web_hook nidificato:
Non sono molto favorevole a questo formato nidificato e ci sono diversi endpoint come questo nella mia lista futura da correggere. Puoi effettuare una chiamata API ad esso utilizzando form-data in questo modo:
Ah, grazie mille. Non era quello che diceva l’API di Discourse, quindi stavo andando in tilt.
Inoltre, ho notato che impostare web_hook_event_type_ids con almeno un elemento è obbligatorio, anche se alla fine uso wildcard_web_hook=true. Anche questo mi ha fatto grattar la testa per un po’.