Data Explorer クエリを API で作成する
このハウツーガイドでは、Discourse API を使用して Data Explorer クエリを作成する方法について説明します。
必要なユーザーレベル: 管理者
前提条件
始める前に、次のものが揃っていることを確認してください。
- サイトに Data Explorer プラグインがインストールされ、有効になっていること
- 管理者ユーザーに関連付けられたグローバルスコープの API キー(API キーを作成して設定するを参照)
クエリの作成にはグローバル API キーが必要です。限定的な「クエリの実行」スコープでは、既存のクエリを実行することはできますが、新しいクエリを作成することはできません。
クエリの作成
新しい Data Explorer クエリを作成するには、/admin/plugins/explorer/queries に POST リクエストを送信します。
パラメータ
| パラメータ | 必須 | 説明 |
|---|---|---|
query[name] |
はい | クエリの名前 |
query[sql] |
はい | 実行する SQL ステートメント |
query[description] |
いいえ | クエリが何をするかの説明 |
query[group_ids] |
いいえ | このクエリにアクセスできるグループ ID の配列 |
リクエストの例
curl -X POST "https://your-site.com/admin/plugins/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,
"sql": "SELECT COUNT(*) FROM users",
"param_info": [],
"created_at": "2025-03-13T18:41:44.226Z",
"hidden": false
}
}
レスポンス内の id 値に注意してください。クエリを実行するために必要になります。API を介したクエリの実行の詳細については、Discourse API で Data Explorer クエリを実行するを参照してください。