CMDBGroupAPI - Com escopo
A CMDBGroupAPI fornece métodos para executar ações em grupos Configuration Management Database (CMDB).
sn_cmdbgroup antes do objeto CMDBGroupAPI. Por exemplo:var response = sn_cmdbgroup.CMDBGroupAPI.getManualCIList(groupSysId, false);Para acessar esta API, você deve ter a função itil ou asset.
CMDBGroupAPI - getAllCI(cadeia de caracteres groupId, Booliano exigemCompleteSet, Booliano exigemAllQueryNodesCis)
Retorna todos os itens de configuração (ICs) do grupo especificado. Os resultados incluem todos os ICs manuais e a lista de ICs da consulta salva do construtor de consultas.
| Nome | Tipo | Descrição |
|---|---|---|
| groupId | Cadeia de caracteres | Sys_id do grupo do Configuration Management Database (CMDB). |
| requerConjuntoConcluído | Booliano | Opcional, mas deve ser aprovado se requireAllQueryNodesCis for aprovado. Sinalizador que indica se uma cadeia de caracteres vazia será retornada se algum IC for filtrado por restrições da ACL (lista de controle de acesso). Valores válidos:
Padrão: falso |
| requeremTodosConsultaNodesCis | Booliano | Opcional. Sinalizador que indica se devem ser retornados ICs de todas as classes do CMDB da consulta. Valores válidos:
Padrão: falso |
| Tipo | Descrição |
|---|---|
| erros | Lista de erros de uma operação com falha. Tipo de dados: matriz |
| erros.erro | Nome do erro. Valores possíveis:
Tipo de dados: cadeia de caracteres |
| erros.mensagem | Breve descrição da mensagem de erro. Tipo de dados: cadeia de caracteres |
| IdList | Lista de sys_ids de IC do CMDB. Tipo de dados: matriz |
| parcialCIListDueToACLFlag | Sinalizador que indica se a lista de ICs retornados está incompleta devido a restrições de ACL. Nota:
Isso não é considerado uma condição de erro e nenhuma informação de erro correspondente é retornada. Tipo de dados: booliano Valores válidos:
|
| resultado | Sinalizador que indica se o método foi concluído com sucesso. Valores possíveis:
|
// 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);
Saída:
// 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(cadeia de caracteres groupId, booliano exigemCompleteSet, booliano exigemAllQueryNodesCis)
Retorna todos os itens de configuração (ICs) retornados de todos os IDs de consulta dos construtores de consulta salvos para o grupo especificado.
| Nome | Tipo | Descrição |
|---|---|---|
| groupId | Cadeia de caracteres | Sys_id do grupo do Configuration Management Database (CMDB). |
| requerConjuntoConcluído | Booliano | Opcional, mas deve ser aprovado se requireAllQueryNodesCis for aprovado. Sinalizador que indica se uma cadeia de caracteres vazia será retornada se algum IC for filtrado por restrições da ACL (lista de controle de acesso). Valores válidos:
Padrão: falso |
| requeremTodosConsultaNodesCis | Booliano | Opcional. Sinalizador que indica se devem ser retornados ICs de todas as classes do CMDB da consulta. Valores válidos:
Padrão: falso |
| Tipo | Descrição |
|---|---|
| erros | Lista de erros de uma operação com falha. Tipo de dados: matriz |
| erros.erro | Nome do erro. Valores possíveis:
Tipo de dados: cadeia de caracteres |
| erros.mensagem | Breve descrição da mensagem de erro. Tipo de dados: cadeia de caracteres |
| IdList | Lista de sys_ids de IC do CMDB. Tipo de dados: matriz |
| parcialCIListDueToACLFlag | Sinalizador que indica se a lista de ICs retornados está incompleta devido a restrições de ACL. Nota:
Isso não é considerado uma condição de erro e nenhuma informação de erro correspondente é retornada. Tipo de dados: booliano Valores válidos:
|
| resultado | Sinalizador que indica se o método foi concluído com sucesso. Valores possíveis:
|
// 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);
Saída:
// 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(cadeia de caracteres groupId, booliano exigemCompleteSet)
Retorna a lista de ICs manuais do grupo do CMDB.
| Nome | Tipo | Descrição |
|---|---|---|
| groupId | Cadeia de caracteres | O sysId do grupo do CMDB. |
| requerConjuntoConcluído | Booliano | Quando verdadeiro, retorna uma cadeia de caracteres de erro se algum IC for filtrado por restrições de ACL. |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Uma cadeia de caracteres no formato JSON no formato Em que
When not successful, returns one of the errors 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);
Saída: (quebras de linha adicionadas para formatação).
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);
Saída: (quebras de linha adicionadas para formatação).
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(cadeia de caracteres groupId, booliano exigemCompleteSet)
Retorna os IDs de consulta do construtor de consultas para o grupo do CMDB especificado.
| Nome | Tipo | Descrição |
|---|---|---|
| groupId | Cadeia de caracteres | O sysId do grupo do CMDB. |
| requerConjuntoConcluído | Booliano | Quando verdadeiro, retorna uma cadeia de caracteres vazia se algum IC for filtrado por restrições de ACL. |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Uma cadeia de caracteres no formato JSON no formato Em que
When not successful, returns one of the errors 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);
Saída: (quebras de linha adicionadas para formatação).
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(cadeia de caracteres groupId, cadeia de caracteres ciSysIds)
Define a lista de ICs manuais para o grupo especificado. A lista de ICs manuais existente é substituída. sysIds de IC não encontrados na tabela cmdb_ci são ignorados.
| Nome | Tipo | Descrição |
|---|---|---|
| groupId | Cadeia de caracteres | O sysId do grupo do CMDB. |
| ciSysIds | Cadeia de caracteres | Lista separada por vírgulas de sysIds de IC. |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Uma cadeia de caracteres no formato JSON no formato Em que
When not successful, returns one of the errors 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);
Saída: (quebras de linha adicionadas para formatação).
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(cadeia de caracteres groupId, cadeia de caracteres queryIds)
Define a lista de IDs de consulta salva para o grupo especificado. A lista de ID de consulta existente é substituída. Os sysIds de consulta não encontrados na tabela qb_saved_query são ignorados.
| Nome | Tipo | Descrição |
|---|---|---|
| groupId | Cadeia de caracteres | O sysId do grupo do CMDB. |
| queryIds | Cadeia de caracteres | Lista separada por vírgulas de sysIds de consulta salva. |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Uma cadeia de caracteres no formato JSON no formato Em que
When not successful, returns one of the errors 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);
Saída: (quebras de linha adicionadas para formatação).
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"}]