Nessuna descrizione in una categoria via API

Ciao,

Sto ancora importando dati da una vecchia app nel nostro nuovo Discourse.
Non riesco a creare una categoria con la sua descrizione con la seguente chiamata API:

curl -X POST "https://site-discourse/categories.json" \
-H "Api-Key: api-key" \
-H "Api-Username: api-username" \
-d "name=categorie test" \
-d "description=Description De La Categorie"

La categoria viene creata ma non c’è descrizione.

Ricevo la seguente risposta:

{"category":{"id":21,"name":"categorie test",[...],"slug":"categorie-test", [...] **,"description":null**,"description_text":null,"description_excerpt":null,"topic_url":"/t/a-propos-de-la-categorie-categorie-test/12286", [...]}

Grazie per il tuo aiuto.

Ciao :blob_wave:

La descrizione di una categoria è il contenuto dell’argomento “Informazioni” creato automaticamente. Il testo predefinito è probabilmente considerato “null” finché non viene modificato.

Penso che non ci sia un parametro “descrizione” disponibile nella richiesta per creare una categoria e che sia necessario effettuare un’altra richiesta API per aggiornare il primo post dell’argomento “Informazioni”.

A seconda del processo di importazione, potresti voler utilizzare uno script di importazione appropriato invece di utilizzare l’API. Vedi Migration

1 Mi Piace

Grazie per la tua risposta

Ho creato questo script che ti permette di creare una categoria e poi modificarne la descrizione:

curl -X POST "https://site-discourse/categories.json" \
 -H "Api-Key: api-key" \
 -H "Api-Username: api-username" \
 -d "name=Catégorie 1"

sleep 2

latest_posts_response=$(curl -X GET "https://site-discourse/posts.json" \
 -H "Content-Type: application/json" \
 -H "Api-Key: api-key" \
 -H "Api-Username: api-username")

post_id=$(echo $latest_posts_response | jq  '.latest_posts[0] .id')

curl -X PUT "https://site-discourse/posts/$post_id.json" \
 -H "Content-Type: application/json" \
 -H "Api-Key: api-key" \
 -H "Api-Username: api-username" \
 -d '{
        "post": {
        "raw": "Descrizione della categoria 1"
      }
     }'

Alla fine ha funzionato?

Sì, grazie, funziona!

1 Mi Piace