Il y a un bug dans l’API Discourse lors de l’exécution de requêtes Data Explorer contenant des paramètres (les deux requêtes ci-dessous fonctionnent comme prévu lorsqu’elles sont exécutées depuis le navigateur).
En suivant les instructions de Run Data Explorer queries with the Discourse API et en utilisant
-F 'params={\"group_id\":\"64\"}'
pour exécuter cette requête (qui a un paramètre sans valeur par défaut définie)
-- [params]
-- int :group_id
select id, name from groups
where id = :group_id
entraîne une erreur : {\"success\":false,\"errors\":[\"DataExplorer::ValidationError: Missing parameter group_id of type int\"]}
Lorsqu’une requête a un paramètre avec sa valeur par défaut définie, l’appel API réussit, mais le résultat est le même quelle que soit la valeur fournie via -F 'params=
-- [params]
-- int :group_id = 2
select id, name from groups
where id = :group_id
-F 'params={\"group_id\":\"64\"}'
et il renvoie toujours le résultat pour la valeur par défaut du paramètre : {\"success\":true,\"errors\":[],\"duration\":0.2,\"result_count\":1,\"params\":{},\"columns\":[\"id\",\"name\"],\"default_limit\":1000,\"relations\":{},\"colrender\":{},\"rows\":[[2,\"moderators\"]]}