[ED-318] delete Identification's step for wallet Identity (#100)

This commit is contained in:
Boris 2021-11-18 19:59:52 +03:00 committed by GitHub
parent f802290aa9
commit f1c178db1a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
24 changed files with 19 additions and 444 deletions

View File

@ -1,5 +1,24 @@
# Swag-wallets changelog
## Version 0.0.3 to 0.0.4 - 16.11.2021
---
### What's Deprecated(not supported yet)
---
Удалена процедура идентификации владельца кошелька.
`GET` /identities/{identityID}/challenges
`POST` /identities/{identityID}/challenges
`GET` /identities/{identityID}/challenges/{challengeID}
`GET` /identities/{identityID}/challenges/{challengeID}/events
`GET` /identities/{identityID}/challenges/{challengeID}/events/{eventID}
Удалена информация о классе владельца и уровне идентификации
`GET` /providers/{providerID}/identity-classes
`GET` /providers/{providerID}/identity-classes/{identityClassID}
`GET` /providers/{providerID}/identity-classes/{identityClassID}/levels
`GET` /providers/{providerID}/identity-classes/{identityClassID}/levels/{identityLevelID}
## Version 0.0.2 to 0.0.3 - 22.09.2021
---
### What's Deprecated(not supported yet)

View File

@ -3,7 +3,6 @@ type: object
required:
- name
- provider
- class
properties:
id:
x-rebillyMerge:
@ -22,20 +21,6 @@ properties:
provider:
x-rebillyMerge:
- $ref: '#/definitions/ProviderID'
class:
x-rebillyMerge:
- $ref: '#/definitions/IdentityClassID'
level:
x-rebillyMerge:
- $ref: '#/definitions/IdentityLevelID'
- readOnly: true
effectiveChallenge:
x-rebillyMerge:
- $ref: '#/definitions/IdentityChallengeID'
- description: |
Идентификатор успешно пройденной процедура идентификации, результат которой действителен на
текущий момент
readOnly: true
isBlocked:
description: Заблокирована ли личность владельца?
type: boolean

View File

@ -1,38 +0,0 @@
description: Процедура идентификации личности
allOf:
- type: object
required:
- type
- proofs
properties:
id:
x-rebillyMerge:
- $ref: '#/definitions/IdentityChallengeID'
- readOnly: true
createdAt:
description: Дата и время запуска процедуры
type: string
format: date-time
readOnly: true
type:
x-rebillyMerge:
- $ref: '#/definitions/IdentityChallengeTypeID'
proofs:
description: |
Набор представленных доказательств.
См. [RBKmoney Private Documents API](?api/privdoc/swagger.json).
type: array
uniqueItems: true
items:
$ref: '#/definitions/SecuredPrivateDocument'
# example:
# - type: RUSDomesticPassport
# token: 7kodCm5gr68ji4O11KpVn0
# seriesMasked: "4***"
# numberMasked: "*****6"
# fullnameMasked: "И***** И.И."
# - type: RUSRetireeInsuranceCertificate
# token: Gfu6tLdqS2qtxsdB6WjOQ5h
# numberMasked: "12-**** ***0"
- $ref: '#/definitions/IdentityChallengeStatus'

View File

@ -1,21 +0,0 @@
description: |
Событие, возникшее в процессе процедуры идентификации
type: object
required:
- eventID
- occuredAt
- changes
properties:
eventID:
description: Идентификатор события процедуры идентификации
type: integer
format: int32
example: 42
occuredAt:
description: Дата и время возникновения события
type: string
format: date-time
changes:
type: array
items:
$ref: '#/definitions/IdentityChallengeEventChange'

View File

@ -1,12 +0,0 @@
description: |
Изменение, возникшее в процессе процедуры идентификации
type: object
discriminator: type
required:
- type
properties:
type:
description: Тип произошедшего изменения
type: string
enum:
- IdentityChallengeStatusChanged

View File

@ -1,3 +0,0 @@
description: Идентификатор процедуры идентификации личности
type: string
example: "1"

View File

@ -1,25 +0,0 @@
type: object
properties:
status:
x-rebillyMerge:
- $ref: '#/definitions/IdentityChallengeStatusValue'
- readOnly: true
validUntil:
# TODO
# Интересно, помогла бы механика из OpenAPI 3.x, которая позволила бы задачть discriminator по `status`,
# а потом allOf'нуть его в основной объект `IdentityChallenge`?
description: |
> Если `status` == `Completed`
Дата и время, до наступления которых результат процедуры действителен
type: string
format: date-time
readOnly: true
failureReason:
description: |
> Если `status` == `Failed`
Описание причины неудачного завершения процедуры
type: string
example: Proof incomplete
readOnly: true

View File

@ -1,4 +0,0 @@
description: Изменение статуса процедуры идентификации
allOf:
- $ref: '#/definitions/IdentityChallengeEventChange'
- $ref: '#/definitions/IdentityChallengeStatus'

View File

@ -1,16 +0,0 @@
description: |
Статус процедуры идентификации личности.
| Значение | Пояснение |
| ----------- | ------------------------------- |
| `Pending` | Процедура в процессе выполнения |
| `Completed` | Процедура пройдена успешно |
| `Failed` | Процедура не пройдена |
| `Cancelled` | Процедура отменена |
type: string
enum:
- Pending
- Completed
- Failed
- Cancelled

View File

@ -1,21 +0,0 @@
description: Описание типа процедуры идентификации личности
type: object
properties:
id:
x-rebillyMerge:
- $ref: '#/definitions/IdentityChallengeTypeID'
name:
description: |
Человекочитаемое название процедуры идентификации
type: string
example: Упрощённая идентификация
requiredProofs:
description: |
Набор доказательств, которые необходимо предоставить
type: array
items:
x-rebillyMerge:
- $ref: '#/definitions/SecuredPrivateDocumentType'
example:
- RUSDomesticPassport
- RUSRetireeInsuranceCertificate

View File

@ -1,3 +0,0 @@
description: Тип процедуры идентификации личности
type: string
example: esia

View File

@ -1,10 +0,0 @@
type: object
properties:
id:
x-rebillyMerge:
- $ref: '#/definitions/IdentityClassID'
name:
description: |
Человекочитаемое название класса
type: string
example: Частное лицо

View File

@ -1,3 +0,0 @@
description: Класс личности владельцев
type: string
example: person

View File

@ -1,17 +0,0 @@
type: object
properties:
id:
x-rebillyMerge:
- $ref: '#/definitions/IdentityLevelID'
name:
description: |
Человекочитаемое название уровня идентификации
type: string
example: Частично идентифицирован
challenges:
description: |
Список возможных процедур, которые необходимо пройти для достижения этого
уровня
type: array
items:
$ref: '#/definitions/IdentityChallengeType'

View File

@ -1,3 +0,0 @@
description: Уровень идентификации личности
type: string
example: partial

View File

@ -13,21 +13,6 @@ get:
type: string
maxLength: 40
minLength: 1
- name: class
description: Класс личности
in: query
required: false
type: string
maxLength: 40
minLength: 1
- name: level
description: Уровень идентификации
in: query
required: false
type: string
maxLength: 40
minLength: 1
- $ref: '#/parameters/limit'
- x-rebillyMerge:
- name: continuationToken
in: query

View File

@ -1,66 +0,0 @@
get:
operationId: listIdentityChallenges
summary: Перечислить процедуры идентификации
tags:
- Identities
parameters:
- $ref: '#/parameters/requestID'
- $ref: '#/parameters/deadline'
- $ref: '#/parameters/identityID'
- x-rebillyMerge:
- name: status
description: Фильтр по статусу процедуры
in: query
required: false
- $ref: '#/definitions/IdentityChallengeStatusValue'
responses:
'200':
description: Процедуры идентификации найдены
schema:
type: array
items:
$ref: '#/definitions/IdentityChallenge'
'404':
$ref: '#/responses/NotFound'
'400':
$ref: '#/responses/BadRequest'
'401':
$ref: '#/responses/Unauthorized'
post:
operationId: startIdentityChallenge
summary: Запустить процедуру идентификации
tags:
- Identities
parameters:
- $ref: '#/parameters/requestID'
- $ref: '#/parameters/deadline'
- $ref: '#/parameters/identityID'
- name: challenge
description: Данные для запуска процедуры идентификации
in: body
required: true
schema:
$ref: '#/definitions/IdentityChallenge'
responses:
'202':
description: Процедура идентификации запущена
headers:
Location:
description: URI запущенной процедуры
type: string
format: uri
schema:
$ref: '#/definitions/IdentityChallenge'
'422':
description: Неверные данные для проведения процедуры
schema:
$ref: '#/definitions/InvalidOperationParameters'
'409':
description: Ранее запущенная процедура ещё не завершена
'404':
$ref: '#/responses/NotFound'
'400':
$ref: '#/responses/BadRequest'
'401':
$ref: '#/responses/Unauthorized'

View File

@ -1,21 +0,0 @@
get:
operationId: getIdentityChallenge
summary: Получить данные процедуры идентификации
tags:
- Identities
parameters:
- $ref: '#/parameters/requestID'
- $ref: '#/parameters/deadline'
- $ref: '#/parameters/identityID'
- $ref: '#/parameters/challengeID'
responses:
'200':
description: Процедура идентификации найдена
schema:
$ref: '#/definitions/IdentityChallenge'
'404':
$ref: '#/responses/NotFound'
'400':
$ref: '#/responses/BadRequest'
'401':
$ref: '#/responses/Unauthorized'

View File

@ -1,25 +0,0 @@
get:
operationId: pollIdentityChallengeEvents
summary: Запросить события процедуры идентификации
tags:
- Identities
parameters:
- $ref: '#/parameters/requestID'
- $ref: '#/parameters/deadline'
- $ref: '#/parameters/identityID'
- $ref: '#/parameters/challengeID'
- $ref: '#/parameters/limit'
- $ref: '#/parameters/eventCursor'
responses:
'200':
description: События найдены
schema:
type: array
items:
$ref: '#/definitions/IdentityChallengeEvent'
'404':
$ref: '#/responses/NotFound'
'400':
$ref: '#/responses/BadRequest'
'401':
$ref: '#/responses/Unauthorized'

View File

@ -1,22 +0,0 @@
get:
operationId: getIdentityChallengeEvent
summary: Получить событие процедуры идентификации
tags:
- Identities
parameters:
- $ref: '#/parameters/requestID'
- $ref: '#/parameters/deadline'
- $ref: '#/parameters/identityID'
- $ref: '#/parameters/challengeID'
- $ref: '#/parameters/eventID'
responses:
'200':
description: Событие найдено
schema:
$ref: '#/definitions/IdentityChallengeEvent'
'404':
$ref: '#/responses/NotFound'
'400':
$ref: '#/responses/BadRequest'
'401':
$ref: '#/responses/Unauthorized'

View File

@ -1,22 +0,0 @@
get:
operationId: listProviderIdentityClasses
summary: Перечислить классы личностей
tags:
- Providers
parameters:
- $ref: '#/parameters/requestID'
- $ref: '#/parameters/deadline'
- $ref: '#/parameters/providerID'
responses:
'200':
description: Классы личностей найдены
schema:
type: array
items:
$ref: '#/definitions/IdentityClass'
'404':
$ref: '#/responses/NotFound'
'400':
$ref: '#/responses/BadRequest'
'401':
$ref: '#/responses/Unauthorized'

View File

@ -1,25 +0,0 @@
get:
operationId: getProviderIdentityClass
summary: Получить описание класса личностей
tags:
- Providers
parameters:
- $ref: '#/parameters/requestID'
- $ref: '#/parameters/deadline'
- $ref: '#/parameters/providerID'
- name: identityClassID
description: Класс личности владельца
in: path
required: true
type: string
responses:
'200':
description: Класс личностей найден
schema:
$ref: '#/definitions/IdentityClass'
'404':
$ref: '#/responses/NotFound'
'400':
$ref: '#/responses/BadRequest'
'401':
$ref: '#/responses/Unauthorized'

View File

@ -1,27 +0,0 @@
get:
operationId: listProviderIdentityLevels
summary: Перечислить уровни идентификации личности
tags:
- Providers
parameters:
- $ref: '#/parameters/requestID'
- $ref: '#/parameters/deadline'
- $ref: '#/parameters/providerID'
- name: identityClassID
description: Класс личности владельца
in: path
required: true
type: string
responses:
'200':
description: Уровни идентификации найдены
schema:
type: array
items:
$ref: '#/definitions/IdentityLevel'
'404':
$ref: '#/responses/NotFound'
'400':
$ref: '#/responses/BadRequest'
'401':
$ref: '#/responses/Unauthorized'

View File

@ -1,30 +0,0 @@
get:
operationId: getProviderIdentityLevel
summary: Получить описание уровня идентификации
tags:
- Providers
parameters:
- $ref: '#/parameters/requestID'
- $ref: '#/parameters/deadline'
- $ref: '#/parameters/providerID'
- name: identityClassID
description: Класс личности владельца
in: path
required: true
type: string
- name: identityLevelID
description: Уровень идентификации
in: path
required: true
type: string
responses:
'200':
description: Уровень идентификации найден
schema:
$ref: '#/definitions/IdentityLevel'
'404':
$ref: '#/responses/NotFound'
'400':
$ref: '#/responses/BadRequest'
'401':
$ref: '#/responses/Unauthorized'