Descrizione dei campi restituiti dall'API di Discourse

Sto utilizzando l’API di Discourse per estrarre i post da un forum. Ho bisogno di aiuto per comprendere il significato dei campi restituiti dall’API. Ad esempio, il campo post_type in ogni post è un numero. Quali sono i valori validi e cosa significano? Allo stesso modo, l’id sotto actions_summary è un numero. Ci sono altri campi come reads, score, ecc. di cui non sono sicuro. Qualsiasi indicazione su dove posso trovare queste informazioni. Grazie!

1 Mi Piace

Se sul tuo sito è installato il plugin Data Explorer, puoi ottenere dettagli sui codici numerici passando il mouse sulle voci:

Ad esempio, passando il mouse sul campo post_type di posts vengono mostrati i seguenti valori:

  • regolare: 1
  • azione del moderatore: 2
  • piccola azione: 3
  • sussurro: 4

Oltre a Data Explorer, l’unico posto che conosco dove trovare queste informazioni è nel codice di Discourse. Ad esempio, per scoprire il significato di ogni action_type dalla tabella user_actions, inserisci UserAction.types nella console di Rails. Questo restituisce i seguenti valori:

{:like=>1, :was_liked=>2, :bookmark=>3, :new_topic=>4, :reply=>5, :response=>6, :mention=>7, :quote=>9, :edit=>11, :new_private_message=>12, :got_private_message=>13, :solved=>15, :assigned=>16}

3 Mi Piace

Grazie @simon! Questo è un modo interessante per ottenere queste informazioni. Ho fatto qualche ricerca basandomi sui tuoi suggerimenti e ho trovato questo frammento di codice per user_actions, ma non sono riuscito a trovare qualcosa di simile per post_type dopo un’ampia ricerca. Speravo che ogni campo restituito dall’API fosse documentato da qualche parte, almeno per i campi importanti che hanno un significato semantico rilevante.

È comprensibile. Esiste comunque un codice simile. Lo trovi qui: discourse/app/models/post.rb at main · discourse/discourse · GitHub. La struttura del database di Discourse è molto coerente. Spero che questo possa compensare la mancanza di documentazione.

Non sono sicuro che ogni campo restituito dall’API verrà documentato, ma sembra importante documentare i vari punti in cui vengono restituiti codici numerici. Esempi di ciò sono:

  • Post.types
  • UserAction.types
  • Notification.types
  • NotificationLevels.all
  • UserOption.email_level_types

Se dovessimo procedere con questo, non sono sicuro di quale sia il posto migliore per la documentazione. Forse su https://docs.discourse.org/, ma è possibile che ci siano problemi tecnici nel farlo.

3 Mi Piace

Grazie @simon! Sì, elencare i nomi in inglese o le descrizioni in una riga per i codici numerici sarebbe molto utile. C’è un posto dove posso fare una richiesta per questo?

1 Mi Piace

Concordo sul fatto che questi campi debbano essere documentati. Assegnerò questo argomento a me stesso e mi assicurerò che venga svolto.

3 Mi Piace