IdentificationEngine - com escopo

  • Versão de lançamento: Xanadu
  • Atualizado 1 de ago. de 2024
  • 74 min. de leitura
  • A API IdentificationEngine usa a estrutura de Identificação e Reconciliação para minimizar a criação de itens de configuração (ICs) duplicados e para reconciliar atributos de IC, aceitando somente informações de fontes de dados autorizadas ao atualizar o Configuration Management Database (CMDB).

    Ao usar esta classe em uma aplicação com escopo, use o identificador de namespace sn_cmdb.

    IdentificationEngine - createOrUpdateCI(cadeia de caracteres de origem, entrada de cadeia de caracteres)

    Insere ou atualiza itens de configuração (IC) e ICs nãoConfiguration Management Database (CMDB) (classes que não se estendem de cmdb_ci) no CMDB com base em regras de identificação e reconciliação. Use esta API em vez de atualizar CMDB diretamente.

    Para obter informações adicionais sobre a ingestão de tabelas não pertencentes ao CMDB, consulte IRE support for non-CMDB tables.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    entrada Cadeia de caracteres Obrigatório. Carga de entrada. Uma cadeia de caracteres no formato JSON de itens de configuração a serem adicionados ou atualizados.
    "input" { 
     "items": [Array],
     "referenceItems": [Array],
     "relations": [Array]
    }
    Itens.Entrada Matriz de objetivos Itens a serem adicionados ou atualizados.
    "items": [
      { 
        "className": "String",
        "display_values": {Object},
        "internal_id": "String",
        "lookup": [Array],
        "related": [Array],
        "settings": {Object},
        "sys_object_source_info": {Object},
        "values": {Object}
      }
    ]
    input.items.className Cadeia de caracteres Obrigatório. Nome da classe/tabela, sys_class_name, do item de configuração (IC) a ser criado ou atualizado.

    Este valor pode ser qualquer classe/tabela CMDB, como cmdb_ci_linux_server ou cmdb_ci_win_server.

    input.items.display_values Objeto Campos de referência a serem criados ou atualizados para este item relacionado como pares de nome-valor, em que o nome é o nome do campo e o valor é o valor de exibição referenciado. Se você quiser usar o sys_id em vez do valor de exibição para campos de referência, passe as informações no parâmetro input.items.lookup.values em vez de neste parâmetro.

    Os nomes dos campos de referência dependem dos campos selecionados pelo usuário, como:

    "display_values": {
      "model_id": "String",
      "location": "String"
    }
    input.items.internal_id Cadeia de caracteres Identificador de item exclusivo para a carga associada.

    Pode ser qualquer valor, mas deve ser exclusivo na carga útil.

    pesquisa.itens.entrada Matriz de objetivos Identifica o item de nível superior que contém a pesquisa (identificação baseada em pesquisa). Esses registros são usados para identificar o item de configuração com base em uma tabela de pesquisa que tem uma referência a cmdb_ci.

    Por exemplo:

    "lookup": [
      {
        "className": "String",
        "internal_id": "String",
        "sys_object_source_info": {Object},
        "values": {Object}
      }
    ]
    input.items.lookup.className Cadeia de caracteres Obrigatório. Nome da classe/tabela, sys_class_name, do item de configuração (IC) a ser criado ou atualizado.

    Este valor pode ser qualquer classe/tabela CMDB, como cmdb_serial_number ou cmdb_ci_network_adapter.

    input.items.lookup.internal_id Cadeia de caracteres Identificador de item exclusivo para a carga associada.

    Pode ser qualquer valor, mas deve ser exclusivo na carga útil.

    input.items.lookup.sys_object_source_info Objeto Identificador de IC exclusivo para uma origem específica.
    "sys_object_source_info": { 
      "source_feed": "String",
      "source_name": "String",  
      "source_native_key": "String",
      "source_recency_timestamp": "String"
    } 
    input.items.lookup.sys_object_source_info.source_feed Cadeia de caracteres Se a origem puder ter vários feeds, use este campo para fornecer o nome do feed que envia este item.

    A fonte de dados gera este nome de feed. Pode ser qualquer cadeia de caracteres que identifique exclusivamente o feed de origem.

    input.items.lookup.sys_object_source_info.source_name Cadeia de caracteres Fonte de dados das informações de IC. Este valor deve ser um dos valores de opção definidos para o campo discovery_source da tabela Item de configuração [cmdb_ci].
    input.items.lookup.sys_object_source_info.source_native_key Cadeia de caracteres Chave/ID exclusivo do item da origem.

    A fonte de dados gera esta chave. Pode ser qualquer cadeia de caracteres exclusiva do item.

    input.items.lookup.sys_object_source_info.source_recency_timestamp Cadeia de caracteres Data e hora UTC em que o item foi verificado.

    Formato: AAAA-MM-DD hh:mm:ss

    valores.pesquisa.itens.entrada Objeto Campos a serem criados ou atualizados para este item relacionado como pares de nome/valor, em que o nome é o nome do campo. Para um campo de referência, o valor deve ser o sys_id referenciado. Se você quiser usar o valor de exibição em vez do sys_id para campos de referência, passe essas informações em um objeto display_values em vez de no objeto values.

    Os nomes e tipos de campo dependem dos campos selecionados pelo usuário, como:

    "values": {
      "host_name": "String",
      "ip_address": "String",
      "name": "String",
      "os_name": "String",
      "sys_class_name": "String"
    }
    entrada.itens.relacionados Matriz Referência ao item de nível superior que contém a lista relacionada. As regras na Entrada relacionada [cmdb_related_entry] definem que tipo de registros podem estar nesta matriz. Esses registros são usados para adicionar itens com base em uma tabela relacionada que tem uma referência ao IC que está sendo identificado.

    A tabela relacionada pode ou não estender cmdb_ci. Esses registros não são usados para identificar o item de configuração.

    "related" [
      {
        "className": "String",
        "internal_id": "String",
        "sys_object_source_info": {Object},
        "values": {Object}
      }
    ]
    input.items.related.className Cadeia de caracteres Obrigatório. Nome da classe/tabela, sys_class_name, do item de configuração (IC) a ser criado ou atualizado.

    Este valor pode ser qualquer classe/tabela CMDB, como cmdb_software_instance ou cmdb_key_value.

    input.items.related.internal_id Cadeia de caracteres Identificador de item exclusivo para a carga associada.

    Pode ser qualquer valor, mas deve ser exclusivo na carga útil.

    input.items.related.sys_object_source_info Objeto Identificador de IC exclusivo para uma origem específica.
    "sys_object_source_info": { 
      "source_feed": "String",
      "source_name": "String",  
      "source_native_key": "String",
      "source_recency_timestamp": "String"
    } 
    input.items.related.sys_object_source_info.source_feed Cadeia de caracteres Se a origem puder ter vários feeds, use este campo para fornecer o nome do feed que envia este item.

    A fonte de dados gera este nome de feed. Pode ser qualquer cadeia de caracteres que identifique exclusivamente o feed de origem.

    input.items.related.sys_object_source_info.source_name Cadeia de caracteres Fonte de dados das informações de IC. Este valor deve ser um dos valores de opção definidos para o campo discovery_source da tabela Item de configuração [cmdb_ci].
    input.items.related.sys_object_source_info.source_native_key Cadeia de caracteres Chave/ID exclusivo do item da origem.

    A fonte de dados gera esta chave. Pode ser qualquer cadeia de caracteres exclusiva do item.

    input.items.related.sys_object_source_info.source_recency_timestamp Cadeia de caracteres Data e hora UTC em que o item foi verificado.

    Formato: AAAA-MM-DD hh:mm:ss

    valores.itens.entrada.relacionados Objeto Campos a serem criados ou atualizados para este item relacionado como pares de nome/valor, em que o nome é o nome do campo. Para um campo de referência, o valor deve ser o sys_id referenciado. Se você quiser usar o valor de exibição em vez do sys_id para campos de referência, passe essas informações em um objeto display_values em vez de no objeto values.

    Os nomes e tipos de campo dependem dos campos selecionados pelo usuário, como:

    "values": {
      "host_name": "String",
      "ip_address": "String",
      "name": "String",
      "os_name": "String",
      "sys_class_name": "String"
    }
    configurações.itens.entrada Objeto Parâmetros que definem os tipos de atualizações permitidas.
    "settings": { 
      "skipReclassificationRestrictionRules": Boolean, 
      "updateWithoutDowngrade": Boolean, 
      "updateWithoutSwitch": Boolean,
      "updateWithoutUpgrade": Boolean
    }
    input.items.settings.skipReclassificationRestrictionRules Booliano Sinalizador que indica se o IRE não deve executar a regra de Restrição de Reclassificação que corresponde à classe do item de carga útil.
    Valores válidos:
    • verdadeiro: ignore a execução da regra.
    • falso: executa a regra.

    Padrão: falso

    Itens.Configurações.entrada.AtualizarSemDowngrade Booliano Sinalizador que indica se a atualização e o downgrade são permitidos para este item.
    Valores válidos:
    • verdadeiro: atualize o item, mas o downgrade não é permitido.
    • falso: a atualização e o downgrade do item são permitidos.

    Padrão: falso

    Itens.DeEntrada.Configurações.AtualizarSemAtualizar Booliano Sinalizador que indica se a atualização e o upgrade são permitidos para este item.
    Valores válidos:
    • verdadeiro: atualize o item, mas o upgrade não é permitido.
    • falso: a atualização e o upgrade do item são permitidos.

    Padrão: falso

    configurações.itens.entrada.atualizaçãoSemComutador Booliano Sinalizador que indica se o item pode ser atualizado e a classe alternada.
    Valores válidos:
    • verdadeiro: atualize o item, mas a alternância de classe não é permitida.
    • falso: a atualização do item e a alternância de classe são permitidas.

    Padrão: falso

    input.items.sys_object_source_info Objeto Identificador de IC exclusivo para uma origem específica.
    "sys_object_source_info": { 
      "source_feed": "String",
      "source_name": "String",  
      "source_native_key": "String",
      "source_recency_timestamp": "String"
    } 
    input.items.sys_object_source_info.source_feed Cadeia de caracteres Se a origem puder ter vários feeds, use este campo para fornecer o nome do feed que envia este item.

    A fonte de dados gera este nome de feed. Pode ser qualquer cadeia de caracteres que identifique exclusivamente o feed de origem.

    input.items.sys_object_source_info.source_name Cadeia de caracteres Fonte de dados das informações de IC. Este valor deve ser um dos valores de opção definidos para o campo discovery_source da tabela Item de configuração [cmdb_ci].
    input.items.sys_object_source_info.source_native_key Cadeia de caracteres Chave/ID exclusivo do item da origem.

    A fonte de dados gera esta chave. Pode ser qualquer cadeia de caracteres exclusiva do item.

    input.items.sys_object_source_info.source_recency_timestamp Cadeia de caracteres Data e hora UTC em que o item foi verificado.

    Formato: AAAA-MM-DD hh:mm:ss

    valores.itens.entrada Objeto Campos a serem criados ou atualizados para este item relacionado como pares de nome/valor, em que o nome é o nome do campo. Para um campo de referência, o valor deve ser o sys_id referenciado. Se você quiser usar o valor de exibição em vez do sys_id para campos de referência, passe essas informações em um objeto display_values em vez de no objeto values.

    Os nomes e tipos de campo dependem dos campos selecionados pelo usuário, como:

    "values": {
      "host_name": "String",
      "ip_address": "String",
      "name": "String",
      "os_name": "String",
      "sys_class_name": "String"
    }
    input.referenceItems Matriz de objetivos Lista que define referências entre itens na carga de entrada.
    "referenceItems": [
      { 
        "referenced": "String", 
        "referencedBy": "String", 
        "referenceField": "String" 
      }
    ]
    input.referenceItems.referenced Cadeia de caracteres O internal_id definido para o item que está sendo referenciado por outro item.
    input.referenceItems.referencedBy Cadeia de caracteres O internal_id definido para o item que faz referência a outro item.
    input.referenceItems.referenceField Cadeia de caracteres Nome do campo de referência na classe/tabela do item referencedBy.
    relações.entrada Matriz de objetivos Lista que especifica relacionamentos entre itens na carga útil de entrada.
    Um objeto nesta matriz pode usar um de dois formatos.
    • O objeto pode definir um relacionamento entre dois itens de nível superior (somente) usando pares de nome-valor parent e child, com valores que representam índices de item da matriz de carga items.
      "relations": [
        {
          "child": Number,
          "parent": Number,
          "sys_rel_source_info": {Object},
          "type": "String"
        }
      ]
    • O objeto pode definir um relacionamento entre quaisquer dois itens, incluindo itens de nível superior, relacionados ou de pesquisa, usando parent_id e child_id pares de chave/valor, com valores que representam internal_id valores definidos para esses itens.
      "relations": [
        {
          "child_id": "String",
          "parent_id": "String",
          "sys_rel_source_info": {Object},
          "type": "String"
        }
      ]
    input.relations.child Número Índice inteiro do objeto de IC na matriz items que representa o elemento secundário no relacionamento (itens, items.related ou items.lookup.)
    input.relations.child_id Cadeia de caracteres O internal_id do item secundário na relação (itens, itens.related ou items.lookup.)
    input.relations.parent Número Índice inteiro do item primário na matriz items (itens, itens.related ou itens.lookup.)
    input.relations.parent_id Cadeia de caracteres O internal_id do item primário na relação (itens, itens.related ou itens.lookup.)
    input.relations.sys_rel_source_info Objeto Informações de origem da descoberta para o relacionamento. Para relacionamentos de não dependência, essas informações são salvas na tabela Origens de relacionamento [sys_rel_source] (não persistentes para métodos Identifique-se de CIEnhanced () ou Identifique -se de CI().)

    Tipo de dados: objeto

    "sys_rel_source_info": { 
      "source_name": "String", 
      "source_feed": "String" 
    } 
    input.relations.sys_rel_source_info.source_name Cadeia de caracteres Nome da origem da descoberta.

    Padrão: origem de descoberta aprovada no parâmetro de método da API.

    input.relations.sys_rel_source_info.source_feed Cadeia de caracteres Qualquer cadeia de caracteres que seja uma subdescoberta/verificação na origem da descoberta.

    Padrão: 'UNKNOWN' é armazenado na coluna source_feed ao criar um registro na tabela sys_rel_source.

    input.relations.type Cadeia de caracteres Tipo de relacionamento que existe entre os itens primários e secundários. Deve ser um valor de campo de nome da tabela Tipo de relacionamento de IC [cmdb_rel_type].
    origem Cadeia de caracteres Identifica a fonte de dados das informações de IC. Este valor deve ser um dos valores de opção definidos para o campo discovery_source da tabela cmdb_ci.
    Tabela 2. Retorna
    Tipo Descrição
    <String> Cadeia de caracteres no formato JSON que é uma lista de resultados dos itens de configuração na cadeia de caracteres de entrada. Cada cadeia de caracteres de resultado está no formato 'itens: [{}], relações: [{}]', em que cada item nas listas de itens e relações contém pares de nome-valor.

    Tipo de dados: cadeia de caracteres

    <String>.additionalCommittedItems Nenhum valor é retornado no momento.
    <String>.additionalCommittedRelations Nenhum valor é retornado no momento.
    <String>.itens Descrição dos ICs criados ou atualizados.

    Tipo de dados: objeto

    "items": { 
      "additionalRelatedItems": [Array],
      "className": "String",
      "duplicateIndices": [Array],
      "errorCount": Number,
      "errors": [Array],
      "identificationAttempts": [Array],
      "identifierEntrySysId": "String",
      "info": [Array],
      "inputIndices": [Array],
      "maskedAttributes": [Array],
      "operation": "String",
      "relatedItems": [Array],
      "relatedSysIds": [Array],
      "sysId": "String"
    }
    <String>.items.additionalRelatedItems Lista de informações sobre pesquisa adicional e itens relacionados que foram processados, mas não fornecidos como parte da carga de entrada. Esses itens são de cargas parciais.

    Essas informações não são retornadas no momento.

    Tipo de dados: matriz de objetos

    "additionalRelatedItems": [ 
      {
        "className": "String", 
        "inputIndices": [Array], 
        "operation": "String",
        "sysId": "String"
      }
    ]
    <String>.items.additionalRelatedItems.className Nome da classe/tabela (sys_class_name) do IC que foi criado ou atualizado.

    Tipo de dados: cadeia de caracteres

    <String>.itens.adicionaisRelatedItems.inputIndices Índice do item de entrada correspondente. Para itens de nível superior, é uma lista de números inteiros. Para itens relacionados ou de pesquisa, é a lista de objetos JSON.

    Tipo de dados: matriz de números ou matriz de objetos

    "inputIndices": [
      { 
       "mainIndex": Number, 
       "subIndex": Number 
      }
    ]
    <String>.itens.adicionaisItensRelacionados.InputIndices.mainIndex Valor de índice da matriz items do corpo da solicitação que corresponde ao IC primário do item relacionado adicional.

    Tipo de dados: número

    <String>.itens.adicionaisRelatedItems.inputIndices.subIndex Valor de índice da matriz items.lookup do corpo da solicitação que corresponde ao item relacionado adicional.

    Tipo de dados: número

    <String>.itens.adicionaisItensRelacionados.operação Tipo de operação.

    Valores possíveis:

    • INSERIR: o novo IC foi inserido no banco de dados.
    • NO_CHANGE: nenhuma mudança de IC foi feita.
    • UPDATE: o IC existente foi atualizado.

    Tipo de dados: cadeia de caracteres

    <String>.items.additionalRelatedItems.sysId Sys_id dos itens relacionados adicionais.

    Tipo de dados: cadeia de caracteres

    <String>.items.className Nome da classe/tabela (sys_class_name) do IC que foi criado ou atualizado.

    Tipo de dados: cadeia de caracteres

    <String>.itens.Indicesduplicados Lista de índices de ICs que são duplicatas do item atual.

    Tipo de dados: matriz

    <String>.items.errorCount Número de erros.

    Tipo de dados: número

    <String>.itens.erros Lista de erros encontrados ao processar este IC.

    Tipo de dados: matriz de objetos

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    <String>.itens.erros.erro Tipo de erro encontrado ao processar o IC.

    Tipo de dados: cadeia de caracteres

    <String>.itens.erros.mensagem Mensagem de erro associada ao erro.

    Tipo de dados: cadeia de caracteres

    <String>.itens.identificaçãoTentativas Lista de tentativas feitas para identificar os ICs.

    Tipo de dados: matriz de objetos

    "identificationAttempts": [
      { 
        "attemptResult": "String", 
        "attributes": [Array],
        "hybridEntryCiAttributes": [Array],
        "identifierName": "String",
        "searchOnTable": "String" 
      }
    ]
    <String>.itens.identificaçãoTentativas.tentativaResultado Resultados da tentativa de identificar o IC.

    Valores possíveis:

    • CORRESPONDIDO: identificação bem-sucedida. Foi encontrado um IC exclusivo na tabela de regras do identificador que corresponde exatamente aos atributos especificados.
    • MULTI_MATCH: falha na identificação com um erro. ICs duplicados foram encontrados na tabela de regras do identificador ao corresponder aos atributos especificados.
    • NO_MATCH: falha na identificação. Nenhum IC foi encontrado na tabela de regras do identificador que corresponda aos atributos especificados.
    • Ignorado: tentativa de identificação sem tentativa. Os atributos necessários para esta pesquisa de tabela de regras de identificador não foram fornecidos, portanto, a regra não foi aplicada.

    Tipo de dados: cadeia de caracteres

    <String>.itens.identificaçãoTentativas.atributos Lista de atributos de entrada do identificador de IC que foram usados durante o processo de identificação.

    Tipo de dados: matriz

    Os nomes e tipos de atributo dependem dos dados do corpo da solicitação e do identificador em uso, como:

    "attributes": [
      "serial_number": "String",
      "serial_number_type": "String",
    ]
    <String>.items.identificationAttempts.hybridEntryCiAttributes Nenhum valor é retornado no momento.
    <String>.itens.identificaçãoTentativas.identificadorNome Regra de identificador usada para esta tentativa de identificação de IC.

    Tipo de dados: cadeia de caracteres

    <String>.itens.identificaçãoTentativas.pesquisaNaTabela Nome da tabela pesquisada durante o processo de identificação.

    Tipo de dados: cadeia de caracteres

    <String>.items.identifierEntrySysId Sys_id da regra do identificador usada para identificar o IC. Localizado na tabela Entrada do identificador [cmdb_identifier_entry].

    Tipo de dados: cadeia de caracteres

    <String>.itens.info Lista que contém informações adicionais sobre o processamento do item.

    Tipo de dados: matriz de objetos

    "info": [
      {
        "code": "String",
        "message": "String",
        "ruleSysId": "String"
      }
    ]
    <String>.itens.info.código Tipo de reclassificação que foi ignorado.
    Valores possíveis:
    • SKIPPED_CLASS_SWITCH
    • SKIPPED_CLASS_DOWNGRADE
    • SKIPPED_CLASS_UPGRADE

    Tipo de dados: cadeia de caracteres

    <String>.itens.informações.mensagem Mensagem que fornece informações adicionais sobre o motivo para ignorar a reclassificação.

    Tipo de dados: cadeia de caracteres

    <String>.items.info.ruleSysId Sys_id da regra de restrição de reclassificação que foi correspondida. Aplicável somente quando o IRE ignora a reclassificação devido à regra de restrição de reclassificação. Este valor ficará vazio se a reclassificação for ignorada devido a uma carga útil ou sinalizador global.

    Tipo de dados: cadeia de caracteres

    <String>.itens.InputIndices Valores de índice para ICs da matriz items do corpo da solicitação que correspondem a este IC.

    Tipo de dados: matriz

    <String>.itens.atributosmascarados Lista de atributos cuja atualização por uma fonte de dados não autorizada foi ignorada conforme definido pelas Regras de reconciliação.

    Tipo de dados: matriz

    <String>.itens.itens.relacionados Lista que fornece informações sobre os itens relacionados processados.

    Tipo de dados: matriz de objetos

    "relatedItems": [
      { 
        "className": "String",
        "errors": [Array],
        "errorCount": Number, 
        "inputIndices": [Array],
        "operation": "String",
        "sysId": "String"
      }
    ]
    <String>.items.relatedItems.className Nome da classe/tabela (sys_class_name) do item relacionado.

    Tipo de dados: cadeia de caracteres

    <String>.itens.itens.relacionados.erros Lista de erros ocorridos durante o processamento.

    Tipo de dados: matriz de objetos

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    <String>.items.relatedItems.errorCount Número de erros detectados durante o processamento.

    Tipo de dados: número

    <String>.itens.itens.relacionados.IndicesDeEntrada Índices dos itens relacionados correspondentes.

    Tipo de dados: matriz ou números

    "inputIndices": [
      { 
       "mainIndex": Number, 
       "subIndex": Number 
      }
    ]
    <String>.itens.relatedItems.inputIndices.mainIndex Valor inteiro da matriz items do corpo da solicitação que corresponde ao IC primário do item relacionado.

    Tipo de dados: número

    <String>.itens.itens.relacionados.InputIndices.subIndex Valor inteiro da matriz items.lookup do corpo da solicitação que corresponde ao item relacionado.

    Tipo de dados: número

    <String>.itens.itens.relacionados.operação Tipo de operação.

    Valores possíveis:

    • INSERIR: o novo IC foi inserido no banco de dados.
    • NO_CHANGE: nenhuma mudança de IC foi feita.
    • UPDATE: o IC existente foi atualizado.

    Tipo de dados: cadeia de caracteres

    <String>.items.relatedSysIds Lista dos valores de sys_id para itens relacionados (itens de pesquisa de tabela) da matriz items.lookup do corpo da solicitação.

    Valores notáveis - nulo: nenhum sys_id foi identificado para este item relacionado.

    Tipo de dados: matriz

    <String>.itens.sys_id Sys_id do IC que foi atualizado ou criado.

    Tipo de dados: cadeia de caracteres

    <String>.relações Informações sobre as relações processadas.

    Tipo de dados: matriz de objetos

    "relations":[
      { 
        "className": "String",
        "errorCount": Number,
        "inputIndices": [Array],
        "operation": "String",
        "sysId": "String" 
      }
    ]
    <String>.relations.className Sys_class_name deste IC de relacionamento dependente.

    Somente valor compatível: cmdb_rel_ci: tabela de relacionamento de IC.

    Tipo de dados: cadeia de caracteres

    <String>.relations.errorCount Número de erros.

    Tipo de dados: número

    <String>.relations.inputIndices Índices das relações de entrada correspondentes.

    Tipo de dados: matriz

    <String>.relacionamento.operação Tipo de operação realizada.

    Valores possíveis:

    • INSERT
    • UPDATE
    • SEM MUDANÇAS

    Tipo de dados: cadeia de caracteres

    <String>.relations.sysId Sys_id do IC de relacionamento dependente.

    Tipo de dados: cadeia de caracteres

    Veja a seguir como reclassificar um item de configuração.

    var payload = {
      "items": [
        {
          "className": "cmdb_ci_win_server",
          "values": {
            "short_description": "Linux server description",
            "name": "Linux Server 1"
          }
        }
      ]
    };
    
    var input = JSON.stringify(payload);
    var output = sn_cmdb.IdentificationEngine.createOrUpdateCI('ServiceNow', input);
    
    gs.info(JSON.stringify(JSON.parse(output), null, 2));

    Saída:

    {
      "items": [
        {
          "className": "cmdb_ci_linux_server",
          "operation": "NO_CHANGE",
          "sysId": "440577800f321010150efc91ff767e94",
          "identifierEntrySysId": "556eb250c3400200d8d4bea192d3ae92",
          "identificationAttempts": [
            {
              "attributes": [],
              "info": "sys_object_source SKIPPED",
              "identifierName": "",
              "attemptResult": "SKIPPED",
              "hybridEntryCiAttributes": []
            },
            {
              "attributes": [
                "serial_number",
                "serial_number_type"
              ],
              "identifierName": "Hardware Rule",
              "attemptResult": "SKIPPED",
              "searchOnTable": "cmdb_serial_number",
              "hybridEntryCiAttributes": []
            },
            {
              "attributes": [
                "serial_number"
              ],
              "identifierName": "Hardware Rule",
              "attemptResult": "SKIPPED",
              "searchOnTable": "cmdb_ci_hardware",
              "hybridEntryCiAttributes": []
            },
            {
              "attributes": [
                "name"
              ],
              "identifierName": "Hardware Rule",
              "attemptResult": "MATCHED",
              "searchOnTable": "cmdb_ci_hardware",
              "hybridEntryCiAttributes": []
            }
          ],
          "info": [
            {
              "message": "CI Reclassification not allowed from class: [cmdb_ci_linux_server] to [cmdb_ci_win_server] by a reclassification restriction rule",
              "code": "SKIPPED_CLASS_SWITCH",
              "ruleSysId": "b3d4b3800f321010150efc91ff767eab"
            }
          ],
          "errorCount": 0,
          "warningCount": 0,
          "markers": [],
          "inputIndices": [
            0
          ],
          "mergedPayloadIds": []
        }
      ],
      "additionalCommittedItems": [],
      "relations": [],
      "additionalCommittedRelations": []
    }

    Veja a seguir como atualizar um item de configuração.

    var payload = {
    "items": [
    {
     "className": "cmdb_ci_win_server", 
     "values": {
       "chassis_type": "Desktop",
       "os": "Windows 2012 R2 Datacenter",
       "name": "Windows2012Server1",
       "serial_number": "0000-0011-1690-8730-8636-5722-52",
       "cpu_count": "1"
      },
      "lookup": [
      {
         "values": {
           "valid": "true",
           "serial_number": "0000-0011-1690-8730-8636-5722-52",
           "serial_number_type": "bios"
          },
         "className": "cmdb_serial_number"
       },
       {
         "values": {
           "valid": "true",
           "serial_number": "3311-9736-4988-9744-1749-4183-41",
           "serial_number_type": "chassis"
          },
         "className": "cmdb_serial_number"
       }],
    
        "internal_id": "16777219",
        "sys_object_source_info": {
          "source_feed": "SN Discovery Feed 1",
          "source_name": "ServiceNow",
          "source_native_key": "16777219",
          "source_recency_timestamp": "2019-10-18 08:31:23"
       }},
       {  
       "className": "cmdb_ci_spkg",
       "values": {
         "name": "Windows 2012 R2 Datacenter",
         "key": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL"
         },
    
      "related": [
        {
          "internal_id": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777219",
          "values": {
            "name": "Windows 2012 R2 Datacenter-SAMLABVM52"
          },
          "className": "cmdb_software_instance",
          "sys_object_source_info": {
            "source_feed": "SN Discovery Feed 1",
            "source_name": "ServiceNow",
            "source_native_key": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777219"
      }}]}, 
      {
      "className": "cmdb_ci_app_server_tomcat",
      "values": {
        "running_process_key_parameters": "/opt/OV/nonOV/tomcat/b/temp org.apache.catalina.startup.Bootstrap start",
        "install_directory": "/opt/OV/nonOV/tomcat/b",
        "name": "Tomcat@hpom9:3443",
        "server_port": "8006",
        "sys_class_name": "cmdb_ci_app_server_tomcat"
      },
    
      "internal_id": "tomcat_id"
      }],
    
    "relations": [
      {
        "parent_id": "tomcat_id",
        "child_id": "16777219",
        "type": "Runs on::Runs"
      }],
    
    "referenceItems": [
      {
        "referenceField": "installed_on",
        "referenced": "16777219",
        "referencedBy": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777219"
      }]};
    
    var input = JSON.stringify(payload);
    var output = sn_cmdb.IdentificationEngine.createOrUpdateCI('ServiceNow', input);
    
    gs.info(JSON.stringify(JSON.parse(output), null, 2));

    Saída:

    {
      "items": [
        {
          "className": "cmdb_ci_win_server",
          "operation": "INSERT",
          "sysId": "d56ab6eadbd510102f67dfea5e96194e",
          "relatedSysIds": [
            "dd6af62adb1910102f67dfea5e96197f",
            "996af62adb1910102f67dfea5e961980"
          ],
          "relatedItems": [
            {
              "errors": [],
              "operation": "INSERT",
              "errorCount": 0,
              "mergedPayloadIds": [],
              "warningCount": 0,
              "sysId": "dd6af62adb1910102f67dfea5e96197f",
              "markers": [],
              "inputIndices": [
                {
                  "mainIndex": 0,
                  "subIndex": 0
                }
              ],
              "className": "cmdb_serial_number"
            },
            {
              "errors": [],
              "operation": "INSERT",
              "errorCount": 0,
              "mergedPayloadIds": [],
              "warningCount": 0,
              "sysId": "996af62adb1910102f67dfea5e961980",
              "markers": [],
              "inputIndices": [
                {
                  "mainIndex": 0,
                  "subIndex": 1
                }
              ],
              "className": "cmdb_serial_number"
            }
          ],
          "identifierEntrySysId": "Unknown",
          "identificationAttempts": [
            {
              "info": "sys_object_source NO_MATCH",
              "identifierName": "",
              "attemptResult": "NO_MATCH",
              "attributes": [],
              "hybridEntryCiAttributes": []
            },
            {
              "identifierName": "Hardware Rule",
              "attemptResult": "NO_MATCH",
              "attributes": [
                "serial_number",
                "serial_number_type"
              ],
              "searchOnTable": "cmdb_serial_number",
              "hybridEntryCiAttributes": []
            },
            {
              "identifierName": "Hardware Rule",
              "attemptResult": "NO_MATCH",
              "attributes": [
                "serial_number"
              ],
              "searchOnTable": "cmdb_ci_hardware",
              "hybridEntryCiAttributes": []
            },
            {
              "identifierName": "Hardware Rule",
              "attemptResult": "NO_MATCH",
              "attributes": [
                "name"
              ],
              "searchOnTable": "cmdb_ci_hardware",
              "hybridEntryCiAttributes": []
            },
            {
              "identifierName": "Hardware Rule",
              "attemptResult": "SKIPPED",
              "attributes": [
                "mac_address",
                "name"
              ],
              "searchOnTable": "cmdb_ci_network_adapter",
              "hybridEntryCiAttributes": []
            }
          ],
          "errorCount": 0,
          "mergedPayloadIds": [],
          "warningCount": 0,
          "markers": [],
          "inputIndices": [
            0
          ]
        },
        {
          "className": "cmdb_ci_spkg",
          "operation": "INSERT",
          "sysId": "116af62adb1910102f67dfea5e961981",
          "relatedSysIds": [
            "6d6af62adb1910102f67dfea5e961984"
          ],
          "relatedItems": [
            {
              "errors": [],
              "operation": "INSERT",
              "errorCount": 0,
              "mergedPayloadIds": [],
              "warningCount": 0,
              "sysId": "6d6af62adb1910102f67dfea5e961984",
              "markers": [],
              "inputIndices": [
                {
                  "mainIndex": 1,
                  "subIndex": 0
                }
              ],
              "className": "cmdb_software_instance"
            }
          ],
          "identifierEntrySysId": "Unknown",
          "identificationAttempts": [
            {
              "info": "sys_object_source SKIPPED",
              "identifierName": "",
              "attemptResult": "SKIPPED",
              "attributes": [],
              "hybridEntryCiAttributes": []
            },
            {
              "identifierName": "Software",
              "attemptResult": "NO_MATCH",
              "attributes": [
                "key"
              ],
              "searchOnTable": "cmdb_ci_spkg",
              "hybridEntryCiAttributes": []
            }
          ],
          "errorCount": 0,
          "mergedPayloadIds": [],
          "warningCount": 0,
          "markers": [],
          "inputIndices": [
            1
          ]
        },
        {
          "className": "cmdb_ci_app_server_tomcat",
          "operation": "INSERT",
          "sysId": "e96af62adb1910102f67dfea5e961985",
          "identifierEntrySysId": "Unknown",
          "identificationAttempts": [
            {
              "info": "sys_object_source SKIPPED",
              "identifierName": "",
              "attemptResult": "SKIPPED",
              "attributes": [],
              "hybridEntryCiAttributes": []
            }
          ],
          "errorCount": 0,
          "mergedPayloadIds": [],
          "warningCount": 0,
          "markers": [],
          "inputIndices": [
            2
          ]
        }
      ],
      "additionalCommittedItems": [],
      "relations": [
        {
          "className": "cmdb_rel_ci",
          "operation": "INSERT",
          "sysId": "e96af62adb1910102f67dfea5e961989",
          "identifierEntrySysId": "Unknown",
          "errorCount": 0,
          "mergedPayloadIds": [],
          "warningCount": 0,
          "markers": [],
          "inputIndices": [
            0
          ]
        }
      ],
      "additionalCommittedRelations": []
    }

    Identifique um IC dependente.

    var payload = 
                  {items: [ 
                        {className:'cmdb_ci_web_server', 
                         values: {name:'apache linux den 200', 
                                  running_process_command: 'xyz',  
                                  running_process_key_parameters: 'abc', 
                                  tcp_port:'3452'}}, 
                        {className:'cmdb_ci_linux_server', 
                         values: {name:'lnux100', ram:'2048'}}],
                   relations:[{parent: 0, child: 1, type: 'Runs on::Runs'}]
                  };
    
    var input = JSON.stringify(payload);
    var output = sn_cmdb.IdentificationEngine.createOrUpdateCI('ServiceNow', input);
    
    gs.info(JSON.stringify(JSON.parse(output), null, 2));

    Saída:

    {
      "items": [
        {
          "className": "cmdb_ci_web_server",
          "operation": "INSERT",
          "sysId": "b9bb766adb1910102f67dfea5e961962",
          "identifierEntrySysId": "Unknown",
          "identificationAttempts": [
            {
              "info": "sys_object_source SKIPPED",
              "identifierName": "",
              "attemptResult": "SKIPPED",
              "attributes": [],
              "hybridEntryCiAttributes": []
            },
            {
              "info": "sys_object_source SKIPPED",
              "identifierName": "",
              "attemptResult": "SKIPPED",
              "attributes": [],
              "hybridEntryCiAttributes": []
            }
          ],
          "errorCount": 0,
          "mergedPayloadIds": [],
          "warningCount": 0,
          "markers": [],
          "inputIndices": [
            0
          ]
        },
        {
          "className": "cmdb_ci_linux_server",
          "operation": "INSERT",
          "sysId": "a5bb766adb1910102f67dfea5e96195b",
          "identifierEntrySysId": "Unknown",
          "identificationAttempts": [
            {
              "info": "sys_object_source SKIPPED",
              "identifierName": "",
              "attemptResult": "SKIPPED",
              "attributes": [],
              "hybridEntryCiAttributes": []
            },
            {
              "identifierName": "Hardware Rule",
              "attemptResult": "SKIPPED",
              "attributes": [
                "serial_number",
                "serial_number_type"
              ],
              "searchOnTable": "cmdb_serial_number",
              "hybridEntryCiAttributes": []
            },
            {
              "identifierName": "Hardware Rule",
              "attemptResult": "SKIPPED",
              "attributes": [
                "serial_number"
              ],
              "searchOnTable": "cmdb_ci_hardware",
              "hybridEntryCiAttributes": []
            },
            {
              "identifierName": "Hardware Rule",
              "attemptResult": "NO_MATCH",
              "attributes": [
                "name"
              ],
              "searchOnTable": "cmdb_ci_hardware",
              "hybridEntryCiAttributes": []
            },
            {
              "identifierName": "Hardware Rule",
              "attemptResult": "SKIPPED",
              "attributes": [
                "mac_address",
                "name"
              ],
              "searchOnTable": "cmdb_ci_network_adapter",
              "hybridEntryCiAttributes": []
            }
          ],
          "errorCount": 0,
          "mergedPayloadIds": [],
          "warningCount": 0,
          "markers": [],
          "inputIndices": [
            1
          ]
        }
      ],
      "additionalCommittedItems": [],
      "relations": [
        {
          "className": "cmdb_rel_ci",
          "operation": "INSERT",
          "sysId": "fdbb766adb1910102f67dfea5e961964",
          "identifierEntrySysId": "Unknown",
          "errorCount": 0,
          "mergedPayloadIds": [],
          "warningCount": 0,
          "markers": [],
          "inputIndices": [
            0
          ]
        }
      ],
      "additionalCommittedRelations": []
    }

    Identifique um IC independente com a identificação baseada em pesquisa.

    var payload = {items: [
               {className:'cmdb_ci_netgear', 
                   values: {name:'ny8500-nbxs08',
                            ports:'1200'}, 
                   lookup: [{className:'cmdb_serial_number',
                                values:{serial_number:'1234ABCD', serial_number_type:'uuid',absent:'false',valid:'true'}},
                            {className:'cmdb_serial_number',
                                values:{serial_number:'3456EFGH', serial_number_type:'system',absent:'false',valid:'true'}}]}]};
    
    var input = JSON.stringify(payload);
    var output = sn_cmdb.IdentificationEngine.createOrUpdateCI('ServiceNow', input);
    
    gs.info(JSON.stringify(JSON.parse(output), null, 2));

    Saída:

    {
      "items": [
        {
          "className": "cmdb_ci_netgear",
          "operation": "INSERT",
          "sysId": "787c7e6adb1910102f67dfea5e96196e",
          "relatedSysIds": [
            "f47c7e6adb1910102f67dfea5e961977",
            "3c7c7e6adb1910102f67dfea5e961977"
          ],
          "relatedItems": [
            {
              "errors": [],
              "operation": "INSERT",
              "errorCount": 0,
              "mergedPayloadIds": [],
              "warningCount": 0,
              "sysId": "f47c7e6adb1910102f67dfea5e961977",
              "markers": [],
              "inputIndices": [
                {
                  "mainIndex": 0,
                  "subIndex": 0
                }
              ],
              "className": "cmdb_serial_number"
            },
            {
              "errors": [],
              "operation": "INSERT",
              "errorCount": 0,
              "mergedPayloadIds": [],
              "warningCount": 0,
              "sysId": "3c7c7e6adb1910102f67dfea5e961977",
              "markers": [],
              "inputIndices": [
                {
                  "mainIndex": 0,
                  "subIndex": 1
                }
              ],
              "className": "cmdb_serial_number"
            }
          ],
          "identifierEntrySysId": "Unknown",
          "identificationAttempts": [
            {
              "info": "sys_object_source SKIPPED",
              "identifierName": "",
              "attemptResult": "SKIPPED",
              "attributes": [],
              "hybridEntryCiAttributes": []
            },
            {
              "identifierName": "Hardware Rule",
              "attemptResult": "NO_MATCH",
              "attributes": [
                "serial_number",
                "serial_number_type"
              ],
              "searchOnTable": "cmdb_serial_number",
              "hybridEntryCiAttributes": []
            },
            {
              "identifierName": "Hardware Rule",
              "attemptResult": "SKIPPED",
              "attributes": [
                "serial_number"
              ],
              "searchOnTable": "cmdb_ci_hardware",
              "hybridEntryCiAttributes": []
            },
            {
              "identifierName": "Hardware Rule",
              "attemptResult": "NO_MATCH",
              "attributes": [
                "name"
              ],
              "searchOnTable": "cmdb_ci_hardware",
              "hybridEntryCiAttributes": []
            },
            {
              "identifierName": "Hardware Rule",
              "attemptResult": "SKIPPED",
              "attributes": [
                "mac_address",
                "name"
              ],
              "searchOnTable": "cmdb_ci_network_adapter",
              "hybridEntryCiAttributes": []
            }
          ],
          "errorCount": 0,
          "mergedPayloadIds": [],
          "warningCount": 0,
          "markers": [],
          "inputIndices": [
            0
          ]
        }
      ],
      "additionalCommittedItems": [],
      "relations": [],
      "additionalCommittedRelations": []
    }

    IdentificationEngine - createOrUpdateCIEnhanced (cadeia de caracteres de origem, entrada de cadeia de caracteres, opções de objeto)

    Insere ou atualiza itens de configuração (IC) e ICs nãoConfiguration Management Database (CMDB) (classes que não se estendem de cmdb_ci) no CMDB com base em regras de identificação e reconciliação. Use esta API em vez de atualizar CMDB diretamente.

    Além de fornecer a funcionalidade do método createOrUpdateCI(), este método também é compatível com:
    • Manipulação de cargas parciais
    • Manipulação de confirmações parciais
    • Como remover itens duplicados em uma carga útil
    • Gerando resumos de saída
    Para obter informações adicionais sobre o IRE e explicações mais detalhadas dos dados usados por este método, consulte Identificação e reconciliação (IRE).

    Para obter informações adicionais sobre a ingestão de tabelas não pertencentes ao CMDB, consulte IRE support for non-CMDB tables.

    Tabela 3. Parâmetros
    Nome Tipo Descrição
    entrada Cadeia de caracteres Obrigatório. Carga de entrada. Uma cadeia de caracteres no formato JSON de itens de configuração a serem adicionados ou atualizados.
    "input" { 
     "items": [Array],
     "referenceItems": [Array],
     "relations": [Array]
    }
    Itens.Entrada Matriz de objetivos Itens a serem adicionados ou atualizados.
    "items": [
      { 
        "className": "String",
        "display_values": {Object},
        "internal_id": "String",
        "lookup": [Array],
        "related": [Array],
        "settings": {Object},
        "sys_object_source_info": {Object},
        "values": {Object}
      }
    ]
    input.items.className Cadeia de caracteres Obrigatório. Nome da classe/tabela, sys_class_name, do item de configuração (IC) a ser criado ou atualizado.

    Este valor pode ser qualquer classe/tabela CMDB, como cmdb_ci_linux_server ou cmdb_ci_win_server.

    input.items.display_values Objeto Campos de referência a serem criados ou atualizados para este item relacionado como pares de nome-valor, em que o nome é o nome do campo e o valor é o valor de exibição referenciado. Se você quiser usar o sys_id em vez do valor de exibição para campos de referência, passe as informações no parâmetro input.items.lookup.values em vez de neste parâmetro.

    Os nomes dos campos de referência dependem dos campos selecionados pelo usuário, como:

    "display_values": {
      "model_id": "String",
      "location": "String"
    }
    input.items.internal_id Cadeia de caracteres Identificador de item exclusivo para a carga associada.

    Pode ser qualquer valor, mas deve ser exclusivo na carga útil.

    pesquisa.itens.entrada Matriz de objetivos Identifica o item de nível superior que contém a pesquisa (identificação baseada em pesquisa). Esses registros são usados para identificar o item de configuração com base em uma tabela de pesquisa que tem uma referência a cmdb_ci.

    Por exemplo:

    "lookup": [
      {
        "className": "String",
        "internal_id": "String",
        "sys_object_source_info": {Object},
        "values": {Object}
      }
    ]
    input.items.lookup.className Cadeia de caracteres Obrigatório. Nome da classe/tabela, sys_class_name, do item de configuração (IC) a ser criado ou atualizado.

    Este valor pode ser qualquer classe/tabela CMDB, como cmdb_serial_number ou cmdb_ci_network_adapter.

    input.items.lookup.internal_id Cadeia de caracteres Identificador de item de pesquisa exclusivo para a carga associada.

    Pode ser qualquer valor, mas deve ser exclusivo na carga útil.

    input.items.lookup.sys_object_source_info Objeto Define um identificador de IC exclusivo para uma fonte de dados específica. Origens diferentes podem ter pares de nome-valor diferentes para o mesmo IC.
    "sys_object_source_info": { 
      "source_feed": "String",
      "source_name": "String",  
      "source_native_key": "String",
      "source_recency_timestamp": "String"
    } 
    input.items.lookup.sys_object_source_info.source_feed Cadeia de caracteres Se a origem puder ter vários feeds, use este campo para fornecer o nome do feed que envia este item.

    A fonte de dados gera este nome de feed. Pode ser qualquer cadeia de caracteres que identifique exclusivamente o feed de origem.

    input.items.lookup.sys_object_source_info.source_name Cadeia de caracteres Fonte de dados das informações de IC. Este valor deve ser um dos valores de opção definidos para o campo discovery_source da tabela Item de configuração [cmdb_ci].
    input.items.lookup.sys_object_source_info.source_native_key Cadeia de caracteres ID de chave exclusivo para o item da origem.

    A fonte de dados gera esta chave. Pode ser qualquer cadeia de caracteres exclusiva do item.

    input.items.lookup.sys_object_source_info.source_recency_timestamp Cadeia de caracteres Data/hora UTC em que o item foi verificado.

    Formato: AAAA-MM-DD hh:mm:ss

    valores.pesquisa.itens.entrada Objeto Informações de campo para o IC como pares de nome-valor, em que o nome é o nome do campo. Ao atualizar campos de referência, o valor deve ser o sys_id referenciado.

    Os nomes e tipos de campo dependem dos campos selecionados pelo usuário, como:

    "values": {
      "serial_number": "String",
      "serial_number_type": "String",
      "valid": "String",
      "ip_address": "String",
      "mac_address": "String"
    }
    input.items.related.className Cadeia de caracteres Obrigatório. Nome da classe/tabela, sys_class_name, do item de configuração (IC) a ser criado ou atualizado.

    Este valor pode ser qualquer classe/tabela CMDB, como cmdb_software_instance ou cmdb_key_value.

    input.items.related.internal_id Cadeia de caracteres Identificador exclusivo para este item relacionado nesta carga. Pode ser qualquer valor, mas deve ser exclusivo na carga útil.
    input.items.related.sys_object_source_info Objeto Objeto que compõe um identificador de IC exclusivo para uma fonte de dados especificada. Origens diferentes podem ter pares de nome-valor diferentes para o mesmo IC.
    "sys_object_source_info": { 
      "source_feed": "String",
      "source_name": "String",  
      "source_native_key": "String",
      "source_recency_timestamp": "String"
    } 
    input.items.related.sys_object_source_info.source_feed Cadeia de caracteres Se a origem puder ter vários feeds, use este campo para fornecer o nome do feed que envia este item.

    A fonte de dados gera este nome de feed. Pode ser qualquer cadeia de caracteres que identifique exclusivamente o feed de origem.

    input.items.related.sys_object_source_info.source_name Cadeia de caracteres Identifica a fonte de dados das informações de IC. Este valor deve ser um dos valores de opção definidos para o campo discovery_source da tabela Item de configuração [cmdb_ci].
    input.items.related.sys_object_source_info.source_native_key Cadeia de caracteres Chave/ID exclusiva da origem do item relacionado.

    A fonte de dados gera esta chave. Pode ser qualquer cadeia de caracteres exclusiva do item.

    input.items.related.sys_object_source_info.source_recency_timestamp Cadeia de caracteres Data e hora UTC em que o item foi verificado.

    Formato: AAAA-MM-DD hh:mm:ss

    valores.itens.entrada.relacionados Objeto Campos a serem criados ou atualizados para este item relacionado como pares de nome/valor, em que o nome é o nome do campo. Para um campo de referência, o valor deve ser o sys_id referenciado. Se você quiser usar o valor de exibição em vez do sys_id para campos de referência, passe essas informações em um objeto display_values em vez de no objeto values.

    Os nomes e tipos de campo dependem dos campos selecionados pelo usuário, como:

    "values": {
      "host_name": "String",
      "ip_address": "String",
      "name": "String",
      "os_name": "String",
      "sys_class_name": "String"
    }
    configurações.itens.entrada Objeto Parâmetros que definem os tipos de atualizações permitidas.
    "settings": { 
      "skipReclassificationRestrictionRules": Boolean, 
      "updateWithoutDowngrade": Boolean, 
      "updateWithoutSwitch": Boolean,
      "updateWithoutUpgrade": Boolean
    }
    input.items.settings.skipReclassificationRestrictionRules Booliano Sinalizador que indica se o IRE não deve executar a regra de Restrição de Reclassificação que corresponde à classe do item de carga útil.
    Valores válidos:
    • verdadeiro: ignore a execução da regra.
    • falso: executa a regra.

    Padrão: falso

    Itens.Configurações.entrada.AtualizarSemDowngrade Booliano Sinalizador que indica se a atualização e o downgrade são permitidos para este item.
    Valores válidos:
    • verdadeiro: atualize o item, mas o downgrade não é permitido.
    • falso: a atualização e o downgrade do item são permitidos.

    Padrão: falso

    configurações.itens.entrada.atualizaçãoSemComutador Booliano Sinalizador que indica se o item pode ser atualizado e a classe alternada.
    Valores válidos:
    • verdadeiro: atualize o item, mas a alternância de classe não é permitida.
    • falso: a atualização do item e a alternância de classe são permitidas.

    Padrão: falso

    Itens.DeEntrada.Configurações.AtualizarSemAtualizar Booliano Sinalizador que indica se a atualização e o upgrade são permitidos para este item.
    Valores válidos:
    • verdadeiro: atualize o item, mas o upgrade não é permitido.
    • falso: a atualização e o upgrade do item são permitidos.

    Padrão: falso

    input.items.sys_object_source_info Objeto Identificador de IC exclusivo para uma origem específica.
    "sys_object_source_info": { 
      "source_feed": "String",
      "source_name": "String",  
      "source_native_key": "String",
      "source_recency_timestamp": "String"
    } 
    input.items.sys_object_source_info.source_feed Cadeia de caracteres Se a origem puder ter vários feeds, use este campo para fornecer o nome do feed que envia este item.

    A fonte de dados gera este nome de feed. Pode ser qualquer cadeia de caracteres que identifique exclusivamente o feed de origem.

    input.items.sys_object_source_info.source_name Cadeia de caracteres Fonte de dados das informações de IC. Este valor deve ser um dos valores de opção definidos para o campo discovery_source da tabela Item de configuração [cmdb_ci].
    input.items.sys_object_source_info.source_native_key Cadeia de caracteres Chave/ID exclusivo do item da origem.

    A fonte de dados gera esta chave. Pode ser qualquer cadeia de caracteres exclusiva do item.

    input.items.sys_object_source_info.source_recency_timestamp Cadeia de caracteres Data e hora UTC em que o item foi verificado.

    Formato: AAAA-MM-DD hh:mm:ss

    valores.itens.entrada Objeto Campos a serem criados ou atualizados para este item relacionado como pares de nome/valor, em que o nome é o nome do campo. Para um campo de referência, o valor deve ser o sys_id referenciado. Se você quiser usar o valor de exibição em vez do sys_id para campos de referência, passe essas informações em um objeto display_values em vez de no objeto values.

    Os nomes e tipos de campo dependem dos campos selecionados pelo usuário, como:

    "values": {
      "host_name": "String",
      "ip_address": "String",
      "name": "String",
      "os_name": "String",
      "sys_class_name": "String"
    }
    input.referenceItems Matriz de objetivos Lista que define referências entre itens na carga de entrada.
    "referenceItems": [
      { 
        "referenced": "String", 
        "referencedBy": "String", 
        "referenceField": "String" 
      }
    ]
    input.referenceItems.referenced Cadeia de caracteres O internal_id definido para o item que está sendo referenciado por outro item.
    input.referenceItems.referencedBy Cadeia de caracteres O internal_id definido para o item que faz referência a outro item.
    input.referenceItems.referenceField Cadeia de caracteres Nome do campo de referência na classe/tabela do item referencedBy.
    relações.entrada Matriz de objetivos Lista que especifica relacionamentos entre itens na carga útil de entrada.
    Um objeto nesta matriz pode usar um de dois formatos.
    • O objeto pode definir um relacionamento entre dois itens de nível superior (somente) usando pares de nome-valor parent e child, com valores que representam índices de item da matriz de carga items.
      "relations": [
        {
          "child": Number,
          "parent": Number,
          "sys_rel_source_info": {Object},
          "type": "String"
        }
      ]
    • O objeto pode definir um relacionamento entre quaisquer dois itens, incluindo itens de nível superior, relacionados ou de pesquisa, usando parent_id e child_id pares de chave/valor, com valores que representam internal_id valores definidos para esses itens.
      "relations": [
        {
          "child_id": "String",
          "parent_id": "String",
          "sys_rel_source_info": {Object},
          "type": "String"
        }
      ]
    input.relations.child Número Índice inteiro do objeto de IC na matriz items que representa o elemento secundário no relacionamento (itens, items.related ou items.lookup.)
    input.relations.child_id Cadeia de caracteres O internal_id do item secundário na relação (itens, itens.related ou items.lookup.)
    input.relations.parent Número Índice inteiro do item primário na matriz items (itens, itens.related ou itens.lookup.)
    input.relations.parent_id Cadeia de caracteres O internal_id do item primário na relação (itens, itens.related ou itens.lookup.)
    input.relations.sys_rel_source_info Objeto Informações de origem da descoberta para o relacionamento. Para relacionamentos de não dependência, essas informações são salvas na tabela Origens de relacionamento [sys_rel_source] (não persistentes para métodos Identifique-se de CIEnhanced () ou Identifique -se de CI().)

    Tipo de dados: objeto

    "sys_rel_source_info": { 
      "source_name": "String", 
      "source_feed": "String" 
    } 
    input.relations.sys_rel_source_info.source_name Cadeia de caracteres Nome da origem da descoberta.

    Padrão: origem de descoberta aprovada no parâmetro de método da API.

    input.relations.sys_rel_source_info.source_feed Cadeia de caracteres Qualquer cadeia de caracteres que seja uma subdescoberta/verificação na origem da descoberta.

    Padrão: 'UNKNOWN' é armazenado na coluna source_feed ao criar um registro na tabela sys_rel_source.

    input.relations.type Cadeia de caracteres Tipo de relacionamento que existe entre os itens primários e secundários. Deve ser um valor de campo de nome da tabela Tipo de relacionamento de IC [cmdb_rel_type].
    opções Objeto Opcional, mas {} ou nulo deve ser passado. Opções para habilitar ou desabilitar recursos.
    Nota:
    Por padrão, ou se partial_payloads estiver definido como verdadeiro, partial_commits e deduplicate_payloads serão habilitados, mesmo se estiverem definidos como falsos, pois esses recursos são essenciais para a funcionalidade de cargas parciais.
    "options": { 
     "deduplicate_payloads": Boolean,
     "generate_summary": Boolean, 
     "partial_commits": Boolean, 
     "partial_payloads": Boolean,
     "skip_updating_last_scan_to_now": Boolean,
     "skip_updating_source_last_discovered_to_now": Boolean
    }
    opções.deduplicate_payloads Booliano Sinalizador que indica se itens duplicados são mesclados ou considerados erros.

    Valores válidos:

    • verdadeiro: mesclar itens duplicados.
    • falso: considere itens duplicados como erros.

    Padrão: verdadeiro

    opções.generate_summary Booliano Sinalizador que indica se os resultados retornados contêm informações de resumo. Para obter detalhes das informações de resumo retornadas, consulte <String>.summary na tabela de resultados de retorno.

    Valores válidos:

    • verdadeiro: inclui informações de resumo.
    • falso: não inclui informações de resumo.

    Padrão: falso

    opções.partial_commits Booliano Sinalizador que indica se o suporte à confirmação parcial está habilitado. Para obter informações adicionais sobre confirmações parciais, consulte Recursos de IRE aprimorados.

    Valores válidos:

    • verdadeiro: confirmação parcial habilitada.
    • falso: confirmação parcial desabilitada.

    Padrão: verdadeiro

    opções.cargas_parciais Booliano Sinalizador que indica se o suporte a carga parcial está habilitado. Para obter informações adicionais sobre cargas parciais, consulte Recursos de IRE aprimorados e Criar uma regra de fonte de dados de IRE.

    Valores válidos:

    • verdadeiro: carga parcial habilitada.
    • falso: carga parcial desabilitada.

    Padrão: verdadeiro

    opções.skip_updating_last_scan_to_now Booliano Sinalizador que indica se a atualização do campo de tempo last_scan de sys_object_source deve ser ignorada.
    Valores válidos:
    • verdadeiro: se o parâmetro source_recency_timestamp não for passado em sys_object_source_info, não atualize o campo de tempo last_scan de sys_object_source.
    • falso: atualize o campo de tempo last_scan de sys_object_source.

    Padrão: usa o valor na propriedade do sistema glide.identification_engine.skip_updating_last_scan_to_now.

    opções.skip_updating_source_last_discovered_to_now Booliano Sinalizador que indica se a atualização dos campos discovery_source e last_discovered deve ser ignorada na tabela Item de configuração [cmdb_ci].
    Valores válidos:
    • verdadeiro: se last_discovered não for fornecido nos valores do item de carga, não atualize os campos discovery_source e last_discovered.
    • falso: atualize os campos discovery_source e last_discovered.

    Padrão: usa o valor na propriedade do sistema glide.identification_engine.skip_updating_source_last_discovered_to_now.

    origem Cadeia de caracteres Fonte de dados das informações de IC. Este valor deve ser um dos valores de opção definidos para o campo discovery_source da tabela Item de configuração [cmdb_ci].
    Tabela 4. Retorna
    Parâmetro Descrição
    <String> Cadeia de caracteres no formato JSON que é uma lista de resultados dos itens de configuração na cadeia de caracteres de entrada.

    Tipo de dados: cadeia de caracteres

    { 
      "additionalCommittedItems": [Array],  
      "additionalCommittedRelations": [Array], 
      "hasError": Boolean, 
      "hasWarning": Boolean,
      "items": [Array],  
      "relations": [Array], 
      "summary": {Object} 
    }
    <String>.additionalCommittedItems Lista de ICs que foram confirmados durante o processamento de IRE da carga atual, mas não estavam presentes na carga de entrada atual.

    Tipo de dados: matriz de objetos

    "additionalCommittedItems": [
      {
        "className": "String",
        "errorCount": Number,
        "operation": "String",
        "identificationAttempts": [Array],
        "inputIndices": [Array],
        "markers": [Array],
        "mergedPayloads": [Array],
        "sysId": "String"
      }
    ]
    <String>.additionalCommittedItems.className Sys_class_name deste IC adicional.

    Tipo de dados: cadeia de caracteres

    <String>.additionalCommittedItems.errorCount Número de erros encontrados ao processar este IC adicional.

    Tipo de dados: número

    <String>.additionalCommittedItems.errors Matriz de objetos que descreve os erros encontrados ao processar este IC adicional.

    Tipo de dados: matriz

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    <String>.additionalCommittedItems.errors.error Tipo de erro encontrado ao processar o IC adicional.

    Tipo de dados: cadeia de caracteres

    <String>.additionalCommittedItems.errors.message Mensagem de erro encontrada ao processar o IC adicional.

    Tipo de dados: cadeia de caracteres

    <String>.additionalCommittedItems.identificationAttempts Matriz de objetos em que cada objeto descreve uma tentativa feita para identificar este IC adicional.
    Tipo de dados: matriz de objetos
    "identificationAttempts": [
      {
        "attemptResult": "String",
        "attributes": [Array],
        "hybridEntryCiAttributes": [Array],
        "identiferName": "String",
        "searchOnTable": [Array]
      }
    ]
    <String>.additionalCommittedItems.identificationAttempts.attemptResult Resultado desta tentativa de identificação de IC adicional.

    Tipo de dados: cadeia de caracteres

    Valores possíveis:
    • CORRESPONDIDO: identificação bem-sucedida. Foi encontrado um IC exclusivo na tabela de regras do identificador que corresponde exatamente aos atributos especificados.
    • MULTI_MATCH: falha na identificação com um erro. ICs duplicados foram encontrados na tabela de regras do identificador ao corresponder aos atributos especificados.
    • NO_MATCH: falha na identificação. Nenhum IC foi encontrado na tabela de regras do identificador que corresponda aos atributos especificados.
    • Ignorado: tentativa de identificação sem tentativa. Os atributos necessários para esta pesquisa de tabela de regras de identificador não foram fornecidos, portanto, a regra não foi aplicada.
    <String>.additionalCommittedItems.identificationAttempts.attributes Atributos de entrada do identificador de IC usados durante esta tentativa de identificação de IC adicional.

    Tipo de dados: matriz

    Os nomes e tipos de atributo dependem dos dados do corpo da solicitação e do identificador em uso, como:

    "attributes": [
      "serial_number": "String",
      "serial_number_type": "String",
    ]
    <String>.additionalCommittedItems.identificationAttempts.hybridEntryCiAttributes Matriz de atributos de entrada do identificador de IC usada durante esta tentativa de identificação de IC adicional.

    Tipo de dados: matriz

    Os nomes e tipos de atributo dependem dos dados do corpo da solicitação e do identificador em uso, como:

    "hybridEntryCiAttributes": [
      "name": "String",
      "serial_number": "String"
    ]
    <String>.additionalCommittedItems.identificationAttempts.identifierName Regra de identificador usada para esta tentativa de identificação de IC adicional.

    Tipo de dados: cadeia de caracteres

    <String>.additionalCommittedItems.identificationAttempts.searchOnTable Nome da tabela pesquisada para esta tentativa de identificação de IC adicional.

    Tipo de dados: cadeia de caracteres

    <String>.additionalCommittedItems.identifierEntrySysId Sys_id da regra do identificador usada para identificar este IC adicional.

    Valores notáveis - Desconhecido: falha na identificação deste IC adicional. Consulte errors para obter detalhes.

    <String>.additionalCommittedItems.inputIndices Valores de índice para ICs da matriz items do corpo da solicitação que correspondem a este IC adicional.

    Tipo de dados: matriz de números

    "inputIndices": [
      {
        Number
      }
    ]
    <String>.additionalCommittedItems.marcadores Valores de marcador para uso interno.

    Tipo de dados: matriz

    "markers": []
    <String>.additionalCommittedItems.mergedPayloads Valores de Sys_id para cargas parciais da tabela Cargas Parciais IRE do CMDB [cmdb_ire_partial_payloads] que foram mesclados durante o processamento deste IC adicional.

    Tipo de dados: matriz

    "mergedPayloadIds": [
      "String"
    ]
    <String>.additionalCommittedItems.operation Operação realizada para este IC adicional.

    Tipo de dados: cadeia de caracteres

    Valores possíveis:
    • EXCLUIR: um IC existente é removido da tabela de destino.
    • INSERIR: o IC adicional é inserido na tabela de destino como um novo registro.
    • NO_CHANGE: nenhuma operação é executada para o IC adicional.
    • UPDATE: um IC existente na tabela de destino é atualizado.
    • UPDATE_WITH_DOWNGRADE: um IC existente na tabela de destino é atualizado e sua classe é alterada para uma classe mais genérica (classe ancestral).
    • UPDATE_WITH_SWITCH: um IC existente na tabela de destino é atualizado e sua classe é alterada para outra classe que não é uma classe ancestral ou descendente.
    • UPDATE_WITH_UPGRADE: um IC existente na tabela de destino é atualizado e sua classe é alterada para uma classe mais especializada (classe descendente).
    <String>.additionalCommittedItems.sysId Sys_id encontrado para este IC adicional por meio de identificação.

    Tipo de dados: cadeia de caracteres

    Valores notáveis - Desconhecido: falha na identificação deste IC adicional. Consulte errors para obter detalhes.

    <String>.additionalCommittedItems.avisos Descrição dos avisos encontrados durante o processamento deste IC adicional.

    Tipo de dados: matriz de objetos

    "warnings": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    <String>.additionalCommittedItems.warnings.error Tipo de aviso encontrado ao processar este IC adicional.

    Tipo de dados: cadeia de caracteres

    <String>.additionalCommittedItems.warnings.message Mensagem de aviso encontrada ao processar este IC adicional.

    Tipo de dados: cadeia de caracteres

    <String>.additionalCommittedRelations Descrição de um IC de relacionamento dependente que não foi incluído na lista relations do corpo da solicitação a ser inserida ou atualizada.

    Tipo de dados: matriz de objetos

    "additionalCommittedRelations": [
      {
        "className": "String",
        "inputIndices": [Array],
        "markers": [Array],
        "mergedPayloadIds": [Array],
        "operation": "String"
      }
    ]
    <String>.additionalCommittedRelations.className O sys_class_name deste IC de relacionamento dependente adicional.

    Tipo de dados: cadeia de caracteres

    Somente valor compatível: cmdb_rel_ci: a tabela de relacionamento de IC.

    <String>.additionalCommittedRelations.errorCount Número de erros encontrados ao processar este IC de relacionamento dependente adicional.

    Tipo de dados: número

    <String>.additionalCommittedRelations.errors Descrição dos erros encontrados ao processar este IC de relacionamento dependente adicional.

    Tipo de dados: matriz de objetos

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    <String>.additionalCommittedRelations.errors.error Tipo de erro encontrado ao processar o IC de relacionamento dependente adicional.

    Tipo de dados: cadeia de caracteres

    <String>.additionalCommittedRelations.errors.message Mensagem de erro encontrada ao processar este IC de relacionamento dependente adicional.

    Tipo de dados: cadeia de caracteres

    <String>.additionalCommittedRelations.inputIndices Valores de índice para objetos de IC de relacionamento dependente na matriz relations do corpo da solicitação que correspondem a este IC de relacionamento dependente adicional.

    Tipo de dados: matriz

    "inputIndices": [
      Number
    ]
    <String>.additionalCommittedRelations.marcadores Valores de marcador para uso interno.

    Tipo de dados: matriz

    "markers": []
    <String>.additionalCommittedRelations.mergedPayloadIds Valores de Sys_id para cargas parciais da tabela Cargas Parciais IRE do CMDB [cmdb_ire_partial_payloads] que foram mesclados para este IC.que foram mesclados durante o processamento deste IC de relacionamento dependente adicional.

    Tipo de dados: matriz

    "mergedPayloadIds": [
      "String"
    ]
    <String>.additionalCommittedRelations.operation Operação que foi realizada para o IC de relacionamento dependente adicional.
    Valores possíveis:
    • INSERIR: o IC de relacionamento dependente é inserido na tabela de destino como um novo registro.
    • INSERT_AS_INCOMPLETE: o IC de relacionamento dependente tem erros e está inserido na tabela Cargas Incompletas de IRE do CMDB [cmdb_ire_incomplete_payloads].
    • INSERT_AS_PARTIAL: o IC de relacionamento dependente tem erros e está inserido na tabela Cargas Parciais IRE do CMDB [cmdb_ire_partial_payloads].
    • NO_CHANGE: nenhuma operação é realizada para o IC de relacionamento dependente.
    • ATUALIZAÇÃO: um IC de relacionamento dependente existente na tabela de destino foi atualizado.

    Tipo de dados: cadeia de caracteres

    <String>.temErro Sinalizador que indica se algum item ou relação tem erros.

    Tipo de dados: booliano

    <String>.temAviso Sinalizador que indica se algum item ou relação tem avisos.

    Tipo de dados: booliano

    <String>.itens Descrição dos ICs criados ou atualizados.

    Tipo de dados: matriz de objetos

    "items": [
      {  
        "additionalRelatedItems": [Array],
        "className": "String",
        "duplicateIndices": [Array],
        "errorCount": Number, 
        "errors": [Array], 
        "identificationAttempts": [Array], 
        "identifierEntrySysId": "String",  
        "incompleteSysIds": "String",
        "info": [Array],
        "inputIndices": [Array], 
        "maskedAttributes": [Array],
        "operation": "String", 
        "partialSysIds": "String", 
        "relatedItems": [Array], 
        "relatedSysIds": [Array], 
        "sysId": "String" 
      }
    ]
    <String>.items.additionalRelatedItems Informações sobre pesquisa adicional e itens relacionados que foram processados, mas não fornecidos como parte da carga de entrada. Esses itens são de cargas parciais.

    Tipo de dados: matriz de objetos

    "additionalRelatedItems": [ 
      {
        "className": "String", 
        "inputIndices": [Array],
        "mergedPayloadIds": [Array], 
        "operation": "String",
        "sysId": "String"
      }
    ]
    <String>.items.additionalRelatedItems.className Nome da classe/tabela (sys_class_name) do IC que foi criado ou atualizado.

    Tipo de dados: cadeia de caracteres

    <String>.itens.adicionaisRelatedItems.inputIndices Valores de índice para ICs da matriz items do corpo da solicitação que correspondem a este item relacionado.

    Tipo de dados: matriz de números

    <String>.items.additionalRelatedItems.mergedPayloadIds Lista de sys_ids das cargas parciais que foram mescladas no item relacionado. Localizado na tabela Cargas Parciais de IRE do CMDB [cmdb_ire_partial_payloads].

    Tipo de dados: matriz

    <String>.itens.adicionaisItensRelacionados.operação Tipo de operação.

    Valores possíveis:

    • INSERIR: o novo IC foi inserido no banco de dados.
    • NO_CHANGE: nenhuma mudança de IC foi feita.
    • UPDATE: o IC existente foi atualizado.

    Tipo de dados: cadeia de caracteres

    <String>.items.additionalRelatedItems.sysId Sys_id do IC que foi atualizado ou criado.

    Tipo de dados: cadeia de caracteres

    <String>.items.className Nome da classe/tabela (sys_class_name) do IC que foi criado ou atualizado.

    Tipo de dados: cadeia de caracteres

    <String>.itens.Indicesduplicados Lista de índices de ICs que são duplicatas do item atual.

    Tipo de dados: matriz

    <String>.items.errorCount Número de erros encontrados ao processar o item.

    Tipo de dados: número

    <String>.itens.erros Lista de erros encontrados ao processar este IC.

    Tipo de dados: matriz de objetos

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    <String>.itens.erros.erro Tipo de erro encontrado ao processar o IC.

    Tipo de dados: cadeia de caracteres

    <String>.itens.erros.mensagem Mensagem de erro associada ao erro.

    Tipo de dados: cadeia de caracteres

    <String>.itens.identificaçãoTentativas Lista de tentativas feitas para identificar os ICs.

    Tipo de dados: matriz de objetos

    "identificationAttempts": [
      { 
        "attemptResult": "String", 
        "attributes": [Array],
        "hybridEntryCiAttributes": [Array],
        "identifierName": "String",
        "searchOnTable": "String" 
      }
    ]
    <String>.itens.identificaçãoTentativas.tentativaResultado Resultados da tentativa de identificar o IC.

    Valores possíveis:

    • CORRESPONDIDO: identificação bem-sucedida. Foi encontrado um IC exclusivo na tabela de regras do identificador que corresponde exatamente aos atributos especificados.
    • MULTI_MATCH: falha na identificação com um erro. ICs duplicados foram encontrados na tabela de regras do identificador ao corresponder aos atributos especificados.
    • NO_MATCH: falha na identificação. Nenhum IC foi encontrado na tabela de regras do identificador que corresponda aos atributos especificados.
    • Ignorado: tentativa de identificação sem tentativa. Os atributos necessários para esta pesquisa de tabela de regras de identificador não foram fornecidos, portanto, a regra não foi aplicada.

    Tipo de dados: cadeia de caracteres

    <String>.itens.identificaçãoTentativas.atributos Lista de atributos de entrada do identificador de IC que foram usados durante o processo de identificação.

    Tipo de dados: matriz

    Os nomes e tipos de atributo dependem dos dados do corpo da solicitação e do identificador em uso, como:

    "attributes": [
      "serial_number": "String",
      "serial_number_type": "String",
    ]
    <String>itens.identificationAttempts.hybridEntryCiAttributes Lista de atributos de entrada do identificador de IC que foram usados durante o processo de identificação.

    Tipo de dados: matriz

    Os nomes e tipos de atributo dependem dos dados do corpo da solicitação e do identificador em uso, como:

    "hybridEntryCiAttributes": [
      "name": "String",
      "serial_number": "String"
    ]
    <String>.itens.identificaçãoTentativas.identificadorNome Regra de identificador usada para esta tentativa de identificação de IC.

    Tipo de dados: cadeia de caracteres

    <String>.itens.identificaçãoTentativas.pesquisaNaTabela Nome da tabela pesquisada durante o processo de identificação.

    Tipo de dados: cadeia de caracteres

    <String>.items.identifierEntrySysId Sys_id da regra do identificador usada para identificar o IC. Localizado na tabela Entrada do identificador [cmdb_identifier_entry].

    Tipo de dados: cadeia de caracteres

    <String>.items.incompleteSysIds Se o item tiver erros e tiver sido salvo como uma carga incompleta, este parâmetro conterá o sys_id do registro na tabela Cargas Incompletas do IRE do CMDB [cmdb_ire_incomplete_payloads].

    Tipo de dados: cadeia de caracteres

    <String>.items.info Informações adicionais sobre o processamento do item.

    Tipo de dados: matriz de objetos

    "info": [
      {
        "code": "String",
        "message": "String",
        "ruleSysId": "String"
      }
    ]
    <String>.itens.info.código Tipo de reclassificação que foi ignorado.
    Valores possíveis:
    • SKIPPED_CLASS_SWITCH
    • SKIPPED_CLASS_DOWNGRADE
    • SKIPPED_CLASS_UPGRADE

    Tipo de dados: cadeia de caracteres

    <String>.itens.informações.mensagem Mensagem que fornece informações adicionais sobre o motivo para ignorar a reclassificação.

    Tipo de dados: cadeia de caracteres

    <String>.items.info.ruleSysId Sys_id da regra de restrição de reclassificação que foi correspondida. Aplicável somente quando o IRE ignora a reclassificação devido à regra de restrição de reclassificação. Este valor ficará vazio se a reclassificação for ignorada devido a uma carga útil ou sinalizador global.

    Tipo de dados: cadeia de caracteres

    <String>.itens.InputIndices Índices do IC de entrada correspondente. Para itens de nível superior, é uma lista de números inteiros. Para ICs relacionados ou de pesquisa, é a lista de objetos JSON.

    Tipo de dados: matriz de números

    <String>.itens.atributosmascarados Lista de atributos cuja atualização por uma fonte de dados não autorizada foi ignorada conforme definido pelas Regras de reconciliação.

    Tipo de dados: matriz

    <String>.itens.operação Operação que ocorreu.

    Valores possíveis:

    • INSERIR: o novo IC foi inserido no banco de dados.
    • INSERT_AS_INCOMPLETE: o item foi salvo na tabela cmdb_ire_incomplete_payloads.
    • INSERT_AS_PARTIAL: o item foi salvo na tabela cmdb_ire_partial_payloads.
    • UPDATE: o IC existente foi atualizado.
    • UPDATE_WITH_DOWNGRADE: o IC foi atualizado e a classe foi alterada para uma classe mais genérica (classe ancestral).
    • UPDATE_WITH_SWITCH: o IC foi atualizado e a classe foi alterada para uma classe que não é ancestral ou descendente.
    • UPDATE_WITH_UPDRADE: o IC foi atualizado e a classe foi alterada para uma classe mais especializada (classe descendente).

    Tipo de dados: cadeia de caracteres

    <String>.items.partialSysIds Se o item tiver erros e tiver sido salvo como uma carga útil parcial, este parâmetro conterá o sys_id do registro de carga útil parcial.

    Tipo de dados: cadeia de caracteres

    <String>.itens.itens.relacionados Lista de objetos JSON que descrevem um IC relacionado (IC de pesquisa de tabela) da matriz items.lookup do corpo da solicitação.

    Tipo de dados: matriz de objetos

    "relatedItems": [
      { 
        "className": "String",
        "errors": [Array],
        "errorCount": Number, 
        "incompleteSysIds": [Array],
        "inputIndices": [Array],
        "mergePayloadIds": [Array],
        "operation": "String",
        "partialSysIds": [Array], 
        "sysId": "String",
        "warningCount": Number,
        "warnings": [Array]
      }
    ]
    <String>.items.relatedItems.className Nome da classe/tabela (sys_class_name) do item relacionado.

    Tipo de dados: cadeia de caracteres

    <String>.itens.itens.relacionados.erros Lista de erros ocorridos durante o processamento do item relacionado.

    Tipo de dados: matriz de objetos

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    <String>.itens.itens.relacionados.erros.erro Tipo de erro encontrado ao processar o item relacionado.

    Tipo de dados: cadeia de caracteres

    <String>.itens.itens.relacionados.erros.mensagem Mensagem de erro associada ao erro.

    Tipo de dados: cadeia de caracteres

    <String>.items.relatedItems.errorCount Número de erros detectados ao processar os itens relacionados.

    Tipo de dados: número

    <String>.items.relatedItems.incompleteSysIds Se a relação tiver erros e tiver sido salva como uma carga incompleta, este valor será o sys_id do registro na tabela Cargas Incompletas do IRE do CMDB [cmdb_ire_incomplete_payloads].

    Tipo de dados: cadeia de caracteres

    <String>.itens.itens.relacionados.IndicesDeEntrada Índice do item de entrada correspondente. Para itens de nível superior, é uma lista de números inteiros. Para itens relacionados ou de pesquisa, é a lista de objetos JSON.

    Tipo de dados: matriz de números ou matriz de objetos

    "inputIndices": [
      { 
       "mainIndex": Number, 
       "subIndex": Number 
      }
    ]
    <String>.itens.relatedItems.inputIndices.mainIndex Valor de índice da matriz items do corpo da solicitação que corresponde ao IC primário do item relacionado.

    Tipo de dados: número

    <String>.itens.itens.relacionados.InputIndices.subIndex Valor de índice da matriz items.lookup do corpo da solicitação que corresponde ao item relacionado.

    Tipo de dados: número

    <String>.items.relatedItems.mergedPayloadIds Lista de sys_ids das cargas parciais que foram mescladas no IC durante o processamento.

    Tipo de dados: matriz

    <String>.itens.itens.relacionados.operação Operação que ocorreu.

    Valores possíveis:

    • INSERIR: o novo IC relacionado foi inserido no banco de dados.
    • INSERT_AS_INCOMPLETE: o item foi salvo na tabela cmdb_ire_incomplete_payloads.
    • INSERT_AS_PARTIAL: o item foi salvo na tabela cmdb_ire_partial_payloads.
    • NO_CHANGE: nenhuma mudança de IC relacionada foi feita.
    • ATUALIZAÇÃO: o IC relacionado existente foi atualizado.
    • UPDATE_WITH_DOWNGRADE: o IC relacionado foi atualizado e a classe foi alterada para uma classe mais genérica (classe ancestral).
    • UPDATE_WITH_SWITCH: o IC relacionado foi atualizado e a classe foi alterada para uma classe que não é ancestral ou descendente.
    • UPDATE_WITH_UPDRADE: o IC relacionado foi atualizado e a classe foi alterada para uma classe mais especializada (classe descendente).

    Tipo de dados: cadeia de caracteres

    <String>.items.relatedItems.partialSysIds Se o item relacionado tiver erros e tiver sido salvo como uma carga útil parcial, conterá uma lista dos sys_ids dos registros associados na tabela Cargas Parciais do IRE do CMDB [cmdb_ire_partial_payloads].

    Tipo de dados: matriz

    <String>.items.relatedItems.sysId Sys_id do item relacionado.

    Tipo de dados: cadeia de caracteres

    <String>.items.relatedItems.warningCount Número de avisos encontrados ao processar os itens relacionados.

    Tipo de dados: número

    <String>.itens.itens.relacionados.avisos Descrição de avisos encontrados durante o processamento dos itens relacionados.

    Tipo de dados: matriz de objetos

    "warnings": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    <String>.itens.itens.relacionados.avisos.erro Tipo de aviso encontrado durante o processamento do item relacionado.

    Tipo de dados: cadeia de caracteres

    <String>.itens.itens.relacionados.avisos.mensagem Mensagem associada ao aviso.

    Tipo de dados: cadeia de caracteres

    <String>.items.relatedSysIds Lista dos valores de sys_id dos ICs usados durante a identificação baseada em pesquisa de itens relacionados.

    Tipo de dados: cadeia de caracteres

    <String>.itens.sys_id Sys_id do IC que foi atualizado ou criado.

    Tipo de dados: cadeia de caracteres

    <String>.relações Descrição de um IC de relacionamento dependente da matriz relations do corpo da solicitação.

    Tipo de dados: matriz de objetos

    "relations": [ 
      { 
        "className": "String",
        "errorCount": Number,
        "errors": [Array],
        "incompleteSysIds": "String",
        "inputIndices": [Array],
        "operation": "String",
        "partialSysIds": "String",
        "sysId": "String" 
      }
    ]
    <String>.relations.className Sys_class_name deste IC de relacionamento dependente.

    Somente valor compatível: cmdb_rel_ci: tabela de relacionamento de IC.

    Tipo de dados: cadeia de caracteres

    <String>.relations.errorCount Número de erros encontrados ao processar o IC de relacionamento dependente.

    Tipo de dados: número

    <String>.relacionamento.erros Lista que descreve os erros encontrados durante o processamento deste IC de relacionamento dependente.

    Tipo de dados: matriz de objetos

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    <String>.relacionamento.erros.erro Tipo de erro encontrado ao processar o IC de relacionamento dependente.

    Tipo de dados: cadeia de caracteres

    <String>.relações.erros.mensagem Mensagem de erro encontrada ao processar este IC de relacionamento dependente.

    Tipo de dados: cadeia de caracteres

    <String>.relations.incompleteSysIds Se a relação tiver erros e tiver sido salva como uma carga incompleta, este valor será o sys_id do registro na tabela Cargas Incompletas do IRE do CMDB [cmdb_ire_incomplete_payloads].

    Tipo de dados: cadeia de caracteres

    <String>.relations.inputIndices Índices para os objetos de IC de relacionamento dependente na matriz relations do corpo da solicitação que correspondem a este IC de relacionamento dependente.

    Tipo de dados: matriz

    <String>.relacionamento.operação Tipo de operação realizada.

    Valores possíveis:

    • INSERIR: o IC de relacionamento dependente foi inserido na tabela de destino como um novo registro.
    • INSERT_AS_INCOMPLETE: o IC de relacionamento dependente tinha erros e foi inserido na tabela Cargas incompletas do IRE do CMDB [cmdb_ire_incomplete_payloads].
    • INSERT_AS_PARTIAL: o IC de relacionamento dependente tinha erros e foi inserido na tabela Cargas Parciais IRE do CMDB [cmdb_ire_partial_payloads].
    • NO_CHANGE: nenhuma operação foi realizada.
    • ATUALIZAÇÃO: um IC de relacionamento dependente existente na tabela de destino foi atualizado.

    Tipo de dados: cadeia de caracteres

    <String>.relations.partialSysIds Se a relação tiver erros e tiver sido salva como uma carga útil parcial, este valor será o sys_id do registro na tabela Cargas úteis parciais do IRE do CMDB [cmdb_ire_partial_payloads].

    Tipo de dados: cadeia de caracteres

    <String>.relations.sysId Sys_id do IC de relacionamento dependente.

    Tipo de dados: cadeia de caracteres

    <String>.resumo Lista de propriedades JSON que fornecem estatísticas sobre quantos itens foram inseridos, atualizados e semelhantes por classe.

    Tipo de dados: matriz

    <String>.resumo.<class_name> Estatísticas para uma classe específica.

    Tipo de dados: objeto

    <class_name>: {
     "additionalInsertedItemCount": Number, 
     "errorCount": Number,
     "incompleteItemCount": Number,
     "insertedItemCount": Number,
     "partialItemCount": Number,
     "skippedItemCount": Number,
     "unchangedItemCount": Number,
     "updatedItemCount": Number,
     "warningCount": Number 
    }
    <String>.resumo.<class_name> .additionalInsertedItemCount Número de itens inseridos devido ao processamento de cargas parciais.

    Tipo de dados: número

    <String>.resumo.<class_name> .contagemdeerros Número de erros encontrados ao processar itens.

    Tipo de dados: número

    <String>.resumo.<class_name> .incompleteItemCount Número de itens inseridos na tabela Cargas incompletas do IRE do CMDB [cmdb_ire_incomplete_payloads].

    Tipo de dados: número

    <String>.resumo.<class_name> .insertedItemCount Número de itens criados.

    Tipo de dados: número

    <String>.resumo.<class_name> .partialItemCount Número de itens salvos na tabela Carga Parcial [cmdb_ire_partial_payloads].

    Tipo de dados: número

    <String>.resumo.<class_name> .skippedItemCount Número de itens que foram ignorados.

    Tipo de dados: número

    <String>.resumo.<class_name> .unchangedItemCount Número de itens que tinham entradas, mas não foram modificados.

    Tipo de dados: número

    <String>.resumo.<class_name> .updateItemCount Número de itens atualizados.

    Tipo de dados: número

    <String>.resumo.<class_name> .warningCount Número de itens que geraram um aviso quando processados.

    Tipo de dados: número

    Este exemplo mostra como importar várias entradas de IC.

    var payload = {
    "items": [
    {
     "className": "cmdb_ci_win_server", 
     "values": {
       "chassis_type": "Desktop",
       "os": "Windows 2012 R2 Datacenter",
       "name": "Windows2012Server1",
       "serial_number": "0000-0011-1690-8730-8636-5722-52",
       "cpu_count": "1"
      },
      "lookup": [
      {
         "values": {
           "valid": "true",
           "serial_number": "0000-0011-1690-8730-8636-5722-52",
           "serial_number_type": "bios"
          },
         "className": "cmdb_serial_number"
       },
       {
         "values": {
           "valid": "true",
           "serial_number": "3311-9736-4988-9744-1749-4183-41",
           "serial_number_type": "chassis"
          },
         "className": "cmdb_serial_number"
       }],
    
        "internal_id": "16777219",
        "sys_object_source_info": {
          "source_feed": "SN Discovery Feed 1",
          "source_name": "ServiceNow",
          "source_native_key": "16777219",
          "source_recency_timestamp": "2019-10-18 08:31:23"
       }},
       {  
       "className": "cmdb_ci_spkg",
       "values": {
         "name": "Windows 2012 R2 Datacenter",
         "key": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL"
         },
    
      "related": [
        {
          "internal_id": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777219",
          "values": {
            "name": "Windows 2012 R2 Datacenter-SAMLABVM52"
          },
          "className": "cmdb_software_instance",
          "sys_object_source_info": {
            "source_feed": "SN Discovery Feed 1",
            "source_name": "ServiceNow",
            "source_native_key": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777219"
      }}], 
      "settings" : {
            "skipReclassificationRestrictionRules" : "false",
            "updateWithoutDowngrade" : "true",
            "updateWithoutUpgrade" : "true",
            "updateWithoutSwitch" : "true"
          }}, 
      {
      "className": "cmdb_ci_app_server_tomcat",
      "values": {
        "running_process_key_parameters": "/opt/OV/nonOV/tomcat/b/temp org.apache.catalina.startup.Bootstrap start",
        "install_directory": "/opt/OV/nonOV/tomcat/b",
        "name": "Tomcat@hpom9:3443",
        "server_port": "8006",
        "sys_class_name": "cmdb_ci_app_server_tomcat"
      },
    
      "internal_id": "tomcat_id"
      }],
    
    "relations": [
      {
        "parent_id": "tomcat_id",
        "child_id": "16777219",
        "type": "Runs on::Runs"
      }],
    
    "referenceItems": [
      {
        "referenceField": "installed_on",
        "referenced": "16777219",
        "referencedBy": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777219"
      }]};
    
    var input = JSON.stringify((payload));
    var output = sn_cmdb.IdentificationEngine.createOrUpdateCIEnhanced('ServiceNow', input, {});
    
    gs.info(JSON.stringify(JSON.parse(output), null, 2));

    Saída:

    {
    
    "items": [
    {
      "className": "cmdb_ci_win_server",
      "operation": "NO_CHANGE",
      "sysId": "65d873d2b3a0001028f6eae2c6a8dc2a",
      "relatedSysIds": [
        "a1d873d2b3a0001028f6eae2c6a8dc32",
        "a1d873d2b3a0001028f6eae2c6a8dc33"
    ],
    
    "relatedItems": [
    {
      "className": "cmdb_serial_number",
      "sysId": "a1d873d2b3a0001028f6eae2c6a8dc32",
      "markers": [],
      "inputIndices": [
      {
        "mainIndex": 0,
        "subIndex": 0
      }]
    },
      "className": "cmdb_serial_number",
      "sysId": "a1d873d2b3a0001028f6eae2c6a8dc33",
      "markers": [],
      "inputIndices": [
      {
        "mainIndex": 0,
        "subIndex": 1
      }]
    }],
    
    "additionalRelatedItems": [],
    "identificationAttempts": [],
    "errorCount": 0,
    "inputIndices": [0]
    },
    {
    "className": "cmdb_ci_spkg",
    "operation": "NO_CHANGE",
    "sysId": "c764e971b320001028f6eae2c6a8dc44",
    
    "relatedSysIds": [
      "8b64e971b320001028f6eae2c6a8dc47"
    ],
    "relatedItems": [
      {
      "className": "cmdb_software_instance",
      "sysId": "8b64e971b320001028f6eae2c6a8dc47",
      "markers": [],
      "inputIndices": [
        {
          "mainIndex": 1,
          "subIndex": 0
        }]
      }],
    
    "additionalRelatedItems": [],
    "identifierEntrySysId": "a52a87c03746220006b216a543990e8c",
    "identificationAttempts": [
      {
        "attributes": [
          "key"
         ],
        "identifierName": "Software",
        "attemptResult": "MATCHED",
        "searchOnTable": "cmdb_ci_spkg",
        "hybridEntryCiAttributes": []
      }],
    
    "errorCount": 0,
    "inputIndices": [1]
    },
    
    {
    "className": "cmdb_ci_app_server_tomcat",
    "operation": "INSERT",
    "sysId": "6f29f3d2b3a0001028f6eae2c6a8dcc6",
    "identifierEntrySysId": "Unknown",
    "identificationAttempts": [
    {
      "attributes": [
        "install_directory",
        "running_process_key_parameters",
        "sys_class_name"
      ],
    "identifierName": "Tomcat",
    "attemptResult": "NO_MATCH",
    "searchOnTable": "cmdb_ci_app_server_tomcat",
    "hybridEntryCiAttributes": []
    },
    {
    "attributes": [
      "cl_port",
      "sys_class_name"
    ],
    "identifierName": "Application Rule",
    "attemptResult": "SKIPPED",
    "searchOnTable": "cmdb_ci_appl",
    "hybridEntryCiAttributes": []
    },
    {
    "attributes": [
      "running_process_command",
      "running_process_key_parameters",
      "sys_class_name"
    ],
    "identifierName": "Application Rule",
    "attemptResult": "NO_MATCH",
    "searchOnTable": "cmdb_ci_appl",
    "hybridEntryCiAttributes": []
    }
    ],
    
    "errorCount": 0,
    "inputIndices": [2]
    }
    ],
    "additionalCommittedItems": [],
    "relations": [
    {
      "className": "cmdb_rel_ci",
      "operation": "INSERT",
      "sysId": "6729f3d2b3a0001028f6eae2c6a8dcc9",
      "errorCount": 0,
      "inputIndices": [0]
    }],
    "additionalCommittedRelations": []
    }

    IdentificationEngine - identificarCI(String jsonString)

    Determina a operação (inserir/atualizar) a ser executada com a carga especificada sem confirmar a operação no banco de dados.

    Isso funciona exatamente como createOrUpdateCI(), mas não confirma o resultado.

    Tabela 5. Parâmetros
    Nome Tipo Descrição
    jsonString Cadeia de caracteres Uma cadeia de caracteres no formato JSON de itens de configuração a serem adicionados ou atualizados. Cada cadeia de caracteres de entrada está no formato "itens: [{}], relações: [{}]", em que cada item nas listas de itens e relações contém pares de nome-valor.
    Os possíveis pares de nome-valor na lista de itens são:
    • className: Sys_class_name do IC a ser criado ou atualizado.
    • pesquisa:[{}]: lista de registros com cada item com pares de nome-valor como a lista de itens.
    • valores:{}: informações de campo para o IC como pares de nome-valor, em que o nome é o nome do campo.
    Os possíveis pares de nome-valor na lista de relações são:
    • secundário: índice do item secundário na relação de dependência
    • primário: índice do item primário na relação de dependência
    • type: tipo de relacionamento. Este é um dos valores de campo de nome da tabela cmdb_rel_type.
    Tabela 6. Retorna
    Tipo Descrição
    Cadeia de caracteres Uma cadeia de caracteres no formato JSON que é uma lista de resultados. Cada cadeia de caracteres de resultado está no formato 'itens: [{}], relações: [{}]', em que cada item nas listas de itens e relações contém pares de nome-valor.
    Os possíveis pares de nome-valor na lista de itens são:
    • className: Sys_class_name do IC que foi atualizado ou criado.
    • duplicateIndices: lista de índices de itens que são duplicatas do item atual.
    • erros: lista de erros no formato de (erro, cadeia de caracteres de mensagem)
    • IdentificationAttempts: lista de tentativas.
      • tentativaResult: um de SKIPPED, NO_MATCH, MATCHED, MULTI_MATCH.
      • Atributos: atributos da entrada do identificador usados durante a identificação.
      • identityName: identificador de IC ao qual esta entrada de identificador pertence.
      • searchOnTable: tabela pesquisada durante o processo de identificação.
    • identificadorEntrySysId: Sys_id da entrada do identificador usada durante a correspondência.
    • operação: operação a ser executada, que é uma das seguintes:
      • DELETE
      • INSERT
      • UPDATE
      • UPDATE_WITH_DOWNGRADE
      • UPDATE_WITH_SWITCH
      • UPDATE_WITH_UPGRADE
    • relatedSysIds: lista de valores de sys_id de ICs usados durante a identificação baseada em pesquisa.
    • sysId: Sys_id do IC que foi atualizado ou criado.
    Os possíveis pares de nome-valor na lista de relações são:
    • className: nome da classe do IC de relacionamento e é sempre cmdb_rel_ci
    • operação: Tipo de operação: INSERT, UPDATE, NO_CHANGE
    • sysId: Sys_id do IC de relacionamento inserido ou atualizado

    Veja a seguir como reclassificar um item de configuração.

    var payload = {
      "items": [
        {
          "className": "cmdb_ci_win_server",
          "values": {
            "short_description": "Linux server description",
            "name": "Linux Server 1"
          }
        }
      ]
    };
    
    var input = JSON.stringify(payload);
    var output = sn_cmdb.IdentificationEngine.identifyCI(input);
    
    gs.info(JSON.stringify(JSON.parse(output), null, 2));

    Saída:

    {
      "items": [
        {
          "className": "cmdb_ci_linux_server",
          "operation": "NO_CHANGE",
          "sysId": "440577800f321010150efc91ff767e94",
          "identifierEntrySysId": "556eb250c3400200d8d4bea192d3ae92",
          "identificationAttempts": [
            {
              "attributes": [],
              "info": "sys_object_source SKIPPED",
              "identifierName": "",
              "attemptResult": "SKIPPED",
              "hybridEntryCiAttributes": []
            },
            {
              "attributes": [
                "serial_number",
                "serial_number_type"
              ],
              "identifierName": "Hardware Rule",
              "attemptResult": "SKIPPED",
              "searchOnTable": "cmdb_serial_number",
              "hybridEntryCiAttributes": []
            },
            {
              "attributes": [
                "serial_number"
              ],
              "identifierName": "Hardware Rule",
              "attemptResult": "SKIPPED",
              "searchOnTable": "cmdb_ci_hardware",
              "hybridEntryCiAttributes": []
            },
            {
              "attributes": [
                "name"
              ],
              "identifierName": "Hardware Rule",
              "attemptResult": "MATCHED",
              "searchOnTable": "cmdb_ci_hardware",
              "hybridEntryCiAttributes": []
            }
          ],
          "info": [
            {
              "message": "CI Reclassification not allowed from class: [cmdb_ci_linux_server] to [cmdb_ci_win_server] by a reclassification restriction rule",
              "code": "SKIPPED_CLASS_SWITCH",
              "ruleSysId": "b3d4b3800f321010150efc91ff767eab"
            }
          ],
          "errorCount": 0,
          "warningCount": 0,
          "markers": [],
          "inputIndices": [
            0
          ],
          "mergedPayloadIds": []
        }
      ],
      "additionalCommittedItems": [],
      "relations": [],
      "additionalCommittedRelations": []
    }

    IdentificationEngine - IdentifyCIEnhanced(cadeia de caracteres de origem, entrada de cadeia de caracteres, opções de objeto)

    Determina a operação Configuration Management Database (CMDB) (inserir/atualizar) a ser executada com a carga especificada (corpo da solicitação), sem confirmar as operações no banco de dados.

    Use este método para simular o envio de uma carga útil.

    Este método é semelhante ao método IdentificationEngine - identificarCI(String jsonString), no entanto, ele também oferece suporte à seguinte funcionalidade:
    • Cargas úteis parciais
      • Caso um item tenha um aviso ou erro, indica se uma operação de item é INSERT_AS_PARTIAL ou INSERT_INCOMPLETE.
      • Retorna os sys_ids de cargas parciais que foram mescladas com cargas parciais existentes.
    • Oferece suporte ao recurso de desduplicação de carga.
    • Gera um resumo.
    Tabela 7. Parâmetros
    Nome Tipo Descrição
    entrada Cadeia de caracteres Obrigatório. Carga de entrada. Uma cadeia de caracteres no formato JSON de itens de configuração a serem adicionados ou atualizados.
    "input" { 
     "items": [Array],
     "referenceItems": [Array],
     "relations": [Array]
    }
    Itens.Entrada Matriz de objetivos Itens a serem adicionados ou atualizados.
    "items": [
      { 
        "className": "String",
        "display_values": {Object},
        "internal_id": "String",
        "lookup": [Array],
        "related": [Array],
        "settings": {Object},
        "sys_object_source_info": {Object},
        "values": {Object}
      }
    ]
    input.items.className Cadeia de caracteres Obrigatório. Nome da classe/tabela, sys_class_name, do item de configuração (IC) a ser criado ou atualizado.

    Este valor pode ser qualquer classe/tabela CMDB, como cmdb_ci_linux_server ou cmdb_ci_win_server.

    input.items.display_values Objeto Campos de referência a serem criados ou atualizados para este item relacionado como pares de nome-valor, em que o nome é o nome do campo e o valor é o valor de exibição referenciado. Se você quiser usar o sys_id em vez do valor de exibição para campos de referência, passe as informações no parâmetro input.items.lookup.values em vez de neste parâmetro.

    Os nomes dos campos de referência dependem dos campos selecionados pelo usuário, como:

    "display_values": {
      "model_id": "String",
      "location": "String"
    }
    input.items.internal_id Cadeia de caracteres Identificador de item exclusivo para a carga associada.

    Pode ser qualquer valor, mas deve ser exclusivo na carga útil.

    pesquisa.itens.entrada Matriz de objetivos Identifica o item de nível superior que contém a pesquisa (identificação baseada em pesquisa). Esses registros são usados para identificar o item de configuração com base em uma tabela de pesquisa que tem uma referência a cmdb_ci.

    Por exemplo:

    "lookup": [
      {
        "className": "String",
        "internal_id": "String",
        "sys_object_source_info": {Object},
        "values": {Object}
      }
    ]
    input.items.lookup.className Cadeia de caracteres Obrigatório. Nome da classe/tabela, sys_class_name, do item de configuração (IC) a ser criado ou atualizado.

    Este valor pode ser qualquer classe/tabela CMDB, como cmdb_serial_number ou cmdb_ci_network_adapter.

    input.items.lookup.internal_id Cadeia de caracteres Identificador de item de pesquisa exclusivo para a carga associada.

    Pode ser qualquer valor, mas deve ser exclusivo na carga útil.

    input.items.lookup.sys_object_source_info Objeto Define um identificador de IC exclusivo para uma fonte de dados específica. Origens diferentes podem ter pares de nome-valor diferentes para o mesmo IC.
    "sys_object_source_info": { 
      "source_feed": "String",
      "source_name": "String",  
      "source_native_key": "String",
      "source_recency_timestamp": "String"
    } 
    input.items.lookup.sys_object_source_info.source_feed Cadeia de caracteres Se a origem puder ter vários feeds, use este campo para fornecer o nome do feed que envia este item.

    A fonte de dados gera este nome de feed. Pode ser qualquer cadeia de caracteres que identifique exclusivamente o feed de origem.

    input.items.lookup.sys_object_source_info.source_name Cadeia de caracteres Fonte de dados das informações de IC. Este valor deve ser um dos valores de opção definidos para o campo discovery_source da tabela Item de configuração [cmdb_ci].
    input.items.lookup.sys_object_source_info.source_native_key Cadeia de caracteres ID de chave exclusivo para o item da origem.

    A fonte de dados gera esta chave. Pode ser qualquer cadeia de caracteres exclusiva do item.

    input.items.lookup.sys_object_source_info.source_recency_timestamp Cadeia de caracteres Data/hora UTC em que o item foi verificado.

    Formato: AAAA-MM-DD hh:mm:ss

    valores.pesquisa.itens.entrada Objeto Informações de campo para o IC como pares de nome-valor, em que o nome é o nome do campo. Ao atualizar campos de referência, o valor deve ser o sys_id referenciado.

    Os nomes e tipos de campo dependem dos campos selecionados pelo usuário, como:

    "values": {
      "serial_number": "String",
      "serial_number_type": "String",
      "valid": "String",
      "ip_address": "String",
      "mac_address": "String"
    }
    input.items.related.className Cadeia de caracteres Obrigatório. Nome da classe/tabela, sys_class_name, do item de configuração (IC) a ser criado ou atualizado.

    Este valor pode ser qualquer classe/tabela CMDB, como cmdb_software_instance ou cmdb_key_value.

    input.items.related.internal_id Cadeia de caracteres Identificador exclusivo para este item relacionado nesta carga. Pode ser qualquer valor, mas deve ser exclusivo na carga útil.
    input.items.related.sys_object_source_info Objeto Objeto que compõe um identificador de IC exclusivo para uma fonte de dados especificada. Origens diferentes podem ter pares de nome-valor diferentes para o mesmo IC.
    "sys_object_source_info": { 
      "source_feed": "String",
      "source_name": "String",  
      "source_native_key": "String",
      "source_recency_timestamp": "String"
    } 
    input.items.related.sys_object_source_info.source_feed Cadeia de caracteres Se a origem puder ter vários feeds, use este campo para fornecer o nome do feed que envia este item.

    A fonte de dados gera este nome de feed. Pode ser qualquer cadeia de caracteres que identifique exclusivamente o feed de origem.

    input.items.related.sys_object_source_info.source_name Cadeia de caracteres Identifica a fonte de dados das informações de IC. Este valor deve ser um dos valores de opção definidos para o campo discovery_source da tabela Item de configuração [cmdb_ci].
    input.items.related.sys_object_source_info.source_native_key Cadeia de caracteres Chave/ID exclusiva da origem do item relacionado.

    A fonte de dados gera esta chave. Pode ser qualquer cadeia de caracteres exclusiva do item.

    input.items.related.sys_object_source_info.source_recency_timestamp Cadeia de caracteres Data e hora UTC em que o item foi verificado.

    Formato: AAAA-MM-DD hh:mm:ss

    valores.itens.entrada.relacionados Objeto Campos a serem criados ou atualizados para este item relacionado como pares de nome/valor, em que o nome é o nome do campo. Para um campo de referência, o valor deve ser o sys_id referenciado. Se você quiser usar o valor de exibição em vez do sys_id para campos de referência, passe essas informações em um objeto display_values em vez de no objeto values.

    Os nomes e tipos de campo dependem dos campos selecionados pelo usuário, como:

    "values": {
      "host_name": "String",
      "ip_address": "String",
      "name": "String",
      "os_name": "String",
      "sys_class_name": "String"
    }
    configurações.itens.entrada Objeto Parâmetros que definem os tipos de atualizações permitidas.
    "settings": { 
      "skipReclassificationRestrictionRules": Boolean, 
      "updateWithoutDowngrade": Boolean, 
      "updateWithoutSwitch": Boolean,
      "updateWithoutUpgrade": Boolean
    }
    input.items.settings.skipReclassificationRestrictionRules Booliano Sinalizador que indica se o IRE não deve executar a regra de Restrição de Reclassificação que corresponde à classe do item de carga útil.
    Valores válidos:
    • verdadeiro: ignore a execução da regra.
    • falso: executa a regra.

    Padrão: falso

    Itens.Configurações.entrada.AtualizarSemDowngrade Booliano Sinalizador que indica se a atualização e o downgrade são permitidos para este item.
    Valores válidos:
    • verdadeiro: atualize o item, mas o downgrade não é permitido.
    • falso: a atualização e o downgrade do item são permitidos.

    Padrão: falso

    configurações.itens.entrada.atualizaçãoSemComutador Booliano Sinalizador que indica se o item pode ser atualizado e a classe alternada.
    Valores válidos:
    • verdadeiro: atualize o item, mas a alternância de classe não é permitida.
    • falso: a atualização do item e a alternância de classe são permitidas.

    Padrão: falso

    Itens.DeEntrada.Configurações.AtualizarSemAtualizar Booliano Sinalizador que indica se a atualização e o upgrade são permitidos para este item.
    Valores válidos:
    • verdadeiro: atualize o item, mas o upgrade não é permitido.
    • falso: a atualização e o upgrade do item são permitidos.

    Padrão: falso

    input.items.sys_object_source_info Objeto Identificador de IC exclusivo para uma origem específica.
    "sys_object_source_info": { 
      "source_feed": "String",
      "source_name": "String",  
      "source_native_key": "String",
      "source_recency_timestamp": "String"
    } 
    input.items.sys_object_source_info.source_feed Cadeia de caracteres Se a origem puder ter vários feeds, use este campo para fornecer o nome do feed que envia este item.

    A fonte de dados gera este nome de feed. Pode ser qualquer cadeia de caracteres que identifique exclusivamente o feed de origem.

    input.items.sys_object_source_info.source_name Cadeia de caracteres Fonte de dados das informações de IC. Este valor deve ser um dos valores de opção definidos para o campo discovery_source da tabela Item de configuração [cmdb_ci].
    input.items.sys_object_source_info.source_native_key Cadeia de caracteres Chave/ID exclusivo do item da origem.

    A fonte de dados gera esta chave. Pode ser qualquer cadeia de caracteres exclusiva do item.

    input.items.sys_object_source_info.source_recency_timestamp Cadeia de caracteres Data e hora UTC em que o item foi verificado.

    Formato: AAAA-MM-DD hh:mm:ss

    valores.itens.entrada Objeto Campos a serem criados ou atualizados para este item relacionado como pares de nome/valor, em que o nome é o nome do campo. Para um campo de referência, o valor deve ser o sys_id referenciado. Se você quiser usar o valor de exibição em vez do sys_id para campos de referência, passe essas informações em um objeto display_values em vez de no objeto values.

    Os nomes e tipos de campo dependem dos campos selecionados pelo usuário, como:

    "values": {
      "host_name": "String",
      "ip_address": "String",
      "name": "String",
      "os_name": "String",
      "sys_class_name": "String"
    }
    input.referenceItems Matriz de objetivos Lista que define referências entre itens na carga de entrada.
    "referenceItems": [
      { 
        "referenced": "String", 
        "referencedBy": "String", 
        "referenceField": "String" 
      }
    ]
    input.referenceItems.referenced Cadeia de caracteres O internal_id definido para o item que está sendo referenciado por outro item.
    input.referenceItems.referencedBy Cadeia de caracteres O internal_id definido para o item que faz referência a outro item.
    input.referenceItems.referenceField Cadeia de caracteres Nome do campo de referência na classe/tabela do item referencedBy.
    relações.entrada Matriz de objetivos Lista que especifica relacionamentos entre itens na carga útil de entrada.
    Um objeto nesta matriz pode usar um de dois formatos.
    • O objeto pode definir um relacionamento entre dois itens de nível superior (somente) usando pares de nome-valor parent e child, com valores que representam índices de item da matriz de carga items.
      "relations": [
        {
          "child": Number,
          "parent": Number,
          "sys_rel_source_info": {Object},
          "type": "String"
        }
      ]
    • O objeto pode definir um relacionamento entre quaisquer dois itens, incluindo itens de nível superior, relacionados ou de pesquisa, usando parent_id e child_id pares de chave/valor, com valores que representam internal_id valores definidos para esses itens.
      "relations": [
        {
          "child_id": "String",
          "parent_id": "String",
          "sys_rel_source_info": {Object},
          "type": "String"
        }
      ]
    input.relations.child Número Índice inteiro do objeto de IC na matriz items que representa o elemento secundário no relacionamento (itens, items.related ou items.lookup.)
    input.relations.child_id Cadeia de caracteres O internal_id do item secundário na relação (itens, itens.related ou items.lookup.)
    input.relations.parent Número Índice inteiro do item primário na matriz items (itens, itens.related ou itens.lookup.)
    input.relations.parent_id Cadeia de caracteres O internal_id do item primário na relação (itens, itens.related ou itens.lookup.)
    input.relations.sys_rel_source_info Objeto Informações de origem da descoberta para o relacionamento. Para relacionamentos de não dependência, essas informações são salvas na tabela Origens de relacionamento [sys_rel_source] (não persistentes para métodos Identifique-se de CIEnhanced () ou Identifique -se de CI().)

    Tipo de dados: objeto

    "sys_rel_source_info": { 
      "source_name": "String", 
      "source_feed": "String" 
    } 
    input.relations.sys_rel_source_info.source_name Cadeia de caracteres Nome da origem da descoberta.

    Padrão: origem de descoberta aprovada no parâmetro de método da API.

    input.relations.sys_rel_source_info.source_feed Cadeia de caracteres Qualquer cadeia de caracteres que seja uma subdescoberta/verificação na origem da descoberta.

    Padrão: 'UNKNOWN' é armazenado na coluna source_feed ao criar um registro na tabela sys_rel_source.

    input.relations.type Cadeia de caracteres Tipo de relacionamento que existe entre os itens primários e secundários. Deve ser um valor de campo de nome da tabela Tipo de relacionamento de IC [cmdb_rel_type].
    opções Objeto Opcional, mas {} ou nulo deve ser passado. Opções para habilitar ou desabilitar recursos.
    Nota:
    Por padrão, ou se partial_payloads estiver definido como verdadeiro, partial_commits e deduplicate_payloads serão habilitados, mesmo se estiverem definidos como falsos, pois esses recursos são essenciais para a funcionalidade de cargas parciais.
    "options": { 
     "deduplicate_payloads": Boolean,
     "generate_summary": Boolean, 
     "partial_commits": Boolean, 
     "partial_payloads": Boolean,
     "skip_updating_last_scan_to_now": Boolean,
     "skip_updating_source_last_discovered_to_now": Boolean
    }
    opções.deduplicate_payloads Booliano Sinalizador que indica se itens duplicados são mesclados ou considerados erros.

    Valores válidos:

    • verdadeiro: mesclar itens duplicados.
    • falso: considere itens duplicados como erros.

    Padrão: verdadeiro

    opções.generate_summary Booliano Sinalizador que indica se os resultados retornados contêm informações de resumo. Para obter detalhes das informações de resumo retornadas, consulte <String>.summary na tabela de resultados de retorno.

    Valores válidos:

    • verdadeiro: inclui informações de resumo.
    • falso: não inclui informações de resumo.

    Padrão: falso

    opções.partial_commits Booliano Sinalizador que indica se o suporte à confirmação parcial está habilitado. Para obter informações adicionais sobre confirmações parciais, consulte Recursos de IRE aprimorados.

    Valores válidos:

    • verdadeiro: confirmação parcial habilitada.
    • falso: confirmação parcial desabilitada.

    Padrão: verdadeiro

    opções.cargas_parciais Booliano Sinalizador que indica se o suporte a carga parcial está habilitado. Para obter informações adicionais sobre cargas parciais, consulte Recursos de IRE aprimorados e Criar uma regra de fonte de dados de IRE.

    Valores válidos:

    • verdadeiro: carga parcial habilitada.
    • falso: carga parcial desabilitada.

    Padrão: verdadeiro

    opções.skip_updating_last_scan_to_now Booliano Sinalizador que indica se a atualização do campo de tempo last_scan de sys_object_source deve ser ignorada.
    Valores válidos:
    • verdadeiro: se o parâmetro source_recency_timestamp não for passado em sys_object_source_info, não atualize o campo de tempo last_scan de sys_object_source.
    • falso: atualize o campo de tempo last_scan de sys_object_source.

    Padrão: usa o valor na propriedade do sistema glide.identification_engine.skip_updating_last_scan_to_now.

    opções.skip_updating_source_last_discovered_to_now Booliano Sinalizador que indica se a atualização dos campos discovery_source e last_discovered deve ser ignorada na tabela Item de configuração [cmdb_ci].
    Valores válidos:
    • verdadeiro: se last_discovered não for fornecido nos valores do item de carga, não atualize os campos discovery_source e last_discovered.
    • falso: atualize os campos discovery_source e last_discovered.

    Padrão: usa o valor na propriedade do sistema glide.identification_engine.skip_updating_source_last_discovered_to_now.

    origem Cadeia de caracteres Fonte de dados das informações de IC. Este valor deve ser um dos valores de opção definidos para o campo discovery_source da tabela Item de configuração [cmdb_ci].
    Tabela 8. Retorna
    Tipo Descrição
    <String> Cadeia de caracteres no formato JSON que é uma lista de resultados dos itens de configuração na cadeia de caracteres de entrada.

    Tipo de dados: cadeia de caracteres

    { 
      "additionalCommittedItems": [Array],  
      "additionalCommittedRelations": [Array], 
      "hasError": Boolean, 
      "hasWarning": Boolean,
      "items": [Array],  
      "relations": [Array], 
      "summary": {Object} 
    }
    <String>.additionalCommittedItems Lista de ICs que foram confirmados durante o processamento de IRE da carga atual, mas não estavam presentes na carga de entrada atual.

    Tipo de dados: matriz de objetos

    "additionalCommittedItems": [
      {
        "className": "String",
        "errorCount": Number,
        "operation": "String",
        "identificationAttempts": [Array],
        "inputIndices": [Array],
        "markers": [Array],
        "mergedPayloads": [Array],
        "sysId": "String"
      }
    ]
    <String>.additionalCommittedRelations Descrição de um IC de relacionamento dependente que não foi incluído na lista relations do corpo da solicitação a ser inserida ou atualizada.

    Tipo de dados: matriz de objetos

    "additionalCommittedRelations": [
      {
        "className": "String",
        "inputIndices": [Array],
        "markers": [Array],
        "mergedPayloadIds": [Array],
        "operation": "String"
      }
    ]
    <String>.temErro Sinalizador que indica se algum item ou relação tem erros.

    Tipo de dados: booliano

    <String>.temAviso Sinalizador que indica se algum item ou relação tem avisos.

    Tipo de dados: booliano

    <String>.itens Descrição dos ICs criados ou atualizados.

    Tipo de dados: matriz de objetos

    "items": [ 
      {  
        "additionalRelatedItems": [Array],
        "className": "String",
        "duplicateIndices": [Array],
        "errorCount": Number, 
        "errors": [Array], 
        "identificationAttempts": [Array], 
        "identifierEntrySysId": "String",
        "info": [Array], 
        "inputIndices": [Array], 
        "maskedAttributes": [Array],
        "operation": "String",
        "relatedSysIds": [Array], 
        "sysId": "String" 
      }
    ]
    <String>.items.additionalRelatedItems Informações sobre pesquisa adicional e itens relacionados que foram processados, mas não fornecidos como parte da carga de entrada. Esses itens são de cargas parciais.

    Tipo de dados: matriz de objetos

    "additionalRelatedItems": [ 
      {
        "className": "String", 
        "inputIndices": [Array],
        "mergedPayloadIds": [Array], 
        "operation": "String",
        "sysId": "String"
      }
    ]
    <String>.items.additionalRelatedItems.className Nome da classe/tabela (sys_class_name) do IC que foi criado ou atualizado.

    Tipo de dados: cadeia de caracteres

    <String>.itens.adicionaisRelatedItems.inputIndices Valores de índice para ICs da matriz items do corpo da solicitação que correspondem a este item relacionado.

    Tipo de dados: matriz de números

    <String>.items.additionalRelatedItems.mergedPayloadIds Lista de sys_ids das cargas parciais que foram mescladas no item relacionado. Localizado na tabela Cargas Parciais de IRE do CMDB [cmdb_ire_partial_payloads].

    Tipo de dados: matriz

    <String>.itens.adicionaisItensRelacionados.operação Tipo de operação.

    Valores possíveis:

    • INSERIR: o novo IC foi inserido no banco de dados.
    • NO_CHANGE: nenhuma mudança de IC foi feita.
    • UPDATE: o IC existente foi atualizado.

    Tipo de dados: cadeia de caracteres

    <String>.items.additionalRelatedItems.sysId Sys_id do IC que foi atualizado ou criado.

    Tipo de dados: cadeia de caracteres

    <String>.items.className Nome da classe/tabela (sys_class_name) do IC que foi criado ou atualizado.

    Tipo de dados: cadeia de caracteres

    <String>.itens.Indicesduplicados Lista de índices de ICs que são duplicatas do item atual.

    Tipo de dados: matriz

    <String>.items.errorCount Número de erros encontrados ao processar o item.

    Tipo de dados: número

    <String>.itens.erros Lista de erros encontrados ao processar este IC.

    Tipo de dados: matriz de objetos

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    <String>.itens.erros.erro Tipo de erro encontrado ao processar o IC.

    Tipo de dados: cadeia de caracteres

    <String>.itens.erros.mensagem Mensagem de erro encontrada ao processar o IC.

    Tipo de dados: cadeia de caracteres

    <String>.itens.identificaçãoTentativas Lista de tentativas feitas para identificar os ICs.

    Tipo de dados: matriz de objetos

    "identificationAttempts": [
      { 
        "attemptResult": "String", 
        "attributes": [Array],
        "hybridEntryCiAttributes": [Array],
        "identifierName": "String",
        "searchOnTable": "String" 
      }
    ]
    <String>.itens.identificaçãoTentativas.tentativaResultado Resultados da tentativa de identificar o IC.

    Valores possíveis:

    • CORRESPONDIDO: identificação bem-sucedida. Foi encontrado um IC exclusivo na tabela de regras do identificador que corresponde exatamente aos atributos especificados.
    • MULTI_MATCH: falha na identificação com um erro. ICs duplicados foram encontrados na tabela de regras do identificador ao corresponder aos atributos especificados.
    • NO_MATCH: falha na identificação. Nenhum IC foi encontrado na tabela de regras do identificador que corresponda aos atributos especificados.
    • Ignorado: tentativa de identificação sem tentativa. Os atributos necessários para esta pesquisa de tabela de regras de identificador não foram fornecidos, portanto, a regra não foi aplicada.

    Tipo de dados: cadeia de caracteres

    <String>.itens.identificaçãoTentativas.atributos Lista de atributos de entrada do identificador de IC que foram usados durante o processo de identificação.

    Tipo de dados: matriz

    Os nomes e tipos de atributo dependem dos dados do corpo da solicitação e do identificador em uso, como:

    "attributes": [
      "serial_number": "String",
      "serial_number_type": "String",
    ]
    <String>.itens.identificaçãoTentativas.identificadorNome Regra de identificador usada para esta tentativa de identificação de IC.

    Tipo de dados: cadeia de caracteres

    <String>.itens.identificaçãoTentativas.pesquisaNaTabela Nome da tabela pesquisada durante o processo de identificação.

    Tipo de dados: cadeia de caracteres

    <String>.items.identifierEntrySysId Sys_id da regra do identificador usada para identificar o IC. Localizado na tabela Entrada do identificador [cmdb_identifier_entry].

    Tipo de dados: cadeia de caracteres

    <String>.itens.info Informações adicionais sobre o processamento do item.

    Tipo de dados: matriz de objetos

    "info": [
     {
       "code": "String",
       "message": "String",
       "ruleSysId": "String"
     }
    ]
    <String>.itens.info.código Tipo de reclassificação que foi ignorado.
    Valores possíveis:
    • SKIPPED_CLASS_SWITCH
    • SKIPPED_CLASS_DOWNGRADE
    • SKIPPED_CLASS_UPGRADE

    Tipo de dados: cadeia de caracteres

    <String>.itens.informações.mensagem Mensagem que fornece informações adicionais sobre o motivo para ignorar a reclassificação.

    Tipo de dados: cadeia de caracteres

    <String>.items.info.ruleSysId Sys_id da regra de restrição de reclassificação que foi correspondida. Aplicável somente quando o IRE ignora a reclassificação devido à regra de restrição de reclassificação. Este valor ficará vazio se a reclassificação for ignorada devido a uma carga útil ou sinalizador global.

    Tipo de dados: cadeia de caracteres

    <String>.itens.InputIndices Índices do IC de entrada correspondente. Para itens de nível superior, é uma lista de números inteiros. Para ICs relacionados ou de pesquisa, é a lista de objetos JSON.

    Tipo de dados: matriz de números

    <String>.itens.atributosmascarados Lista de atributos cuja atualização por uma fonte de dados não autorizada foi ignorada conforme definido pelas Regras de reconciliação.

    Tipo de dados: matriz

    <String>.itens.operação Operação que ocorreu.

    Valores possíveis:

    • INSERIR: o novo IC foi inserido no banco de dados.
    • INSERT_AS_INCOMPLETE: o item foi salvo na tabela cmdb_ire_incomplete_payloads.
    • INSERT_AS_PARTIAL: o item foi salvo na tabela cmdb_ire_partial_payloads.
    • UPDATE: o IC existente foi atualizado.
    • UPDATE_WITH_DOWNGRADE: o IC foi atualizado e a classe foi alterada para uma classe mais genérica (classe ancestral).
    • UPDATE_WITH_SWITCH: o IC foi atualizado e a classe foi alterada para uma classe que não é ancestral ou descendente.
    • UPDATE_WITH_UPDRADE: o IC foi atualizado e a classe foi alterada para uma classe mais especializada (classe descendente).

    Tipo de dados: cadeia de caracteres

    <String>.itens.itens.relacionados Informações sobre os itens relacionados processados.

    Tipo de dados: matriz de objetos

    "relatedItems": [
      { 
        "className": "String",
        "errorCount": Number,
        "errors": [Array],
        "inputIndices": [Array],
        "mergePayloadIds": [Array],
        "operation": "String",
        "sysId": "String",
        "warningCount": Number,
        "warnings": [Array]
      }
    ]
    <String>.items.relatedItems.className Nome da classe/tabela (sys_class_name) do item relacionado.

    Tipo de dados: cadeia de caracteres

    <String>.items.relatedItems.errorCount Número de erros detectados ao processar os itens relacionados.

    Tipo de dados: número

    <String>.itens.itens.relacionados.erros Lista de erros ocorridos durante o processamento do item relacionado.

    Tipo de dados: matriz de objetos

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    <String>.itens.itens.relacionados.erros.erro Tipo de erro encontrado ao processar o item relacionado.

    Tipo de dados: cadeia de caracteres

    <String>.itens.itens.relacionados.erros.mensagem Mensagem de erro encontrada ao processar o item relacionado.

    Tipo de dados: cadeia de caracteres

    <String>.itens.itens.relacionados.IndicesDeEntrada Índice do item de entrada correspondente. Para itens de nível superior, é uma lista de números inteiros. Para itens relacionados ou de pesquisa, é a lista de objetos JSON.

    Tipo de dados: matriz de números ou matriz de objetos

    "inputIndices": [
      { 
       "mainIndex": Number, 
       "subIndex": Number 
      }
    ]
    <String>.itens.relatedItems.inputIndices.mainIndex Valor de índice da matriz items do corpo da solicitação que corresponde ao IC primário do item relacionado.

    Tipo de dados: número

    <String>.itens.itens.relacionados.InputIndices.subIndex Valor de índice da matriz items.lookup do corpo da solicitação que corresponde ao item relacionado.

    Tipo de dados: número

    <String>.items.relatedItems.mergedPayloadIds Lista de sys_ids das cargas parciais que foram mescladas no IC durante o processamento.

    Tipo de dados: matriz

    <String>.itens.itens.relacionados.operação Operação que ocorreu.

    Valores possíveis:

    • INSERIR: o novo IC relacionado foi inserido no banco de dados.
    • INSERT_AS_INCOMPLETE: o item foi salvo na tabela cmdb_ire_incomplete_payloads.
    • INSERT_AS_PARTIAL: o item foi salvo na tabela cmdb_ire_partial_payloads.
    • NO_CHANGE: nenhuma mudança de IC relacionada foi feita.
    • ATUALIZAÇÃO: o IC relacionado existente foi atualizado.
    • UPDATE_WITH_DOWNGRADE: o IC relacionado foi atualizado e a classe foi alterada para uma classe mais genérica (classe ancestral).
    • UPDATE_WITH_SWITCH: o IC relacionado foi atualizado e a classe foi alterada para uma classe que não é ancestral ou descendente.
    • UPDATE_WITH_UPDRADE: o IC relacionado foi atualizado e a classe foi alterada para uma classe mais especializada (classe descendente).

    Tipo de dados: cadeia de caracteres

    <String>.items.relatedItems.sysId Sys_id do item relacionado.

    Tipo de dados: cadeia de caracteres

    <String>.items.relatedItems.warningCount Número de avisos encontrados ao processar os itens relacionados.

    Tipo de dados: número

    <String>.itens.itens.relacionados.avisos Descrição de avisos encontrados durante o processamento dos itens relacionados.

    Tipo de dados: matriz de objetos

    "warnings": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    <String>.items.relatedSysIds Lista dos valores de sys_id dos ICs usados durante a identificação baseada em pesquisa de itens relacionados.

    Tipo de dados: cadeia de caracteres

    <String>.itens.sys_id Sys_id do IC que foi atualizado ou criado.

    Tipo de dados: cadeia de caracteres

    <String>.relações Informações sobre as relações processadas.

    Tipo de dados: matriz de objetos

    "relations": [ 
      { 
        "className": "String",
        "errorCount": Number,
        "errors": [Array],
        "inputIndices": [Array],
        "operation": "String",
        "sysId": "String" 
      }
    ]
    <String>.relations.className Sys_class_name deste IC de relacionamento dependente.

    Somente valor compatível: cmdb_rel_ci: tabela de relacionamento de IC.

    Tipo de dados: cadeia de caracteres

    <String>.relations.errorCount Número de erros encontrados ao processar o IC de relacionamento dependente.

    Tipo de dados: número

    <String>.relacionamento.erros Lista que descreve os erros encontrados durante o processamento deste IC de relacionamento dependente.

    Tipo de dados: matriz de objetos

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    <String>.relations.inputIndices Índices para os objetos de IC de relacionamento dependente na matriz relations do corpo da solicitação que correspondem a este IC de relacionamento dependente.

    Tipo de dados: matriz

    <String>.relacionamento.operação Tipo de operação realizada.

    Valores possíveis:

    • INSERIR: o IC de relacionamento dependente foi inserido na tabela de destino como um novo registro.
    • INSERT_AS_INCOMPLETE: o IC de relacionamento dependente tinha erros e foi inserido na tabela Cargas incompletas do IRE do CMDB [cmdb_ire_incomplete_payloads].
    • INSERT_AS_PARTIAL: o IC de relacionamento dependente tinha erros e foi inserido na tabela Cargas Parciais IRE do CMDB [cmdb_ire_partial_payloads].
    • NO_CHANGE: nenhuma operação foi realizada.
    • ATUALIZAÇÃO: um IC de relacionamento dependente existente na tabela de destino foi atualizado.

    Tipo de dados: cadeia de caracteres

    <String>.relations.sysId Sys_id do IC de relacionamento dependente.

    Tipo de dados: cadeia de caracteres

    <String>.resumo Lista de propriedades JSON que fornecem estatísticas sobre quantos itens foram inseridos, atualizados e semelhantes por classe.

    Tipo de dados: matriz

    <String>.resumo.<class_name> Estatísticas para uma classe específica.

    Tipo de dados: objeto

    <class_name>: {
     "additionalInsertedItemCount": Number, 
     "errorCount": Number,
     "incompleteItemCount": Number,
     "insertedItemCount": Number,
     "partialItemCount": Number,
     "skippedItemCount": Number,
     "unchangedItemCount": Number,
     "updatedItemCount": Number,
     "warningCount": Number 
    }
    <String>.resumo.<class_name> .additionalInsertedItemCount Número de itens inseridos devido ao processamento de cargas parciais.

    Tipo de dados: número

    <String>.resumo.<class_name> .contagemdeerros Número de erros encontrados ao processar itens.

    Tipo de dados: número

    <String>.resumo.<class_name> .incompleteItemCount Número de itens inseridos na tabela Cargas incompletas do IRE do CMDB [cmdb_ire_incomplete_payloads].

    Tipo de dados: número

    <String>.resumo.<class_name> .insertedItemCount Número de itens criados.

    Tipo de dados: número

    <String>.resumo.<class_name> .partialItemCount Número de itens salvos na tabela Carga Parcial [cmdb_ire_partial_payloads].

    Tipo de dados: número

    <String>.resumo.<class_name> .skippedItemCount Número de itens que foram ignorados.

    Tipo de dados: número

    <String>.resumo.<class_name> .unchangedItemCount Número de itens que tinham entradas, mas não foram modificados.

    Tipo de dados: número

    <String>.resumo.<class_name> .updateItemCount Número de itens atualizados.

    Tipo de dados: número

    <String>.resumo.<class_name> .warningCount Número de itens que geraram um aviso quando processados.

    Tipo de dados: número

    var payload = {
    "items": [
    {
    "className": "cmdb_ci_win_server",
    "values": {
       "chassis_type": "Desktop",
       "os": "Windows 2012 R2 Datacenter",
       "name": "Windows2012Server1",
       "serial_number": "0000-0011-1690-8730-8636-5722-52",
       "cpu_count": "1"
      },
      "lookup": [
      {
         "values": {
           "valid": "true",
           "serial_number": "0000-0011-1690-8730-8636-5722-52",
           "serial_number_type": "bios"
          },
         "className": "cmdb_serial_number"
       },
       {
         "values": {
           "valid": "true",
           "serial_number": "3311-9736-4988-9744-1749-4183-41",
           "serial_number_type": "chassis"
          },
         "className": "cmdb_serial_number"
       }],
     
        "internal_id": "16777219",
        "sys_object_source_info": {
          "source_feed": "SN Discovery Feed 1",
          "source_name": "ServiceNow",
          "source_native_key": "16777219",
          "source_recency_timestamp": "2019-10-18 08:31:23"
       }},
       {
       "className": "cmdb_ci_spkg",
       "values": {
         "name": "Windows 2012 R2 Datacenter",
         "key": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL"
         },
     
      "related": [
        {
         "internal_id": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777219",
          "values": {
            "name": "Windows 2012 R2 Datacenter-SAMLABVM52"
          },
          "className": "cmdb_software_instance",
          "sys_object_source_info": {
            "source_feed": "SN Discovery Feed 1",
            "source_name": "ServiceNow",
            "source_native_key": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777219"
      }},
      {
        "internal_id": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777229",
          "values": {
            "name": "Windows 2012 R2 Datacenter-SAMLABVM52"
          },
        "className": "cmdb_software_instance",
        "sys_object_source_info": {
          "source_feed": "SN Discovery Feed 1",
          "source_name": "ServiceNow",
          "source_native_key": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777229"
      }}
    ],
      "settings" : {
            "skipReclassificationRestrictionRules" : "false",
            "updateWithoutDowngrade" : "true",
            "updateWithoutUpgrade" : "true",
            "updateWithoutSwitch" : "true"
          }},
      {
      "className": "cmdb_ci_app_server_tomcat",
      "values": {
        "running_process_key_parameters": "/opt/OV/nonOV/tomcat/b/temp org.apache.catalina.startup.Bootstrap start",
        "install_directory": "/opt/OV/nonOV/tomcat/b",
        "name": "Tomcat@hpom9:3443",
        "server_port": "8006",
        "sys_class_name": "cmdb_ci_app_server_tomcat"
      },
     
      "internal_id": "tomcat_id"
      }],
     
    "relations": [
      {
        "parent_id": "tomcat_id",
        "child_id": "16777219",
        "type": "Runs on::Runs"
      }],
     
    "referenceItems": [
      {
        "referenceField": "installed_on",
        "referenced": "16777219",
        "referencedBy": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777219"
      }]};
     
    var input = JSON.stringify(payload);
    var output = sn_cmdb.IdentificationEngine.identifyCIEnhanced('ServiceNow', input, {});
    
    gs.info(JSON.stringify(JSON.parse(output), null, 2));

    Saída:

    {
      "items": [
        {
          "className": "cmdb_ci_win_server",
          "operation": "INSERT",
          "relatedSysIds": [
            null,
            null
          ],
          "relatedItems": [
            {
              "errors": [],
              "operation": "INSERT",
              "className": "cmdb_serial_number",
              "errorCount": 0,
              "markers": [],
              "inputIndices": [
                {
                  "mainIndex": 0,
                  "subIndex": 0
                }
              ],
              "mergedPayloadIds": [],
              "warningCount": 0
            },
            {
              "errors": [],
              "operation": "INSERT",
              "className": "cmdb_serial_number",
              "errorCount": 0,
              "markers": [],
              "inputIndices": [
                {
                  "mainIndex": 0,
                  "subIndex": 1
                }
              ],
              "mergedPayloadIds": [],
              "warningCount": 0
            }
          ],
          "identificationAttempts": [
            {
              "attributes": [],
              "info": "sys_object_source NO_MATCH",
              "identifierName": "",
              "attemptResult": "NO_MATCH",
              "hybridEntryCiAttributes": []
            },
            {
              "attributes": [
                "serial_number",
                "serial_number_type"
              ],
              "identifierName": "Hardware Rule",
              "attemptResult": "NO_MATCH",
              "searchOnTable": "cmdb_serial_number",
              "hybridEntryCiAttributes": []
            },
            {
              "attributes": [
                "serial_number"
              ],
              "identifierName": "Hardware Rule",
              "attemptResult": "NO_MATCH",
              "searchOnTable": "cmdb_ci_hardware",
              "hybridEntryCiAttributes": []
            },
            {
              "attributes": [
                "name"
              ],
              "identifierName": "Hardware Rule",
              "attemptResult": "NO_MATCH",
              "searchOnTable": "cmdb_ci_hardware",
              "hybridEntryCiAttributes": []
            },
            {
              "attributes": [
                "mac_address",
                "name"
              ],
              "identifierName": "Hardware Rule",
              "attemptResult": "SKIPPED",
              "searchOnTable": "cmdb_ci_network_adapter",
              "hybridEntryCiAttributes": []
            }
          ],
          "errorCount": 0,
          "markers": [],
          "inputIndices": [
            0
          ],
          "mergedPayloadIds": [],
          "warningCount": 0
        },
        {
          "className": "cmdb_ci_spkg",
          "operation": "INSERT",
          "relatedSysIds": [
            null
          ],
          "relatedItems": [
            {
              "errors": [],
              "operation": "INSERT",
              "className": "cmdb_software_instance",
              "errorCount": 0,
              "markers": [],
              "inputIndices": [
                {
                  "mainIndex": 1,
                  "subIndex": 0
                }
              ],
              "mergedPayloadIds": [],
              "warningCount": 0
            },
            {
              "errors": [],
              "warnings": [
                {
                  "error": "MISSING_MATCHING_ATTRIBUTES",
                  "message": "In payload missing minimum set of input values for criterion (matching) attributes from identify rule for table [cmdb_software_instance]. Add these input values in payload item '{\"className\":\"cmdb_software_instance\",\"values\":{},\"internal_id\":\"f7273cccec30101056cd4bb46eb4db5d\",\"sys_object_source_info\":{\"source_feed\":\"SN Discovery Feed 1\",\"source_name\":\"ServiceNow\",\"source_native_key\":\"Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777229\"},\"settings\":{},\"sys_ire_info\":{\"ire_received_time\":\"2020-05-10 17:57:48\"}}'"
                }
              ],
              "operation": "INSERT_AS_PARTIAL",
              "className": "cmdb_software_instance",
              "errorCount": 0,
              "sysId": "Unknown",
              "markers": [],
              "inputIndices": [
                {
                  "mainIndex": 1,
                  "subIndex": 1
                }
              ],
              "mergedPayloadIds": [],
              "warningCount": 1
            }
          ],
          "identificationAttempts": [
            {
              "attributes": [],
              "info": "sys_object_source SKIPPED",
              "identifierName": "",
              "attemptResult": "SKIPPED",
              "hybridEntryCiAttributes": []
            },
            {
              "attributes": [
                "key"
              ],
              "identifierName": "Software",
              "attemptResult": "NO_MATCH",
              "searchOnTable": "cmdb_ci_spkg",
              "hybridEntryCiAttributes": []
            }
          ],
          "errorCount": 0,
          "markers": [],
          "inputIndices": [
            1
          ],
          "mergedPayloadIds": [],
          "warningCount": 0
        },
        {
          "className": "cmdb_ci_app_server_tomcat",
          "operation": "INSERT",
          "identificationAttempts": [
            {
              "attributes": [],
              "info": "sys_object_source SKIPPED",
              "identifierName": "",
              "attemptResult": "SKIPPED",
              "hybridEntryCiAttributes": []
            }
          ],
          "errorCount": 0,
          "markers": [],
          "inputIndices": [
            2
          ],
          "mergedPayloadIds": [],
          "warningCount": 0
        }
      ],
      "additionalCommittedItems": [],
      "relations": [
        {
          "className": "cmdb_rel_ci",
          "operation": "INSERT",
          "errorCount": 0,
          "markers": [],
          "inputIndices": [
            0
          ],
          "mergedPayloadIds": [],
          "warningCount": 0
        }
      ],
      "additionalCommittedRelations": []
    }  

    IdentificationEngine - runIdentificationAudit(GlideRecord now_GR)

    Executa uma auditoria de identificação em relação ao item de configuração (IC) especificado para detectar duplicatas.

    Se forem encontradas duplicatas, serão criadas tarefas de duplicação. Use este método somente em tipos de IC com regras de identificação independentes.

    Tabela 9. Parâmetros
    Nome Tipo Descrição
    now_GR GlideRecord IC no qual a auditoria será executada para detectar duplicatas. O IC deve ter regras de identificação independentes.
    Tabela 10. Retorna
    Tipo Descrição
    vazio

    O exemplo a seguir mostra como verificar se há duplicatas em um registro na tabela Servidores Linux [cmdb_ci_linux_server].

    var sysId = '<cbdb_ci_sys_id>';
    var gr = new GlideRecord('cmdb_ci_linux_server');
    gr.get(sysId);
    sn_cmdb.IdentificationEngine.runIdentificationAudit(gr);