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 2018-04-24 16:21:30

GuillaumeG38
Guest
Registered: 2018-04-24
Posts: 1

Attribué un software à un computer

Bonjour,

Je cherche a remplir GLPI par l'api, via un script python. Je suis en version de GLPI 9.1.2

J'arrive a créer un computer
curl -s  --insecure -X POST -H 'Content-Type: application/json' \
-H "Session-Token: XXXX"  \
-H "App-Token: XXXXZ" \
-d '{ "input":  {" name": "ordi01", "serial": "11234501",  "operatingsystems_id":1,  "operatingsystemversions_id":21  }}' \
'http://path/to/glpi/apirest.php/Computer/'


J'aimerais lui ajouter un logiciel qui est déjà renseigné dans GLPI avec l'id 9 et la version id 67, mais je ne trouve pas d'exemple.

curl -X PUT \
-H 'Content-Type: application/json' \
-H "Session-Token: XXXX" \
-H "App-Token: XXXXY" \
-d '{"input": {"id": 417,   "softwares_id":9, "softwareversions_id":67 }}' \
'http://path/to/glpi/apirest.php/Computer/'

j’obtiens la réponse
[{"417":true,"message":""}]

quand je fais des modification par exemple sur le status du serveur cela fonctionne bien :

curl -X PUT \
-H 'Content-Type: application/json' \
-H "Session-Token: XXXX" \
-H "App-Token: XXXXY" \
-d '{"input": {"id": 417,   "states_id":5 }}' \
'http://path/to/glpi/apirest.php/Computer/'

Qu'ai je raté ?

Merci de votre aide .


Guillaume

Offline

#2 2018-04-24 23:01:04

LaDenrée
HELPER
Registered: 2012-11-19
Posts: 4,291

Re: Attribué un software à un computer

bonsoir,
vous ne devez pas mettre à jour l'ordinateur mais creer une association computer- softwareversion :
donc l'url est du type
   

$url=$_SESSION['api_url']."/Computer/".$Computer_id."/Computer_SoftwareVersion";
et le payload JSON contient l'ID du PC et la version du software    (et donc implicitement le software)
        $fields='{
    "input": {
        "computers_id": "$Computer_id",   
        "softwareversions_id": "$softwareversions_id"   
    }
}';

la methode doit être POST puisque vous crééz
en faisant un get sur  $url=$_SESSION['api_url']."/Computer/".$Computer_id."/Computer_SoftwareVersion";  vous aurez la liste des champs possibles à saisir ou mettre à jour

Last edited by LaDenrée (2018-04-24 23:03:51)


Trouver la panne avant de réparer...
*GLPI 9.1.6+fusion9.1+1.1+behaviours1.5.0+reports+fields+appliances+pdf+badges+formcreator2.5.2 PHP7.0 Mariadb10
*GLPI 9.2.4(behaviours1.5.2+fusion9.2+1.0+applicatifs2.3.0+dashboard 0.8.9)hebergé sur serveur mutualisé.
*GLPI 9.3.3  en test (ubuntu 18.04 mariadb 10.2.4)

Online

Board footer

Powered by FluxBB