# Документация внутреннего API Felmee Общий формат ответа для всех REST endpoints: ```json { "success": true, "message": "...", "codeError": null, "data": {} } ``` Version: 0.0.2 ## Servers Production ``` https://felmee.com ``` ## Security ### bearerAuth Authorization: Bearer ${JWT} Type: http Scheme: bearer Bearer Format: JWT ### jwtCookie Cookie JWT=${token} Type: apiKey In: cookie Name: JWT ### refreshTokenHeader RT: Bearer Type: apiKey In: header Name: RT ### refreshTokenCookie Cookie RT= Type: apiKey In: cookie Name: RT ## Download OpenAPI description [Документация внутреннего API Felmee](https://felmee.redocly.app/_bundle/OPENAPI.yaml) ## API Аунтефикации Авторизация и токены ### Отправить OTP на телефон - [POST /api/auth/phone/send/otp](https://felmee.redocly.app/openapi/api-auntefikacii/paths/~1api~1auth~1phone~1send~1otp/post.md): Отправляет одноразовый код (OTP) на номер телефона. ### Логин по телефону и OTP - [POST /api/auth/phone/login](https://felmee.redocly.app/openapi/api-auntefikacii/paths/~1api~1auth~1phone~1login/post.md): Возвращает пару токенов JWT (access) и RT (refresh). ### Отправить email со ссылкой для входа - [POST /api/auth/email/send/login-link](https://felmee.redocly.app/openapi/api-auntefikacii/paths/~1api~1auth~1email~1send~1login-link/post.md): Отправляет письмо со ссылкой на вход (если пользователь существует). Сервер не раскрывает факт наличия аккаунта. ### Отправить OTP для привязки email - [POST /api/auth/email/send/otp](https://felmee.redocly.app/openapi/api-auntefikacii/paths/~1api~1auth~1email~1send~1otp/post.md): Отправляет OTP для привязки email. Код отправляется только если email ещё не зарегистрирован. Требуется JWT. ### Привязать email к текущему пользователю - [PUT /api/auth/email/add](https://felmee.redocly.app/openapi/api-auntefikacii/paths/~1api~1auth~1email~1add/put.md): Подтверждение email через OTP и привязка к текущему пользователю. ### Обновить access token по refresh token - [POST /api/auth/refresh-token](https://felmee.redocly.app/openapi/api-auntefikacii/paths/~1api~1auth~1refresh-token/post.md): Обновляет пару токенов (JWT + RT) по refresh token. Refresh token передаётся: - header: RT: Bearer или - cookie: RT= ## API работы с файлами Загрузка и получение файлов ### Загрузить файл - [POST /api/file/upload](https://felmee.redocly.app/openapi/api-raboty-s-fajlami/paths/~1api~1file~1upload/post.md): Загрузка файла в хранилище. purpose определяет назначение и ограничения по типу/размеру. ### Получить файл по id (публичная ссылка) - [GET /file/{id}](https://felmee.redocly.app/openapi/api-raboty-s-fajlami/paths/~1file~1%7Bid%7D/get.md): Получить доступ к файлу по id. Требуется JWT. Возможная реализация: 302 redirect на реальный URL файла или выдача контента файла.