Add Company Profile Retrieval Endpoint and Update API Documentation

- Introduced a new public API endpoint to retrieve the profile of the authenticated user's company, enhancing the functionality of the tender management system.
- Implemented the `MyCompany` method in the company handler to handle requests for the company profile, ensuring proper authentication and error handling.
- Updated Swagger and YAML documentation to accurately reflect the new endpoint, including detailed descriptions, parameters, and response formats for the `CompanyProfileResponse`.
- Modified the router to include the new company profile route, ensuring adherence to Clean Architecture principles and maintaining a clear separation of concerns in the handler layer.
- Enhanced the public routes registration to include the company handler, improving the overall API structure and usability.
This commit is contained in:
n.nakhostin
2025-08-20 12:14:14 +03:30
parent e292839732
commit 843ae22515
7 changed files with 267 additions and 2 deletions
+48
View File
@@ -78,6 +78,23 @@ definitions:
total_pages:
type: integer
type: object
company.CompanyProfileResponse:
properties:
country:
type: string
created_at:
type: integer
founded_year:
type: integer
id:
type: string
industry:
type: string
name:
type: string
registration_number:
type: string
type: object
company.CompanyResponse:
properties:
address:
@@ -4501,6 +4518,37 @@ paths:
summary: Get users by role
tags:
- Admin-Users
/api/v1/companies:
get:
consumes:
- application/json
description: Retrieve the profile of the company associated with the authenticated
user
produces:
- application/json
responses:
"200":
description: Company retrieved successfully
schema:
allOf:
- $ref: '#/definitions/response.APIResponse'
- properties:
data:
$ref: '#/definitions/company.CompanyProfileResponse'
type: object
"401":
description: Unauthorized - User not authenticated
schema:
$ref: '#/definitions/response.APIResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/response.APIResponse'
security:
- BearerAuth: []
summary: Get my company profile
tags:
- Company
/api/v1/feedback:
get:
consumes: