CdmVersionApi
A CdmVersionApi fornece endpoints que permitem publicar, cancelar a publicação e exportar versões (snapshots) em Gestão de dados de configuração (CDM) para componentes compartilhados em bibliotecas compartilhadas.
Você publica um snapshot para que ele possa ser exportado, permitindo que o pipeline Integração e entrega contínuas (CICD) acesse e use as bibliotecas e componentes compartilhados associados. Os exportadores só podem executar em snapshots publicados. Quando os snapshots não forem mais necessários, você poderá cancelar a publicação deles para reduzir a confusão sobre se o snapshot é mais viável.
- ACL de exibição do CDM REST de script (sn_cdm.cdm.viewer)
- ACL do Editor do CDM de REST de script (sn_cdm.cdm_editor)
Além disso, o plug-in Gestão de dados de configuração (CDM) 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 - GET /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 de Editor do CDM é necessária para acessar este endpoint.
Formato da URL
URL com controle de versão: /api/sn_cdm/{api_version}/versions/export
URL padrão: /api/sn_cdm/versions/export
Parâmetros de solicitação compatíveis
| 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 |
| Nome | Descrição |
|---|---|
| dataFormat | Obrigatório. Formato dos dados de configuração. Valores válidos:
Tipo de dados: cadeia de caracteres |
| descriptografar senha | Sinalizador que indica se os valores de senha codificados ou descriptografados devem ser mostrados. Valores válidos:
Padrão: falso |
| sharedComponentName | Obrigatório. Nome do componente compartilhado cujos dados de configuração serão exportados. Localizado na tabela Componente compartilhado do CDM [sn_cdm_shared_component]. Tipo de dados: cadeia de caracteres |
| sharedLibraryName | Obrigatório. Nome da biblioteca compartilhada que contém o componente cujos dados de configuração você deseja retornar. Localizado na tabela Aplicação de CDM [sn_cdm_application]. A aplicação especificada deve ter o campo de tipo definido como "shared_library". Tipo de dados: cadeia de caracteres |
| variáveissubstitutas | Sinalizador que indica se as variáveis devem ser seguidas. Para obter informações sobre como seguir as variáveis, consulte Validação e correção de dados de configuração. Valores válidos:
Padrão: verdadeiro |
| 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.
| Cabeçalho | Descrição |
|---|---|
| Aceitar | Formato de dados do corpo da resposta. Tipos compatíveis:
Padrão: application/json |
| 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.
| Código de status | Descrição |
|---|---|
| 200 | Bem-sucedido. A solicitação foi processada com sucesso. |
| 400 | Solicitação Incorreta. Pode ter ocorrido um dos seguintes problemas:
|
| 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 |
| erro.detalhe | 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 de Editor do CDM é necessária para acessar este endpoint.
Formato da URL
URL com controle de versão: /api/sn_cdm/{api_version}/versions/publish
URL padrão: /api/sn_cdm/versions/publish
Parâmetros de solicitação compatíveis
| 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 |
| Nome | Descrição |
|---|---|
| nome | Obrigatório. Nome da versão do componente compartilhado a ser publicado. Localizado na tabela Componente compartilhado do CDM [sn_cdm_shared_component]. Tipo de dados: cadeia de caracteres |
| returnFields | Lista separada por vírgulas de campos na tabela Snapshot do CDM [sn_cdm_snapshot] a serem retornados 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. Localizado na tabela Componente compartilhado do CDM [sn_cdm_shared_component]. Tipo de dados: cadeia de caracteres |
| sharedLibraryName | Obrigatório. Nome da biblioteca compartilhada na qual o componente especificado reside. Localizado na tabela Aplicação de CDM [sn_cdm_application]. O campo de tipo no registro associado deve ser definido como "shared_library". Tipo de dados: cadeia de caracteres |
| 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.
| Cabeçalho | Descrição |
|---|---|
| Aceitar | Formato de dados do corpo da resposta. Tipos compatíveis:
Padrão: application/json |
| 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.
| Código de 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:
|
| 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 de CDM associada ao snapshot. Tipo de dados: objeto |
| cdm_id_da_aplicação.link | Chamada para usar para acessar o registro da aplicação CDM usando a REST Table API. Tipo de dados: cadeia de caracteres |
| cdm_id_da_aplicação.valor | Sys_id do registro da aplicação CDM associado. Localizado na tabela Aplicação de CDM [sn_cdm_application]. Tipo de dados: cadeia de caracteres |
| cdm_deployable_id | Detalhes sobre o implantável do CDM associado ao snapshot. Tipo de dados: objeto |
| cdm_deployable_id.link | Sintaxe de chamada para consultar este registro implantável usando a REST API de tabela. Tipo de dados: cadeia de caracteres |
| cdm_deployable_id.value | Sys_id do registro implantável. Localizado na tabela CDM implantável [sn_cdm_deployable]. Tipo de dados: cadeia de caracteres |
| changeset_id | Detalhes sobre o changeset associado ao snapshot. Tipo de dados: objeto |
| changeset_id.link | Sintaxe de chamada para consultar este registro de changeset usando a API REST de tabela. Tipo de dados: cadeia de caracteres |
| changeset_id.valor | Identificador exclusivo do registro do changeset. Localizado na tabela CDM Changeset [sn_cdm_changeset]. Tipo de dados: cadeia de caracteres |
| 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 |
| erro.detalhe | 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:
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. Localizado na tabela Snapshot do CDM [sn_cdm_snapshot]. Tipo de dados: cadeia de caracteres |
| 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:
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 de 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 de Editor do CDM é necessária para acessar este endpoint.
Formato da URL
URL com controle de versão: /api/sn_cdm/{api_version}/versions/publish
URL padrão: /api/sn_cdm/versions/publish
Parâmetros de solicitação compatíveis
| 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 |
| Nome | Descrição |
|---|---|
| nome | Obrigatório. Nome da versão do componente compartilhado para cancelar a publicação. Localizado na tabela Componente compartilhado do CDM [sn_cdm_shared_component]. Tipo de dados: cadeia de caracteres |
| returnFields | Lista separada por vírgulas de campos na tabela Snapshot do CDM [sn_cdm_snapshot] a serem retornados 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. Localizado na tabela Componente compartilhado do CDM [sn_cdm_shared_component]. Tipo de dados: cadeia de caracteres |
| sharedLibraryName | Obrigatório. Nome da biblioteca compartilhada na qual o componente especificado reside. Localizado na tabela Aplicação de CDM [sn_cdm_application]. O campo de tipo no registro associado deve ser definido como "shared_library". Tipo de dados: cadeia de caracteres |
| 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.
| Cabeçalho | Descrição |
|---|---|
| Aceitar | Formato de dados do corpo da resposta. Tipos compatíveis:
Padrão: application/json |
| 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.
| Código de 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:
|
| 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 de CDM associada ao snapshot. Tipo de dados: objeto |
| cdm_id_da_aplicação.link | Chamada para usar para acessar o registro da aplicação CDM usando a REST Table API. Tipo de dados: cadeia de caracteres |
| cdm_id_da_aplicação.valor | Sys_id do registro da aplicação CDM associado. Localizado na tabela Aplicação de CDM [sn_cdm_application]. Tipo de dados: cadeia de caracteres |
| cdm_deployable_id | Detalhes sobre o implantável do CDM associado ao snapshot. Tipo de dados: objeto |
| cdm_deployable_id.link | Sintaxe de chamada para consultar este registro implantável usando a REST API de tabela. Tipo de dados: cadeia de caracteres |
| cdm_deployable_id.value | Sys_id do registro implantável. Localizado na tabela CDM implantável [sn_cdm_deployable]. Tipo de dados: cadeia de caracteres |
| changeset_id | Detalhes sobre o changeset associado ao snapshot. Tipo de dados: objeto |
| changeset_id.link | Sintaxe de chamada para consultar este registro de changeset usando a API REST de tabela. Tipo de dados: cadeia de caracteres |
| changeset_id.valor | Identificador exclusivo do registro do changeset. Localizado na tabela CDM Changeset [sn_cdm_changeset]. Tipo de dados: cadeia de caracteres |
| 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 |
| erro.detalhe | 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:
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. Localizado na tabela Snapshot do CDM [sn_cdm_snapshot]. Tipo de dados: cadeia de caracteres |
| 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:
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"
}
}