Discourse API가 반환하는 필드 설명

저는 Discourse API를 사용하여 포럼에서 게시물을 추출하고 있습니다. API가 반환하는 필드들의 의미를 이해하는 데 도움이 필요합니다. 예를 들어, 각 post의 post_type 필드는 숫자입니다. 유효한 값은 무엇이며, 각각 어떤 의미를 갖나요? 마찬가지로, actions_summary 아래에 있는 id도 숫자입니다. reads, score 등 제가 명확히 이해하지 못하는 다른 필드들도 있습니다. 이 정보를 얻을 수 있는 곳이 어디인지 조언을 주실 수 있나요? 감사합니다!

사이트에 Data Explorer 플러그인이 설치되어 있다면, 항목 위에 마우스를 올려서 사용되는 숫자 코드의 세부 정보를 확인할 수 있습니다:

예를 들어, posts 테이블의 post_type 필드 위에 마우스를 올리면 다음과 같은 값이 표시됩니다:

  • regular: 1
  • moderator action: 2
  • small action: 3
  • whisper: 4

Data Explorer 외에 이 정보를 찾을 수 있는 유일한 곳은 Discourse 코드입니다. 예를 들어, user_actions 테이블의 각 action_type의 의미를 찾으려면 Rails 콘솔에 UserAction.types를 입력하세요. 그러면 다음과 같은 값이 반환됩니다:

{: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}

@simon 감사합니다! 이렇게 정보를 가져오는 방법도 흥미롭네요. 조언을 바탕으로 조사해 보니 user_actions에 대해 이 코드를 찾았지만, post_type에 대해서는 상당한 검색에도 불구하고 비슷한 것을 찾지 못했습니다. API가 반환하는 모든 필드가 어딘가에 문서화되어 있기를 바랐는데, 특히 중요한 의미를 가진 필드들은 최소한 문서화되어 있기를 기대했습니다.

이해할 수 있는 부분입니다. 다만 유사한 코드는 존재합니다. 여기 있습니다: discourse/app/models/post.rb at main · discourse/discourse · GitHub. Discourse 데이터베이스의 구조는 매우 일관성이 있습니다. 문서가 부족하다는 점을 상쇄하는 데 도움이 되길 바랍니다.

API가 반환하는 모든 필드가 문서화될지는 확신할 수 없지만, 숫자 코드가 반환되는 여러 위치를 문서화하는 것은 중요해 보입니다. 예를 들면 다음과 같습니다:

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

이 작업을 진행한다면, 문서화의 가장 적합한 위치가 어디일지 확신할 수 없습니다. https://docs.discourse.org/에 올리는 것이 가능해 보이지만, 그렇게 하는 데 기술적인 문제가 발생할 수도 있습니다.

@simon님 감사합니다! 숫자 코드에 대한 영어 이름/한 줄 설명을 나열하는 것이 매우 유용할 것 같습니다. 이 요청을 할 수 있는 곳이 있을까요?

이 필드들이 문서화되어야 한다는 데 동의합니다. 이 주제를 제 담당으로 지정하고 완료될 수 있도록 하겠습니다.