feat: openapi.yaml documentation
This commit is contained in:
parent
c9bfbaecbd
commit
8461ab949d
141
openapi.yaml
Normal file
141
openapi.yaml
Normal file
@ -0,0 +1,141 @@
|
||||
openapi: 3.0.1
|
||||
info:
|
||||
title: Сервис логики верификации аккаунта пользователя
|
||||
description: |-
|
||||
Область отвественности сервиса - получить на вход набор файлов необходимый для подтверждения статуса пользователя, оповещение менеджера для обработки поступившей заявки и оповещение польовательского сервиса о подтверждении статуса верификации пользователя
|
||||
version: 1.0.0
|
||||
tags:
|
||||
- name: verification
|
||||
paths:
|
||||
/verification/{userId}:
|
||||
get:
|
||||
description: метод для получения текущего статуса верификации текущего пользователя
|
||||
parameters:
|
||||
- name: userId
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: string
|
||||
tags:
|
||||
- verification
|
||||
responses:
|
||||
'200':
|
||||
description: успешное получение данных
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/Verification'
|
||||
'401':
|
||||
description: Неавторизован
|
||||
/verification:
|
||||
get:
|
||||
description: метод для получения текущего статуса верификации текущего пользователя
|
||||
tags:
|
||||
- verification
|
||||
responses:
|
||||
'200':
|
||||
description: успешное получение данных
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/Verification'
|
||||
'401':
|
||||
description: Неавторизован
|
||||
post:
|
||||
description: метод подания запроса на верификацию. При получении запроса отправить сообщение в канал телеграмма. Айдишник канала и токен бота передавать через переменные окружения. Файл с шаблоном сообщения встраивать в приложение. В тексте сообщения должно быть место для вставки урла для получения страницы админки с этим запросом, вида https://admin.pena.digital/user/{Id}/verification
|
||||
tags:
|
||||
- verification
|
||||
requestBody:
|
||||
content:
|
||||
multipart/form-data:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
$ref: '#/components/schemas/Status'
|
||||
inn:
|
||||
type: file
|
||||
contentMediaType: application/pdf
|
||||
contentEncoding: base64
|
||||
rule:
|
||||
type: file
|
||||
contentMediaType: application/pdf
|
||||
contentEncoding: base64
|
||||
egrule:
|
||||
type: file
|
||||
contentMediaType: application/pdf
|
||||
contentEncoding: base64
|
||||
certificate:
|
||||
type: file
|
||||
description: только для status == nko
|
||||
contentMediaType: application/pdf
|
||||
contentEncoding: base64
|
||||
responses:
|
||||
'200':
|
||||
description: успешный запрос на верификацию
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/Verification'
|
||||
'401':
|
||||
description: Неавторизован
|
||||
patch:
|
||||
description: метод подтверждения или отклонения верификации. При подтверждении надо передать статус верификации в customer сервис. Эндпоинт для этого получить из переменных окружения. Документация для этого эндпоинта будет чуть позднее. Слать запрос туда лучше через воркер, сохраняя задачи на отправку запросов в базу, чтобы не потерялись при перезагрузке сервиса.
|
||||
tags:
|
||||
- verification
|
||||
requestBody:
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
description: айдишник юзера
|
||||
status:
|
||||
$ref: '#/components/schemas/Status'
|
||||
comment:
|
||||
type: string
|
||||
accepted:
|
||||
type: boolean
|
||||
responses:
|
||||
'200':
|
||||
description: успешное подтверждение или отклонение верификации
|
||||
'401':
|
||||
description: Неавторизован
|
||||
components:
|
||||
schemas:
|
||||
Verification:
|
||||
type: object
|
||||
properties:
|
||||
_id:
|
||||
type: string
|
||||
description: айдишник юзера, который запросил верификацию
|
||||
accepted:
|
||||
type: boolean
|
||||
status:
|
||||
$ref: '#/components/schemas/Status'
|
||||
updated_at:
|
||||
type: string
|
||||
format: "date-time"
|
||||
comment:
|
||||
type: string
|
||||
files:
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/File'
|
||||
File:
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
url:
|
||||
type: string
|
||||
Status:
|
||||
type: string
|
||||
description: только no, nko или org
|
||||
example: nko
|
||||
enum:
|
||||
- no
|
||||
- nko
|
||||
- org
|
Loading…
Reference in New Issue
Block a user