Data Explorer クエリを API で作成する
このハウツーガイドでは、Discourse API を使用して Data Explorer クエリを作成する方法を説明します。
必要なユーザーレベル: 管理者
前提条件
始める前に、以下のものがあることを確認してください。
- サイトに Data Explorer プラグインがインストールされ、有効になっていること
- 管理者ユーザーに関連付けられたグローバルスコープを持つ API キー(API キーを作成して設定するを参照)
クエリの作成にはグローバル API キーが必要です。きめ細かな「クエリの実行」スコープでは、既存のクエリを実行することのみが可能で、新しいクエリを作成することはできません。
クエリの作成
新しい Data Explorer クエリを作成するには、/admin/plugins/discourse-data-explorer/queries に POST リクエストを送信します。
パラメータ
| パラメータ | 必須 | 説明 |
|---|---|---|
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: \u003capi-key\u003e" \
-H "Api-Username: \u003cusername\u003e" \
-F 'query[name]=User count query' \
-F 'query[sql]=SELECT COUNT(*) FROM users'
レスポンスの例
{
"query": {
"id": 49,
"name": "User count query",
"description": null,
"username": "\u003cusername\u003e",
"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 クエリを実行するを参照してください。