Method: vdc.getCredentialStatus

Endpoint untuk mengambil status kredensial saat ini.

Permintaan HTTP

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

Isi permintaan

Isi permintaan memuat data dengan struktur berikut:

Representasi JSON
{
  "requestMetadata": {
    object (RequestMetadata)
  },
  "deviceReferenceId": string,
  "credentialId": string
}
Kolom
requestMetadata

object (RequestMetadata)

Metadata tentang permintaan, yang diperlukan dalam semua permintaan.

deviceReferenceId

string

ID yang sesuai dengan perangkat dan kunci identitas yang terkait dengan perangkat. ID ini BUKAN ID perangkat, artinya jika pengguna memiliki dua kredensial terpisah di perangkat yang sama, ID ini akan berbeda di antara keduanya.

ID ini diberikan di semua permintaan, dan dapat digunakan untuk mengorelasikan permintaan.

credentialId

string

ID kredensial yang statusnya diminta oleh pemanggil.

Isi respons

Respons yang berisi status kredensial saat ini.

Jika berhasil, isi respons memuat data dengan struktur berikut:

Representasi JSON
{
  "responseMetadata": {
    object (ResponseMetadata)
  },
  "credentialStatus": {
    object (CredentialStatus)
  },
  "credentialVersionId": string
}
Kolom
responseMetadata

object (ResponseMetadata)

Metadata tentang respons, yang diperlukan dalam semua respons.

credentialStatus

object (CredentialStatus)

Status kredensial saat ini.

credentialVersionId

string

Versi kredensial saat ini. Nilai ini diperkirakan akan berubah saat versi baru kredensial tersedia. Contoh saat hal ini akan berubah adalah saat pengguna memperbarui alamatnya di kredensialnya, sehingga mdoc yang mendasarinya menjadi tidak berlaku.

CredentialStatus

Objek yang merepresentasikan berbagai status yang dapat dimiliki kredensial.

Representasi 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.
}
Kolom
userActionRequired

object (UserActionRequired)

Tindakan yang diperlukan oleh pengguna agar kredensialnya tidak berpindah ke status yang lebih dibatasi (misalnya, AKTIF -> DICABUT).

Kolom union status. Oneof yang berisi berbagai kemungkinan status untuk kredensial. status hanya dapat berupa salah satu dari berikut:
provisionPending

object (ProvisionPending)

Mewakili kredensial yang dapat diambil, tetapi belum memberikan ProofOfProvisioning. Panggilan apa pun ke vdc.provisionMobileSecurityObjects untuk kredensial dalam status ini akan gagal jika permintaan tidak berisi ProofOfProvisioning yang diperbarui. Kredensial dimasukkan ke dalam status ini saat dibuat, dan saat ada versi baru kredensial yang tersedia. Untuk kasus versi baru, wallet harus menyediakan ulang kredensial dan memberikan ProofOfProvisioning untuk kembali ke status AKTIF.

active

object (Active)

Mewakili kredensial yang aktif dan dapat digunakan. MSO hanya dapat diambil untuk kredensial dalam status AKTIF.

revoked

object (Revoked)

Mewakili kredensial yang berada dalam status akhir dan tidak dapat digunakan. Kredensial ini tidak dapat digunakan di masa mendatang. Status ini sebanding dengan DELETED, tetapi hanya dapat disetel oleh penerbit.

deleted

object (Deleted)

Mewakili kredensial yang pernah disediakan, tetapi telah dihapus dari perangkat. Status ini sebanding dengan REVOKED, tetapi hanya dapat ditetapkan oleh wallet.

ProvisionPending

Jenis ini tidak memiliki kolom.

Objek yang merepresentasikan status kredensial menunggu keputusan penyediaan. Pesan ini sengaja dikosongkan saat ini. Kolom baru dapat ditambahkan pada masa mendatang.

Aktif

Jenis ini tidak memiliki kolom.

Objek yang mewakili status kredensial aktif. Pesan ini sengaja dikosongkan saat ini. Kolom baru dapat ditambahkan pada masa mendatang.

Dicabut

Jenis ini tidak memiliki kolom.

Objek yang merepresentasikan status kredensial yang dicabut. Pesan ini sengaja dikosongkan saat ini. Kolom baru dapat ditambahkan pada masa mendatang.

Dihapus

Jenis ini tidak memiliki kolom.

Objek yang mewakili status kredensial yang dihapus. Pesan ini sengaja dikosongkan saat ini. Kolom baru dapat ditambahkan pada masa mendatang.

UserActionRequired

Objek yang merepresentasikan tugas / tindakan yang harus diselesaikan pengguna.

Representasi 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.
}
Kolom
deadlineTimeMillis

string (int64 format)

Waktu epoch saat tindakan berakhir dan penerbit diharapkan memindahkan kredensial ke status yang lebih dibatasi. Digunakan oleh klien untuk memperingatkan pengguna tentang kapan tindakan harus diselesaikan, tetapi penerbitlah yang berhak menerapkan batasan.

deadlineEnforcementHint

object (EnforcementHint)

Petunjuk yang menjelaskan cara penerbit akan memberlakukan batas waktu tindakan.

Kolom union action. Tindakan yang harus diselesaikan pengguna. action hanya dapat berupa salah satu dari berikut:
submitProofing

object (SubmitProofing)

Kirimkan bukti kredensial.

EnforcementHint

Petunjuk yang menjelaskan cara penerbit akan menerapkan tindakan yang diperlukan.

Representasi JSON
{

  // Union field hint can be only one of the following:
  "revocationHint": {
    object (RevocationHint)
  }
  // End of list of possible types for union field hint.
}
Kolom
Kolom union hint. Jenis petunjuk penegakan. hint hanya dapat berupa salah satu dari berikut:
revocationHint

object (RevocationHint)

Kredensial akan dicabut oleh penerbit.

RevocationHint

Jenis ini tidak memiliki kolom.

Kredensial akan dicabut oleh penerbit.

SubmitProofing

Detail status pemeriksaan.

Representasi 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.
}
Kolom
Kolom union ProofingAllowance. Upaya pembuktian pada kredensial saat ini. ProofingAllowance hanya dapat berupa salah satu dari berikut:
limitedAttempts

object (LimitedAttempts)

Pengguna memiliki percobaan terbatas untuk mengirimkan bukti.

unlimitedAttempts

object (UnlimitedAttempts)

Pengguna memiliki upaya tanpa batas untuk mengirimkan bukti. Tindakan ini tidak direkomendasikan untuk penerbit.

LimitedAttempts

Pengguna memiliki percobaan terbatas untuk mengirimkan bukti.

Representasi JSON
{
  "remainingAttempts": integer,
  "maxAttempts": integer,
  "maxAttemptsEnforcementHint": {
    object (EnforcementHint)
  }
}
Kolom
remainingAttempts

integer

Jumlah upaya tersisa untuk mengirimkan bukti. Ini hanya untuk tampilan pesan UX. Google Wallet tidak akan menggunakan nomor ini.

maxAttempts

integer

Jumlah maksimum upaya untuk mengirimkan bukti. Ini hanya untuk tampilan pesan UX. Google Wallet tidak akan menggunakan nomor ini.

maxAttemptsEnforcementHint

object (EnforcementHint)

Petunjuk yang menjelaskan cara penerbit akan menerapkan upaya maksimum.

UnlimitedAttempts

Jenis ini tidak memiliki kolom.

Pengguna memiliki upaya tanpa batas untuk mengirimkan bukti. Tindakan ini tidak direkomendasikan untuk penerbit.