Method: vdc.getCredentialStatus

Un endpoint per recuperare lo stato attuale di una credenziale.

Richiesta HTTP

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

Corpo della richiesta

Il corpo della richiesta contiene dati con la seguente struttura:

Rappresentazione JSON
{
  "requestMetadata": {
    object (RequestMetadata)
  },
  "deviceReferenceId": string,
  "credentialId": string
}
Campi
requestMetadata

object (RequestMetadata)

I metadati relativi alla richiesta, necessari in tutte le richieste.

deviceReferenceId

string

L'ID corrispondente al dispositivo e la chiave di identità associata al dispositivo. Non si tratta di un ID dispositivo, il che significa che se l'utente avesse due credenziali separate sullo stesso dispositivo, questo ID sarebbe diverso.

Questo ID viene fornito in tutte le richieste e può essere utilizzato per correlarle.

credentialId

string

L'ID della credenziale di cui il chiamante richiede lo stato.

Corpo della risposta

Una risposta contenente lo stato attuale di una credenziale.

In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:

Rappresentazione JSON
{
  "responseMetadata": {
    object (ResponseMetadata)
  },
  "credentialStatus": {
    object (CredentialStatus)
  },
  "credentialVersionId": string
}
Campi
responseMetadata

object (ResponseMetadata)

I metadati relativi alla risposta, obbligatori in tutte le risposte.

credentialStatus

object (CredentialStatus)

Lo stato attuale della credenziale.

credentialVersionId

string

La versione attuale della credenziale. Questa situazione dovrebbe cambiare quando saranno disponibili nuove versioni della credenziale. Un esempio di quando ciò potrebbe cambiare è quando l'utente aggiorna il proprio indirizzo sulla credenziale, rendendo obsoleto il documento mdoc sottostante.

CredentialStatus

Un oggetto che rappresenta i diversi stati che una credenziale può avere.

Rappresentazione 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.
}
Campi
userActionRequired

object (UserActionRequired)

Azione richiesta all'utente per evitare che le sue credenziali passino a uno stato più restrittivo (ad es. ACTIVE -> REVOKED).

Campo unione status. Un oneof contenente i diversi stati possibili per una credenziale. status può essere solo uno dei seguenti tipi:
provisionPending

object (ProvisionPending)

Rappresenta una credenziale che può essere recuperata, ma non ha ancora fornito ProofOfProvisioning. Qualsiasi chiamata a vdc.provisionMobileSecurityObjects per una credenziale in questo stato non deve riuscire se la richiesta non contiene un ProofOfProvisioning aggiornato. Una credenziale viene inserita in questo stato quando viene creata e quando è disponibile una nuova versione. Per il caso della nuova versione, il wallet deve eseguire nuovamente il provisioning della credenziale e fornire ProofOfProvisioning per tornare allo stato ACTIVE.

active

object (Active)

Rappresenta una credenziale attiva e utilizzabile. I MSO possono essere recuperati solo per una credenziale in stato ATTIVO.

revoked

object (Revoked)

Rappresenta una credenziale in uno stato finale e inutilizzabile. Questa credenziale non potrà essere utilizzata in futuro. Questo stato è paragonabile a ELIMINATO, ma può essere impostato solo dall'emittente.

deleted

object (Deleted)

Rappresenta una credenziale di cui è stato eseguito il provisioning, ma che è stata eliminata dal dispositivo. Questo stato è paragonabile a REVOCATO, ma può essere impostato solo dal wallet.

ProvisionPending

Questo tipo non contiene campi.

Un oggetto che rappresenta uno stato delle credenziali in attesa di provisioning. Al momento questo messaggio è intenzionalmente vuoto. In futuro potrebbero essere aggiunti nuovi campi.

Attivo

Questo tipo non contiene campi.

Un oggetto che rappresenta uno stato delle credenziali attivo. Al momento questo messaggio è intenzionalmente vuoto. In futuro potrebbero essere aggiunti nuovi campi.

Revocato

Questo tipo non contiene campi.

Un oggetto che rappresenta lo stato di una credenziale revocata. Al momento questo messaggio è intenzionalmente vuoto. In futuro potrebbero essere aggiunti nuovi campi.

Eliminato

Questo tipo non contiene campi.

Un oggetto che rappresenta lo stato di una credenziale eliminata. Al momento questo messaggio è intenzionalmente vuoto. In futuro potrebbero essere aggiunti nuovi campi.

UserActionRequired

Un oggetto che rappresenta un'attività / azione che l'utente deve completare.

Rappresentazione 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.
}
Campi
deadlineTimeMillis

string (int64 format)

L'ora Unix in cui l'azione scade e l'emittente deve spostare la credenziale in uno stato più limitato. Utilizzato dal client per avvisare l'utente entro quando deve essere completata l'azione, ma spetta all'emittente applicare le limitazioni.

deadlineEnforcementHint

object (EnforcementHint)

Suggerimento che descrive in che modo l'emittente applicherebbe la scadenza dell'azione.

Campo unione action. L'azione che l'utente deve completare. action può essere solo uno dei seguenti tipi:
submitProofing

object (SubmitProofing)

Invia la prova della credenziale.

EnforcementHint

Suggerimento che descrive in che modo l'emittente applicherebbe l'azione richiesta.

Rappresentazione JSON
{

  // Union field hint can be only one of the following:
  "revocationHint": {
    object (RevocationHint)
  }
  // End of list of possible types for union field hint.
}
Campi
Campo unione hint. Tipo di suggerimento per l'applicazione. hint può essere solo uno dei seguenti tipi:
revocationHint

object (RevocationHint)

La credenziale verrà revocata dall'emittente.

RevocationHint

Questo tipo non contiene campi.

La credenziale verrà revocata dall'emittente.

SubmitProofing

Dettagli sullo stato della revisione.

Rappresentazione 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.
}
Campi
Campo unione ProofingAllowance. Il tentativo di verifica della credenziale attuale. ProofingAllowance può essere solo uno dei seguenti tipi:
limitedAttempts

object (LimitedAttempts)

L'utente ha un numero limitato di tentativi per inviare la verifica.

unlimitedAttempts

object (UnlimitedAttempts)

L'utente ha tentativi illimitati per inviare la bozza. Questa operazione non è consigliata all'emittente.

LimitedAttempts

L'utente ha un numero limitato di tentativi per inviare la verifica.

Rappresentazione JSON
{
  "remainingAttempts": integer,
  "maxAttempts": integer,
  "maxAttemptsEnforcementHint": {
    object (EnforcementHint)
  }
}
Campi
remainingAttempts

integer

Il numero di tentativi rimanenti per l'invio della bozza. Questo valore viene utilizzato solo per la visualizzazione dei messaggi UX. Google Wallet non interverrà su questo numero.

maxAttempts

integer

Il numero massimo di tentativi per l'invio della bozza. Questo valore viene utilizzato solo per la visualizzazione dei messaggi UX. Google Wallet non interverrà su questo numero.

maxAttemptsEnforcementHint

object (EnforcementHint)

Suggerimento che descrive come l'emittente applicherebbe il numero massimo di tentativi.

UnlimitedAttempts

Questo tipo non contiene campi.

L'utente ha tentativi illimitati per inviare la bozza. Questa operazione non è consigliata all'emittente.