API 키는 Admin / API 페이지에서 생성됩니다. Admin-Advanced-API Keys로 이동하세요:
“Add API key” 버튼을 클릭하면 키를 설정할 페이지로 이동합니다:
모든 API 키에는 설명, 사용자 수준, 범위가 필요합니다.
설명
설명은 원하는 내용을 자유롭게 입력할 수 있습니다.
사용자 수준
사용자 수준 드롭다운에서 “All Users” 또는 "Single User"를 선택할 수 있습니다. "All Users"를 선택하면 해당 키는 모든 사용자를 대신해 사용할 수 있습니다. 이는 요청 헤더의 Api-Username에 요청을 대신 수행하는 사용자를 설정함으로써 이루어집니다. (요청 헤더 설정 방법에 대한 자세한 내용은 API 문서의 인증 예제를 참조하세요.)
"Single User"를 선택하면 양식에 사용자 필드가 나타납니다. API 키를 생성하려는 사용자의 사용자 이름을 해당 필드에 입력하세요:
범위
범위 드롭다운에서 “Global”, “Read-only”, 또는 “Granular” 중 하나를 범위로 선택할 수 있습니다.
범위로 "Global"을 선택하면, 해당 키가 생성된 사용자 또는 요청의 Api-Username으로 입력된 사용자가 권한을 가진 _모든 요청_에 사용할 수 있습니다.
범위로 "Read-only"를 선택하면, API 키는 GET 요청만 수행할 수 있습니다. 해당 키는 키가 생성된 사용자 또는 요청의 Api-Username으로 입력된 사용자가 권한을 가진 모든 GET 요청을 수행할 수 있습니다.
범위로 "Granular"를 선택하면, 사용 가능한 범위를 선택할 수 있는 양식이 열립니다. 범위의 물음표 아이콘에 마우스를 올리면 해당 범위에 대한 설명을 볼 수 있습니다. 범위의 링크 아이콘을 클릭하면 해당 범위가 지원하는 경로 및 요청 메서드 목록을 볼 수 있습니다. 많은 범위에서 사이트 내 경로 접근을 제한하기 위해 추가 매개변수를 입력할 수 있다는 점에 유의하세요:
API 키를 설정하고 저장 버튼을 클릭하면 전체 API 키가 한 번만 표시됩니다. 다시 전체 키를 볼 수 있는 방법이 없으므로 키를 복사해 두시기 바랍니다.
Discourse의 API 범위는 API 키가 수행할 수 있는 작업을 해당 사용자의 기존 권한에 비해 제한하는 것만 가능합니다. 연관된 사용자가 이미 가지고 있는 것 이상의 추가 권한을 부여할 수는 없습니다.
180일 동안 사용되지 않은 API 키는 자동으로 폐기됩니다. 이는
revoke_api_keys_unused_days사이트 설정으로 제어됩니다.
추가 읽기
Discourse가 API 키에 적용하는 속도 제한에 대한 자세한 내용: Global rate limits and throttling in Discourse.
Discourse API 문서: https://docs.discourse.org/.
API 요청 구조를 파악하는 데 도움이 되는 가이드: How to reverse engineer the Discourse API.





