You are not logged in.

Announcement

 Téléchargez la dernière version stable de GLPI      -     Et vous, que pouvez vous faire pour le projet GLPI ? :  Contribuer
 Download last stable version of GLPI                      -     What can you do for GLPI ? :  Contribute

#1 2019-04-19 11:28:01

ibrahim
Member
Registered: 2019-02-21
Posts: 17

[resolu]Recupere tous les techininciens API REST

Bonjour à tous
comment je peux recuperer tous  les techniceins et toutes  les categories  pour pouvoir créer une liste déroulant permet l'admin de choisir le technicein pour l'attribuerle ticket et chosir la categories de ticket .

merci par avance

Offline

#2 2019-04-19 14:03:21

LaDenrée
HELPER
Registered: 2012-11-19
Posts: 6,146

Re: [resolu]Recupere tous les techininciens API REST

pour les catégories il faut appeler :

…\glpi\apirest.php\itilcategory\

placez vous bien dans les bonnes entités avec les droits en récursif si besoin pour récupérer toutes les catégories.
( /changeActiveEntities/?entities_id=0&is_recursive=1)


Trouver la panne avant de réparer...
GLPI10.0.10 (ubuntu 22.04 PHP8.1  Mariadb10.6 ) plugins : comportements 2.7.2 reports 1.16.0 formcreator 2.13.8, datainjection 2.13.4 fields 1.21.6

Offline

#3 2019-04-19 14:09:58

LaDenrée
HELPER
Registered: 2012-11-19
Posts: 6,146

Re: [resolu]Recupere tous les techininciens API REST

pour les utilisateurs avec un profil technicien

$url="/glpi/apirest.php/profile/6/profile_user/";

6 est l'id du profil technicien par défaut dans GLPI.


Trouver la panne avant de réparer...
GLPI10.0.10 (ubuntu 22.04 PHP8.1  Mariadb10.6 ) plugins : comportements 2.7.2 reports 1.16.0 formcreator 2.13.8, datainjection 2.13.4 fields 1.21.6

Offline

#4 2019-04-19 15:06:40

ibrahim
Member
Registered: 2019-02-21
Posts: 17

Re: [resolu]Recupere tous les techininciens API REST

Merci de m'avoir repondu rapidement ,
coencernant les categories ca a bien marché ,mais pour les techiniciens ,ça rend des profils diffirents que techniciens ,est ce que vous pouvez m'aider à trouver ?

Last edited by ibrahim (2019-04-19 15:07:12)

Offline

#5 2019-04-19 15:12:54

ibrahim
Member
Registered: 2019-02-21
Posts: 17

Re: [resolu]Recupere tous les techininciens API REST

voici mon code

 $url=$api_url."/profile/6/profile_user/";

et le resultat :

Array
(
    [0] => Array
        (
            [id] => 4
            [users_id] => 4
            [profiles_id] => 6
            [entities_id] => 0
            [is_recursive] => 1
            [is_dynamic] => 0
            [links] => Array
                (
                    [0] => Array
                        (
                            [rel] => User
                            [href] => http://support-test.calt.local.com/apirest.php/User/4
                        )

                    [1] => Array
                        (
                            [rel] => profile
                            [href] => http://support-test.calt.local.com/apir … /profile/6
                        )

                    [2] => Array
                        (
                            [rel] => Entity
                            [href] => http://support-test.calt.local.com/apirest.php/Entity/0
                        )

                )

        )

    [1] => Array
        (
            [id] => 425 .......................



et c'est sont pas de techiniciens

Offline

#6 2019-04-19 15:15:43

LaDenrée
HELPER
Registered: 2012-11-19
Posts: 6,146

Re: [resolu]Recupere tous les techininciens API REST

dans administration>profils>[techniciens]

qu'avez vous comme url :" ….. glpi/front/profile.form.php?id=6"  ?

que trouvez vous dans l'onglet   "utilisateurs" ?

[users_id] => 4  ça correspond à un utilisateur qui a le profil 6 (sauf si vous avez créé un autre profil technicien)


Trouver la panne avant de réparer...
GLPI10.0.10 (ubuntu 22.04 PHP8.1  Mariadb10.6 ) plugins : comportements 2.7.2 reports 1.16.0 formcreator 2.13.8, datainjection 2.13.4 fields 1.21.6

Offline

#7 2019-04-19 16:33:33

ibrahim
Member
Registered: 2019-02-21
Posts: 17

Re: [resolu]Recupere tous les techininciens API REST

$url=$api_url."/profile/
[5] => Array
        (
            [id] => 6
            [name] => Technician
            [interface] => central
            [is_default] => 0
            [helpdesk_hardware] => 3
            [helpdesk_item_type] => ["Computer","Monitor","NetworkEquipment","Peripheral","Phone","Printer","Software"]
            [ticket_status] => []
            [date_mod] => 2017-06-22 10:55:32
            [comment] => 
            [problem_status] => []
            [create_ticket_on_login] => 0
            [tickettemplates_id] => 0
            [change_status] => 
            [date_creation] => 
        )

Offline

#8 2019-04-19 16:42:37

ibrahim
Member
Registered: 2019-02-21
Posts: 17

Re: [resolu]Recupere tous les techininciens API REST

mais quand j'ai mis

 /profile/6/profile_user/

ca donne

    [13] => Array
        (
            [id] => 1682
            [users_id] => 527
            [profiles_id] => 6
            [entities_id] => 0
            [is_recursive] => 0
            [is_dynamic] => 0
            [links] => Array
                (
                    [0] => Array
                        (
                            [rel] => User
                            [href] => http://support.calt.local.com/apirest.php/User/527
                        )

                    [1] => Array
                        (
                            [rel] => profile
                            [href] => http://support.calt.local.com/apirest.php/profile/6
                        )

                    [2] => Array
                        (
                            [rel] => Entity
                            [href] => http://support.calt.local.com/apirest.php/Entity/0
                        )

                )

        )

et- quand je fais

......
$json = curl_exec($ch);
$obj = json_decode($json,true);
 foreach($obj as $cle=>$val){
      get_user($headers,$val['id']);
}

ça donne

...

Array
(
    [0] => ERROR_ITEM_NOT_FOUND
    [1] => Élément introuvable
)

Array
(
    [0] => ERROR_ITEM_NOT_FOUND
    [1] => Élément introuvable
)
....

Offline

#9 2019-04-19 16:50:46

LaDenrée
HELPER
Registered: 2012-11-19
Posts: 6,146

Re: [resolu]Recupere tous les techininciens API REST

si je ne me trompe pas dans votre exemple http://support-test.calt.local.com/apirest.php/User/4  ça doit correspondre à l'utilisateur "glpi" qui a un profil 6:technicien donc c'est normal.


Trouver la panne avant de réparer...
GLPI10.0.10 (ubuntu 22.04 PHP8.1  Mariadb10.6 ) plugins : comportements 2.7.2 reports 1.16.0 formcreator 2.13.8, datainjection 2.13.4 fields 1.21.6

Offline

#10 2019-04-19 17:04:51

LaDenrée
HELPER
Registered: 2012-11-19
Posts: 6,146

Re: [resolu]Recupere tous les techininciens API REST

je pense que vous avez une erreur :
get_user($headers,$val['id']);


il faut prendre
get_user($headers,$val['users_id']);


Trouver la panne avant de réparer...
GLPI10.0.10 (ubuntu 22.04 PHP8.1  Mariadb10.6 ) plugins : comportements 2.7.2 reports 1.16.0 formcreator 2.13.8, datainjection 2.13.4 fields 1.21.6

Offline

#11 2019-04-23 09:21:29

ibrahim
Member
Registered: 2019-02-21
Posts: 17

Re: [resolu]Recupere tous les techininciens API REST

Merci beacoup ça a bien marché

Offline

Board footer

Powered by FluxBB