You are not logged in.
Pages: 1
Bonjour,
Je tente de vouloir récupérer tous les ordinateurs d'une entité, mais je n'arrive pas à trouver la façon de filtrer par entité.
Avez-vous une idée de la requête à formuler ?
Offline
un truc comme ça en remplaçant entityID par l'identifiant
criteria[0][link]=AND&criteria[0][field]=80&criteria[0][searchtype]=equals&criteria[0][value]=$entity_id
Trouver la panne avant de réparer...
GLPI10.0.16 (ubuntu 22.04 PHP8.1 Mariadb10.6 ) plugins : comportements 2.7.3 reports 1.16.0 formcreator 2.13.9, datainjection 2.13.5 fields 1.21.9
Offline
Merci LaDenrée,
On est d'accord que je pars de cette adresse https://monserveurglpi/apirest.php/Computer et qu'en paramètre je mets les critères ?
Offline
Ah non je viens de regarder dans la doc de l'api !
https://monserveurglpi/apirest.php/seach/computer et les critères
C'est bien cela ?
Offline
oui je viens de vérifier sur postman cela fonctionne, encore merci
Offline
oui un truc comme ça :
https://monserveurglpi/apirest.php/search/Computer/?is_deleted=0&criteria[0][link]=AND&criteria[0][field]=80&criteria[0][searchtype]=equals&criteria[0][value]=3
Trouver la panne avant de réparer...
GLPI10.0.16 (ubuntu 22.04 PHP8.1 Mariadb10.6 ) plugins : comportements 2.7.3 reports 1.16.0 formcreator 2.13.9, datainjection 2.13.5 fields 1.21.9
Offline
attention si vous avez beaucoup d'ordinateurs il faudra fractionner (ou changer le range)
Trouver la panne avant de réparer...
GLPI10.0.16 (ubuntu 22.04 PHP8.1 Mariadb10.6 ) plugins : comportements 2.7.3 reports 1.16.0 formcreator 2.13.9, datainjection 2.13.5 fields 1.21.9
Offline
Qu'est-ce que vous appelez beaucoup d'ordinateurs ?
Offline
autre question, d'où provient cette valeur 80 dans criteria[0][field]=80
Offline
Qu'est-ce que vous appelez beaucoup d'ordinateurs ?
il est probable que par défaut la réponse ressemble à ça :
{"totalcount":776,"count":30,.....
sur les 776 ordinateurs seuls les 30 premiers sont dans le tableau
vous pouvez ajouter &range=0-1000 pour avoir plus de PC mais ça commence à faire beaucoup;
perso je fais une boucle par 100 tant que je n'ai pas atteint le nombre total :
$count=0;
$total_count=1;
While ($count <$total_count){
$url="...apirest.php/search/Computer/...some criteria....&range=".$count*100."-".$count*100+99;
////je travaille sur les pc du lot
$total_count=$obj['total_count']; //je récupère le nombre total dans le resultat de la requête
$count++;
}
Trouver la panne avant de réparer...
GLPI10.0.16 (ubuntu 22.04 PHP8.1 Mariadb10.6 ) plugins : comportements 2.7.3 reports 1.16.0 formcreator 2.13.9, datainjection 2.13.5 fields 1.21.9
Offline
autre question, d'où provient cette valeur 80 dans criteria[0][field]=80
si vous faites une requête :
https://monserveur/glpi/apirest.php/listSearchOptions/Ticket/
vous obtenez la liste de tous les codes pour les recherches
,"80":
{"name":"Entité",
"table":"glpi_entities",
"field":"completename",
"datatype":"dropdown",
"nosearch":false,
"nodisplay":false,
"available_searchtypes":["contains","notcontains","equals","notequals","under","notunder"],
"uid":"Ticket.Entity.completename"},
Trouver la panne avant de réparer...
GLPI10.0.16 (ubuntu 22.04 PHP8.1 Mariadb10.6 ) plugins : comportements 2.7.3 reports 1.16.0 formcreator 2.13.9, datainjection 2.13.5 fields 1.21.9
Offline
super merci pour vos réponses précises
Offline
Pages: 1