Method: vdc.provisionCredential

Um endpoint para provisionar uma credencial.

Solicitação HTTP

POST https://example.issuer.com/api/v1/vdc/provisionCredential

Corpo da solicitação

O corpo da solicitação contém dados com a seguinte estrutura:

Representação JSON
{
  "requestMetadata": {
    object (RequestMetadata)
  },
  "deviceReferenceId": string,
  "credentialId": string,
  "proofingId": string,
  "deviceEncryptionKey": {
    object (DeviceEncryptionKey)
  }
}
Campos
requestMetadata

object (RequestMetadata)

Os metadados sobre a solicitação, obrigatórios para todas elas.

deviceReferenceId

string

O ID que corresponde ao dispositivo e a chave de identidade associada a ele. Este NÃO é um ID do dispositivo, ou seja, se o usuário tivesse duas credenciais separadas no mesmo dispositivo, esse ID seria diferente entre elas.

Esse ID é fornecido em todas as solicitações e pode ser usado para correlacionar solicitações.

credentialId

string

Um identificador opaco que representa uma credencial específica provisionada a um dispositivo.

Se o credentialId já existir, em vez de criar uma nova credencial, esse método vai retornar a credencial atual.

Por exemplo: UUID

proofingId

string

Um identificador opaco que representa um comprovante com um pacote específico de evidências para um dispositivo específico.

O estado do comprovante precisa ser "aprovado". Caso contrário, vamos retornar um identificador inválido ErrorResponse.

deviceEncryptionKey

object (DeviceEncryptionKey)

Um objeto que contém a chave de criptografia efêmera do dispositivo e os metadados associados. A chave é usada para criptografar um valor de volta ao dispositivo. Esse objeto pode não ser fornecido no ambiente de sandbox durante a integração, indicando que o emissor deve retornar dados de texto sem formatação. Isso sempre deve ser definido no ambiente de produção.

Corpo da resposta

Uma resposta contendo a credencial provisionada.

Se bem-sucedido, o corpo da resposta incluirá dados com a estrutura a seguir:

Representação JSON
{
  "responseMetadata": {
    object (ResponseMetadata)
  },
  "credential": {
    object (Credential)
  },
  "credentialVersionId": string
}
Campos
responseMetadata

object (ResponseMetadata)

Os metadados sobre a resposta, necessários em todas elas.

credential

object (Credential)

A credencial provisionada.

credentialVersionId

string

A versão atual da credencial que foi provisionada.

Credencial

A credencial baseada em mdoc, conforme definido pelo padrão ISO relevante para o tipo de credencial.

Por exemplo, para uma carteira de motorista móvel, seria ISO/IEC 18013-5. Consulte este link para saber mais sobre o formato mDL mDoc.

Representação JSON
{

  // Union field presencetype can be only one of the following:
  "encryptedData": {
    object (EncryptedData)
  },
  "unencryptedValue": string
  // End of list of possible types for union field presencetype.
}
Campos
Campo de união presencetype. Um oneof para indicar como a credencial está sendo apresentada. presencetype pode ser apenas de um dos tipos a seguir:
encryptedData

object (EncryptedData)

O valor criptografado e os metadados de criptografia necessários para descriptografar o valor.

unencryptedValue

string

O valor da credencial codificado em base64.