{{localhost}}/posts.json에 접근하려면 어떤 scope가 필요한가요?

안녕하세요,

write, read, read lists 범위로 관리자 발급 API 키를 생성했습니다. 하지만 해당 키를 헤더 Api-Key에 추가하여 {{localhost}}/posts.json 엔드포인트에 액세스하려고 하면 다음과 같은 오류가 발생합니다:

    "errors": [
        "You are not permitted to view the requested resource. The API username or key is invalid."
    ],
    "error_type": "invalid_access"
}

한편, 글로벌 키를 생성하면 엔드포인트에 액세스할 수 있습니다. {{localhost}}/posts.json을 읽기 위한 올바른(최소) 범위는 무엇인가요?

아직 테스트해 보지는 않았지만, 현재 보고 계신 것이 예상되는 동작일 것이라고 생각합니다. API 키 스코프 옆에 표시되는 앵커 버튼을 클릭하면 해당 스코프가 접근할 수 있는 경로들을 확인할 수 있습니다. read 스코프는 /t로 시작하는 라우트에のみ 적용되는 것을 볼 수 있습니다. read lists 스코프는 Discourse 토픽 목록에 대한 접근 권한을 제공합니다. /posts.json에 대한 접근을 특별히 허용하는 스코프는 없으므로, 해당 경로를 사용하려면 전역 키를 사용해야 할 것 같습니다.

read 스코프에 /posts.json을 추가하는 것이 적절한지 고민이 됩니다.

시몬, 안녕하세요! 답변과 설명 감사합니다. 제 사용 사례에서는 /posts.json에서 게시글을 읽어야 하지만, 동시에 최대한 간섭을 줄이고 읽기 전용 접근 권한만 요청하고 싶습니다. 어떤 우회 방법이 있을까요?

공개 게시물을 조회하는 것이라면, /posts.json으로 인증되지 않은 API 요청을 보내는 것이 가능할 수 있습니다. 하지만 사이트가 비공개이거나 게시물이 보호된 카테고리에 있는 경우, 현재 게시물을 가져올 수 있는 유일한 방법은 전역 API 키를 사용하는 것이라고 생각합니다.

새로운 범위로 만들거나 read에 추가하는 쪽으로 #pr-welcome을 붙여야 할 것 같습니다.