Estou usando a API do Discourse para extrair posts de um fórum. Preciso de ajuda para entender o significado dos campos retornados pela API. Por exemplo, o campo post_type em cada post é um número. Quais são os valores válidos e o que eles significam? Da mesma forma, o id em actions_summary é um número. Existem outros campos, como reads, score, etc., sobre os quais não tenho clareza. Alguma indicação de onde posso obter essas informações? Obrigado!
Se você tiver o plugin Data Explorer instalado em seu site, poderá obter detalhes sobre os códigos numéricos usados passando o mouse sobre as entradas:
Por exemplo, passar o mouse sobre o campo posts post_type mostra os seguintes valores:
- regular: 1
- ação de moderador: 2
- ação pequena: 3
- sussurro: 4
Além do Data Explorer, o único local que conheço para encontrar essas informações é no código do Discourse. Por exemplo, para encontrar o significado de cada action_type da tabela user_actions, digite UserAction.types no console do Rails. Isso retorna os seguintes valores:
{: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}
Obrigado, @simon! Essa é uma maneira interessante de obter essas informações. Fiz uma pesquisa com base nas suas sugestões e encontrei este trecho de código para user_actions, mas não consegui encontrar algo semelhante para post_type, apesar de uma busca considerável. Eu esperava que todos os campos retornados pela API estivessem documentados em algum lugar, pelo menos para os campos importantes que carregam semântica significativa.
Isso é compreensível. Há um código semelhante, no entanto. Ele está aqui: discourse/app/models/post.rb at main · discourse/discourse · GitHub. A estrutura do banco de dados do Discourse é muito consistente. Espero que isso ajude a compensar a falta de documentação.
Não tenho certeza de que cada campo retornado pela API será documentado, mas documentar os vários locais onde códigos numéricos são retornados parece importante. Exemplos disso são:
Post.typesUserAction.typesNotification.typesNotificationLevels.allUserOption.email_level_types
Se formos em frente com isso, não tenho certeza de qual seria o melhor local para a documentação. Possivelmente em https://docs.discourse.org/, mas é possível que haja problemas técnicos ao fazer isso.
Obrigado, @simon! Sim, listar os nomes em inglês e as descrições de uma linha para os códigos numéricos seria muito útil. Existe algum lugar onde eu possa fazer um pedido para isso?
Concordo que esses campos precisam ser documentados. Vou atribuir este tópico a mim mesmo e garantir que seja feito.
