Данные профиля, запрашиваемые у пользователя:
| Значение | Что получает ваш сервер |
|---|---|
PHONES | Телефонные номера |
EMAILS | E-mail адреса |
NATIONAL_ID | Номер национального удостоверения |
PASPO_ID | Постоянный идентификатор пользователя в Paspo ID |
Sealed-тип, покрывающий все исходы authenticate:
| Результат | Поля | Действие |
|---|---|---|
Success | authCode: String | Отправить authCode на ваш сервер |
Cancelled | – | Пользователь закрыл экран согласия; обычно UI ошибки не нужен |
NotInstalled | – | Paspo ID не установлен; SDK открыл Play Store |
Failure | error: PaspoClientError, message: String? | Показать ошибку. message предназначен для логов, не для пользователя |
Cancelled и NotInstalled возвращаются отдельными ветками и никогда не приходят внутри Failure.
| Код | Константа | Значение |
|---|---|---|
| 100 | UNKNOWN | Неизвестная ошибка |
| 101 | INVALID_REQUEST | Некорректный запрос или повреждённые данные |
| 102 | SERVICE_UNAVAILABLE | Paspo ID временно недоступен |
| 103 | CANCELLED | Пользователь отменил операцию |
| 110 | SESSION_EXPIRED | Сессия истекла; начните заново с новым nonce |
| 111 | PACKAGE_VERIFICATION_FAILED | Приложение не прошло проверку подписи/package в Paspo ID. Убедитесь, что оба зарегистрированы при подключении |
| 120 | ACCESS_DENIED | Пользователь отказал в доступе |
| 121 | IDENTITY_NOT_VERIFIED | Личность пользователя в Paspo ID не подтверждена |
| 122 | ATTEMPTS_EXCEEDED | Превышено число попыток |
| 123 | ACTION_NOT_ALLOWED | Недоступно для этого пользователя |
| 130 | AUTH_METHOD_UNAVAILABLE | Метод подтверждения временно недоступен |
| 131 | UNSUPPORTED_AUTH_METHOD | Метод подтверждения не поддерживается |
| 140 | PASPO_NOT_INSTALLED | Paspo ID не установлен |
| 141 | CRYPTO_ERROR | Ошибка шифрования или расшифровки; начните заново |
SDK очищает криптографическое состояние при любой ошибке, поэтому дополнительный cleanup() после неё не требуется.