# Comment créer une requête d'explorateur de données avec les API ?

**URL:** https://meta.discourse.org/t/how-to-create-a-data-explorer-query-with-the-apis/284776
**Category:** Development
**Tags:** data-explorer, rest-api
**Created:** [Novembre 8, 2023, 4:48 UTC](https://meta.discourse.org/t/how-to-create-a-data-explorer-query-with-the-apis/284776 "2023-11-08T04:48:44Z")
**Posts on this page:** 7
**Page:** 1

<div class="post-metadata">

### Author: ![Tanay\_Suthar](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tanay_suthar/32/332268_2.png) [@Tanay\_Suthar](https://meta.discourse.org/u/Tanay_Suthar)
#### Post date: [Novembre 8, 2023, 4:48 UTC](https://meta.discourse.org/t/how-to-create-a-data-explorer-query-with-the-apis/284776/1 "2023-11-08T04:48:44Z")

</div>

Je suis en train de créer une requête avec l’explorateur de données avec les API. J’ai du mal à trouver l’appel d’API réel pour créer une requête.

Il existe un point de terminaison pour exécuter la requête **/admin/plugins/explorer/queries/\<\_query\_id\>** /run ; cependant, je ne vois pas comment la créer.

Quelqu’un peut-il m’aider ?

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [Novembre 8, 2023, 5:09 UTC](https://meta.discourse.org/t/how-to-create-a-data-explorer-query-with-the-apis/284776/2 "2023-11-08T05:09:15Z")

</div>

Avez-vous essayé d’[ingénierie inverse de l’API Discourse](https://meta.discourse.org/t/reverse-engineer-the-discourse-api/20576) ?

---

<div class="post-metadata">

### Author: ![Tanay\_Suthar](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tanay_suthar/32/332268_2.png) [@Tanay\_Suthar](https://meta.discourse.org/u/Tanay_Suthar)
#### Post date: [Novembre 8, 2023, 12:06 UTC](https://meta.discourse.org/t/how-to-create-a-data-explorer-query-with-the-apis/284776/3 "2023-11-08T12:06:14Z")

</div>

Merci d’avoir partagé l’article [Reverse engineer the discourse API](https://meta.discourse.org/t/reverse-engineer-the-discourse-api/20576) ;

Je l’ai parcouru et j’ai réalisé que deux appels distincts devaient être effectués.

Le premier devrait être l’appel POST à **/admin/plugins/explorer/queries** , qui générera l’ID associé à la requête.

Deuxièmement, l’appel PUT doit être effectué sur **/admin/plugins/explorer/queries/id** pour modifier la requête par défaut.

Mais je me demande s’il existe une disposition pour créer la requête (en effectuant un seul appel API) directement sans connaître l’ID.

Faites-moi savoir si c’est possible.

---

<div class="post-metadata">

### Author: ![Arkshine](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/arkshine/32/298682_2.png) [@Arkshine](https://meta.discourse.org/u/Arkshine)
#### Post date: [Novembre 8, 2023, 6:44 UTC](https://meta.discourse.org/t/how-to-create-a-data-explorer-query-with-the-apis/284776/5 "2023-11-08T18:44:33Z")

</div>

Vous devriez pouvoir faire une requête POST avec les mêmes valeurs de charge utile que PUT.  
Avez-vous essayé ?

---

<div class="post-metadata">

### Author: ![Tanay\_Suthar](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tanay_suthar/32/332268_2.png) [@Tanay\_Suthar](https://meta.discourse.org/u/Tanay_Suthar)
#### Post date: [Novembre 9, 2023, 10:25 UTC](https://meta.discourse.org/t/how-to-create-a-data-explorer-query-with-the-apis/284776/6 "2023-11-09T10:25:57Z")

</div>

Voici la requête que j’ai essayée en effectuant un appel API POST.

> curl -X POST [https://api-discourse-XXXXXXXXXXXXX/admin/plugins/explorer/queries](https://api-discourse-XXXXXXXXXXXXX/admin/plugins/explorer/queries)   
> -H “Content-Type: multipart/form-data;”   
> -H “Api-Key: 46811cc32XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX”   
> -H “Api-Username: abcdefg2”   
> -F ‘query={“name”:“test1234”, “sql”:“SELECT \* FROM topics”}’

Cependant, je reçois une erreur comme ci-dessous.

> {“status”:500,“error”:“Internal Server Error”}%

Je ne suis pas sûr de ce qui pourrait être erroné.

---

<div class="post-metadata">

### Author: ![Arkshine](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/arkshine/32/298682_2.png) [@Arkshine](https://meta.discourse.org/u/Arkshine)
#### Post date: [Novembre 9, 2023, 3:27 UTC](https://meta.discourse.org/t/how-to-create-a-data-explorer-query-with-the-apis/284776/7 "2023-11-09T15:27:33Z")

</div>

Je pense que la bonne façon est la suivante :

```plaintext
-F 'query[name]=test1234'
-F 'query[sql]=SELECT * FROM topics'

```

---

<div class="post-metadata">

### Author: ![Tanay\_Suthar](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tanay_suthar/32/332268_2.png) [@Tanay\_Suthar](https://meta.discourse.org/u/Tanay_Suthar)
#### Post date: [Novembre 9, 2023, 3:42 UTC](https://meta.discourse.org/t/how-to-create-a-data-explorer-query-with-the-apis/284776/8 "2023-11-09T15:42:19Z")

</div>

Merci @Arkshine pour ton aide.

Ça a marché..!!
