Method: vdc.getCredentialStatus

Конечная точка для получения текущего статуса учетных данных.

HTTP-запрос

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

Текст запроса

Тело запроса содержит данные следующей структуры:

JSON-представление
{
  "requestMetadata": {
    object (RequestMetadata)
  },
  "deviceReferenceId": string,
  "credentialId": string
}
Поля
requestMetadata

object ( RequestMetadata )

Метаданные о запросе, необходимые для всех запросов.

deviceReferenceId

string

Идентификатор, соответствующий устройству, и ключ идентификации, связанный с устройством. Это НЕ идентификатор устройства, то есть, если у пользователя будут две разные учетные данные на одном устройстве, этот идентификатор будет отличаться для них.

Этот идентификатор указывается во всех запросах и может использоваться для сопоставления запросов.

credentialId

string

Идентификатор учетных данных, статус которых запрашивает вызывающая сторона.

Ответный текст

Ответ, содержащий текущий статус учетных данных.

В случае успеха тело ответа содержит данные следующей структуры:

JSON-представление
{
  "responseMetadata": {
    object (ResponseMetadata)
  },
  "credentialStatus": {
    object (CredentialStatus)
  },
  "credentialVersionId": string
}
Поля
responseMetadata

object ( ResponseMetadata )

Метаданные об ответе, обязательные для всех ответов.

credentialStatus

object ( CredentialStatus )

Текущий статус учетных данных.

credentialVersionId

string

Текущая версия учетных данных. Ожидается, что она изменится, когда станут доступны новые версии учетных данных. Например, это может произойти, когда пользователь обновит свой адрес в учетных данных, что приведет к устареванию базового файла mdoc.

CredentialStatus

Объект, представляющий различные статусы, которые могут иметь учетные данные.

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.
}
Поля
userActionRequired

object ( UserActionRequired )

Пользователю необходимо предпринять действия, чтобы предотвратить переход его учетных данных в более ограниченное состояние (например, АКТИВНЫЕ -> ОТЗЫВАННЫЕ).

status поля объединения. Объект типа «один из», содержащий различные возможные статусы для учетных данных. status может принимать только один из следующих значений:
provisionPending

object ( ProvisionPending )

Представляет собой учетные данные, которые можно получить, но для которых еще не предоставлено подтверждение ProofOfProvisioning. Любые вызовы vdc.provisionMobileSecurityObjects для учетных данных в этом состоянии должны завершиться неудачей, если запрос не содержит обновленного подтверждения ProofOfProvisioning. Учетные данные переводятся в это состояние при их создании и при появлении новой версии. В случае появления новой версии кошелек должен повторно инициализировать учетные данные и предоставить подтверждение ProofOfProvisioning, чтобы вернуться в состояние ACTIVE.

active

object ( Active )

Представляет собой активные и пригодные для использования учетные данные. MSO можно получить только для учетных данных, находящихся в состоянии ACTIVE.

revoked

object ( Revoked )

Представляет собой учетные данные, находящиеся в конечном, непригодном для использования состоянии. Эти учетные данные не могут быть использованы в будущем. Это состояние сравнимо с состоянием «УДАЛЕНО», но может быть установлено только эмитентом.

deleted

object ( Deleted )

Представляет собой учетные данные, которые были ранее предоставлены, но удалены с устройства. Это состояние аналогично состоянию REVOKED, но может быть изменено только кошельком.

Ожидается предоставление резерва

Этот тип не содержит полей.

Объект, представляющий собой статус ожидающих подтверждения учетных данных. В данный момент это сообщение намеренно пустое. В будущем могут быть добавлены новые поля.

Активный

Этот тип не содержит полей.

Объект, отображающий статус активных учетных данных. В данный момент это сообщение намеренно пустое. В будущем могут быть добавлены новые поля.

Отменено

Этот тип не содержит полей.

Объект, отображающий статус отозванных учетных данных. В данный момент это сообщение намеренно пустое. В будущем могут быть добавлены новые поля.

Удалено

Этот тип не содержит полей.

Объект, отображающий статус удаленных учетных данных. В данный момент это сообщение намеренно пустое. В будущем могут быть добавлены новые поля.

UserActionRequired

Объект, представляющий задачу/действие, которое пользователь должен выполнить.

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.
}
Поля
deadlineTimeMillis

string ( int64 format)

Время в формате epoch, когда истекает срок действия действия и ожидается, что эмитент переведет учетные данные в более ограниченное состояние. Используется клиентом для предупреждения пользователя о сроке завершения действия, но обеспечение соблюдения ограничений остается на усмотрение эмитента.

deadlineEnforcementHint

object ( EnforcementHint )

Подсказка, описывающая, как эмитент будет обеспечивать соблюдение крайнего срока действия.

action в объединенном поле. Действие, которое должен выполнить пользователь. action может быть только одним из следующих:
submitProofing

object ( SubmitProofing )

Предоставьте подтверждающие документы.

EnforcementHint

Подсказка, описывающая, как эмитент будет обеспечивать выполнение требуемых действий.

JSON-представление
{

  // Union field hint can be only one of the following:
  "revocationHint": {
    object (RevocationHint)
  }
  // End of list of possible types for union field hint.
}
Поля
hint для поля объединения. Тип подсказки для принудительного исполнения. hint может принимать только одно из следующих значений:
revocationHint

object ( RevocationHint )

Учетные данные будут аннулированы эмитентом.

RevocationHint

Этот тип не содержит полей.

Учетные данные будут аннулированы эмитентом.

SubmitProofing

Подробная информация о статусе проверки.

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.
}
Поля
Поле объединения ProofingAllowance . Попытка проверки текущих учетных данных. ProofingAllowance может быть только одним из следующих:
limitedAttempts

object ( LimitedAttempts )

Пользователь имеет ограниченное количество попыток отправки корректурного текста.

unlimitedAttempts

object ( UnlimitedAttempts )

Пользователь имеет неограниченное количество попыток для отправки корректурных версий. Это не рекомендуется эмитенту.

Ограниченные попытки

Пользователь имеет ограниченное количество попыток отправки корректурного текста.

JSON-представление
{
  "remainingAttempts": integer,
  "maxAttempts": integer,
  "maxAttemptsEnforcementHint": {
    object (EnforcementHint)
  }
}
Поля
remainingAttempts

integer

Количество оставшихся попыток для проверки. Это относится только к отображению сообщений в пользовательском интерфейсе. Google Wallet не будет использовать это число.

maxAttempts

integer

Максимальное количество попыток для проверки. Это относится только к отображению сообщений в пользовательском интерфейсе. Google Wallet не будет учитывать это количество.

maxAttemptsEnforcementHint

object ( EnforcementHint )

Подсказка, описывающая, как эмитент будет обеспечивать соблюдение максимального количества попыток.

Неограниченное количество попыток

Этот тип не содержит полей.

Пользователь имеет неограниченное количество попыток для отправки корректурных версий. Это не рекомендуется эмитенту.