3a51305343
- six REST endpoints (auth/request_otp, verify_otp, refresh, logout, me, me/select_role) wrapping the existing JWE/TOTP/RBAC engine - usr.UserSessions with refresh-token rotation + stolen-token (replay) detection → revoke-all + 401; logout rotates the security stamp - users extended: gender, national_id (enc, NULL until KYC), shahkar_verified_at (auto-reset on phone change), phone_hash UNIQUE, is_active, deleted_at + soft-delete filter; phone/email/national_id encrypted at rest via IFieldEncryptor value converter - user_roles grant/revoke audit trail + global revoked filter; 7 roles seeded; admin sub-roles never self-assignable (403) - ISmsSender seam (mock logs the OTP code) replaces the TODO log lines - OperationResult/BaseController learned enveloped 401/403 - auth knobs as platform_configs rows (resend/attempts/session TTL) - migration IdentitySessionsAndUserExtensions applied to the dev DB - 24 new tests incl. Baya.Test.Api (WebApplicationFactory over SQLite); 47 total green, zero new build warnings; swagger snapshot + contract (identity-auth.md), handoff, report, mocks-registry updated Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2673 lines
65 KiB
JSON
2673 lines
65 KiB
JSON
{
|
|
"x-generator": "NSwag v14.7.1.0 (NJsonSchema v11.6.1.0 (Newtonsoft.Json v13.0.0.0))",
|
|
"openapi": "3.0.0",
|
|
"info": {
|
|
"title": "Clean Architecture OpenAPI docs",
|
|
"version": "v1"
|
|
},
|
|
"servers": [
|
|
{
|
|
"url": "http://localhost:5188"
|
|
}
|
|
],
|
|
"paths": {
|
|
"/api/v1/audit/get_audit_trail": {
|
|
"get": {
|
|
"tags": [
|
|
"Audit"
|
|
],
|
|
"operationId": "Audit_GetAuditTrail",
|
|
"parameters": [
|
|
{
|
|
"name": "EntityType",
|
|
"in": "query",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "EntityId",
|
|
"in": "query",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "Page",
|
|
"in": "query",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "PageSize",
|
|
"in": "query",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"x-position": 4
|
|
}
|
|
],
|
|
"responses": {
|
|
"400": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfDictionaryOfStringAndListOfString"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfPagedResultOfAuditLogDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/auth/request_otp": {
|
|
"post": {
|
|
"tags": [
|
|
"Auth"
|
|
],
|
|
"operationId": "Auth_RequestOtp",
|
|
"requestBody": {
|
|
"x-name": "command",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RequestOtpCommand"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 1
|
|
},
|
|
"responses": {
|
|
"400": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfDictionaryOfStringAndListOfString"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfRequestOtpResult"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/auth/verify_otp": {
|
|
"post": {
|
|
"tags": [
|
|
"Auth"
|
|
],
|
|
"operationId": "Auth_VerifyOtp",
|
|
"requestBody": {
|
|
"x-name": "command",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/VerifyOtpCommand"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 1
|
|
},
|
|
"responses": {
|
|
"400": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfDictionaryOfStringAndListOfString"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfAuthTokensResult"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/auth/refresh": {
|
|
"post": {
|
|
"tags": [
|
|
"Auth"
|
|
],
|
|
"operationId": "Auth_Refresh",
|
|
"requestBody": {
|
|
"x-name": "command",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RefreshTokenCommand"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 1
|
|
},
|
|
"responses": {
|
|
"400": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfDictionaryOfStringAndListOfString"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfAuthTokensResult"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"bearer": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/auth/logout": {
|
|
"post": {
|
|
"tags": [
|
|
"Auth"
|
|
],
|
|
"operationId": "Auth_Logout",
|
|
"requestBody": {
|
|
"x-name": "command",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/LogoutCommand"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 1
|
|
},
|
|
"responses": {
|
|
"400": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfDictionaryOfStringAndListOfString"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/holidays/get_holidays": {
|
|
"get": {
|
|
"tags": [
|
|
"Holidays"
|
|
],
|
|
"summary": "Returns all Holidays",
|
|
"operationId": "Holidays_GetHolidays",
|
|
"parameters": [
|
|
{
|
|
"name": "From",
|
|
"in": "query",
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "date",
|
|
"nullable": true
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "To",
|
|
"in": "query",
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "date",
|
|
"nullable": true
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "Page",
|
|
"in": "query",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "PageSize",
|
|
"in": "query",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"x-position": 4
|
|
}
|
|
],
|
|
"responses": {
|
|
"400": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfDictionaryOfStringAndListOfString"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfPagedResultOfHolidayDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/holidays/upsert_holiday": {
|
|
"post": {
|
|
"tags": [
|
|
"Holidays"
|
|
],
|
|
"operationId": "Holidays_UpsertHoliday",
|
|
"requestBody": {
|
|
"x-name": "command",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UpsertHolidayCommand"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 1
|
|
},
|
|
"responses": {
|
|
"400": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfDictionaryOfStringAndListOfString"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/holidays/delete_holiday": {
|
|
"post": {
|
|
"tags": [
|
|
"Holidays"
|
|
],
|
|
"summary": "Deletes a Holiday by unique id",
|
|
"operationId": "Holidays_DeleteHoliday",
|
|
"requestBody": {
|
|
"x-name": "command",
|
|
"description": "A unique id for the Holiday",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/DeleteHolidayCommand"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 1
|
|
},
|
|
"responses": {
|
|
"400": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfDictionaryOfStringAndListOfString"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/me": {
|
|
"get": {
|
|
"tags": [
|
|
"Me"
|
|
],
|
|
"summary": "Retrieves a Me by unique id",
|
|
"operationId": "Me_GetMe",
|
|
"responses": {
|
|
"400": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfDictionaryOfStringAndListOfString"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfMeResult"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/me/select_role": {
|
|
"post": {
|
|
"tags": [
|
|
"Me"
|
|
],
|
|
"description": "Role claims live inside the access token — after selecting a role the client should\n refresh its tokens to pick the new role up.",
|
|
"operationId": "Me_SelectRole",
|
|
"requestBody": {
|
|
"x-name": "command",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SelectRoleCommand"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 1
|
|
},
|
|
"responses": {
|
|
"400": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfDictionaryOfStringAndListOfString"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfMeResult"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/notifications/get_notifications": {
|
|
"get": {
|
|
"tags": [
|
|
"Notifications"
|
|
],
|
|
"summary": "Returns all Notifications",
|
|
"operationId": "Notifications_GetNotifications",
|
|
"parameters": [
|
|
{
|
|
"name": "Page",
|
|
"in": "query",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "PageSize",
|
|
"in": "query",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"400": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfDictionaryOfStringAndListOfString"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfPagedResultOfNotificationDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/notifications/get_unread_count": {
|
|
"get": {
|
|
"tags": [
|
|
"Notifications"
|
|
],
|
|
"operationId": "Notifications_GetUnreadCount",
|
|
"responses": {
|
|
"400": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfDictionaryOfStringAndListOfString"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfUnreadCountResult"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/notifications/mark_notification_read": {
|
|
"post": {
|
|
"tags": [
|
|
"Notifications"
|
|
],
|
|
"operationId": "Notifications_MarkNotificationRead",
|
|
"requestBody": {
|
|
"x-name": "command",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/MarkNotificationReadCommand"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 1
|
|
},
|
|
"responses": {
|
|
"400": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfDictionaryOfStringAndListOfString"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/notifications/mark_all_read": {
|
|
"post": {
|
|
"tags": [
|
|
"Notifications"
|
|
],
|
|
"operationId": "Notifications_MarkAllRead",
|
|
"responses": {
|
|
"400": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfDictionaryOfStringAndListOfString"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/ping/get_status": {
|
|
"get": {
|
|
"tags": [
|
|
"Ping"
|
|
],
|
|
"operationId": "Ping_GetStatus",
|
|
"responses": {
|
|
"400": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfDictionaryOfStringAndListOfString"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfPingQueryResult"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/ping/get_status_rate_limited": {
|
|
"get": {
|
|
"tags": [
|
|
"Ping"
|
|
],
|
|
"operationId": "Ping_GetStatusRateLimited",
|
|
"responses": {
|
|
"400": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfDictionaryOfStringAndListOfString"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfPingQueryResult"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/platform_config/get_platform_configs": {
|
|
"get": {
|
|
"tags": [
|
|
"PlatformConfig"
|
|
],
|
|
"summary": "Returns all PlatformConfigs",
|
|
"operationId": "PlatformConfig_GetPlatformConfigs",
|
|
"parameters": [
|
|
{
|
|
"name": "Page",
|
|
"in": "query",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "PageSize",
|
|
"in": "query",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"400": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfDictionaryOfStringAndListOfString"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfPagedResultOfPlatformConfigDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/platform_config/update_platform_config": {
|
|
"post": {
|
|
"tags": [
|
|
"PlatformConfig"
|
|
],
|
|
"summary": "Updates a PlatformConfig by unique id",
|
|
"operationId": "PlatformConfig_UpdatePlatformConfig",
|
|
"requestBody": {
|
|
"x-name": "command",
|
|
"description": "A PlatformConfig representation",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UpdatePlatformConfigCommand"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 1
|
|
},
|
|
"responses": {
|
|
"400": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfDictionaryOfStringAndListOfString"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/platform_config/get_config_change_history": {
|
|
"get": {
|
|
"tags": [
|
|
"PlatformConfig"
|
|
],
|
|
"operationId": "PlatformConfig_GetConfigChangeHistory",
|
|
"parameters": [
|
|
{
|
|
"name": "Key",
|
|
"in": "query",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "Page",
|
|
"in": "query",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "PageSize",
|
|
"in": "query",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"x-position": 3
|
|
}
|
|
],
|
|
"responses": {
|
|
"400": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfDictionaryOfStringAndListOfString"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfPagedResultOfConfigChangeDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/support_alerts/get_support_alerts": {
|
|
"get": {
|
|
"tags": [
|
|
"SupportAlerts"
|
|
],
|
|
"summary": "Returns all SupportAlerts",
|
|
"operationId": "SupportAlerts_GetSupportAlerts",
|
|
"parameters": [
|
|
{
|
|
"name": "Type",
|
|
"in": "query",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "Status",
|
|
"in": "query",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "OwnerUserId",
|
|
"in": "query",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "Page",
|
|
"in": "query",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"x-position": 4
|
|
},
|
|
{
|
|
"name": "PageSize",
|
|
"in": "query",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"x-position": 5
|
|
}
|
|
],
|
|
"responses": {
|
|
"400": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfDictionaryOfStringAndListOfString"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfPagedResultOfSupportAlertDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/support_alerts/assign_support_alert": {
|
|
"post": {
|
|
"tags": [
|
|
"SupportAlerts"
|
|
],
|
|
"operationId": "SupportAlerts_AssignSupportAlert",
|
|
"requestBody": {
|
|
"x-name": "command",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AssignSupportAlertCommand"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 1
|
|
},
|
|
"responses": {
|
|
"400": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfDictionaryOfStringAndListOfString"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/support_alerts/resolve_support_alert": {
|
|
"post": {
|
|
"tags": [
|
|
"SupportAlerts"
|
|
],
|
|
"operationId": "SupportAlerts_ResolveSupportAlert",
|
|
"requestBody": {
|
|
"x-name": "command",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ResolveSupportAlertCommand"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 1
|
|
},
|
|
"responses": {
|
|
"400": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResultOfDictionaryOfStringAndListOfString"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"components": {
|
|
"schemas": {
|
|
"ApiResultOfDictionaryOfStringAndListOfString": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"data": {
|
|
"type": "object",
|
|
"nullable": true,
|
|
"additionalProperties": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"ApiResult": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"isSuccess": {
|
|
"type": "boolean"
|
|
},
|
|
"statusCode": {
|
|
"$ref": "#/components/schemas/ApiResultStatusCode"
|
|
},
|
|
"message": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"requestId": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"ApiResultStatusCode": {
|
|
"type": "integer",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Success",
|
|
"BadRequest",
|
|
"UnAuthorized",
|
|
"Forbidden",
|
|
"NotFound",
|
|
"NotAcceptable",
|
|
"EntityProcessError",
|
|
"FailedDependency",
|
|
"ServerError"
|
|
],
|
|
"enum": [
|
|
200,
|
|
400,
|
|
401,
|
|
403,
|
|
404,
|
|
406,
|
|
422,
|
|
424,
|
|
500
|
|
]
|
|
},
|
|
"ApiResultOfPagedResultOfAuditLogDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"data": {
|
|
"nullable": true,
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/components/schemas/PagedResultOfAuditLogDto"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"PagedResultOfAuditLogDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"items": {
|
|
"type": "array",
|
|
"nullable": true,
|
|
"items": {
|
|
"$ref": "#/components/schemas/AuditLogDto"
|
|
}
|
|
},
|
|
"total": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"page": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"pageSize": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
},
|
|
"AuditLogDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"entityType": {
|
|
"type": "string"
|
|
},
|
|
"entityId": {
|
|
"type": "string"
|
|
},
|
|
"action": {
|
|
"type": "string"
|
|
},
|
|
"changedFieldsJson": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"actorUserId": {
|
|
"type": "integer",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"occurredAt": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
},
|
|
"ApiResultOfRequestOtpResult": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"data": {
|
|
"nullable": true,
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RequestOtpResult"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"RequestOtpResult": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"otpSent": {
|
|
"type": "boolean"
|
|
},
|
|
"resendAvailableInSeconds": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
},
|
|
"RequestOtpCommand": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"phone": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"ApiResultOfAuthTokensResult": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"data": {
|
|
"nullable": true,
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/components/schemas/AuthTokensResult"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"AuthTokensResult": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"accessToken": {
|
|
"type": "string"
|
|
},
|
|
"refreshToken": {
|
|
"type": "string"
|
|
},
|
|
"accessExpiresAt": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"refreshExpiresAt": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"isNewUser": {
|
|
"type": "boolean"
|
|
},
|
|
"roles": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"VerifyOtpCommand": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"code": {
|
|
"type": "string"
|
|
},
|
|
"deviceInfo": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"RefreshTokenCommand": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"refreshToken": {
|
|
"type": "string"
|
|
},
|
|
"deviceInfo": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"LogoutCommand": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"refreshToken": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"everywhere": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"ApiResultOfPagedResultOfHolidayDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"data": {
|
|
"nullable": true,
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/components/schemas/PagedResultOfHolidayDto"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"PagedResultOfHolidayDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"items": {
|
|
"type": "array",
|
|
"nullable": true,
|
|
"items": {
|
|
"$ref": "#/components/schemas/HolidayDto"
|
|
}
|
|
},
|
|
"total": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"page": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"pageSize": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
},
|
|
"HolidayDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"holidayDate": {
|
|
"type": "string",
|
|
"format": "date"
|
|
},
|
|
"nameFa": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"isBankClosed": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"UpsertHolidayCommand": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"holidayDate": {
|
|
"type": "string",
|
|
"format": "date"
|
|
},
|
|
"nameFa": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"isBankClosed": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"DeleteHolidayCommand": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"holidayDate": {
|
|
"type": "string",
|
|
"format": "date"
|
|
}
|
|
}
|
|
},
|
|
"ApiResultOfMeResult": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"data": {
|
|
"nullable": true,
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/components/schemas/MeResult"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"MeResult": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"firstName": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"lastName": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"gender": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"isActive": {
|
|
"type": "boolean"
|
|
},
|
|
"roles": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"hasCustomerProfile": {
|
|
"type": "boolean"
|
|
},
|
|
"hasNurseProfile": {
|
|
"type": "boolean"
|
|
},
|
|
"nurseVerificationStatus": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"SelectRoleCommand": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"role": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"ApiResultOfPagedResultOfNotificationDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"data": {
|
|
"nullable": true,
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/components/schemas/PagedResultOfNotificationDto"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"PagedResultOfNotificationDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"items": {
|
|
"type": "array",
|
|
"nullable": true,
|
|
"items": {
|
|
"$ref": "#/components/schemas/NotificationDto"
|
|
}
|
|
},
|
|
"total": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"page": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"pageSize": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
},
|
|
"NotificationDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"body": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"dataJson": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"isRead": {
|
|
"type": "boolean"
|
|
},
|
|
"readAt": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"nullable": true
|
|
},
|
|
"createdAt": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
},
|
|
"ApiResultOfUnreadCountResult": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"data": {
|
|
"nullable": true,
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/components/schemas/UnreadCountResult"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"UnreadCountResult": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"count": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
},
|
|
"MarkNotificationReadCommand": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"notificationId": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
}
|
|
},
|
|
"ApiResultOfPingQueryResult": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"data": {
|
|
"nullable": true,
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/components/schemas/PingQueryResult"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"PingQueryResult": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"service": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"status": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"serverTimeUtc": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
},
|
|
"ApiResultOfPagedResultOfPlatformConfigDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"data": {
|
|
"nullable": true,
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/components/schemas/PagedResultOfPlatformConfigDto"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"PagedResultOfPlatformConfigDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"items": {
|
|
"type": "array",
|
|
"nullable": true,
|
|
"items": {
|
|
"$ref": "#/components/schemas/PlatformConfigDto"
|
|
}
|
|
},
|
|
"total": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"page": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"pageSize": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
},
|
|
"PlatformConfigDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"key": {
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"type": "string"
|
|
},
|
|
"dataType": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"UpdatePlatformConfigCommand": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"key": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"value": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"ApiResultOfPagedResultOfConfigChangeDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"data": {
|
|
"nullable": true,
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/components/schemas/PagedResultOfConfigChangeDto"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"PagedResultOfConfigChangeDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"items": {
|
|
"type": "array",
|
|
"nullable": true,
|
|
"items": {
|
|
"$ref": "#/components/schemas/ConfigChangeDto"
|
|
}
|
|
},
|
|
"total": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"page": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"pageSize": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
},
|
|
"ConfigChangeDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"action": {
|
|
"type": "string"
|
|
},
|
|
"changedFieldsJson": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"actorUserId": {
|
|
"type": "integer",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"occurredAt": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
},
|
|
"ApiResultOfPagedResultOfSupportAlertDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/ApiResult"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"data": {
|
|
"nullable": true,
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/components/schemas/PagedResultOfSupportAlertDto"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"PagedResultOfSupportAlertDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"items": {
|
|
"type": "array",
|
|
"nullable": true,
|
|
"items": {
|
|
"$ref": "#/components/schemas/SupportAlertDto"
|
|
}
|
|
},
|
|
"total": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"page": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"pageSize": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
},
|
|
"SupportAlertDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
},
|
|
"severity": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"entityType": {
|
|
"type": "string"
|
|
},
|
|
"entityId": {
|
|
"type": "string"
|
|
},
|
|
"bookingId": {
|
|
"type": "integer",
|
|
"format": "int64",
|
|
"nullable": true
|
|
},
|
|
"reviewId": {
|
|
"type": "integer",
|
|
"format": "int64",
|
|
"nullable": true
|
|
},
|
|
"ownerUserId": {
|
|
"type": "integer",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"resolutionNote": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"resolvedAt": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"nullable": true
|
|
},
|
|
"createdAt": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
},
|
|
"AssignSupportAlertCommand": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"alertId": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"ownerUserId": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
},
|
|
"ResolveSupportAlertCommand": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"alertId": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"note": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"securitySchemes": {
|
|
"Bearer": {
|
|
"type": "http",
|
|
"description": "Enter JWT Token ONLY",
|
|
"name": "Authorization",
|
|
"in": "header",
|
|
"scheme": "Bearer"
|
|
}
|
|
}
|
|
}
|
|
} |