CMDB MetaAPI

  • Versão de lançamento: Yokohama
  • Atualizado 30 de jan. de 2025
  • 4 min. de leitura
  • A Meta API do CMDB fornece endpoints para obter metadados em uma classe Configuration Management Database (CMDB).

    Esta API requer que o usuário tenha a função ITIL.

    CMDB Meta - GET /now/cmdb/meta/{classname}

    Retorna os metadados da classe CMDB especificada.

    Formato da URL

    URL com controle de versão: /api/now/{api_version}/cmdb/meta/{className}

    URL padrão: /api/now/cmdb/meta/{className}

    Nota:
    As versões disponíveis são especificadas no Explorador de REST API. Para REST APIs com script, há informações adicionais sobre a versão no formulário Serviço REST com script.

    Parâmetros de solicitação compatíveis

    Tabela 1. Parâmetros de caminho
    Nome Descrição
    api_version Opcional. Versão do endpoint a ser acessada. Por exemplo, v1 ou v2. Somente especifique este valor para usar uma versão de endpoint diferente da mais recente.

    Tipo de dados: cadeia de caracteres

    className CMDB nome da classe. Este é o nome da tabela que contém os registros de IC desejados, como cmdb_ci_linux_server ou cmdb_ci_apache_web_server.

    Tipo de dados: cadeia de caracteres

    Tabela 2. Parâmetros de consulta
    Nome Descrição
    Nenhum(a)
    Tabela 3. Parâmetros do corpo da solicitação (XML ou JSON)
    Nome Descrição
    Nenhum(a)

    Cabeçalhos

    Os cabeçalhos de solicitação e resposta a seguir se aplicam somente a esta ação HTTP ou se aplicam a esta ação de maneira distinta. Para obter uma lista de cabeçalhos gerais usados na REST API, consulte Cabeçalhos de REST API compatíveis.

    Tabela 4. Cabeçalhos da solicitação
    Cabeçalho Descrição
    Aceitar Formato de dados do corpo da resposta. Tipos compatíveis: application/json ou application/xml.

    Padrão: application/json

    Tabela 5. Cabeçalhos de resposta
    Cabeçalho Descrição
    Nenhum(a)

    Códigos de status

    Os seguintes códigos de status se aplicam a esta ação HTTP. Para obter uma lista de códigos de status possíveis usados na REST API, consulte Códigos de resposta HTTP de REST API.

    Tabela 6. Códigos de status
    Código do status Descrição
    200 Bem-sucedido. A solicitação foi processada com sucesso.
    401 Não autorizado. As credenciais do usuário estão incorretas ou não foram aprovadas.
    404 Não encontrado. O item solicitado não foi encontrado.
    500 Erro interno do servidor. Ocorreu um erro inesperado ao processar a solicitação. A resposta contém informações adicionais sobre o erro.

    Parâmetros do corpo da resposta (JSON ou XML)

    Elemento Descrição
    atributos Campos disponíveis na tabela de classe especificada.

    Tipo de dados: matriz

    secundários Lista de classes estendidas da classe especificada.

    Tipo de dados: matriz

    ícones sys_id do ícone de classe.

    Tipo de dados: cadeia de caracteres

    icon_url URL do ícone de classe.

    Tipo de dados: cadeia de caracteres

    regras_de_identificação Atributos associados às regras de identificação de item de configuração para a classe especificada.

    Tipo de dados: objeto

    é_extensível Sinalizador que indica se a classe pode ser estendida para criar outras classes.
    Valores possíveis:
    • verdadeiro: a classe pode ser estendida.
    • falso: a classe não pode ser estendida.

    Tipo de dados: booliano

    rótulo Nome de exibição da classe especificada.

    Tipo de dados: cadeia de caracteres

    nome Nome da tabela/classe.

    Tipo de dados: cadeia de caracteres

    primário Classe primária.

    Tipo de dados: cadeia de caracteres

    regras_de_relacionamento Relacionamentos entre a classe especificada e outras classes no CMDB.

    Tipo de dados: matriz

    Amostra de solicitação cURL

    curl "https://instance.servicenow/api/now/cmdb/meta/cmdb_ci_computer" \
    --request GET \
    --header "Accept:application/json" \
    --user 'username':'password'
    
    {
      "result": {
        "icon_url": "images/app.ngbsm/computer.svg",
        "is_extendable": true,
        "parent": "cmdb_ci_hardware",
        "children": [
          "cmdb_ci_ucs_blade",
          "cmdb_ci_pc_hardware",
          "cmdb_ci_ucs_rack_unit",
          "cmdb_ci_mainframe_hardware",
          "cmdb_ci_server",
          "cmdb_ci_storage_switch"
        ],
        "name": "cmdb_ci_computer",
        "icon": "c6442dd69fb00200eb3919eb552e7012",
        "attributes": [
          {
            "is_inherited": "false",
            "is_mandatory": "false",
            "is_read_only": "false",
            "default_value": null,
            "label": "OS Address Width (bits)",
            "type": "integer",
            "element": "os_address_width",
            "max_length": "40",
            "is_display": "false"
          },
          {
            "is_inherited": "true",
            "is_mandatory": "false",
            "is_read_only": "true",
            "default_value": "false",
            "label": "Skip sync",
            "type": "boolean",
            "element": "skip_sync",
            "max_length": "40",
            "is_display": "false"
          },
          {
            "is_inherited": "true",
            "is_mandatory": "false",
            "is_read_only": "false",
            "default_value": null,
            "label": "DNS Domain",
            "type": "string",
            "element": "dns_domain",
            "max_length": "255",
            "is_display": "false"
          },
          {
            "is_inherited": "true",
            "is_mandatory": "false",
            "is_read_only": "false",
            "default_value": null,
            "label": "Purchased",
            "type": "glide_date",
            "element": "purchase_date",
            "max_length": "40",
            "is_display": "false"
          },
          {
            "is_inherited": "true",
            "is_mandatory": "false",
            "is_read_only": "false",
            "default_value": null,
            "label": "Lease contract",
            "type": "string",
            "element": "lease_id",
            "max_length": "40",
            "is_display": "false"
          }
        ],
        "relationship_rules": [
          {
            "parent": "cmdb_ci_computer",
            "relation_type": "cb5592603751200032ff8c00dfbe5d17",
            "child": "dscy_route_next_hop"
          },
          {
            "parent": "cmdb_ci_computer",
            "relation_type": "cb5592603751200032ff8c00dfbe5d17",
            "child": "dscy_router_interface"
          },
          {
            "parent": "cmdb_ci_computer",
            "relation_type": "cb5592603751200032ff8c00dfbe5d17",
            "child": "dscy_route_interface"
          },
          {
            "parent": "cmdb_ci_computer",
            "relation_type": "55c95bf6c0a8010e0118ec7056ebc54d",
            "child": "cmdb_ci_storage_pool"
          },
          {
            "parent": "cmdb_ci_computer",
            "relation_type": "55c95bf6c0a8010e0118ec7056ebc54d",
            "child": "cmdb_ci_disk_partition"
          },
          {
            "parent": "cmdb_ci_computer",
            "relation_type": "55c95bf6c0a8010e0118ec7056ebc54d",
            "child": "cmdb_ci_storage_volume"
          },
          {
            "parent": "cmdb_ci_computer",
            "relation_type": "55c95bf6c0a8010e0118ec7056ebc54d",
            "child": "cmdb_ci_storage_device"
          }
        ],
        "label": "Computer",
        "identification_rules": {
          "related_rules": [
            {
              "condition": "",
              "exact_count_match": false,
              "referenced_field": "installed_on",
              "active": true,
              "attributes": "name",
              "allow_fallback": false,
              "table": "cmdb_print_queue_instance",
              "order": 100,
              "allow_null_attribute": false
            }
          ],
          "applies_to": "cmdb_ci_hardware",
          "identifiers": [
            {
              "condition": "valid=true^absent=false^EQ",
              "exact_count_match": true,
              "referenced_field": "cmdb_ci",
              "active": true,
              "attributes": "serial_number,serial_number_type",
              "allow_fallback": false,
              "table": "cmdb_serial_number",
              "order": 100,
              "allow_null_attribute": false
            },
            {
              "condition": null,
              "exact_count_match": false,
              "referenced_field": null,
              "active": true,
              "attributes": "serial_number",
              "allow_fallback": false,
              "table": null,
              "order": 200,
              "allow_null_attribute": false
            },
            {
              "condition": null,
              "exact_count_match": false,
              "referenced_field": null,
              "active": true,
              "attributes": "name",
              "allow_fallback": false,
              "table": null,
              "order": 300,
              "allow_null_attribute": false
            },
            {
              "condition": "install_status!=100^EQ",
              "exact_count_match": true,
              "referenced_field": "cmdb_ci",
              "active": true,
              "attributes": "ip_address,mac_address",
              "allow_fallback": false,
              "table": "cmdb_ci_network_adapter",
              "order": 400,
              "allow_null_attribute": false
            }
          ],
          "name": "Hardware Rule",
          "description": "Identifier for hardware.",
          "active": true,
          "is_independent": true
        }
      }
    }