Files
test_deploy/internal/http/swagger/docs/swagger.yaml
Alex Shevchuk 61fc0d2747
Some checks failed
Deploy Production / Deploy to Staging (push) Has been skipped
Go Linter / Run golangci-lint (api_gateway) (push) Failing after 2m31s
Go Linter / Build golang services (api_gateway) (push) Has been skipped
Go Linter / Tag Commit (push) Has been skipped
Go Linter / Push Docker Images (api_gateway) (push) Has been skipped
71
2025-09-17 14:32:06 +03:00

3600 lines
110 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

basePath: /
definitions:
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_constants.PermissionValue:
enum:
- no_permission
- can_view
- can_edit
type: string
x-enum-varnames:
- NoPermission
- CanView
- CanEdit
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_feed.AttachmentType:
enum:
- vacancy
- cv
- profile
- company
- bank_account
- submission
type: string
x-enum-varnames:
- AttachmentTypeVacancy
- AttachmentTypeCV
- AttachmentTypeProfile
- AttachmentTypeCompany
- AttachmentTypeBankAccount
- AttachmentTypeSubmission
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_feed.Event:
properties:
cancellation_reason:
type: string
company_id:
type: string
created_at:
type: string
event_type:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_feed.EventType'
id:
type: string
is_cancelled:
type: boolean
message:
type: string
owner_id:
type: string
owner_type:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_feed.UserRole'
payload:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_feed.EventPayload'
updated_at:
type: string
visibility:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_feed.Visibility'
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_feed.EventPayload:
properties:
additional_receiver:
description: may be uid or company id
type: string
attachment_id:
type: string
attachment_type:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_feed.AttachmentType'
custom_data:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_feed.EventType:
enum:
- welcome
- new_company_member
- profile_changed
- company_created
- company_changed
- vacancy_created
- vacancy_changed
- vacancy_moderation_sent
- submission_status_changed
- transaction_created
- bank_details_changed
- bank_account_created
- post_anketa
type: string
x-enum-varnames:
- EventWelcome
- EventNewCompanyMember
- EventProfileChanged
- EventCompanyCreated
- EventCompanyChanged
- EventVacancyCreated
- EventVacancyChanged
- EventVacancyModerationSent
- EventSubmissionStatusChanged
- EventTransactionCreated
- EventBankAccountChanged
- EventBankAccountCreated
- EventPostAnketa
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_feed.UserRole:
enum:
- agent
- distributor
type: string
x-enum-varnames:
- RoleAgent
- RoleDistributor
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_feed.Visibility:
enum:
- public
- private
- company_wide
type: string
x-enum-comments:
VisibilityCompanyWide: Показывается всем в компании
VisibilityPrivate: Показывается только инициатору события
VisibilityPublic: Показывается всем агентам(инициатор может быть только дистр)
x-enum-varnames:
- VisibilityPublic
- VisibilityPrivate
- VisibilityCompanyWide
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.AddDistributorCompanyMemberRequest:
properties:
companyId:
type: string
id:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.AgentInfo:
properties:
id:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.Balance:
properties:
clean_balance:
type: integer
raw_balance:
type: integer
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.BalanceGetResponse:
properties:
balance:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.Balance'
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.BankAccount:
properties:
account_name:
type: string
account_number:
type: string
bank_name:
type: string
bik:
type: string
correspondent_account:
type: string
created_at:
type: string
id:
type: string
owner_id:
type: string
updated_at:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.BankAccountCreateRequest:
properties:
account_name:
type: string
account_number:
type: string
bank_name:
type: string
bik:
type: string
correspondent_account:
type: string
is_primary:
type: boolean
ownerId:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.BankAccountCreateResponse:
properties:
id:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.BankAccountInfo:
properties:
account_name:
type: string
account_number:
type: string
bank_name:
type: string
bik:
type: string
correspondent_account:
type: string
id:
type: string
owner_type:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.BankAccountListGetResponse:
properties:
bank_accounts:
items:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.BankAccount'
type: array
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.BankAccountUpdateRequest:
properties:
account_name:
type: string
account_number:
type: string
bank_name:
type: string
bik:
type: string
correspondent_account:
type: string
id:
type: string
is_primary:
type: boolean
ownerId:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.CandidateInfo:
properties:
birthday:
type: string
cv_link:
type: string
email:
type: string
first_name:
type: string
id:
type: string
last_name:
type: string
middle_name:
type: string
phone_number:
type: string
resume:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.Company:
properties:
description:
type: string
extra_fields_template:
type: string
has_moderation_ticket:
type: boolean
id:
type: string
inn:
type: string
is_active:
type: boolean
kpp:
type: string
legal_address:
type: string
legal_person:
type: string
metadata:
type: string
name:
type: string
owner_id:
type: string
physical_address:
type: string
staff:
items:
type: string
type: array
website:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.CompanyByIdGetResponse:
properties:
company:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.Company'
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.CompanyCreateRequest:
properties:
description:
type: string
extra_fields_template:
type: string
inn:
type: string
kpp:
type: string
legal_address:
type: string
legal_person:
type: string
metadata:
type: string
name:
type: string
ownerId:
type: string
physical_address:
type: string
staff:
items:
type: string
type: array
website:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.CompanyCreateResponse:
properties:
id:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.CompanyListGetResponse:
properties:
companies:
items:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.Company'
type: array
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.CompanyUpdateRequest:
properties:
description:
type: string
extra_fields:
type: string
id:
type: string
inn:
type: string
kpp:
type: string
legal_address:
type: string
legal_person:
type: string
metadata:
type: string
name:
type: string
physical_address:
type: string
staff:
items:
type: string
type: array
website:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.EmployeeResponse:
properties:
company_id:
type: string
employees:
items:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_types.Employee'
type: array
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.ForgotPasswordRequest:
properties:
email:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.LoginUserRequest:
properties:
email:
type: string
password:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.LoginUserResponse:
properties:
access_token:
type: string
email_confirmed:
type: boolean
permissions:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.Permissions'
refresh_token:
type: string
uid:
type: string
user_type:
type: integer
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.LogoutUserRequest:
properties:
refresh_token:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.Permissions:
properties:
balance:
type: string
company:
type: string
employees:
type: string
profile:
type: string
submissions:
type: string
vacancies:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.Profile:
properties:
email:
type: string
id:
type: string
name:
type: string
phone_number:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.ProfileGetResponse:
properties:
profile:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.Profile'
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.ProfileUpdateRequest:
properties:
email:
type: string
id:
type: string
name:
type: string
phone_number:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.RefreshTokenRequest:
properties:
refresh_token:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.RefreshTokenResponse:
properties:
access_token:
type: string
refresh_token:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.RegisterResponse:
properties:
uid:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.ResetPasswordRequest:
properties:
email:
type: string
new_password:
type: string
token:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.Submission:
properties:
agent_info:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.AgentInfo'
candidate_info:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.CandidateInfo'
id:
type: string
status:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.SubmissionStatus'
vacancy_info:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyInfo'
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.SubmissionListGetResponse:
properties:
submissions:
items:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.Submission'
type: array
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.SubmissionStatus:
enum:
- unspecified
- new
- pending
- on_interview
- approved
- cancelled
- rejected
type: string
x-enum-varnames:
- SubStatusUnspecified
- SubStatusNew
- SubStatusPending
- SubStatusOnInterview
- SubStatusApproved
- SubStatusCancelled
- SubStatusRejected
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.SubmissionStatusUpdateRequest:
properties:
id:
type: string
status:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.SubmissionStatus'
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.Transaction:
properties:
amount:
type: integer
bank_account_info:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.BankAccountInfo'
created_at:
type: string
currency:
type: string
id:
type: string
owner_info:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.TransactionOwnerInfo'
payload:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.TransactionPayload'
status:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.TransactionStatus'
type:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.TransactionType'
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.TransactionCreateRequest:
properties:
amount:
type: integer
bank_account_id:
type: string
currency:
type: string
ownerId:
type: string
payload:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.TransactionPayload'
request_id:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.TransactionCreateResponse:
properties:
id:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.TransactionListGetResponse:
properties:
transactions:
items:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.Transaction'
type: array
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.TransactionOwnerInfo:
properties:
id:
type: string
name:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.TransactionPayload:
properties:
company_id:
type: string
company_name:
type: string
origin:
type: string
vacancy_id:
type: string
vacancy_name:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.TransactionStatus:
enum:
- new
- pending
- approved
- rejected
type: string
x-enum-varnames:
- TransactionStatusNew
- TransactionStatusPending
- TransactionStatusApproved
- TransactionStatusRejected
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.TransactionType:
enum:
- deposit
- withdrawal
type: string
x-enum-varnames:
- TransactionTypeDeposit
- TransactionTypeWithdrawal
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.UserCredentials:
properties:
email:
type: string
first_name:
type: string
last_name:
type: string
middle_name:
type: string
password:
type: string
permissions:
additionalProperties:
type: string
type: object
phone:
type: string
user_type:
type: integer
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.Vacancy:
properties:
address:
type: string
agent_reward:
type: integer
company:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyCompanyInfo'
created_at:
type: string
current_candidates:
type: integer
extra_fields:
type: string
extra_info:
type: string
id:
type: string
is_archived:
type: boolean
moderation:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyModeration'
name:
type: string
region:
type: string
required_candidates:
type: integer
requirements:
type: string
responsibilities:
type: string
salary_bottom:
type: integer
salary_top:
type: integer
target_action:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyTargetAction'
work_format:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyCompanyInfo:
properties:
id:
type: string
logo_link:
type: string
name:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyCreateRequest:
properties:
address:
type: string
agent_reward:
type: integer
company_id:
type: string
current_candidates:
type: integer
extra_fields:
type: string
extra_info:
type: string
name:
type: string
region:
type: string
required_candidates:
type: integer
requirements:
type: string
responsibilities:
type: string
salary_bottom:
type: integer
salary_top:
type: integer
target_action:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyTargetAction'
work_format:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyCreateResponse:
properties:
id:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyInfo:
properties:
id:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyListGetResponse:
properties:
vacancies:
items:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.Vacancy'
type: array
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyModeration:
properties:
description_history:
items:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyModerationDescription'
type: array
status:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyStatus'
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyModerationDescription:
properties:
created_at:
type: string
description:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyStatus:
enum:
- unspecified
- new
- pending
- approved
- rejected
type: string
x-enum-varnames:
- VacUnspecified
- VacNew
- VacPending
- VacApproved
- VacRejected
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyTargetAction:
properties:
action:
type: string
duration:
type: integer
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyTargetActionForUpdate:
properties:
action:
type: string
duration:
type: integer
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyUpdateRequest:
properties:
address:
type: string
agent_reward:
type: integer
extra_fields:
type: string
extra_info:
type: string
id:
type: string
name:
type: string
region:
type: string
required_candidates:
type: integer
requirements:
type: string
responsibilities:
type: string
salary_bottom:
type: integer
salary_top:
type: integer
target_action:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyTargetActionForUpdate'
work_format:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_types.Employee:
properties:
email:
type: string
first_name:
type: string
last_name:
type: string
middle_name:
type: string
permissions:
additionalProperties:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_constants.PermissionValue'
description: Phone string `json:"phone"` // не уверен, что
это нужно
type: object
uid:
type: string
type: object
git-molva_ru_Molva_molva-backend_services_api_gateway_internal_types.PersonalLinkResponse:
properties:
link:
type: string
type: object
host: dev-molva.ru
info:
contact:
email: support@swagger.io
name: API Support
url: http://www.swagger.io/support
description: API Gateway для системы Molva - платформы для управления вакансиями
и агентами
license:
name: MIT
url: https://opensource.org/licenses/MIT
termsOfService: http://swagger.io/terms/
title: Molva API Gateway
version: "1.0"
paths:
/api/v1/{uid}/validation:
get:
consumes:
- application/json
description: Получение статуса валидации пользователя по UID
parameters:
- description: UID пользователя
in: path
name: uid
required: true
type: string
produces:
- application/json
responses:
"200":
description: Статус валидации
schema:
additionalProperties:
type: string
type: object
"400":
description: Неверные параметры запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
summary: Получить статус валидации пользователя
tags:
- system
/api/v1/agents/{agent_id}/balance:
get:
consumes:
- application/json
description: Получение текущего баланса агента
parameters:
- description: ID агента
in: path
name: agent_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Баланс агента
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.BalanceGetResponse'
"400":
description: Неверные параметры запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить баланс агента
tags:
- agents
/api/v1/agents/{agent_id}/bank_accounts:
get:
consumes:
- application/json
description: Получение списка банковских счетов агента
parameters:
- description: ID агента
in: path
name: agent_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Список банковских счетов
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.BankAccountListGetResponse'
"400":
description: Неверные параметры запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить список банковских счетов агента
tags:
- agents
post:
consumes:
- application/json
description: Создание нового банковского счета для агента
parameters:
- description: ID агента
in: path
name: agent_id
required: true
type: string
- description: Данные банковского счета
in: body
name: request
required: true
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.BankAccountCreateRequest'
produces:
- application/json
responses:
"201":
description: Банковский счет создан
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.BankAccountCreateResponse'
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Создать банковский счет агента
tags:
- agents
/api/v1/agents/{agent_id}/bank_accounts/{bank_account_id}:
delete:
consumes:
- application/json
description: Удаление банковского счета агента
parameters:
- description: ID агента
in: path
name: agent_id
required: true
type: string
- description: ID банковского счета
in: path
name: bank_account_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Банковский счет удален
schema:
additionalProperties:
type: string
type: object
"400":
description: Неверные параметры запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Удалить банковский счет агента
tags:
- agents
put:
consumes:
- application/json
description: Обновление информации о банковском счете агента
parameters:
- description: ID агента
in: path
name: agent_id
required: true
type: string
- description: ID банковского счета
in: path
name: bank_account_id
required: true
type: string
- description: Данные для обновления
in: body
name: request
required: true
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.BankAccountUpdateRequest'
produces:
- application/json
responses:
"200":
description: Банковский счет обновлен
schema:
additionalProperties:
type: string
type: object
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Обновить банковский счет агента
tags:
- agents
/api/v1/agents/{agent_id}/companies:
get:
consumes:
- application/json
description: Получение списка всех компаний, принадлежащих агенту
parameters:
- description: ID агента
in: path
name: agent_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Список компаний
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.CompanyListGetResponse'
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неавторизованный доступ
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить список компаний агента
tags:
- agents
/api/v1/agents/{agent_id}/company:
post:
consumes:
- application/json
description: Создание новой компании для агента
parameters:
- description: ID агента
in: path
name: agent_id
required: true
type: string
- description: Данные для создания компании
in: body
name: request
required: true
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.CompanyCreateRequest'
produces:
- application/json
responses:
"201":
description: Компания создана
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.CompanyCreateResponse'
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неавторизованный доступ
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Создать компанию
tags:
- agents
/api/v1/agents/{agent_id}/company/{company_id}:
get:
consumes:
- application/json
description: Получение детальной информации о компании агента
parameters:
- description: ID агента
in: path
name: agent_id
required: true
type: string
- description: ID компании
in: path
name: company_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Информация о компании
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.CompanyByIdGetResponse'
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неавторизованный доступ
schema:
additionalProperties:
type: string
type: object
"404":
description: Компания не найдена
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить компанию по ID
tags:
- agents
/api/v1/agents/{agent_id}/profile:
get:
consumes:
- application/json
description: Получение профиля агента по ID
parameters:
- description: ID агента
in: path
name: agent_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Профиль агента
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.ProfileGetResponse'
"400":
description: Неверные параметры запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить профиль агента
tags:
- agents
put:
consumes:
- application/json
description: Обновление профиля агента
parameters:
- description: ID агента
in: path
name: agent_id
required: true
type: string
- description: Данные для обновления профиля
in: body
name: request
required: true
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.ProfileUpdateRequest'
produces:
- application/json
responses:
"200":
description: Профиль обновлен
schema:
additionalProperties:
type: string
type: object
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Обновить профиль агента
tags:
- agents
/api/v1/agents/{agent_id}/submissions:
get:
consumes:
- application/json
description: Получение списка заявок агента с возможностью фильтрации
parameters:
- description: ID агента
in: path
name: agent_id
required: true
type: string
- description: ID вакансии
in: query
name: vacancy_id
type: string
- description: Статус заявки
in: query
name: status
type: string
- description: Номер страницы
in: query
name: page
type: integer
- description: Размер страницы
in: query
name: page_size
type: integer
produces:
- application/json
responses:
"200":
description: Список заявок
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.SubmissionListGetResponse'
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неавторизованный доступ
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить список заявок агента
tags:
- agents
/api/v1/agents/{agent_id}/submissions/{submission_id}:
delete:
consumes:
- application/json
description: Удаление заявки агента
parameters:
- description: ID агента
in: path
name: agent_id
required: true
type: string
- description: ID заявки
in: path
name: submission_id
required: true
type: string
produces:
- application/json
responses:
"204":
description: Заявка удалена
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неавторизованный доступ
schema:
additionalProperties:
type: string
type: object
"404":
description: Заявка не найдена
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Удалить заявку агента
tags:
- agents
/api/v1/agents/{agent_id}/submissions/{submission_id}/cv:
get:
consumes:
- application/json
description: Получение CV файла заявки
parameters:
- description: ID агента
in: path
name: agent_id
required: true
type: string
- description: ID заявки
in: path
name: submission_id
required: true
type: string
produces:
- application/octet-stream
responses:
"200":
description: CV файл
schema:
type: file
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неавторизованный доступ
schema:
additionalProperties:
type: string
type: object
"404":
description: CV не найден
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить CV заявки
tags:
- agents
/api/v1/agents/{agent_id}/transactions:
get:
consumes:
- application/json
description: Получение списка транзакций агента с возможностью фильтрации
parameters:
- description: ID агента
in: path
name: agent_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Список транзакций
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.TransactionListGetResponse'
"400":
description: Неверные параметры запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить список транзакций агента
tags:
- agents
post:
consumes:
- application/json
description: Создание новой транзакции для агента
parameters:
- description: ID агента
in: path
name: agent_id
required: true
type: string
- description: Данные транзакции
in: body
name: request
required: true
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.TransactionCreateRequest'
produces:
- application/json
responses:
"201":
description: Транзакция создана
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.TransactionCreateResponse'
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Создать транзакцию агента
tags:
- agents
/api/v1/agents/{agent_id}/vacancies:
get:
consumes:
- application/json
description: Получение списка вакансий с возможностью фильтрации
parameters:
- description: ID агента
in: path
name: agent_id
required: true
type: string
- description: ID дистрибьютора
in: query
name: distributor_id
type: string
- description: ID компании
in: query
name: company_id
type: string
- description: Регион
in: query
name: region
type: string
- description: Минимальная зарплата
in: query
name: salary_bottom
type: integer
- description: Максимальная зарплата
in: query
name: salary_top
type: integer
- description: Архивные вакансии
in: query
name: is_archived
type: boolean
- description: Статус вакансии
in: query
name: status
type: string
- description: Номер страницы
in: query
name: page
type: integer
- description: Размер страницы
in: query
name: page_size
type: integer
produces:
- application/json
responses:
"200":
description: Список вакансий
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyListGetResponse'
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неавторизованный доступ
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить список вакансий для агента
tags:
- agents
/api/v1/agents/{agent_id}/vacancies/{vacancy_id}:
get:
consumes:
- application/json
description: Получение персональной ссылки агента для вакансии
parameters:
- description: ID агента
in: path
name: agent_id
required: true
type: string
- description: ID вакансии
in: path
name: vacancy_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Персональная ссылка
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_types.PersonalLinkResponse'
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неавторизованный доступ
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить персональную ссылку
tags:
- agents
/api/v1/anketa:
get:
consumes:
- application/json
description: Получение HTML формы анкеты для клиента
parameters:
- description: Зашифрованная ссылка с параметрами
in: query
name: link
required: true
type: string
produces:
- text/html
responses:
"200":
description: HTML форма анкеты
schema:
type: string
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"404":
description: Вакансия не найдена
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
summary: Получить анкету
tags:
- clients
post:
consumes:
- application/json
description: Отправка заполненной анкеты клиента
parameters:
- description: Данные анкеты
in: body
name: request
required: true
schema:
additionalProperties: true
type: object
produces:
- application/json
responses:
"201":
description: Анкета отправлена
schema:
additionalProperties:
type: string
type: object
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
summary: Отправить анкету
tags:
- clients
/api/v1/companies/{company_id}/employees:
get:
consumes:
- application/json
description: Получение списка сотрудников компании
parameters:
- description: ID компании
in: path
name: company_id
required: true
type: string
- description: ID пользователя
in: query
name: uid
required: true
type: string
produces:
- application/json
responses:
"200":
description: Список сотрудников
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.EmployeeResponse'
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неавторизованный доступ
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить список сотрудников компании
tags:
- employees
/api/v1/confirm_email:
get:
consumes:
- text/html
description: HTML страница для подтверждения email адреса пользователя
parameters:
- description: ID пользователя
in: query
name: uid
required: true
type: string
- description: Токен подтверждения
in: query
name: token
required: true
type: string
produces:
- text/html
responses:
"200":
description: HTML страница подтверждения
schema:
type: string
"400":
description: Неверные параметры запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
summary: Страница подтверждения email
tags:
- auth
/api/v1/distributor/{distributor_id}/balance:
get:
consumes:
- application/json
description: Получение текущего баланса дистрибьютора
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Баланс дистрибьютора
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.BalanceGetResponse'
"400":
description: Неверные параметры запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить баланс дистрибьютора
tags:
- distributors
/api/v1/distributor/{distributor_id}/bank_accounts:
get:
consumes:
- application/json
description: Получение списка банковских счетов дистрибьютора
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Список банковских счетов
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.BankAccountListGetResponse'
"400":
description: Неверные параметры запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить список банковских счетов дистрибьютора
tags:
- distributors
/api/v1/distributor/{distributor_id}/bank_accounts/{bank_account_id}:
delete:
consumes:
- application/json
description: Удаление банковского счета дистрибьютора
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
- description: ID банковского счета
in: path
name: bank_account_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Банковский счет удален
schema:
additionalProperties:
type: string
type: object
"400":
description: Неверные параметры запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Удалить банковский счет дистрибьютора
tags:
- distributors
put:
consumes:
- application/json
description: Обновление информации о банковском счете дистрибьютора
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
- description: ID банковского счета
in: path
name: bank_account_id
required: true
type: string
- description: Данные для обновления
in: body
name: request
required: true
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.BankAccountUpdateRequest'
produces:
- application/json
responses:
"200":
description: Банковский счет обновлен
schema:
additionalProperties:
type: string
type: object
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Обновить банковский счет дистрибьютора
tags:
- distributors
/api/v1/distributor/{distributor_id}/companies:
get:
consumes:
- application/json
description: Получение списка всех компаний, принадлежащих дистрибьютору
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Список компаний
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.CompanyListGetResponse'
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неавторизованный доступ
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить список компаний дистрибьютора
tags:
- distributors
/api/v1/distributor/{distributor_id}/company:
post:
consumes:
- application/json
description: Создание новой компании для дистрибьютора
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
- description: Данные для создания компании
in: body
name: request
required: true
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.CompanyCreateRequest'
produces:
- application/json
responses:
"201":
description: Компания создана
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.CompanyCreateResponse'
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неавторизованный доступ
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Создать компанию дистрибьютора
tags:
- distributors
/api/v1/distributor/{distributor_id}/company/{company_id}:
get:
consumes:
- application/json
description: Получение детальной информации о компании дистрибьютора
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
- description: ID компании
in: path
name: company_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Информация о компании
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.CompanyByIdGetResponse'
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неавторизованный доступ
schema:
additionalProperties:
type: string
type: object
"404":
description: Компания не найдена
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить компанию дистрибьютора по ID
tags:
- distributors
patch:
consumes:
- application/json
description: Обновление информации о компании дистрибьютора
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
- description: ID компании
in: path
name: company_id
required: true
type: string
- description: Данные для обновления
in: body
name: request
required: true
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.CompanyUpdateRequest'
produces:
- application/json
responses:
"204":
description: Компания обновлена
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неавторизованный доступ
schema:
additionalProperties:
type: string
type: object
"404":
description: Компания не найдена
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Обновить компанию дистрибьютора
tags:
- distributors
post:
consumes:
- application/json
description: Добавление нового участника в компанию дистрибьютора
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
- description: ID компании
in: path
name: company_id
required: true
type: string
- description: Данные участника
in: body
name: request
required: true
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.AddDistributorCompanyMemberRequest'
produces:
- application/json
responses:
"201":
description: Участник добавлен
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неавторизованный доступ
schema:
additionalProperties:
type: string
type: object
"404":
description: Компания не найдена
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Добавить участника в компанию
tags:
- distributors
/api/v1/distributor/{distributor_id}/company/{company_id}/balance:
get:
consumes:
- application/json
description: Получение баланса конкретной компании дистрибьютора
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
- description: ID компании
in: path
name: company_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Баланс компании
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.BalanceGetResponse'
"400":
description: Неверные параметры запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить баланс компании дистрибьютора
tags:
- distributors
/api/v1/distributor/{distributor_id}/company/{company_id}/bank_accounts:
get:
consumes:
- application/json
description: Получение списка банковских счетов конкретной компании дистрибьютора
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
- description: ID компании
in: path
name: company_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Список банковских счетов компании
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.BankAccountListGetResponse'
"400":
description: Неверные параметры запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить список банковских счетов компании дистрибьютора
tags:
- distributors
post:
consumes:
- application/json
description: Создание нового банковского счета для компании дистрибьютора
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
- description: ID компании
in: path
name: company_id
required: true
type: string
- description: Данные банковского счета
in: body
name: request
required: true
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.BankAccountCreateRequest'
produces:
- application/json
responses:
"201":
description: Банковский счет создан
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.BankAccountCreateResponse'
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Создать банковский счет компании дистрибьютора
tags:
- distributors
/api/v1/distributor/{distributor_id}/company/{company_id}/logo:
delete:
consumes:
- application/json
description: Удаление логотипа компании дистрибьютора
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
- description: ID компании
in: path
name: company_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Логотип удален
schema:
additionalProperties:
type: string
type: object
"400":
description: Неверные параметры запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Удалить логотип компании
tags:
- distributors
get:
consumes:
- application/json
description: Получение логотипа компании дистрибьютора
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
- description: ID компании
in: path
name: company_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Логотип компании
schema:
type: file
"400":
description: Неверные параметры запроса
schema:
additionalProperties:
type: string
type: object
"404":
description: Логотип не найден
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить логотип компании
tags:
- distributors
post:
consumes:
- multipart/form-data
description: Загрузка нового логотипа для компании дистрибьютора
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
- description: ID компании
in: path
name: company_id
required: true
type: string
- description: Файл логотипа
in: formData
name: logo
required: true
type: file
produces:
- application/json
responses:
"201":
description: Логотип загружен
schema:
additionalProperties:
type: string
type: object
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Создать логотип компании
tags:
- distributors
put:
consumes:
- multipart/form-data
description: Обновление логотипа компании дистрибьютора
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
- description: ID компании
in: path
name: company_id
required: true
type: string
- description: Новый файл логотипа
in: formData
name: logo
required: true
type: file
produces:
- application/json
responses:
"200":
description: Логотип обновлен
schema:
additionalProperties:
type: string
type: object
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Обновить логотип компании
tags:
- distributors
/api/v1/distributor/{distributor_id}/company/{company_id}/transactions:
get:
consumes:
- application/json
description: Получение списка транзакций конкретной компании дистрибьютора
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
- description: ID компании
in: path
name: company_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Список транзакций компании
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.TransactionListGetResponse'
"400":
description: Неверные параметры запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить список транзакций компании дистрибьютора
tags:
- distributors
/api/v1/distributor/{distributor_id}/profile:
get:
consumes:
- application/json
description: Получение профиля дистрибьютора по ID
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Профиль дистрибьютора
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.ProfileGetResponse'
"400":
description: Неверные параметры запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить профиль дистрибьютора
tags:
- distributors
put:
consumes:
- application/json
description: Обновление профиля дистрибьютора
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
- description: Данные для обновления профиля
in: body
name: request
required: true
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.ProfileUpdateRequest'
produces:
- application/json
responses:
"200":
description: Профиль обновлен
schema:
additionalProperties:
type: string
type: object
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Обновить профиль дистрибьютора
tags:
- distributors
/api/v1/distributor/{distributor_id}/transactions:
get:
consumes:
- application/json
description: Получение списка транзакций дистрибьютора с возможностью фильтрации
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Список транзакций
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.TransactionListGetResponse'
"400":
description: Неверные параметры запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить список транзакций дистрибьютора
tags:
- distributors
post:
consumes:
- application/json
description: Создание новой транзакции для дистрибьютора
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
- description: Данные транзакции
in: body
name: request
required: true
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.TransactionCreateRequest'
produces:
- application/json
responses:
"201":
description: Транзакция создана
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.TransactionCreateResponse'
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Создать транзакцию дистрибьютора
tags:
- distributors
/api/v1/distributor/{distributor_id}/vacancies:
get:
consumes:
- application/json
description: Получение списка вакансий дистрибьютора с возможностью фильтрации
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
- description: ID компании
in: query
name: company_id
type: string
- description: Регион
in: query
name: region
type: string
- description: Минимальная зарплата
in: query
name: salary_bottom
type: integer
- description: Максимальная зарплата
in: query
name: salary_top
type: integer
- description: Архивные вакансии
in: query
name: is_archived
type: boolean
- description: Статус вакансии
in: query
name: status
type: string
- description: Номер страницы
in: query
name: page
type: integer
- description: Размер страницы
in: query
name: page_size
type: integer
produces:
- application/json
responses:
"200":
description: Список вакансий
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyListGetResponse'
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неавторизованный доступ
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить список вакансий дистрибьютора
tags:
- distributors
post:
consumes:
- application/json
description: Создание новой вакансии дистрибьютором
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
- description: Данные для создания вакансии
in: body
name: request
required: true
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyCreateRequest'
produces:
- application/json
responses:
"201":
description: Вакансия создана
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyCreateResponse'
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неавторизованный доступ
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Создать вакансию
tags:
- distributors
/api/v1/distributor/{distributor_id}/vacancies/{vacancy_id}:
delete:
consumes:
- application/json
description: Удаление вакансии дистрибьютора
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
- description: ID вакансии
in: path
name: vacancy_id
required: true
type: string
produces:
- application/json
responses:
"204":
description: Вакансия удалена
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неавторизованный доступ
schema:
additionalProperties:
type: string
type: object
"404":
description: Вакансия не найдена
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Удалить вакансию
tags:
- distributors
patch:
consumes:
- application/json
description: Обновление информации о вакансии дистрибьютора
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
- description: ID вакансии
in: path
name: vacancy_id
required: true
type: string
- description: Данные для обновления
in: body
name: request
required: true
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.VacancyUpdateRequest'
produces:
- application/json
responses:
"204":
description: Вакансия обновлена
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неавторизованный доступ
schema:
additionalProperties:
type: string
type: object
"404":
description: Вакансия не найдена
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Обновить вакансию
tags:
- distributors
/api/v1/distributor/{distributor_id}/vacancies/{vacancy_id}/moderation:
post:
consumes:
- application/json
description: Отправка вакансии дистрибьютора на модерацию
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
- description: ID вакансии
in: path
name: vacancy_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Вакансия отправлена на модерацию
schema:
additionalProperties:
type: string
type: object
"400":
description: Неверные параметры запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Отправить вакансию на модерацию
tags:
- distributors
/api/v1/distributor/{distributor_id}/vacancies/{vacancy_id}/submissions:
get:
consumes:
- application/json
description: Получение списка заявок дистрибьютора с возможностью фильтрации
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
- description: ID вакансии
in: path
name: vacancy_id
required: true
type: string
- description: Статус заявки
in: query
name: status
type: string
- description: Номер страницы
in: query
name: page
type: integer
- description: Размер страницы
in: query
name: page_size
type: integer
produces:
- application/json
responses:
"200":
description: Список заявок
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.SubmissionListGetResponse'
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неавторизованный доступ
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить список заявок дистрибьютора
tags:
- distributors
/api/v1/distributor/{distributor_id}/vacancies/{vacancy_id}/submissions/{submission_id}/status:
post:
consumes:
- application/json
description: Обновление статуса заявки дистрибьютором
parameters:
- description: ID дистрибьютора
in: path
name: distributor_id
required: true
type: string
- description: ID вакансии
in: path
name: vacancy_id
required: true
type: string
- description: ID заявки
in: path
name: submission_id
required: true
type: string
- description: Новый статус заявки
in: body
name: request
required: true
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.SubmissionStatusUpdateRequest'
produces:
- application/json
responses:
"200":
description: Статус обновлен
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неавторизованный доступ
schema:
additionalProperties:
type: string
type: object
"404":
description: Заявка не найдена
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Обновить статус заявки
tags:
- distributors
/api/v1/docs/{file}:
get:
consumes:
- application/json
description: Получение файла документа по имени
parameters:
- description: Имя файла
in: path
name: file
required: true
type: string
produces:
- application/octet-stream
responses:
"200":
description: Файл документа
schema:
type: file
"404":
description: Файл не найден
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
summary: Получить файл документа
tags:
- system
/api/v1/feed/{uid}/events:
get:
consumes:
- application/json
description: Получение ленты событий пользователя с возможностью фильтрации
parameters:
- description: ID пользователя
in: path
name: uid
required: true
type: string
- description: Тип пользователя (agent/distributor)
in: query
name: user_type
required: true
type: string
- description: Тип события (через запятую)
in: query
name: event_type
type: string
- description: Показывать отмененные события
in: query
name: show_cancelled
type: boolean
- description: Лимит событий
in: query
name: limit
type: integer
- description: Смещение
in: query
name: offset
type: integer
produces:
- application/json
responses:
"200":
description: Список событий
schema:
items:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_feed.Event'
type: array
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неавторизованный доступ
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
security:
- BearerAuth: []
summary: Получить события пользователя
tags:
- feed
/api/v1/forgot_password:
post:
consumes:
- application/json
description: Отправка OTP кода на email для восстановления пароля
parameters:
- description: Данные для восстановления пароля
in: body
name: request
required: true
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.ForgotPasswordRequest'
produces:
- application/json
responses:
"200":
description: OTP код отправлен
schema:
additionalProperties:
type: string
type: object
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
summary: Запрос восстановления пароля
tags:
- auth
/api/v1/healthcheck:
get:
consumes:
- application/json
description: Получение информации о версии, коммите и дате сборки приложения
produces:
- application/json
responses:
"200":
description: Информация о сборке
schema:
additionalProperties:
type: string
type: object
summary: Получить информацию о сборке
tags:
- system
/api/v1/integration/vkusvill/callback:
post:
consumes:
- application/json
description: Обработка callback запросов от интеграции с ВкусВилл
parameters:
- description: Данные callback от ВкусВилл
in: body
name: request
required: true
schema:
additionalProperties: true
type: object
produces:
- application/json
responses:
"200":
description: Callback обработан
schema:
additionalProperties:
type: string
type: object
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
summary: Callback интеграции с ВкусВилл
tags:
- integration
/api/v1/login:
post:
consumes:
- application/json
description: Аутентификация пользователя по email и паролю
parameters:
- description: Данные для входа
in: body
name: request
required: true
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.LoginUserRequest'
produces:
- application/json
responses:
"200":
description: Успешная аутентификация
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.LoginUserResponse'
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неверные учетные данные
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
summary: Вход пользователя
tags:
- auth
/api/v1/logout:
post:
consumes:
- application/json
description: Завершение сессии пользователя
parameters:
- description: Токен для выхода
in: body
name: request
required: true
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.LogoutUserRequest'
produces:
- application/json
responses:
"200":
description: Успешный выход
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неверный токен
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
summary: Выход пользователя
tags:
- auth
/api/v1/refresh-token:
post:
consumes:
- application/json
description: Получение нового access token по refresh token
parameters:
- description: Refresh token
in: body
name: request
required: true
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.RefreshTokenRequest'
produces:
- application/json
responses:
"200":
description: Новые токены
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.RefreshTokenResponse'
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"401":
description: Неверный refresh token
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
summary: Обновление токена доступа
tags:
- auth
/api/v1/register:
post:
consumes:
- application/json
description: Создание нового пользователя в системе
parameters:
- description: Данные для регистрации
in: body
name: request
required: true
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.UserCredentials'
produces:
- application/json
responses:
"201":
description: Пользователь успешно создан
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.RegisterResponse'
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"409":
description: Пользователь уже существует
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
summary: Регистрация пользователя
tags:
- auth
/api/v1/reset_password:
put:
consumes:
- application/json
description: Установка нового пароля после валидации OTP кода
parameters:
- description: Данные для сброса пароля
in: body
name: request
required: true
schema:
$ref: '#/definitions/git-molva_ru_Molva_molva-backend_services_api_gateway_internal_request_model.ResetPasswordRequest'
produces:
- application/json
responses:
"200":
description: Пароль успешно изменен
schema:
additionalProperties:
type: string
type: object
"400":
description: Неверные данные запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
summary: Сброс пароля
tags:
- auth
/api/v1/validate_otp:
get:
consumes:
- application/json
description: Проверка OTP кода для восстановления пароля
parameters:
- description: OTP код
in: query
name: otp
required: true
type: string
- description: Email пользователя
in: query
name: email
required: true
type: string
produces:
- application/json
responses:
"200":
description: OTP код валиден
schema:
additionalProperties:
type: string
type: object
"400":
description: Неверные параметры запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
summary: Валидация OTP кода
tags:
- auth
/api/v1/verify_email:
get:
consumes:
- application/json
description: Получение статуса подтверждения email адреса пользователя
parameters:
- description: ID пользователя
in: query
name: uid
required: true
type: string
produces:
- application/json
responses:
"200":
description: Статус подтверждения email
schema:
additionalProperties:
type: string
type: object
"400":
description: Неверные параметры запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
summary: Статус подтверждения email
tags:
- auth
patch:
consumes:
- application/json
description: Подтверждение email адреса пользователя по токену
parameters:
- description: ID пользователя
in: query
name: uid
required: true
type: string
- description: Токен подтверждения
in: query
name: token
required: true
type: string
produces:
- application/json
responses:
"200":
description: Email успешно подтвержден
schema:
additionalProperties:
type: string
type: object
"400":
description: Неверные параметры запроса
schema:
additionalProperties:
type: string
type: object
"500":
description: Внутренняя ошибка сервера
schema:
additionalProperties:
type: string
type: object
summary: Подтверждение email
tags:
- auth
schemes:
- http
- https
securityDefinitions:
BearerAuth:
description: Type "Bearer" followed by a space and JWT token.
in: header
name: Authorization
type: apiKey
swagger: "2.0"