Method: vdc.getCredentialStatus

Point de terminaison pour récupérer l'état actuel d'un justificatif.

Requête HTTP

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

Corps de la requête

Le corps de la requête contient des données présentant la structure suivante :

Représentation JSON
{
  "requestMetadata": {
    object (RequestMetadata)
  },
  "deviceReferenceId": string,
  "credentialId": string
}
Champs
requestMetadata

object (RequestMetadata)

Métadonnées de la requête, obligatoires pour toutes les requêtes.

deviceReferenceId

string

Identifiant correspondant à l'appareil et clé d'identité associée à l'appareil. Il ne s'agit PAS de l'identifiant de l'appareil, c'est-à-dire que si l'utilisateur possède deux jeux d'identifiants distincts sur le même appareil, cet identifiant sera différent pour chacun d'entre eux.

Cet identifiant est fourni dans toutes les requêtes et peut être utilisé pour corréler des requêtes.

credentialId

string

ID du jeu d'identification dont l'appelant demande l'état.

Corps de la réponse

Une réponse contenant l'état actuel d'un justificatif.

Si la requête aboutit, le corps de la réponse contient des données qui ont la structure suivante :

Représentation JSON
{
  "responseMetadata": {
    object (ResponseMetadata)
  },
  "credentialStatus": {
    object (CredentialStatus)
  },
  "credentialVersionId": string
}
Champs
responseMetadata

object (ResponseMetadata)

Métadonnées de la réponse, obligatoires pour toutes les réponses.

credentialStatus

object (CredentialStatus)

État actuel du jeu d'identification.

credentialVersionId

string

Version actuelle du justificatif. Celle-ci devrait être modifiée lorsque de nouvelles versions du jeu d'identification seront disponibles. Par exemple, lorsque l'utilisateur met à jour son adresse sur son jeu d'identification, ce qui rend le mdoc sous-jacent obsolète.

CredentialStatus

Objet représentant les différents états que peut avoir un jeu d'identification.

Représentation JSON
{
  "userActionRequired": {
    object (UserActionRequired)
  },

  // Union field status can be only one of the following:
  "provisionPending": {
    object (ProvisionPending)
  },
  "active": {
    object (Active)
  },
  "revoked": {
    object (Revoked)
  },
  "deleted": {
    object (Deleted)
  }
  // End of list of possible types for union field status.
}
Champs
userActionRequired

object (UserActionRequired)

Action requise de la part de l'utilisateur pour éviter que ses identifiants ne passent à un état plus restreint (par exemple, ACTIVE > REVOKED).

Champ d'union status. Un tableau contenant les différents statuts possibles d'un jeu d'identification. status ne peut être qu'un des éléments suivants :
provisionPending

object (ProvisionPending)

Représente un jeu d'identification pouvant être récupéré, mais qui n'a pas encore fourni de ProofOfProvisioning. Tout appel à vdc.provisionMobileSecurityObjects pour un jeu d'identification dans cet état doit échouer si la requête ne contient pas ProofOfProvisioning mis à jour. Un jeu d'identification est placé dans cet état lorsqu'il est créé et lorsqu'une nouvelle version est disponible. Dans le cas d'une nouvelle version, le wallet doit réapprovisionner le jeu d'identification et fournir ProofOfProvisioning pour revenir à l'état ACTIF.

active

object (Active)

Représente un jeu d'identification actif et utilisable. Les MSO ne peuvent être récupérés que pour un jeu d'identification à l'état ACTIF.

revoked

object (Revoked)

Représente un jeu d'identification dans un état final, inutilisable. Ce jeu d'identification ne pourra plus être utilisé à l'avenir. Cet état est comparable à DELETED, mais ne peut être défini que par l'émetteur.

deleted

object (Deleted)

Représente un jeu d'identification précédemment provisionné, mais supprimé de l'appareil. Cet état est comparable à REVOKED, mais ne peut être défini que par le portefeuille.

ProvisionPending

Ce type ne comporte aucun champ.

Objet représentant le statut d'un jeu d'identification en attente de provision. Ce message est volontairement vide pour l'instant. De nouveaux champs pourront être ajoutés à l'avenir.

Actif

Ce type ne comporte aucun champ.

Objet représentant le statut d'un jeu d'identification actif. Ce message est volontairement vide pour l'instant. De nouveaux champs pourront être ajoutés à l'avenir.

Révoqué

Ce type ne comporte aucun champ.

Objet représentant le statut d'un jeu d'identification révoqué. Ce message est volontairement vide pour l'instant. De nouveaux champs pourront être ajoutés à l'avenir.

Supprimé

Ce type ne comporte aucun champ.

Objet représentant le statut d'un jeu d'identification supprimé. Ce message est volontairement vide pour l'instant. De nouveaux champs pourront être ajoutés à l'avenir.

UserActionRequired

Objet représentant une tâche / action que l'utilisateur doit effectuer.

Représentation JSON
{
  "deadlineTimeMillis": string,
  "deadlineEnforcementHint": {
    object (EnforcementHint)
  },

  // Union field action can be only one of the following:
  "submitProofing": {
    object (SubmitProofing)
  }
  // End of list of possible types for union field action.
}
Champs
deadlineTimeMillis

string (int64 format)

Heure Unix à laquelle l'action expire et à laquelle l'émetteur est censé déplacer l'identifiant vers un état plus restreint. Utilisé par le client pour avertir l'utilisateur de la date limite pour effectuer l'action. Toutefois, il incombe à l'émetteur d'appliquer les restrictions.

deadlineEnforcementHint

object (EnforcementHint)

Indice décrivant comment l'émetteur ferait respecter le délai de l'action.

Champ d'union action. Action que l'utilisateur doit effectuer. action ne peut être qu'un des éléments suivants :
submitProofing

object (SubmitProofing)

Envoyez une preuve de l'identifiant.

EnforcementHint

Indication décrivant comment l'émetteur appliquerait l'action requise.

Représentation JSON
{

  // Union field hint can be only one of the following:
  "revocationHint": {
    object (RevocationHint)
  }
  // End of list of possible types for union field hint.
}
Champs
Champ d'union hint. Type d'indice d'application. hint ne peut être qu'un des éléments suivants :
revocationHint

object (RevocationHint)

L'identifiant sera révoqué par l'émetteur.

RevocationHint

Ce type ne comporte aucun champ.

L'identifiant sera révoqué par l'émetteur.

SubmitProofing

Détails de l'état de la validation.

Représentation JSON
{

  // Union field ProofingAllowance can be only one of the following:
  "limitedAttempts": {
    object (LimitedAttempts)
  },
  "unlimitedAttempts": {
    object (UnlimitedAttempts)
  }
  // End of list of possible types for union field ProofingAllowance.
}
Champs
Champ d'union ProofingAllowance. Tentative de validation du justificatif actuel. ProofingAllowance ne peut être qu'un des éléments suivants :
limitedAttempts

object (LimitedAttempts)

L'utilisateur dispose d'un nombre limité de tentatives pour envoyer une preuve.

unlimitedAttempts

object (UnlimitedAttempts)

L'utilisateur peut envoyer des documents de confirmation autant de fois que nécessaire. Cette méthode n'est pas recommandée pour l'émetteur.

LimitedAttempts

L'utilisateur dispose d'un nombre limité de tentatives pour envoyer une preuve.

Représentation JSON
{
  "remainingAttempts": integer,
  "maxAttempts": integer,
  "maxAttemptsEnforcementHint": {
    object (EnforcementHint)
  }
}
Champs
remainingAttempts

integer

Nombre de tentatives restantes pour envoyer une preuve. Cela ne concerne que l'affichage des messages UX. Google Wallet ne prendra pas en compte ce numéro.

maxAttempts

integer

Nombre maximal de tentatives pour envoyer des documents de validation. Cela ne concerne que l'affichage des messages UX. Google Wallet ne prendra pas en compte ce numéro.

maxAttemptsEnforcementHint

object (EnforcementHint)

Indication décrivant comment l'émetteur appliquerait le nombre maximal de tentatives.

UnlimitedAttempts

Ce type ne comporte aucun champ.

L'utilisateur peut envoyer des documents de confirmation autant de fois que nécessaire. Cette méthode n'est pas recommandée pour l'émetteur.