Discourse API には、(以下の両方のクエリはブラウザから実行すると期待どおりに動作します) パラメータを含む Data Explorer クエリを実行する際にバグがあります。
Run Data Explorer queries with the Discourse API の指示に従い、
-F 'params={\"group_id\":\"64\"}'
を使用してこのクエリを実行します (デフォルト値が設定されていないパラメータがあります)。
-- [params]
-- int :group_id
select id, name from groups
where id = :group_id
すると、エラー {\"success\":false,\"errors\":[\"DataExplorer::ValidationError: Missing parameter group_id of type int\"]} が発生します。
クエリにデフォルト値が設定されたパラメータがある場合、API 呼び出しは成功しますが、-F 'params= を介して提供された値に関係なく、結果は 同じ です。
-- [params]
-- int :group_id = 2
select id, name from groups
where id = :group_id
-F 'params={\"group_id\":\"64\"}'
そして、常にパラメータの デフォルト値 の結果を返します: {\"success\":true,\"errors\":[],\"duration\":0.2,\"result_count\":1,\"params\":{},\"columns\":[\"id\",\"name\"],\"default_limit\":1000,\"relations\":{},\"colrender\":{},\"rows\":[[2,\"moderators\"]]}