CdmVersionApi

  • Versão de lançamento: Zurich
  • Atualizado 31 de jul. de 2025
  • 12 min. de leitura
  • . CdmVersionApi fornece endpoints que permitem publicar, cancelar a publicação e exportar versões (snapshots) no Gestão de dados de configuração(CDM) para componentes compartilhados em bibliotecas compartilhadas.

    Você publica um snapshot para que ele possa ser exportado, habilitando o. Integração e entrega contínuas (CICD) pipeline para acessar e usar os componentes e bibliotecas compartilhados associados. Os exportadores só podem executar em snapshots publicados. Quando os snapshots não são mais necessários, você pode cancelar a publicação deles para reduzir a confusão sobre se o snapshot é mais viável.

    Você deve ter uma das seguintes funções para acessar esta API:
    • ACL de exibição do CDM REST com script (sn_cdm.cdm.viewer)
    • ACL do Editor de CDM REST com script (sn_cdm.cdm_editor)

    . Gestão de dados de configuração(CDM) plug-in deve ser ativado para que esta API esteja disponível em uma instância.

    Para obter informações adicionais sobre snapshots, consulte Exibir snapshots .

    CdmVersionApi - OBTER /sn_cdm/versions/export

    Retorna os dados de configuração de um componente compartilhado especificado em uma biblioteca compartilhada especificada para uma versão publicada especificada.

    A função Editor do CDM é necessária para acessar este endpoint.

    Formato de URL

    URL com controle de versão: /api/sn_cdm//versions/export

    URL padrão: /api/sn_cdm/versions/export

    Nota:
    As versões disponíveis são especificadas em REST API Explorer . Para REST APIs com script, há informações adicionais de versão no Formulário de 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 acessado. Por exemplo, v1 ou v2 . Especifique este valor somente para usar uma versão de endpoint diferente da mais recente.

    Tipo de dados: Cadeia de caracteres

    Tabela 2. Parâmetros de consulta
    Nome Descrição
    DataFormat Obrigatório. Formato dos dados de configuração.
    Valores válidos:
    • csv
    • ini
    • json
    • propriedades
    • bruto
    • xml
    • yaml

    Tipo de dados: Cadeia de caracteres

    DeccriptPassword Sinalizador que indica se valores de senha codificados ou descriptografados devem ser mostrados.
    Valores válidos:
    • Verdadeiro: Descriptografe a senha e mostre o valor descriptografado.
    • Falso: Mostra o valor da senha criptografada.

    Padrão: falso

    SharedComponentName Obrigatório. Nome do componente compartilhado cujos dados de configuração serão exportados.

    Tipo de dados: Cadeia de caracteres

    Tabela: Componente compartilhado do CDM [sn_cdm_shared_component]

    sharedLibraryName Obrigatório. Nome da biblioteca compartilhada que contém o componente cujos dados de configuração você deseja retornar. A aplicação especificada deve ter o campo de tipo definido como "shared_libird".

    Tipo de dados: Cadeia de caracteres

    Tabela: Aplicação CDM [sn_cdm_application]

    Substituíveis Sinalizador que indica se as variáveis devem ser seguidas. Para obter informações sobre como seguir as variáveis, consulte Validando e corrigindo dados de configuração .
    Valores válidos:
    • Verdadeiro: Siga as variáveis.
    • Falso: Não seguir variáveis.

    Padrão: verdadeiro

    Tabela 3. Parâmetros do corpo da solicitação
    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
    • application/xml
    • text/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 possíveis códigos de status usados na REST API, consulte Códigos de resposta HTTP da REST API .

    Tabela 6. Códigos de status
    Código do status Descrição
    200 Bem-sucedido. A solicitação foi processada com sucesso.
    400 Solicitação Incorreta. Um dos seguintes problemas pode ter ocorrido:
    • A biblioteca compartilhada não está ativa.
    • O componente compartilhado não está ativo.
    • Versões não publicadas.
    • O parâmetro está ausente na chamada.
    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

    Nome Descrição
    resultado Dados de configuração no formato especificado.
    erro Se ocorreu um erro durante o processamento, os detalhes sobre o erro.

    Tipo de dados: Objeto

    "error": {
      "detail": "String",
      "message": "String"
    }
    error.detail Informações adicionais sobre o erro.

    Tipo de dados: Cadeia de caracteres

    mensagem.erro Mensagem de erro gerada ao tentar processar a solicitação.

    Tipo de dados: Cadeia de caracteres

    status Status de erro da solicitação.

    Valores possíveis: Falha

    Tipo de dados: Cadeia de caracteres

    Solicitação de curl

    O exemplo de código a seguir mostra como exportar os dados de configuração do componente "jdk8" na biblioteca compartilhada "JavaLib".

    curl "http://instance.servicenow.com/api/sn_cdm/shared_libraries/components/exports?sharedLibraryName=JavaLib&componentName=jdk8 
    --request POST \  
    --header "Accept:application/json" \   
    --user 'username':'password'

    Resposta:

    {  
    "result": {  
        "sharedComponentA": { "cdi": "val" } 
     }  
    } 

    CdmVersionApi - PUT /sn_cdm/versions/publish

    Publica uma versão de um componente compartilhado em uma biblioteca compartilhada especificada.

    A função Editor do CDM é necessária para acessar este endpoint.

    Nota:
    Snapshots e versões são sinônimos em significado para esta implementação.

    Formato de URL

    URL com controle de versão: /api/sn_cdm//versions/publish

    URL padrão: /api/sn_cdm/versions/publish

    Nota:
    As versões disponíveis são especificadas em REST API Explorer . Para REST APIs com script, há informações adicionais de versão no Formulário de serviço REST com script .

    Parâmetros de solicitação compatíveis

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

    Tipo de dados: Cadeia de caracteres

    Tabela 8. Parâmetros de consulta
    Nome Descrição
    nome Obrigatório. Nome da versão do componente compartilhado a ser publicado.

    Tipo de dados: Cadeia de caracteres

    Tabela: Componente compartilhado do CDM [sn_cdm_shared_component]

    returnFields Lista separada por vírgulas de campos na tabela Snapshot do CDM [sn_cdm_snapshot] para retornar como parte da resposta.

    Tipo de dados: Cadeia de caracteres

    Padrão: Retorna todos os campos que não são do sistema.

    SharedComponentName Obrigatório. Nome do componente compartilhado a ser publicado.

    Tipo de dados: Cadeia de caracteres

    Tabela: Componente compartilhado do CDM [sn_cdm_shared_component]

    sharedLibraryName Obrigatório. Nome da biblioteca compartilhada na qual o componente especificado reside. O campo de tipo no registro associado deve ser definido como "shared_libird".

    Tipo de dados: Cadeia de caracteres

    Tabela: Aplicação CDM [sn_cdm_application]

    Tabela 9. Parâmetros do corpo da solicitação
    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 10. Cabeçalhos da solicitação
    Cabeçalho Descrição
    Aceitar Formato de dados do corpo da resposta.

    Tipos compatíveis:

    • application/json
    • application/xml
    • text/xml

    Padrão: application/json

    Tabela 11. 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 possíveis códigos de status usados na REST API, consulte Códigos de resposta HTTP da REST API .

    Tabela 12. Códigos de status
    Código do status Descrição
    200 Bem-sucedido. A solicitação foi processada com sucesso.
    400 Solicitação Incorreta. Ocorreu um erro durante a publicação.
    Possíveis problemas:
    • Nome da versão não encontrado.
    • A versão do componente já foi publicada.
    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

    Nome Descrição
    cdm_application_id Detalhes sobre a aplicação CDM associada ao snapshot.

    Tipo de dados: Objeto

    "cdm_application_id": {
      "link": "String",
      "value": "String"
    }
    cdm_application_id.link Chamada a ser usada para acessar o registro da aplicação CDM usando o REST Tabela API.

    Tipo de dados: Cadeia de caracteres

    cdm_application_id.value Sys_id do registro da aplicação CDM associado.

    Tipo de dados: Cadeia de caracteres

    Tabela: Aplicação CDM [sn_cdm_application]

    cdm_deployable_id Detalhes sobre o CDM implantável associado ao snapshot.

    Tipo de dados: Objeto

    "cdm_deployable_id": {
      "link": "String",
      "value": "String"
    }
    cdm_deployable_id.link Sintaxe de chamada para consultar este registro implantável usando Tabela REST API.

    Tipo de dados: Cadeia de caracteres

    cdm_deployable_id.value Sys_id do registro implantável.

    Tipo de dados: Cadeia de caracteres

    Tabela: CDM implantável [sn_cdm_deployable]

    changeset_id Detalhes sobre o conjunto de mudanças associado ao snapshot.

    Tipo de dados: Objeto

    "changeset_id": {
      "link": "String",
      "value": "String"
    }
    changeset_id.link Sintaxe de chamada para consultar este registro do conjunto de mudanças usando Tabela REST API.

    Tipo de dados: Cadeia de caracteres

    changeset_id.value Identificador exclusivo do registro do conjunto de mudanças.

    Tipo de dados: Cadeia de caracteres

    Tabela: Conjunto de mudanças do CDM [sn_cdm_changeset]

    descrição Breve descrição do snapshot.

    Tipo de dados: Cadeia de caracteres

    erro Se ocorreu um erro durante o processamento, os detalhes sobre o erro.

    Tipo de dados: Objeto

    "error": {
      "detail": "String",
      "message": "String"
    }
    error.detail Informações adicionais sobre o erro.

    Tipo de dados: Cadeia de caracteres

    mensagem.erro Mensagem de erro gerada ao tentar processar a solicitação.

    Tipo de dados: Cadeia de caracteres

    last_published Data e hora em que o snapshot foi publicado pela última vez.

    Tipo de dados: Cadeia de caracteres

    Formato: aaaa-MM-dd hh:mm:ss

    last_validated Data e hora em que o snapshot foi validado pela última vez.

    Tipo de dados: Cadeia de caracteres

    Formato: aaaa-MM-dd hh:mm:ss

    nome Nome do snapshot.

    Tipo de dados: Cadeia de caracteres

    número Número exclusivo que identifica o snapshot. Este valor fornece um identificador legível para o mapeamento.

    Tipo de dados: Cadeia de caracteres

    publicado Sinalizador que indica se o snapshot foi publicado.
    Valores possíveis:
    • Verdadeiro: O snapshot foi publicado.
    • Falso: O snapshot não foi publicado.

    Tipo de dados: Booliano

    sys_created_by Nome do usuário que criou o snapshot.

    Tipo de dados: Cadeia de caracteres

    sys_created_on Data e hora em que o snapshot foi criado.

    Tipo de dados: Cadeia de caracteres

    Formato: aaaa-MM-dd hh:mm:ss

    sys_id Sys_id do snapshot.

    Tipo de dados: Cadeia de caracteres

    Tabela: Snapshot do CDM [sn_cdm_snapshot]

    sys_updated_by Nome do usuário que atualizou o snapshot.

    Tipo de dados: Cadeia de caracteres

    sys_updated_on Data e hora em que o snapshot foi atualizado pela última vez.

    Tipo de dados: Cadeia de caracteres

    Formato: aaaa-MM-dd hh:mm:ss

    validação Estado de validação atual do snapshot.
    Valores possíveis:
    • execution_error
    • Falha(s)
    • in_progress
    • not_validated
    • aprovado
    • passed_with_exception
    • solicitado

    Tipo de dados: Cadeia de caracteres

    Solicitação de curl

    Este exemplo de código mostra como publicar o componente compartilhado "Development" com o nome da versão "Development-v1.shc".

    curl "http://instance.servicenow.com/api/sn_cdm/versions/publish?sharedLibraryName=LibraryJdk&componentName=Development&name=Development-v1.shc" \  
    --request PUT\  
    --header "Accept:application/json" \  
    --user 'username':'password

    Resposta:

    {
      "result": {
        "changeset_id": {
          "value": "1a2bd15c7764a1109ac0cf0bbb5a99fc",
          "link": "http://instance.servicenow.com/api/now/table/sn_cdm_changeset/1a2bd15c7764a1109ac0cf0bbb5a99fc"
        },
        "cdm_deployable_id": null,
        "cdm_shared_component_node_id": {
          "value": "fe2b155c7764a1109ac0cf0bbb5a995d",
          "link": "http://instance.servicenow.com/api/now/table/sn_cdm_node/fe2b155c7764a1109ac0cf0bbb5a995d"
        },
        "cdm_shared_component_id": {
          "value": "362b155c7764a1109ac0cf0bbb5a9970",
          "link": "http://instance.servicenow.com/api/now/table/sn_cdm_shared_component/362b155c7764a1109ac0cf0bbb5a9970"
        },
        "description": null,
        "cdm_application_id": {
          "value": "122bd15c7764a1109ac0cf0bbb5a99fa",
          "link": "http://instance.servicenow.com/api/now/table/sn_cdm_application/122bd15c7764a1109ac0cf0bbb5a99fa"
        },
        "published": true,
        "sys_updated_on": "2023-01-18 14:15:44",
        "last_published": "2023-01-18 09:53:37",
        "sequence_number": "1",
        "number": "SNAP0001110",
        "sys_id": "df2b155c7764a1109ac0cf0bbb5a9949",
        "sys_updated_by": "admin",
        "sys_created_on": "2023-01-18 09:53:36",
        "name": "logonService-V2.1-v1.shc",
        "last_validated": "",
        "validation": "passed",
        "sys_created_by": "admin"
      }
    }

    CdmVersionApi - PUT /sn_cdm/versions/unpublish

    Cancela a publicação de uma versão de um componente compartilhado em uma biblioteca compartilhada especificada.

    A função Editor do CDM é necessária para acessar este endpoint.

    Nota:
    Snapshots e versões são sinônimos em significado para esta implementação.

    Formato de URL

    URL com controle de versão: /api/sn_cdm//versions/publish

    URL padrão: /api/sn_cdm/versions/publish

    Nota:
    As versões disponíveis são especificadas em REST API Explorer . Para REST APIs com script, há informações adicionais de versão no Formulário de serviço REST com script .

    Parâmetros de solicitação compatíveis

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

    Tipo de dados: Cadeia de caracteres

    Tabela 14. Parâmetros de consulta
    Nome Descrição
    nome Obrigatório. Nome da versão do componente compartilhado a ser cancelada.

    Tipo de dados: Cadeia de caracteres

    Tabela: Componente compartilhado do CDM [sn_cdm_shared_component]

    returnFields Lista separada por vírgulas de campos na tabela Snapshot do CDM [sn_cdm_snapshot] para retornar como parte da resposta.

    Tipo de dados: Cadeia de caracteres

    Padrão: Retorna todos os campos que não são do sistema.

    SharedComponentName Obrigatório. Nome do componente compartilhado para cancelar a publicação.

    Tipo de dados: Cadeia de caracteres

    Tabela: Componente compartilhado do CDM [sn_cdm_shared_component]

    sharedLibraryName Obrigatório. Nome da biblioteca compartilhada na qual o componente especificado reside. O campo de tipo no registro associado deve ser definido como "shared_libird".

    Tipo de dados: Cadeia de caracteres

    Tabela: Aplicação CDM [sn_cdm_application]

    Tabela 15. Parâmetros do corpo da solicitação
    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 16. Cabeçalhos da solicitação
    Cabeçalho Descrição
    Aceitar Formato de dados do corpo da resposta.

    Tipos compatíveis:

    • application/json
    • application/xml
    • text/xml

    Padrão: application/json

    Tabela 17. 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 possíveis códigos de status usados na REST API, consulte Códigos de resposta HTTP da REST API .

    Tabela 18. Códigos de status
    Código do status Descrição
    200 Bem-sucedido. A solicitação foi processada com sucesso.
    400 Solicitação Incorreta. Ocorreu um erro durante o cancelamento da publicação.
    Possíveis problemas:
    • Nome da versão não encontrado.
    • A versão do componente já foi publicada.
    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

    Nome Descrição
    cdm_application_id Detalhes sobre a aplicação CDM associada ao snapshot.

    Tipo de dados: Objeto

    "cdm_application_id": {
      "link": "String",
      "value": "String"
    }
    cdm_application_id.link Chamada a ser usada para acessar o registro da aplicação CDM usando o REST Tabela API.

    Tipo de dados: Cadeia de caracteres

    cdm_application_id.value Sys_id do registro da aplicação CDM associado.

    Tipo de dados: Cadeia de caracteres

    Tabela: Aplicação CDM [sn_cdm_application]

    cdm_deployable_id Detalhes sobre o CDM implantável associado ao snapshot.

    Tipo de dados: Objeto

    "cdm_deployable_id": {
      "link": "String",
      "value": "String"
    }
    cdm_deployable_id.link Sintaxe de chamada para consultar este registro implantável usando Tabela REST API.

    Tipo de dados: Cadeia de caracteres

    cdm_deployable_id.value Sys_id do registro implantável.

    Tipo de dados: Cadeia de caracteres

    Tabela: CDM implantável [sn_cdm_deployable]

    changeset_id Detalhes sobre o conjunto de mudanças associado ao snapshot.

    Tipo de dados: Objeto

    "changeset_id": {
      "link": "String",
      "value": "String"
    }
    changeset_id.link Sintaxe de chamada para consultar este registro do conjunto de mudanças usando Tabela REST API.

    Tipo de dados: Cadeia de caracteres

    changeset_id.value Identificador exclusivo do registro do conjunto de mudanças.

    Tipo de dados: Cadeia de caracteres

    Tabela: Conjunto de mudanças do CDM [sn_cdm_changeset]

    descrição Breve descrição do snapshot.

    Tipo de dados: Cadeia de caracteres

    erro Se ocorreu um erro durante o processamento, os detalhes sobre o erro.

    Tipo de dados: Objeto

    "error": {
      "detail": "String",
      "message": "String"
    }
    error.detail Informações adicionais sobre o erro.

    Tipo de dados: Cadeia de caracteres

    mensagem.erro Mensagem de erro gerada ao tentar processar a solicitação.

    Tipo de dados: Cadeia de caracteres

    last_published Data e hora em que o snapshot foi publicado pela última vez.

    Tipo de dados: Cadeia de caracteres

    Formato: aaaa-MM-dd hh:mm:ss

    last_validated Data e hora em que o snapshot foi validado pela última vez.

    Tipo de dados: Cadeia de caracteres

    Formato: aaaa-MM-dd hh:mm:ss

    nome Nome do snapshot.

    Tipo de dados: Cadeia de caracteres

    número Número exclusivo que identifica o snapshot. Este valor fornece um identificador legível para o mapeamento.

    Tipo de dados: Cadeia de caracteres

    publicado Sinalizador que indica se o snapshot foi publicado.
    Valores possíveis:
    • Verdadeiro: O snapshot foi publicado.
    • Falso: O snapshot não foi publicado.

    Tipo de dados: Booliano

    sys_created_by Nome do usuário que criou o snapshot.

    Tipo de dados: Cadeia de caracteres

    sys_created_on Data e hora em que o snapshot foi criado.

    Tipo de dados: Cadeia de caracteres

    Formato: aaaa-MM-dd hh:mm:ss

    sys_id Sys_id do snapshot.

    Tipo de dados: Cadeia de caracteres

    Tabela: Snapshot do CDM [sn_cdm_snapshot]

    sys_updated_by Nome do usuário que atualizou o snapshot.

    Tipo de dados: Cadeia de caracteres

    sys_updated_on Data e hora em que o snapshot foi atualizado pela última vez.

    Tipo de dados: Cadeia de caracteres

    Formato: aaaa-MM-dd hh:mm:ss

    validação Estado de validação atual do snapshot.
    Valores possíveis:
    • execution_error
    • Falha(s)
    • in_progress
    • not_validated
    • aprovado
    • passed_with_exception
    • solicitado

    Tipo de dados: Cadeia de caracteres

    Solicitação de curl

    O exemplo de código a seguir mostra como cancelar a publicação do componente compartilhado "paymentService-V1" da biblioteca compartilhada "OracleG-Library-10".

    curl "https://instance-name.service-now.com/api/sn_cdm/versions/unpublish?sharedLibraryName=OracleG-Library-10&sharedComponentName=paymentService-V1.1&name=paymentService-V1.1-v1.shc" \ 
    --request PUT \ 
    --header "Accept:application/json" \ 
    --user 'username':'password'

    Resposta:

    {
      "result": {
        "changeset_id": {
          "value": "1a2bd15c7764a1109ac0cf0bbb5a99fc",
          "link": "http://192.168.0.129:8080/api/now/table/sn_cdm_changeset/1a2bd15c7764a1109ac0cf0bbb5a99fc"
        },
        "cdm_deployable_id": null,
        "cdm_shared_component_node_id": {
          "value": "fe2b155c7764a1109ac0cf0bbb5a995d",
          "link": "http://192.168.0.129:8080/api/now/table/sn_cdm_node/fe2b155c7764a1109ac0cf0bbb5a995d"
        },
        "cdm_shared_component_id": {
          "value": "362b155c7764a1109ac0cf0bbb5a9970",
          "link": "http://192.168.0.129:8080/api/now/table/sn_cdm_shared_component/362b155c7764a1109ac0cf0bbb5a9970"
        },
        "description": null,
        "cdm_application_id": {
          "value": "122bd15c7764a1109ac0cf0bbb5a99fa",
          "link": "http://192.168.0.129:8080/api/now/table/sn_cdm_application/122bd15c7764a1109ac0cf0bbb5a99fa"
        },
        "published": false,
        "sys_updated_on": "2023-01-18 14:15:44",
        "last_published": "2023-01-18 09:53:37",
        "sequence_number": "1",
        "number": "SNAP0001110",
        "sys_id": "df2b155c7764a1109ac0cf0bbb5a9949",
        "sys_updated_by": "admin",
        "sys_created_on": "2023-01-18 09:53:36",
        "name": "logonService-V2.1-v1.shc",
        "last_validated": "",
        "validation": "passed",
        "sys_created_by": "admin"
      }
    }