---
title: "Assinar CMS/CAdES utilizando Certificado em nuvem"
method: POST
path: "/fw/v1/cms/kms/assinaturas"
tags: ["Assinador CMS"]
---

# Assinar CMS/CAdES utilizando Certificado em nuvem

`POST /fw/v1/cms/kms/assinaturas`

## Headers

- `kms_type` 'BRYKMS' | 'GOVBR' | 'DINAMO' | 'HSMPKCS1' | 'PSC', required

## Request body

- object
  - `kms_data` union, required — Credenciais de acesso ao certificado em nuvem.
    - object — Credenciais de acesso ao certificado digital armazenado no BRyKMS. Um dos valores entre 'pin' e 'token' deve ser enviado.
      - `pin` string — Senha definida pelo titular do certificado armazenado no BRyKMS para autorizar o acesso a chave. <h3>Valor deve estar codificado em Base64.</h3>
      - `token` string — Token de pré-autorização de acesso a chave no BRyKMS. Este token deve ser gerado em um passo anterior através da [API Certificado em Nuvem](https://api-assinatura.bry.com.br/api-certificado-em-nuvem) e permite o acesso a chave durante um determinado tempo ou quantidade de vezes. <h3>Valor deve estar codificado em formato Hexadecimal.</h3>
      - `uuid_cert` string — UUID do certificado cadastrado no BRyKMS. O UUID pode ser obtido via API ou na interface do BRyKMS, na tela de gerenciamento de um certificado.
      - `user` string — CPF do titular do certificado no BRy KMS. Pode ser utilizado para filtrar o certificado no compartimento vinculado uma conta Pessoa Jurídica. Caso seja uma conta de Pessoa Física, irá filtrar pelo certificado mais atual.
      - `cloud_token` string — Define o token de identificação do certificado cadastrado no BRyKMS.
    - object — Credenciais de acesso ao certificado armazenado em HSM Dinamo. Um dos valores entre 'user' e 'token' deve ser enviado.
      - `uuid_cert` string, required — Identificador do certificado que será utilizado para assinatura.
      - `uuid_pkey` string, required — Identificador da chave privada que será utilizada para assinatura.
      - `user` string — Usuário que irá acessar o HSM.
      - `pin` string — Senha de acesso do usuário às chaves armazenadas em HSM. <h3>Valor deve estar codificado em Base64.</h3>
      - `otp` string — Valor do OTP que será utilizado para acessar o HSM.
      - `token` string — Token de acesso às chaves armazenadas em HSM. <h3>Valor deve estar codificado em Base64.</h3>
    - object — Credenciais de acesso ao certificado armazenado no GOVBR.
      - `token` string, required — Token de acesso a [API de Assinatura Digital Avançada](https://www.gov.br/conecta/catalogo/apis/assinatura-digital-avancada).
    - object — Credenciais de acesso ao certificado armazenado em HSM Dinamo, no HUB-Signer auxiliar configurado. Disponível atualmente apenas para o endpoint de assinatura PDF. Um dos valores entre 'user' e 'token' deve ser enviado.
      - `uuid_cert` string, required — Identificador do certificado que será utilizado para assinatura.
      - `uuid_pkey` string, required — Identificador da chave privada que será utilizada para assinatura.
      - `user` string — Usuário que irá acessar o HSM.
      - `pin` string — Senha de acesso do usuário às chaves armazenadas em HSM. Valor deve estar codificado em Base64.
      - `otp` string — Valor do OTP que será utilizado para acessar o HSM.
      - `token` string — Token de acesso às chaves armazenadas em HSM. Valor deve estar codificado em Base64.
    - object — Credenciais de acesso ao certificado armazenado em serviço PSC.
      - `uuid_cert` string — Identificador do certificado que será utilizado para assinatura.
      - `url` string, required — Url de acesso ao serviço PSC que será utilizado.
      - `token` string, required — Token de acesso ao serviço PSC. O token deve estar configurado de acordo com o número de assinaturas que serão realizadas.
  - `algoritmoHash` string, required — String que representa o algoritmo de hash que será utilizado para gerar a assinatura. [Valores disponíveis: SHA1, SHA256 e SHA512].
  - `coAssinatura` boolean — Boolean representando se será realizado uma coassinatura. Valor padrão é false.
  - `formatoAssinatura` string, required — Formato do processamento dos documentos recebidos na lista de hashes. [Valores disponíveis: HASH, ATTACHED e DETACHED].
  - `formatoDadosEntrada` string, required — String indicando qual será o formato de codificação dos dados a serem assinados. [Valores disponíveis: Base64]
  - `padrao` string, required — Indica o padrão da assinatura que será gerada. [Valores disponíveis: CMS, CADES]
  - `perfil` string, required — String representando o tipo de perfil desejado para a assinatura a ser gerada. [Valores disponíveis: BASIC, TIMESTAMP, COMPLETE, ADRB, ADRT, ADRV, ADRC, ADRA, ETSI_B, ETSI_T, ETSI_LT e ETSI_LTA]. Aceita também os valores legados em português para os perfis de assinatura CMS básica.
  - `hashes` string[], required
  - `comentarios` string[] — Array de strings com um conjunto de comentários que serão inseridos na assinatura. Parâmetro Opcional, mas se utilizado deve ser enviado um comentario para cada assinatura a ser realizada.
  - `nomeDocumentos` string[] — Array de strings com um conjunto de nomes que serão inseridos na assinatura como nome do documento. Parâmetro Opcional, mas se utilizado deve ser enviado um nome para cada assinatura a ser realizada.
  - `oidPolitica` string — Quando enviado, este parâmetro define o OID da política de assinatura a ser usada com perfil de assinatura selecionado.

## Response `200`

Signature response

- object
  - `assinaturas` string[]

## Other responses

- `400` — Resposta de erro da aplicação
- `default` — Para mais detalhes sobre as Respostas: [link para as respostas de erro](/openapi/assinadoresCms.html) ou [no formato properties](/openapi/assinadoresCmsErrors.properties)

---

[API](https://skmtc.net/bry/apis/bry-easy-sign-api-rest.md) · [All operations](https://skmtc.net/bry/apis/bry-easy-sign-api-rest/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/bry/bry-easy-sign-api-rest/revisions/c87e026e87ac/schema)
