API를 사용하여 Data Explorer 쿼리 만들기

API를 사용하여 Data Explorer 쿼리 생성

:bookmark: 이 사용 가이드는 Discourse API를 사용하여 Data Explorer 쿼리를 생성하는 방법을 설명합니다.

:person_raising_hand: 필요한 사용자 권한: 관리자

사전 요구 사항

시작하기 전에 다음 사항이 준비되어 있는지 확인하세요:

  • 사이트에 Data Explorer 플러그인이 설치되어 있고 활성화되어 있어야 합니다
  • Global 범위를 가진 API 키가 관리자 사용자와 연결되어 있어야 합니다 (자세한 내용은 API 키 생성 및 구성 참조)

:information_source: 쿼리 생성에는 글로벌 API 키가 필요합니다. 세분화된 “run queries” 범위는 기존 쿼리를 실행하는 것만 허용하며, 새 쿼리를 생성하는 것은 허용하지 않습니다.

쿼리 생성

새로운 Data Explorer 쿼리를 생성하려면 /admin/plugins/discourse-data-explorer/queriesPOST 요청을 보내야 합니다.

매개변수

매개변수 필수 설명
query[name] 쿼리의 이름
query[sql] 실행할 SQL 문구
query[description] 아니오 쿼리의 기능에 대한 설명
query[group_ids] 아니오 이 쿼리에 접근할 수 있는 그룹 ID 배열

요청 예시

curl -X POST "https://your-site.com/admin/plugins/discourse-data-explorer/queries" \
  -H "Content-Type: multipart/form-data;" \
  -H "Api-Key: <api-key>" \
  -H "Api-Username: <username>" \
  -F 'query[name]=User count query' \
  -F 'query[sql]=SELECT COUNT(*) FROM users'

응답 예시

{
  "query": {
    "id": 49,
    "name": "User count query",
    "description": null,
    "username": "<username>",
    "group_ids": [],
    "last_run_at": "2025-03-13T18:41:44.226Z",
    "user_id": 1,
    "is_default": false,
    "sql": "SELECT COUNT(*) FROM users",
    "param_info": [],
    "created_at": "2025-03-13T18:41:44.226Z",
    "hidden": false
  }
}

응답의 id 값을 주의 깊게 확인하세요. 이 값을 사용하여 쿼리를 실행할 수 있습니다. API를 통해 쿼리를 실행하는 방법에 대한 자세한 내용은 Discourse API를 사용하여 Data Explorer 쿼리 실행을 참조하세요.

6개의 좋아요

API 호출 경로를 변경해서 제 쿼리를 망쳤잖아요!?! 원래 /admin/plugins/explorer/queries/3/run이었거든요. 갑자기 GitHub 액션이 실패하기 시작했어요. 이건 좀 불친절하네요.

3개의 좋아요

그 경로 변경과 읽기 전용 API 키 대신 글로벌 API 키를 요구하도록 변경된 사항 때문에 우리의 툴링이 깨졌습니다. 이전에는 읽기 전용 API 키만으로도 충분했었습니다.

그건 짜증나는 일이었죠.

그건 버그인 것 같습니다.