SAM : API d’intégration des données d’utilisation du logiciel
L’API SAM-Software Usage Data Integration fournit des points de terminaison pour créer et mettre à jour des enregistrements dans la table Utilisation de logiciel [samp_sw_usage].
Cette API nécessite l’activation du module d’extension Software Asset Management Professional (com.snc.samp). Vous devez également disposer du rôle sam_admin ou sam_developer pour accéder au point de terminaison.
Intégration de données d’utilisation de logiciels SAM : POST /sam_software_usage_integration/createOrUpdate
Crée ou met à jour un enregistrement spécifié dans la table Utilisation de logiciel [samp_sw_usage].
Vous pouvez créer/mettre à jour un ou plusieurs enregistrements d’utilisation du logiciel en un seul appel.
Format d'URL
URL versionnée : /api/now/{api_version}/sam_software_usage_integration/createOrUpdate
URL par défaut : /api/now/sam_software_usage_integration/createOrUpdate
Paramètres de demande pris en charge
| Nom | Description |
|---|---|
| api_version | Facultatif. Version du point de terminaison auquel accéder. Exemple : v1 ou v2. Spécifiez uniquement cette valeur pour utiliser une version de point de terminaison différente de la dernière. Type de données : chaîne |
| Nom | Description |
|---|---|
| Néant |
| Nom | Description |
|---|---|
| Éléments | Liste des noms de colonnes et des valeurs pour chaque champ à stocker dans l’enregistrement d’utilisation du logiciel. Les informations de colonne que vous devez transmettre dépendent de la valeur que vous spécifiez pour reclamation_type (qui est un champ obligatoire) : Valeurs possibles reclamation_type et informations de colonne à transmettre :
La combinaison de ces champs permet d’identifier un enregistrement de façon unique. Si l’enregistrement est introuvable dans la table, un nouvel enregistrement avec les champs spécifiés est créé. sinon, l’enregistrement existant est mis à jour. Type de données : tableau |
En-têtes
Les en-têtes de demande et de réponse suivants s'appliquent à cette action HTTP uniquement ou s'appliquent à cette action d'une manière distincte. Pour obtenir une liste des en-têtes généraux utilisés dans l’API REST, consultez En-têtes d’API REST pris en charge.
| En-tête | Description |
|---|---|
| Accepter | Format de données du corps de la réponse. Types pris en charge : application/json ou application/xml. Valeur par défaut : application/json |
| Content-Type | Format de données du corps de la demande. Types pris en charge : application/json ou application/xml. Valeur par défaut : application/json |
| En-tête | Description |
|---|---|
| Aucun |
Codes d'état
Les codes d'état suivants s'appliquent à cette action HTTP. Pour obtenir une liste des codes d’état possibles utilisés dans l’API REST, consultez Codes de réponse HTTP de l’API REST.
| Code d'état | Description |
|---|---|
| 200 | Réussi. La demande a été correctement traitée. |
| 401 | Non autorisé. Les informations d'identification de l'utilisateur sont incorrectes ou n'ont pas été transmises. |
| 404 | Introuvable. L’élément demandé est introuvable. |
| 405 | Méthode non valide. La fonctionnalité est désactivée. |
| 500 | Erreur interne du serveur. Une erreur inattendue s'est produite lors du traitement de la demande. La réponse contient des informations supplémentaires sur l'erreur. |
Paramètres de corps de réponse (JSON ou XML)
| Nom | Description |
|---|---|
| Éléments | Liste de paires nom-valeur de tous les champs de l’enregistrement d’utilisation du logiciel. Type de données : tableau (contenu variable) |
Demande cURL
L’exemple suivant illustre la procédure de création d’un nouvel enregistrement d’utilisation de logiciel.
curl -X POST "https://instance.servicenow/api/now/sam_software_usage_integration/createOrUpdate" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d "{'items': [\
{
'configuration_item':'eaa9604d3790200044e0bfc8bcbe5dc1',\
'month_used':2,\
'norm_product':'40209c060b3022002d6c650d37673a89',\
'norm_publisher':'24dcccc20b3022002d6c650d37673ab3',\
'reclamation_type':'total_usage',\
'usage_count': 13,\
'total_usage_time':13,\
'year':2020
}\
]}"
{
"result": {
"reply": {
"items": [
{
"configuration_item": "eaa9604d3790200044e0bfc8bcbe5dc1",
"month_used": 2,
"norm_product": "40209c060b3022002d6c650d37673a89",
"norm_publisher": "24dcccc20b3022002d6c650d37673ab3",
"reclamation_type": "total_usage",
"usage_count": 13,
"total_usage_time": 13,
"year": 2020,
"sysId": "13d15fe59d511010f8772c637e39afe5",
"status": "INSERT"
}
]
},
"message": "Ok"
}
}
L’exemple suivant illustre comment mettre à jour plusieurs enregistrements d’utilisation de logiciels en un seul appel.
curl -X POST "https://instance.servicenow/api/now/sam_software_usage_integration/createOrUpdate" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d "{'items': [\
{\
'configuration_item': 'eaa9604d3790200044e0bfc8bcbe5dc1',\
'month_used': 2,\
'norm_product': '40209c060b3022002d6c650d37673a89',\
'norm_publisher': '24dcccc20b3022002d6c650d37673ab3',\
'reclamation_type': 'total_usage',\
'usage_count': 13,\
'total_usage_time': 13,\
'year': 2020
},
{\
'configuration_item': '0aa9e80d3790200044e0bfc8bcbe5da0',\
'month_used': 2,\
'norm_product': '40209c060b3022002d6c650d37673a89',\
'norm_publisher': '24dcccc20b3022002d6c650d37673ab3',\
'reclamation_type': 'total_usage',\
'usage_count': 19,\
'total_usage_time': 19,\
'year': 2020
},
{\
'configuration_item': 'a0a9a80d3790200044e0bfc8bcbe5d3c',\
'month_used': 2,\
'norm_product': '40209c060b3022002d6c650d37673a89',\
'norm_publisher': '24dcccc20b3022002d6c650d37673ab3',\
'reclamation_type': 'total_usage',\
'usage_count': 7,\
'total_usage_time': 7,\
'year': 2020},
{\
'configuration_item': '48a9280d3790200044e0bfc8bcbe5d55',\
'month_used': 2,\
'norm_product': '40209c060b3022002d6c650d37673a89',\
'norm_publisher': '24dcccc20b3022002d6c650d37673ab3',\
'reclamation_type': 'total_usage',\
'usage_count': 1,\
'total_usage_time': 1,\
'year': 2020},
{\
'configuration_item': '61a9680d3790200044e0bfc8bcbe5d11',\
'month_used': 2,\
'norm_product': '40209c060b3022002d6c650d37673a89',\
'norm_publisher': '24dcccc20b3022002d6c650d37673ab3',\
'reclamation_type': 'total_usage',\
'usage_count': 18,\
'total_usage_time': 18,\
'year': 2020}
]}"
{
"result": {
"reply": {
"items": [
{
"configuration_item": "eaa9604d3790200044e0bfc8bcbe5dc1",
"month_used": 2,
"norm_product": "40209c060b3022002d6c650d37673a89",
"norm_publisher": "24dcccc20b3022002d6c650d37673ab3",
"reclamation_type": "total_usage",
"usage_count": 13,
"total_usage_time": 13,
"year": 2020,
"sysId": "13d15fe59d511010f8772c637e39afe5",
"status": "INSERT"
},
{
"configuration_item": "0aa9e80d3790200044e0bfc8bcbe5da0",
"month_used": 2,
"norm_product": "40209c060b3022002d6c650d37673a89",
"norm_publisher": "24dcccc20b3022002d6c650d37673ab3",
"reclamation_type": "total_usage",
"usage_count": 19,
"total_usage_time": 19,
"year": 2020,
"sysId": "2cd15fe59d521010f9772c637e39aff4",
"status": "UPDATE"
},
{
...
},
]
},
"message": "Ok"
}
}