CMDBGroupAPI : inclus dans le champ d’application
CMDBGroupAPI fournit des méthodes pour effectuer des actions sur Base de données de gestion des configurations (CMDB) les groupes.
d’espace de noms sn_cmdbgroup avant l’objet CMDBGroupAPI. Par exemple :var response = sn_cmdbgroup.CMDBGroupAPI.getManualCIList(groupSysId, false);Pour accéder à cette API, vous devez avoir le rôle itil ou asset.
CMDBGroupAPI : getAllCI(String groupId, boolean requireCompleteSet, Boolean requireAllQueryNodesCis)
Renvoie tous les éléments de configuration (CI) pour le groupe spécifié. Les résultats incluent tous les CI manuels et la liste des CI de la requête enregistrée par le générateur de requêtes.
| Nom | Type | Description |
|---|---|---|
| groupId | Chaîne | Sys_id du groupe Base de données de gestion des configurations (CMDB). |
| requireCompleteSet (en anglais seulement) | Booléen | Facultatif, mais doit être réussi si requireAllQueryNodesCis est réussi. Marqueur indiquant si une chaîne vide est renvoyée si des CI sont filtrés par les restrictions de la liste de contrôle d’accès (ACL). Valeurs valides :
Valeur par défaut : false |
| requireAllQueryNodesCis | Booléen | Facultatif. Marqueur indiquant s’il faut renvoyer les CI de toutes les classes CMDB de la requête. Valeurs valides :
Valeur par défaut : false |
| Type | Description |
|---|---|
| erreurs | Liste des erreurs pour un échec d’opération. Type de données : tableau |
| erreurs.erreur | Nom de l’erreur. Valeurs possibles :
Type de données : chaîne |
| erreur.message | Brève description du message d’erreur. Type de données : chaîne |
| Liste d’id | Liste des sys_ids de CI CMDB. Type de données : tableau |
| partialCIListDueToACLFlag | Marqueur qui indique si la liste des CI renvoyés est incomplète en raison des restrictions ACL. Remarque :
Cela n’est pas considéré comme une condition d’erreur et aucune information d’erreur correspondante n’est renvoyée. Type de données : booléennes Valeurs valides :
|
| résultat | Marqueur indiquant si la méthode s’est terminée avec succès. Valeurs possibles :
|
// Script example:
var getAllCIFunc = function(groupSysId) {
var parser = new JSONParser();
var response = sn_cmdbgroup.CMDBGroupAPI.getAllCI(groupSysId, false);
var parsed = parser.parse(response);
if (parsed.result) {
gs.info("succeed to retrieve ci list: " + parsed.idList);
} else {
gs.info("fail to retrieve list, errors: " + JSON.stringify(parsed.errors));
}
}
var groupExists = "d0d2d25113152200eef2dd828144b0e4";
var groupContainsInvalidSavedQuery = "e685a2c3d7012200de92a5f75e610387";
getAllCIFunc(groupExists);
getAllCIFunc(groupContainsInvalidSavedQuery);
Sortie :
// Successful response
{
'result':true,
'partialCIListDueToACLFlag': false,
'idList':[
'3a5dd3dbc0a8ce0100655f1ec66ed42c',
'6b43105c37301000deeabfc8bcbe5db2'
]
}
// Error response
{
'result':false,
'errors':[
{
'message':'Group does not exist',
'error':'GROUP_SYS_ID_IS_NOT_FOUND'
}
],
'partialCIListDueToACLFlag':false,
'idList':[]
}
CMDBGroupAPI : getAllCIFromQueryBuilder(String groupId, booléen requireCompleteSet, booléen requireAllQueryNodesCis)
Renvoie tous les éléments de configuration (CI) renvoyés par tous les ID de requêtes des générateurs de requêtes enregistrés pour le groupe spécifié.
| Nom | Type | Description |
|---|---|---|
| groupId | Chaîne | Sys_id du groupe Base de données de gestion des configurations (CMDB). |
| requireCompleteSet (en anglais seulement) | Booléen | Facultatif, mais doit être réussi si requireAllQueryNodesCis est réussi. Marqueur indiquant si une chaîne vide est renvoyée si des CI sont filtrés par les restrictions de la liste de contrôle d’accès (ACL). Valeurs valides :
Valeur par défaut : false |
| requireAllQueryNodesCis | Booléen | Facultatif. Marqueur indiquant s’il faut renvoyer les CI de toutes les classes CMDB de la requête. Valeurs valides :
Valeur par défaut : false |
| Type | Description |
|---|---|
| erreurs | Liste des erreurs pour un échec d’opération. Type de données : tableau |
| erreurs.erreur | Nom de l’erreur. Valeurs possibles :
Type de données : chaîne |
| erreur.message | Brève description du message d’erreur. Type de données : chaîne |
| Liste d’id | Liste des sys_ids de CI CMDB. Type de données : tableau |
| partialCIListDueToACLFlag | Marqueur qui indique si la liste des CI renvoyés est incomplète en raison des restrictions ACL. Remarque :
Cela n’est pas considéré comme une condition d’erreur et aucune information d’erreur correspondante n’est renvoyée. Type de données : booléennes Valeurs valides :
|
| résultat | Marqueur indiquant si la méthode s’est terminée avec succès. Valeurs possibles :
|
// Script example:
var getAllCIFromQueryBuilderFunc = function(groupSysId) {
var parser = new JSONParser();
var response = sn_cmdbgroup.CMDBGroupAPI.getAllCIFromQueryBuilder(groupSysId, false);
var parsed = parser.parse(response);
if (parsed.result) {
gs.info("succeed to retrieve ci list: " + parsed.idList);
} else {
gs.info("fail to retrieve list, errors: " + JSON.stringify(parsed.errors));
}
}
var groupExists = "d0d2d25113152200eef2dd828144b0e4";
var groupContainsInvalidSavedQuery = "e685a2c3d7012200de92a5f75e610387";
getAllCIFromQueryBuilderFunc(groupExists);
getAllCIFromQueryBuilderFunc(groupContainsInvalidSavedQuery);
Sortie :
// Successful response
{
'result':true,
'partialCIListDueToACLFlag': false,
'idList':[
'3a5dd3dbc0a8ce0100655f1ec66ed42c',
'6b43105c37301000deeabfc8bcbe5db2'
]
}
// Error response
{
'result':false,
'errors':[
{'message':'Group does not exist',
'error':'GROUP_SYS_ID_IS_NOT_FOUND'}
],
'partialCIListDueToACLFlag':false,
'idList':[]
}
CMDBGroupAPI : getManualCIList(String groupId, Boolean requireCompleteSet)
Renvoie la liste des CI manuels du groupe CMDB.
| Nom | Type | Description |
|---|---|---|
| groupId | Chaîne | Le sysId du groupe CMDB. |
| requireCompleteSet (en anglais seulement) | Booléen | Si vrai, renvoie une chaîne d’erreur si des CI sont filtrés par les restrictions ACL. |
| Type | Description |
|---|---|
| Chaîne | Chaîne au format JSON au format Où
En cas d’échec, renvoie l’une des erreurs GROUP_SYS_ID_IS_NOT_FOUND, GROUP_SYS_ID_IS_EMPTY, FAIL_TO_INSERT_GROUP_CI_PAIR, FAIL_TO_INSERT_GROUP_QUERY_ID_PAIR, CI_CAN_NOT_FOUND, SAVED_QUERY_ID_NOT_FOUND, ERROR_DURING_QUERY_BUILDER_PROCESS_QUERY, TIMEOUT_DURING_QUERY_BUILDER_PROCESS_QUERY, NOT_COMPLETE_DURING_QUERY_BUILDER_PROCESS_QUERY, MAX_LIMIT_DURING_QUERY_BUILDER_PROCESS_QUERY, GROUP_API_TIMEOUT, EXCEPTION_FROM_EXECUTE_QUERY SOME_CI_NOT_VISIBLE_DUE_TO_SECURITY_CONSTRAINT |
// Script example for requireCompleteSet being false:
var getManualCIList = function(groupSysId) {
var parser = new JSONParser();
var response = sn_cmdbgroup.CMDBGroupAPI.getManualCIList(groupSysId, false);
var parsed = parser.parse(response);
if (parsed.result) {
gs.info("succeed to retrieve ci list: " + parsed.idList);
} else {
gs.info("fail to retrieve list, errors: " + JSON.stringify(parsed.errors));
}
}
// create a group in cmdb_group, and add CIs to this group in Edit Manual CI form
var groupExists = "d0d2d25113152200eef2dd828144b0e4";
// use a non-exist group
var groupDoesNotExists = "d0d2d25113152200eef2dd828144b0e4111";
getManualCIList(groupExists);
getManualCIList(groupDoesNotExists);
Sortie : (Sauts de ligne ajoutés pour la mise en forme.)
succeed to retrieve ci
list: 6b43105c37301000deeabfc8bcbe5db2,2dfd7c8437201000deeabfc8bcbe5d56
fail to retrieve list, errors:
[{"message":"Group does not exist","error":"GROUP_SYS_ID_IS_NOT_FOUND"}]
// Script example for requireCompleteSet being true
var getManualCIList = function(groupSysId) {
var parser = new JSONParser();
var response = sn_cmdbgroup.CMDBGroupAPI.getManualCIList(groupSysId, true);
var parsed = parser.parse(response);
if (parsed.result) {
gs.info("succeed to retrieve ci list: " + parsed.idList);
} else {
gs.info("fail to retrieve list, errors: " + JSON.stringify(parsed.errors));
}
}
// create a group in cmdb_group, and add CIs to this group in Edit Manual CI form
var groupExists = "d0d2d25113152200eef2dd828144b0e4";
getManualCIList(groupExists);
Sortie : (Sauts de ligne ajoutés pour la mise en forme.)
fail to retrieve list, errors:
[{"message":"Some CI(s) not visible due to security constraint",
"error":"SOME_CI_NOT_VISIBLE_DUE_TO_SECURITY_CONSTRAINT"}]
CMDBGroupAPI : getSavedQueryIdList(String groupId, Boolean requireCompleteSet)
Renvoie les ID de requêtes du générateur de requêtes pour le groupe CMDB spécifié.
| Nom | Type | Description |
|---|---|---|
| groupId | Chaîne | Le sysId du groupe CMDB. |
| requireCompleteSet (en anglais seulement) | Booléen | Si vrai, renvoie une chaîne vide si des CI sont filtrés par les restrictions ACL. |
| Type | Description |
|---|---|
| Chaîne | Chaîne au format JSON au format Où
En cas d’échec, renvoie l’une des erreurs GROUP_SYS_ID_IS_NOT_FOUND, GROUP_SYS_ID_IS_EMPTY, FAIL_TO_INSERT_GROUP_CI_PAIR, FAIL_TO_INSERT_GROUP_QUERY_ID_PAIR, CI_CAN_NOT_FOUND, SAVED_QUERY_ID_NOT_FOUND, ERROR_DURING_QUERY_BUILDER_PROCESS_QUERY, TIMEOUT_DURING_QUERY_BUILDER_PROCESS_QUERY, NOT_COMPLETE_DURING_QUERY_BUILDER_PROCESS_QUERY, MAX_LIMIT_DURING_QUERY_BUILDER_PROCESS_QUERY, GROUP_API_TIMEOUT, EXCEPTION_FROM_EXECUTE_QUERY SOME_CI_NOT_VISIBLE_DUE_TO_SECURITY_CONSTRAINT |
// Script example:
var getSavedQueryIdList = function(groupSysId) {
var parser = new JSONParser();
var response = sn_cmdbgroup.CMDBGroupAPI.getSavedQueryIdList(groupSysId, false);
var parsed = parser.parse(response);
if (parsed.result) {
gs.info("succeed to retrieve saved query id list: " + parsed.idList);
} else {
gs.info("fail to retrieve list, errors: " + JSON.stringify(parsed.errors));
}
}
var groupExists = "d0d2d25113152200eef2dd828144b0e4";
var groupDoesNotExists = "d0d2d25113152200eef2dd828144b0e4111";
getSavedQueryIdList(groupExists);
getSavedQueryIdList(groupDoesNotExists);
Sortie : (Sauts de ligne ajoutés pour la mise en forme.)
succeed to retrieve saved query id list: 5d498532d7c12200de92a5f75e6103ce
fail to retrieve list, errors:
[{"message":"Group does not exist","error":"GROUP_SYS_ID_IS_NOT_FOUND"}]
CMDBGroupAPI : setManualCIList(String groupId, String ciSysIds)
Définit la liste de CI manuelle pour le groupe spécifié. La liste de CI manuels existante est remplacée. Les sysId de CI introuvables dans la table cmdb_ci sont ignorés.
| Nom | Type | Description |
|---|---|---|
| groupId | Chaîne | Le sysId du groupe CMDB. |
| ciSysIds | Chaîne | Liste des sysIds de CI séparés par des virgules. |
| Type | Description |
|---|---|
| Chaîne | Chaîne au format JSON au format Où
En cas d’échec, renvoie l’une des erreurs GROUP_SYS_ID_IS_NOT_FOUND, GROUP_SYS_ID_IS_EMPTY, FAIL_TO_INSERT_GROUP_CI_PAIR, FAIL_TO_INSERT_GROUP_QUERY_ID_PAIR, CI_CAN_NOT_FOUND, SAVED_QUERY_ID_NOT_FOUND, ERROR_DURING_QUERY_BUILDER_PROCESS_QUERY, TIMEOUT_DURING_QUERY_BUILDER_PROCESS_QUERY, NOT_COMPLETE_DURING_QUERY_BUILDER_PROCESS_QUERY, MAX_LIMIT_DURING_QUERY_BUILDER_PROCESS_QUERY, GROUP_API_TIMEOUT, EXCEPTION_FROM_EXECUTE_QUERY SOME_CI_NOT_VISIBLE_DUE_TO_SECURITY_CONSTRAINT |
// Script example:
var setManualCIListFunc = function(groupSysId, manualCIList) {
var parser = new JSONParser();
var response = sn_cmdbgroup.CMDBGroupAPI.setManualCIList(groupSysId, manualCIList);
var parsed = parser.parse(response);
if (parsed.result) {
gs.info("succeed to set manual ci list");
} else {
gs.info("fail to set manual ci list, errors: " + JSON.stringify(parsed.errors));
}
}
var group = "d0d2d25113152200eef2dd828144b0e4";
var groupDoesNotExist = "1234";
var manualCIList = "b4fd7c8437201000deeabfc8bcbe5dc1, affd3c8437201000deeabfc8bcbe5dc3";
setManualCIListFunc(group, manualCIList);
setManualCIListFunc(groupDoesNotExist, manualCIList);
Sortie : (Sauts de ligne ajoutés pour la mise en forme.)
succeed to set manual ci list
fail to set manual ci list, errors: [{"message":"Group does not exist","error":
"GROUP_SYS_ID_IS_NOT_FOUND"}]
CMDBGroupAPI : setSavedQueryIdList(String groupId, String queryIds)
Définit la liste d’ID de requête enregistrée pour le groupe spécifié. La liste d’ID de requête existante est remplacée. Les sysId de requête introuvables dans la table qb_saved_query sont ignorés.
| Nom | Type | Description |
|---|---|---|
| groupId | Chaîne | Le sysId du groupe CMDB. |
| QueryIds | Chaîne | Liste des sysId de requête enregistrés séparés par des virgules. |
| Type | Description |
|---|---|
| Chaîne | Chaîne au format JSON au format Où
En cas d’échec, renvoie l’une des erreurs GROUP_SYS_ID_IS_NOT_FOUND, GROUP_SYS_ID_IS_EMPTY, FAIL_TO_INSERT_GROUP_CI_PAIR, FAIL_TO_INSERT_GROUP_QUERY_ID_PAIR, CI_CAN_NOT_FOUND, SAVED_QUERY_ID_NOT_FOUND, ERROR_DURING_QUERY_BUILDER_PROCESS_QUERY, TIMEOUT_DURING_QUERY_BUILDER_PROCESS_QUERY, NOT_COMPLETE_DURING_QUERY_BUILDER_PROCESS_QUERY, MAX_LIMIT_DURING_QUERY_BUILDER_PROCESS_QUERY, GROUP_API_TIMEOUT, EXCEPTION_FROM_EXECUTE_QUERY SOME_CI_NOT_VISIBLE_DUE_TO_SECURITY_CONSTRAINT |
// Script example:
var setSavedQueryIdListFunc = function(groupSysId, queryIdList) {
var parser = new JSONParser();
var response = sn_cmdbgroup.CMDBGroupAPI.setSavedQueryIdList(groupSysId, queryIdList);
var parsed = parser.parse(response);
if (parsed.result) {
gs.info("succeed to set saved query id list");
} else {
gs.info("fail to set saved query id list, errors: " + JSON.stringify(parsed.errors));
}
}
var group = "d0d2d25113152200eef2dd828144b0e4";
var savedQueryBuilderIdList = "394585fed7812200de92a5f75e6103e8";
var savedQueryBuilderIdNotExistList = "b4fd7c8437201000deeabfc8bcbe5dc1,
affd3c8437201000deeabfc8bcbe5dc3";
setSavedQueryIdListFunc(group, savedQueryBuilderIdList);
setSavedQueryIdListFunc(group, savedQueryBuilderIdNotExistList);
Sortie : (Sauts de ligne ajoutés pour la mise en forme.)
succeed to set saved query id list
fail to set saved query id list, errors: [{"message":
"Saved query id(b4fd7c8437201000deeabfc8bcbe5dc1) is not found for
group(d0d2d25113152200eef2dd828144b0e4)","error":
"SAVED_QUERY_ID_NOT_FOUND"},{"message":
"Saved query id(affd3c8437201000deeabfc8bcbe5dc3) is not found for
group(d0d2d25113152200eef2dd828144b0e4)","error":"SAVED_QUERY_ID_NOT_FOUND"}]