Extraction de l'inventaire logiciel (v2)

9.2.8 Disponible à partir de la version 9.2.8. Utilisez l'opération GET sur l'élément api/sam/v2/software_instances pour demander des informations sur les logiciels installés sur votre infrastructure. L'API renvoie les détails des composants existants, ainsi que les données historiques sur les composants retirés.

Droits

Utilisateur Vous devez disposer des droits Afficher les nœuds finaux et Afficher l'inventaire matériel pour utiliser cette API.

URL de la ressource

https://hostname:port/api/sam/v2/software_instances?token=token

Informations sur les ressources

Tableau 1. Informations sur les ressources
Détails de l'opération Description
Méthode HTTP GET
En-têtes de demande
Fonction métier
Accept-Language (Facultatif)
Valeurs
en-US (seul l'anglais est pris en charge)

Négocie la langue de la réponse. Si l'en-tête n'est pas spécifié, le contenu est renvoyé dans la langue du serveur.

Format de demande application/json
En-têtes de réponse
En-tête
Content-Type
Valeurs
application/json

Définit le type de contenu de la réponse.

En-tête
Content-Language
Valeurs
fr

Définit la langue du contenu de la réponse. Si l'en-tête n'est pas spécifié, le contenu est renvoyé dans la langue du serveur.

Charge de la réponse Software Instances element
Format de réponse application/json
Codes de réponse

200 – OK

400 – "Bad Request" si un paramètre de requête contient des erreurs ou est manquant

9.2.10 Description du schéma

Pour extraire la liste de toutes les colonnes renvoyées par cette API REST, ainsi que leurs descriptions, utilisez la demande suivante :
GET api/sam/v2/schemas/software_instance.json?token=<token>

Colonnes disponibles

Tableau 2. Colonnes disponibles
Colonne Description Affichée par défaut Type
instance_id Identificateur de l'instance de composant. Numérique
computer_id Identificateur de l'ordinateur, tel que défini dans BigFix Inventory. Numérique
computer_bigfix_id Identificateur de l'ordinateur, tel que défini dans BigFix. Numérique
computer_dns_name Serveur de noms de domaine de l'ordinateur. Chaîne
computer_name Nom de l'ordinateur. Chaîne
computer_ip_address Adresse IP de la machine. Chaîne
computer_os Système d'exploitation de la machine. Chaîne
computer_os_type Type du système d'exploitation de l'ordinateur. Chaîne
component_name Nom du composant. Chaîne
component_release Numéro d'édition du composant. Chaîne
9.2.11 component_detailed_version version détaillée d'un composant logiciel. La version est utilisée comme signature logicielle. La version logicielle est détectée de plusieurs manières, par exemple en présence de packages spécifiques, de la version la plus élevée des balises SWID, du fichier Windows et de la génération de rapports de signature étendue. La reconnaissance basée sur le package est disponible depuis BigFix Inventory . Chaîne
discoverable_guid Identificateur global unique du composant. Chaîne
discoverable_family_guid Identificateur global unique de la famille de composants. Par exemple, si le composant est IBM DB2 Enterprise Server édition, la famille de composants est IBM DB2. Chaîne
component_publisher_name éditeur du composant. Chaîne
component_has_usage Indique si les données d'utilisation sont disponibles pour le composant. Valeur boléenne
is_present Indique si le composant est toujours installé dans l'environnement. Valeur boléenne
discovery_start Date et heure auxquelles le composant a été enregistré pour la première fois. L'heure est spécifiée dans le fuseau horaire GMT. Chaîne
discovery_end Date et heure auxquelles le composant a été enregistré pour la dernière fois. L'heure est spécifiée dans le fuseau horaire GMT. Chaîne
discovery_path Chemin d'accès sous lequel le composant est installé. Avant BigFix Inventory version 10.0.2, elle était disponible uniquement pour les produits IBM. A partir de BigFix Inventory version 10.0.2, elle est disponible pour tous les produits. Chaîne
product_name Nom du produit auquel le composant est affecté. Chaîne
10.0.8 product_guid Identificateur global unique du produit. Par exemple, si le produit est IBM DB2 Enterprise Server édition 10.5, le produit est IBM DB2 Enterprise Server édition. Chaîne
product_family_guid Identificateur global unique de la famille de produits. Par exemple, si le produit est IBM DB2 Enterprise Server édition, la famille de produits est IBM DB2. Chaîne
product_publisher_name éditeur du produit. Chaîne
product_release_name Nom de l'édition de produit à laquelle le composant est affecté. Chaîne
product_release Numéro d'édition du produit. Chaîne
product_release_guid Identificateur global unique de la version du produit. Chaîne
metric_id Identificateur de la métrique de licence utilisée par le produit. Pour plus d'informations sur la signification de chaque metric_id, voir : ID et noms de code de métrique. Chaîne
metric_code_name Nom de code unique de la métrique de licence utilisée par le produit. Pour plus d'informations sur la signification de chaque metric_code_name, voir : ID et noms de code de métrique. Chaîne
is_confirmed Indique si l'affectation du composant au produit est confirmée. Valeur boléenne
is_excluded Indique si le produit est exclu des calculs de tarification. Valeur boléenne
is_suppressed Indique si le composant est supprimé sur l'ordinateur sur lequel il est installé. Valeur boléenne
exclusion_or_suppress_comment Commentaire fourni lors de l'exclusion ou de la suppression. Chaîne
9.2.13 bundle_id Identificateur de l'offre FlexPoint ou Cloud Pak avec laquelle ou lequel l'instance logicielle est regroupée. Les valeurs possibles sont :
  • - 1 - L'instance logicielle ne peut pas être affectée à une offre FlexPoint ou Cloud Pak, car le composant n'est pas affecté à un produit
  • 0 - L'instance logicielle n'est pas regroupée avec une offre FlexPoint ou Cloud Pak
  • Autres valeurs - Identificateur de l'offre FlexPoint ou Cloud Pak à laquelle ou auquel l'instance logicielle est affectée
Chaîne
9.2.13 bundle_name Nom de l'offre FlexPoint ou Cloud Pak à laquelle ou auquel l'instance logicielle est affectée. Les valeurs possibles sont :
  • Colonne vide - L'instance logicielle ne peut pas être affectée à une offre FlexPoint ou Cloud Pak, car le composant n'est pas affecté à un produit
  • None - L'instance logicielle n'est pas regroupée avec une offre FlexPoint ou Cloud Pak
  • Autres valeurs - Nom de l'offre FlexPoint ou Cloud Pak à laquelle l'instance logicielle est affectée
Chaîne
10.0.8 bundle_type Type d'un groupement auquel l'instance logicielle est affectée. Les valeurs possibles sont :
  • - 1 - L'instance logicielle n'est affectée à aucun groupement ou ne peut être affectée, car le composant n'est affecté à aucun produit
  • 0 - Groupement FlexPoint
  • 1 - Groupement Cloud Pak
Numérique
10.0.8 bundle_guid GUID de l'offre FlexPoint ou Cloud Pak à laquelle ou auquel l'instance logicielle est affectée. Les valeurs possibles sont :
  • Colonne vide - L'instance logicielle n'est pas regroupée avec une offre FlexPoint ou Cloud Pak
  • Autres valeurs - GUID de l'offre FlexPoint ou Cloud Pak à laquelle l'instance logicielle est affectée
Chaîne
9.2.13 is_vulnerable Informations indiquant si des CVE (Common Vulnerabilities and Exposures) sont mises en correspondance avec le composant. Les valeurs possibles sont :
  • 0 - Aucun CVE correspondante
  • 1 - Au moins une CVE est mis en correspondance
Valeur boléenne
9.2.14 is_charged Informations indiquant si l'affectation d'un composant à un produit est facturée. Valeur boléenne
10.0.8 is_entitled Indiquez si vous avez déclaré le produit en tant qu'autorisation logicielle. Valeur boléenne

Associations applicables

Vous pouvez par ailleurs extraire des données des associations suivantes :
Important : Toutes les associations fournissent des données sur les éléments qui existent actuellement dans l'infrastructure. Pour les ordinateurs retirés et les logiciels désinstallés, ces associations renvoient null.

Paramètres de requête

Tableau 3. Paramètres de requête
Paramètre Description Requis Valeur
columns Indique les colonnes à extraire. Si vous n'indiquez pas ce paramètre, seules les colonnes par défaut sont extraites.
Exemple : extraction du nom et de la version du produit
URL?columns[]=product_name&columns[]=product_release
Chaîne
order Indiquez comment trier les données renvoyées. Le sens de tri par défaut des colonnes est croissant. Si vous souhaitez spécifier un tri par ordre décroissant, ajoutez desc au nom de la colonne.
Exemple : Classement des ID ordinateur suivant l'ordre décroissant
URL?order[]=computer_id desc
Alphanumérique
limit Indiquez le nombre de lignes à extraire. Si vous omettez ce paramètre, toutes les lignes sont extraites.
Exemple : éxtraire 100 enregistrements
URL?limit=100
Numérique
décalage Indiquez le nombre de lignes à ignorer pour extraire les résultats. Vous pouvez l'utiliser en même temps que le paramètre de limite pour mettre en page les résultats.
Exemple : éxtrayez 50 enregistrements en commençant après l'enregistrement 150
URL?limit=50&offset=150
Numérique
Jeton Identificateur d'authentification utilisateur unique. Vous pouvez l'extraire en utilisant l'API REST pour l'extraction du jeton d'authentification. Vous pouvez également vous connecter à BigFix Inventory, survoler l'icône Utilisateur Icône utilisateur et cliquer sur Profil. Cliquez ensuite sur Afficher le jeton. Alphanumérique
critères éxtrayez les enregistrements qui correspondent à des conditions spécifiques. Le paramètre doit avoir la structure suivante, écrite sur une seule ligne :
<criteria> ::= <left-brace> <boolean-operator> <colon> <left-bracket> 
<criterion> [{ <comma> <criterion> }...] <right-bracket> <right-brace>
<boolean-operator> ::= "and" | "or"
<criterion> ::= <criteria> | <left-bracket> <column> <comma> <operator> <comma> <value> <right-bracket>
<column> ::= <json-string>
<operator> ::= <json-string>
<value> ::= <json-array> | <json-string> | <json-number> | <json-null>

Pour plus d'informations sur les opérateurs, voir : Connecteurs et opérateurs communs.

Exemple : éxtrayez des instances logicielles dont le nom de produit contient "BigFix" OU dont la date de début de la reconnaissance se trouve dans une plage de dates spécifiques
URL?criteria={ "or": [ ["product_name", "contains", "BigFix"], 
{ "and": [ ["discovery_start", ">", "2018-10-01T00:00:00+00:00Z"], 
["discovery_start", "<", "2018-10-02T00:00:00+00:00Z"] ] } ] }

Pour les colonnes qui utilisent les valeurs de date et d'heure, vous pouvez également récupérer les données sur une période au lieu d'une date spécifique. Pour ce faire, utilisez last ou next comme <operator>, puis spécifiez la valeur de temps selon la convention suivante : PxD/PxW/PxM/PxY, où x est un nombre compris entre 1 et 999 et D, W, M ou Y est un identificateur qui représente les jours, semaines, mois ou années, respectivement.

Exemple : extraction des instances logicielles qui ont participé au pic d'utilisation des licences. La date et l'heure du pic sont les suivantes : 2018-10-10T00:00:00+00:00Z. La requête recherche les instances qui répondent aux critères suivants : le nom du produit contient "DB2" éT utilise la métrique indiquée éT la reconnaissance commence pendant le pic.

Pour PVU, RVU MAPC et VPC
URL?criteria={ "and": [ ["discovery_start", "<=", "2018-10-10T00:00:00+00:00Z"], 
["discovery_end", ">", "2018-10-10T00:00:00+00:00Z"], ["product_name", "contains", "DB2"], ["metric_id", "=", "5"] ] }
Pour les autres métriques
URL?criteria={ "and": [ ["discovery_start", "<", "2018-10-11T00:00:00+00:00Z"], 
["discovery_end", ">=", "2018-10-10T00:00:00+00:00Z"], ["product_name", "contains", "DB2"], ["metric_id", "=", "9"] ] }
Exemple : extraction des instances de logiciel signalées pour la première fois au cours des sept derniers jours
URL?criteria={"and":[["discovery_start","last","P7D"]]}
Chaîne

Exemple de conversation - Colonne par défaut

Demande
GET api/sam/v2/software_instances?token=7adc3efb175e2bc0f4484bdd2efca54a8fa04623
Host: localhost:9081 
Accept: application/json 
Accept-Language: en-US
Corps de la réponse
[{
"computer_name":"NC107069",
"computer_ip_address":["10.0.107.69"],
"component_name":"BigFix Platform Agent",
"component_release":"9.0",
"is_present":1,
"discovery_start":"2016-04-28T15:37:26Z",
"discovery_end":"2016-11-17T15:11:10Z",
"discovery_path":"/opt/BESClient/bin/properties/version",
"product_name":"BigFix for Power Management",
"product_release":"9.0"
}]

Exemple de conversation - Toutes les colonnes

Demande
GET api/sam/v2/software_instances?columns[]=discovery_path
&columns[]=instance_id&columns[]=computer_id&columns[]=computer_bigfix_id
&columns[]=computer_dns_name&columns[]&columns[]=computer_name
&columns[]=computer_ip_address&columns[]=computer_os&columns[]=computer_os_type
&columns[]=component_name&columns[]=component_release&columns[]=discoverable_guid
&columns[]=component_publisher_name&columns[]=component_has_usage&columns[]=is_present
&columns[]=discovery_start&columns[]=discovery_end&columns[]=product_name
&columns[]=product_publisher_name&columns[]=product_release_name&columns[]=product_release
&columns[]=metric_id&columns=metric_code_name&columns[]=is_confirmed
&columns[]=is_excluded&columns[]=is_suppressed&columns[]=exclusion_or_suppress_comment
&token=7adc3efb175e2bc0f4484bdd2efca54a8fa04623
Host: localhost:9081 
Accept: application/json 
Accept-Language: en-US
Corps de la réponse
[{
"instance_id":1,
"computer_id":3,
"computer_bigfix_id":null,
"computer_dns_name":"NC107069",
"computer_name":"NC107069",
"computer_ip_address":"10.0.107.69",
"computer_os":"AIX 5.3",
"computer_os_type":"AIX",
"component_name":"BigFix Platform Agent",
"component_release":"9.0",
"discoverable_guid":"0768FB15-383C-4124-A7E2-0D76DDA06874",
"component publisher name":"IBM",

"component_has_usage":1,
"is_present":0,
"discovery_start":"2016-04-28T15:37:26Z",
"discovery_end":"2016-11-17T15:11:10Z",
"discovery_path":"/opt/BESClient/bin/properties/version",
"product_name":"BigFix for Power Management",
"product_publisher_name":"IBM",
"product_release_name":"BigFix for Power Management",
"product_release":"9.0",
"metric_id":"6",
"metric_code_name":"INTERNAL_RVU_MAPC",
"is_confirmed":0,
"is_excluded":0,
"is_suppressed":0,
"exclusion_or_suppress_comment":null
}]

Exemple de conversation - Colonne supplémentaire

Demande
GET api/sam/v2/software_instances?columns[]=component_name
&columns[]=product_name&columns[]=is_confirmed
&token=7adc3efb175e2bc0f4484bdd2efca54a8fa04623
Host: localhost:9081 
Accept: application/json 
Accept-Language: en-US
Corps de la réponse
[{
  "component_name":"BigFix Platform Agent",
  "product_name":"BigFix for Power Management",
"is_confirmed":0
}]

Exemple de conversation - Association

Demande
GET api/sam/v2/software_instances?columns[]=computer_id
&columns[]=computer_health.catalog_version
&token=7adc3efb175e2bc0f4484bdd2efca54a8fa04623
Host: localhost:9081 
Accept: application/json 
Accept-Language: en-US
Corps de la réponse
[{
"computer_id":1,
"catalog_version":1304630
}]