{"openapi":"3.1.0","info":{"title":"Image Portal User API","description":"API for user management in the Image Portal","version":"1.0.0"},"servers":[{"url":"https://user.api.im.test.ntb.dev","description":"Server URL in Test environment"}],"security":[{"bearerAuth":[]}],"tags":[{"name":"Enterprise Organization Controller","description":"Manage enterprise organizations"},{"name":"Workspace Roles","description":"Manage roles and permissions for workspaces"},{"name":"Enterprise Organization Domains","description":"Manage email domain mappings for enterprise organizations"},{"name":"Workspaces Controller","description":"Manage workspaces and workspace user assignments"},{"name":"User API","description":"Operations related to users"},{"name":"Enterprise Organization Roles","description":"Manage roles and permissions for enterprise organizations"},{"name":"Tenant Controller","description":"Manage tenants and tenant users"},{"name":"Permission Controller","description":"Manage permissions and permission synchronization"},{"name":"Tenant Roles Controller","description":"Manage roles and permissions for tenants"},{"name":"Enterprise Organization Identity Provider Controller","description":"Manage identity providers for enterprise organizations"},{"name":"Identity Provider Controller","description":"Manage identity providers and check their status"}],"paths":{"/api/v1/workspaces/{workspaceId}/users/{userId}":{"put":{"tags":["Workspaces Controller"],"summary":"Update a user in workspace","description":"Update the role of a user in a workspace.","operationId":"updateUserInWorkspace","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchUserInWorkspaceRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/GetResponseUserRoleDto"}}}}},"deprecated":true},"delete":{"tags":["Workspaces Controller"],"summary":"Remove a user from workspace","description":"Remove a user from a workspace by their user ID.","operationId":"removeUser","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"type":"string"}}}}}}},"/api/v1/workspaces":{"get":{"tags":["Workspaces Controller"],"summary":"Find workspaces","description":"Find workspaces based on search criteria with pagination.","operationId":"findWorkspaces","parameters":[{"name":"name","in":"query","description":"Name of the workspace","required":false,"schema":{"type":"string"},"example":"Development Workspace"},{"name":"enterpriseOrganizationId","in":"query","description":"ID of the enterprise organization","required":false,"schema":{"type":"string","format":"uuid"},"example":"123e4567-e89b-12d3-a456-426614174000"},{"name":"tenantId","in":"query","description":"ID of the tenant","required":false,"schema":{"type":"string","format":"uuid"},"example":"123e4567-e89b-12d3-a456-426614174000"},{"name":"userId","in":"query","description":"ID of the user","required":false,"schema":{"type":"string","format":"uuid"},"example":"123e4567-e89b-12d3-a456-426614174000"},{"name":"page","in":"query","description":"Page number","required":false,"schema":{"type":"integer","format":"int32"},"example":1},{"name":"limit","in":"query","description":"Number of items per page","required":false,"schema":{"type":"integer","format":"int32"},"example":10},{"name":"sortDirection","in":"query","description":"Sort direction","required":false,"schema":{"type":"string","enum":["ASC","DESC"]},"example":"ASC"},{"name":"sortBy","in":"query","description":"Sort by field","required":false,"schema":{"type":"string"},"example":"name"}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListResponseWorkspaceDto"}}}}}},"post":{"tags":["Workspaces Controller"],"summary":"Create a new workspace","description":"Creates a new workspace with the provided details.","operationId":"createWorkspace","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWorkspaceRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetResponseWorkspaceDto"}}}}},"deprecated":true}},"/api/v1/workspaces/{workspaceId}/users":{"get":{"tags":["Workspaces Controller"],"summary":"Get users in a workspace","description":"Get a paginated list of users who belong to a specific workspace.","operationId":"getWorkspaceUsers","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"name","in":"query","description":"Partial or full Name of the user to search for.","required":false,"schema":{"type":"string"}},{"name":"email","in":"query","description":"Email of the user to search for.","required":false,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Page","required":false,"schema":{"type":"integer","format":"int32","minimum":1},"example":1},{"name":"limit","in":"query","description":"The maximum number of results to return. Default is 50. Max is 200.","required":false,"schema":{"type":"integer","format":"int32","maximum":200,"minimum":0},"example":50},{"name":"sortBy","in":"query","description":"Column to sort by.","required":false,"schema":{"type":"string"},"example":"lastActivityAt"},{"name":"sortDirection","in":"query","description":"Sort direction. Must be one of: DESC, ASC.","required":false,"schema":{"type":"string","enum":["ASC","DESC"]},"example":"DESC"},{"name":"operator","in":"query","description":"What mode to use when filtering. Must be one of: AND, OR.","required":false,"schema":{"type":"string","enum":["AND","OR"]},"example":"AND"}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListResponseUserWithRole"}}}}}},"post":{"tags":["Workspaces Controller"],"summary":"Add a user to workspace","description":"Assign a user to a workspace with a specific role.","operationId":"addUserToWorkspace","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddUserInWorkspaceRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK"}}}},"/api/v1/workspaces/{workspaceId}/users/{userId}/roles":{"get":{"tags":["Workspace Roles"],"summary":"Get user roles","description":"Returns all roles assigned to a user in the workspace","operationId":"getWorkspaceUserRoles","parameters":[{"name":"workspaceId","in":"path","description":"Workspace ID","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"userId","in":"path","description":"User ID","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"Successfully retrieved user roles","content":{"*/*":{"schema":{"$ref":"#/components/schemas/GetResponseSetRoleDto"}}}}}},"post":{"tags":["Workspace Roles"],"summary":"Assign role to user","description":"Assigns a role to a user in the workspace","operationId":"assignWorkspaceRoleToUser","parameters":[{"name":"workspaceId","in":"path","description":"Workspace ID","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"userId","in":"path","description":"User ID","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModifyRoleRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"Role assigned successfully"}}},"delete":{"tags":["Workspace Roles"],"summary":"Remove role from user","description":"Removes a role from a user in the workspace","operationId":"removeWorkspaceRoleFromUser","parameters":[{"name":"workspaceId","in":"path","description":"Workspace ID","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"userId","in":"path","description":"User ID","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModifyRoleRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"204":{"description":"Role removed successfully"}}}},"/api/v1/workspaces/{workspaceId}/roles":{"get":{"tags":["Workspace Roles"],"summary":"List workspace roles","description":"Returns all roles for the specified workspace","operationId":"listWorkspaceRoles","parameters":[{"name":"workspaceId","in":"path","description":"Workspace ID","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"User is not authorized to access this workspace","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"Successfully retrieved roles","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetResponseListRoleDto"}}}}}},"post":{"tags":["Workspace Roles"],"summary":"Create workspace role","description":"Creates a new role for the specified workspace","operationId":"createWorkspaceRole","parameters":[{"name":"workspaceId","in":"path","description":"Workspace ID","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomRoleRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"User is not authorized to create a role in this workspace","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"Role created successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetResponseRoleDto"}}}}}}},"/api/v1/workspaces/{workspaceId}/roles/{roleId}/permissions":{"get":{"tags":["Workspace Roles"],"summary":"Get role permissions","description":"Returns all permissions assigned to a specific role","operationId":"getWorkspaceRolePermissions","parameters":[{"name":"workspaceId","in":"path","description":"Workspace ID","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"roleId","in":"path","description":"Role ID","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"page","in":"query","description":"Page number","required":false,"schema":{"type":"integer","format":"int32","default":0},"example":0},{"name":"size","in":"query","description":"Page size","required":false,"schema":{"type":"integer","format":"int32","default":50},"example":50}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Role not found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"Successfully retrieved permissions","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ListResponsePermissionDto"}}}}}},"post":{"tags":["Workspace Roles"],"summary":"Add permissions to role","description":"Adds permissions to a workspace role","operationId":"addWorkspaceRolePermissions","parameters":[{"name":"workspaceId","in":"path","description":"Workspace ID","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"roleId","in":"path","description":"Role ID","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModifyPermissionRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Role not found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"Permissions added successfully","content":{"*/*":{"schema":{"type":"string"}}}}}},"delete":{"tags":["Workspace Roles"],"summary":"Remove permissions from role","description":"Removes permissions from a workspace role","operationId":"removeWorkspaceRolePermissions","parameters":[{"name":"workspaceId","in":"path","description":"Workspace ID","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"roleId","in":"path","description":"Role ID","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModifyPermissionRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Role not found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"204":{"description":"Permissions removed successfully"}}}},"/api/v1/tenants":{"get":{"tags":["Tenant Controller"],"summary":"Find tenants","description":"Find tenants based on search criteria with pagination.","operationId":"findTenants","parameters":[{"name":"name","in":"query","description":"Name of the tenant","required":false,"schema":{"type":"string"},"example":"NTB"},{"name":"auth0OrganizationId","in":"query","description":"Auth0 Organization ID","required":false,"schema":{"type":"string"},"example":"org_aBcdEFGH12345678"},{"name":"includeContact","in":"query","description":"Include the customer service contact details of each tenant.","required":false,"schema":{"type":"boolean"}},{"name":"page","in":"query","description":"Page number","required":false,"schema":{"type":"integer","format":"int32"},"example":1},{"name":"limit","in":"query","description":"Number of items per page","required":false,"schema":{"type":"integer","format":"int32"},"example":10},{"name":"sortDirection","in":"query","description":"Sort direction","required":false,"schema":{"type":"string","enum":["ASC","DESC"]},"example":"ASC"},{"name":"sortBy","in":"query","description":"Sort by field","required":false,"schema":{"type":"string"},"example":"name"}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListResponseTenantDto"}}}}}},"post":{"tags":["Tenant Controller"],"summary":"Create a new tenant","description":"Create a new tenant with the provided details.","operationId":"createTenant","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTenantRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetResponseTenantDto"}}}}}}},"/api/v1/tenants/{tenantId}/workspaces":{"post":{"tags":["Tenant Controller"],"summary":"Create a new workspace under a tenant","description":"Creates a new workspace with the provided details.","operationId":"createWorkspace_1","parameters":[{"name":"tenantId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWorkspaceRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetResponseWorkspaceDto"}}}}}}},"/api/v1/tenants/{tenantId}/users/{userId}/roles":{"get":{"tags":["Tenant Roles Controller"],"summary":"Get user roles","description":"Returns all roles assigned to a user in the tenant","operationId":"getTenantUserRoles","parameters":[{"name":"tenantId","in":"path","description":"The ID of the tenant","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"userId","in":"path","description":"The ID of the user","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/GetResponseSetRoleDto"}}}}}},"post":{"tags":["Tenant Roles Controller"],"summary":"Assign role to user","description":"Assign a role to a specific user in a tenant.","operationId":"assignTenantRoleToUser","parameters":[{"name":"tenantId","in":"path","description":"The ID of the tenant","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"userId","in":"path","description":"The ID of the user","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModifyRoleRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK"}}},"delete":{"tags":["Tenant Roles Controller"],"summary":"Remove role from user","description":"Remove a role from a specific user in a tenant.","operationId":"removeTenantRoleFromUser","parameters":[{"name":"tenantId","in":"path","description":"The ID of the tenant","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"userId","in":"path","description":"The ID of the user","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModifyRoleRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK"}}}},"/api/v1/tenants/{tenantId}/roles":{"get":{"tags":["Tenant Roles Controller"],"summary":"List tenant roles","description":"Retrieve a list of all roles for a specific tenant.","operationId":"listTenantRoles","parameters":[{"name":"tenantId","in":"path","description":"The ID of the tenant","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetResponseListRoleDto"}}}}}},"post":{"tags":["Tenant Roles Controller"],"summary":"Create tenant role","description":"Create a new custom role for a specific tenant.","operationId":"createTenantRole","parameters":[{"name":"tenantId","in":"path","description":"The ID of the tenant","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomRoleRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetResponseRoleDto"}}}}}}},"/api/v1/tenants/{tenantId}/roles/{roleId}/permissions":{"get":{"tags":["Tenant Roles Controller"],"summary":"Get role permissions","description":"Retrieve permissions associated with a specific role in a tenant.","operationId":"getTenantRolePermissions","parameters":[{"name":"tenantId","in":"path","description":"The ID of the tenant","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"roleId","in":"path","description":"The ID of the role","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"page","in":"query","description":"Page number for pagination","required":false,"schema":{"type":"integer","format":"int32","default":0}},{"name":"size","in":"query","description":"Page size for pagination","required":false,"schema":{"type":"integer","format":"int32","default":50}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ListResponsePermissionDto"}}}}}},"post":{"tags":["Tenant Roles Controller"],"summary":"Add permissions to role","description":"Add one or more permissions to a specific role in a tenant.","operationId":"addTenantRolePermissions","parameters":[{"name":"tenantId","in":"path","description":"The ID of the tenant","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"roleId","in":"path","description":"The ID of the role","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModifyPermissionRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"type":"string"}}}}}},"delete":{"tags":["Tenant Roles Controller"],"summary":"Remove permissions from role","description":"Remove one or more permissions from a specific role in a tenant.","operationId":"removeTenantRolePermissions","parameters":[{"name":"tenantId","in":"path","description":"The ID of the tenant","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"roleId","in":"path","description":"The ID of the role","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModifyPermissionRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK"}}}},"/api/v1/permissions/clear-cache":{"post":{"tags":["Permission Controller"],"summary":"Clear cache","description":"Clear the permissions cache (for development/admin use).","operationId":"clearCache","responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/GetResponseString"}}}}}}},"/api/v1/identity-providers/{identityProviderId}/check-status":{"post":{"tags":["Identity Provider Controller"],"summary":"Check creation status","description":"Checks the creation status of a given identity provider.","operationId":"checkIdentityProviderStatus","parameters":[{"name":"identityProviderId","in":"path","description":"The ID of the identity provider","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetResponseIdentityProviderDto"}}}}}}},"/api/v1/enterprise-organizations":{"post":{"tags":["Enterprise Organization Controller"],"summary":"Create a new enterprise organization","description":"Creates a new enterprise organization with the provided details.","operationId":"createEnterpriseOrganization","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateEnterpriseOrganizationRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetResponseEnterpriseOrganizationDto"}}}}}}},"/api/v1/enterprise-organizations/{enterpriseOrganizationId}/identity-provider":{"post":{"tags":["Enterprise Organization Identity Provider Controller"],"summary":"Create identity provider","description":"Creates an identity provider for this enterprise organization.","operationId":"createEnterpriseOrganizationIdentityProvider","parameters":[{"name":"enterpriseOrganizationId","in":"path","description":"The ID of the enterprise organization","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetResponseIdentityProviderDto"}}}}}},"delete":{"tags":["Enterprise Organization Identity Provider Controller"],"summary":"Delete identity provider","description":"Delete this enterprise organization's identity provider.","operationId":"deleteEnterpriseOrganizationIdentityProvider","parameters":[{"name":"enterpriseOrganizationId","in":"path","description":"The ID of the enterprise organization","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetResponseString"}}}}}}},"/api/v1/enterprise-organizations/{enterpriseOrgId}/workspaces":{"post":{"tags":["Enterprise Organization Controller"],"summary":"Create a new workspace under an enterprise organization","description":"Creates a new workspace with the provided details.","operationId":"createWorkspace_2","parameters":[{"name":"enterpriseOrgId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWorkspaceRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetResponseWorkspaceDto"}}}}}}},"/api/v1/enterprise-organizations/{enterpriseOrgId}/users/{userId}/roles":{"get":{"tags":["Enterprise Organization Roles"],"summary":"Get user roles","description":"Returns all roles assigned to a user in the enterprise organization","operationId":"getEnterpriseOrgUserRoles","parameters":[{"name":"enterpriseOrgId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/GetResponseSetRoleDto"}}}}}},"post":{"tags":["Enterprise Organization Roles"],"summary":"Assign role to user","description":"Assigns a role to a user in the enterprise organization","operationId":"assignEnterpriseOrgRoleToUser","parameters":[{"name":"enterpriseOrgId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModifyRoleRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK"}}},"delete":{"tags":["Enterprise Organization Roles"],"summary":"Remove role from user","description":"Removes a role from a user in the enterprise organization","operationId":"removeEnterpriseOrgRoleFromUser","parameters":[{"name":"enterpriseOrgId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModifyRoleRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK"}}}},"/api/v1/enterprise-organizations/{enterpriseOrgId}/roles":{"get":{"tags":["Enterprise Organization Roles"],"summary":"List enterprise organization roles","description":"Returns all roles for the specified enterprise organization","operationId":"listEnterpriseOrgRoles","parameters":[{"name":"enterpriseOrgId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetResponseListRoleDto"}}}}}},"post":{"tags":["Enterprise Organization Roles"],"summary":"Create enterprise organization role","description":"Creates a new role for the specified enterprise organization","operationId":"createEnterpriseOrgRole","parameters":[{"name":"enterpriseOrgId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomRoleRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetResponseRoleDto"}}}}}}},"/api/v1/enterprise-organizations/{enterpriseOrgId}/roles/{roleId}/permissions":{"get":{"tags":["Enterprise Organization Roles"],"summary":"Get role permissions","description":"Returns all permissions assigned to a specific role","operationId":"getEnterpriseOrgRolePermissions","parameters":[{"name":"enterpriseOrgId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"roleId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":0}},{"name":"size","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":50}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ListResponsePermissionDto"}}}}}},"post":{"tags":["Enterprise Organization Roles"],"summary":"Add permissions to role","description":"Adds permissions to an enterprise organization role","operationId":"addEnterpriseOrgRolePermissions","parameters":[{"name":"enterpriseOrgId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"roleId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModifyPermissionRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"type":"string"}}}}}},"delete":{"tags":["Enterprise Organization Roles"],"summary":"Remove permissions from role","description":"Removes permissions from an enterprise organization role","operationId":"removeEnterpriseOrgRolePermissions","parameters":[{"name":"enterpriseOrgId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"roleId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModifyPermissionRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK"}}}},"/api/v1/enterprise-organizations/{enterpriseOrgId}/domains":{"get":{"tags":["Enterprise Organization Domains"],"summary":"List domains for enterprise organization","description":"Get all email domains associated with an enterprise organization","operationId":"listDomains","parameters":[{"name":"enterpriseOrgId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/GetResponseListEnterpriseOrganizationDomainDto"}}}}}},"post":{"tags":["Enterprise Organization Domains"],"summary":"Add domain to enterprise organization","description":"Add an email domain mapping to automatically assign users to this enterprise organization","operationId":"addDomain","parameters":[{"name":"enterpriseOrgId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddDomainRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/GetResponseEnterpriseOrganizationDomainDto"}}}}}}},"/api/v1/enterprise-organizations/{enterpriseOrgId}/domains/check-availability":{"post":{"tags":["Enterprise Organization Domains"],"summary":"Check domain availability","description":"Check if a domain is available for assignment","operationId":"checkDomainAvailability","parameters":[{"name":"enterpriseOrgId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddDomainRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/GetResponseBoolean"}}}}}}},"/api/v1/workspaces/{workspaceId}":{"get":{"tags":["Workspaces Controller"],"summary":"Get a workspace by ID","description":"Retrieve the details of a workspace by its ID.","operationId":"getWorkspaceById","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetResponseWorkspaceDto"}}}}}},"delete":{"tags":["Workspaces Controller"],"summary":"Delete a workspace by ID","description":"Delete a workspace by its ID.","operationId":"deleteWorkspaceById","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/GetResponseString"}}}}}},"patch":{"tags":["Workspaces Controller"],"summary":"Update a workspace","description":"Update the details of an existing workspace.","operationId":"patchWorkspace","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BasicWorkspaceInfo"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetResponseWorkspaceDto"}}}}}}},"/api/v1/workspaces/{workspaceId}/roles/{roleId}":{"get":{"tags":["Workspace Roles"],"summary":"Get workspace role","description":"Returns a specific role by ID from the workspace","operationId":"getWorkspaceRoleById","parameters":[{"name":"workspaceId","in":"path","description":"Workspace ID","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"roleId","in":"path","description":"Role ID","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Role not found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"Successfully retrieved role","content":{"*/*":{"schema":{"$ref":"#/components/schemas/GetResponseRoleDto"}}}}}},"delete":{"tags":["Workspace Roles"],"summary":"Delete workspace role","description":"Deletes a role from the workspace","operationId":"deleteWorkspaceRole","parameters":[{"name":"workspaceId","in":"path","description":"Workspace ID","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"roleId","in":"path","description":"Role ID","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Role not found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"Role deleted successfully","content":{"*/*":{"schema":{"type":"string"}}}}}},"patch":{"tags":["Workspace Roles"],"summary":"Update workspace role","description":"Updates an existing role in the workspace","operationId":"updateWorkspaceRole","parameters":[{"name":"workspaceId","in":"path","description":"Workspace ID","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"roleId","in":"path","description":"Role ID","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomRoleRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Role not found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"Role updated successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetResponseRoleDto"}}}}}}},"/api/v1/users/{userId}":{"get":{"tags":["User API"],"summary":"Get user by ID","description":"Retrieve a user by their unique ID","operationId":"getUser","parameters":[{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/GetResponseUserDto"}}}}}},"delete":{"tags":["User API"],"summary":"Delete user","description":"Delete a user by ID","operationId":"deleteUser","parameters":[{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK"}}},"patch":{"tags":["User API"],"summary":"Update user","description":"Update a user's information by their unique ID","operationId":"updateUser","parameters":[{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchUserRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/GetResponseUserDto"}}}}}}},"/api/v1/tenants/{tenantId}":{"get":{"tags":["Tenant Controller"],"summary":"Get a tenant by ID","description":"Retrieve the details of a tenant by its ID.","operationId":"getTenant","parameters":[{"name":"tenantId","in":"path","description":"The ID of the tenant","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"includeContact","in":"query","description":"Include the customer service contact details of the tenant.","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/GetResponseTenantDto"}}}}}},"delete":{"tags":["Tenant Controller"],"summary":"Delete a tenant","description":"Delete a tenant by its ID.","operationId":"deleteTenant","parameters":[{"name":"tenantId","in":"path","description":"The ID of the tenant","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/GetResponseString"}}}}}},"patch":{"tags":["Tenant Controller"],"summary":"Update a tenant","description":"Update the details of an existing tenant.","operationId":"patchTenant","parameters":[{"name":"tenantId","in":"path","description":"The ID of the tenant","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchTenantRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetResponseTenantDto"}}}}}}},"/api/v1/tenants/{tenantId}/roles/{roleId}":{"get":{"tags":["Tenant Roles Controller"],"summary":"Get tenant role by ID","description":"Retrieve a specific role by its ID for a tenant.","operationId":"getTenantRoleById","parameters":[{"name":"tenantId","in":"path","description":"The ID of the tenant","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"roleId","in":"path","description":"The ID of the role","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/GetResponseRoleDto"}}}}}},"patch":{"tags":["Tenant Roles Controller"],"summary":"Update tenant role","description":"Update an existing role for a specific tenant.","operationId":"updateTenantRole","parameters":[{"name":"tenantId","in":"path","description":"The ID of the tenant","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"roleId","in":"path","description":"The ID of the role","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomRoleRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetResponseRoleDto"}}}}}}},"/api/v1/enterprise-organizations/{enterpriseOrganizationId}":{"get":{"tags":["Enterprise Organization Controller"],"summary":"Get an enterprise organization by ID","description":"Retrieve the details of an enterprise organization by its ID.","operationId":"getEnterpriseOrganizationById","parameters":[{"name":"enterpriseOrganizationId","in":"path","description":"The ID of the enterprise organization","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetResponseEnterpriseOrganizationDto"}}}}}},"patch":{"tags":["Enterprise Organization Controller"],"summary":"Update an enterprise organization","description":"Update the details of an existing enterprise organization.","operationId":"patchEnterpriseOrganization","parameters":[{"name":"enterpriseOrganizationId","in":"path","description":"The ID of the enterprise organization","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchEnterpriseOrganizationRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetResponseEnterpriseOrganizationDto"}}}}}}},"/api/v1/enterprise-organizations/{enterpriseOrgId}/roles/{roleId}":{"get":{"tags":["Enterprise Organization Roles"],"summary":"Get enterprise organization role","description":"Returns a specific role by ID from the enterprise organization","operationId":"getEnterpriseOrgRoleById","parameters":[{"name":"enterpriseOrgId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"roleId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/GetResponseRoleDto"}}}}}},"delete":{"tags":["Enterprise Organization Roles"],"summary":"Delete enterprise organization role","description":"Deletes a role from the enterprise organization","operationId":"deleteEnterpriseOrgRole","parameters":[{"name":"enterpriseOrgId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"roleId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"type":"string"}}}}}},"patch":{"tags":["Enterprise Organization Roles"],"summary":"Update enterprise organization role","description":"Updates an existing role in the enterprise organization","operationId":"updateEnterpriseOrgRole","parameters":[{"name":"enterpriseOrgId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"roleId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomRoleRequest"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetResponseRoleDto"}}}}}}},"/api/v1/users":{"get":{"tags":["User API"],"summary":"Find users","description":"Retrieve a list of users based on search criteria","operationId":"findUsers","parameters":[{"name":"name","in":"query","description":"The name to filter by","required":false,"schema":{"type":"string"}},{"name":"auth0UserId","in":"query","description":"The auth0 user id to filter by","required":false,"schema":{"type":"string"}},{"name":"tenantId","in":"query","description":"The tenant id to filter by","required":false,"schema":{"type":"string","format":"uuid"}},{"name":"identityProviderId","in":"query","description":"The identity provider id to filter by","required":false,"schema":{"type":"string","format":"uuid"}},{"name":"enterpriseOrganizationId","in":"query","description":"The enterprise organization id to filter by","required":false,"schema":{"type":"string","format":"uuid"}},{"name":"email","in":"query","description":"The email address to filter by","required":false,"schema":{"type":"string","format":"email"}},{"name":"active","in":"query","description":"Whether the user's account is active","required":false,"schema":{"type":"boolean"}},{"name":"superadmin","in":"query","description":"Whether the user is a super admin","required":false,"schema":{"type":"boolean"}},{"name":"page","in":"query","description":"Page","required":false,"schema":{"type":"integer","format":"int32","minimum":1},"example":1},{"name":"limit","in":"query","description":"The maximum number of results to return. Default is 50. Max is 200.","required":false,"schema":{"type":"integer","format":"int32","maximum":200,"minimum":0},"example":50},{"name":"sortBy","in":"query","description":"Column to sort by.","required":false,"schema":{"type":"string"},"example":"lastActivityAt"},{"name":"sortDirection","in":"query","description":"Sort direction. Must be one of: DESC, ASC.","required":false,"schema":{"type":"string","enum":["ASC","DESC"]},"example":"DESC"},{"name":"operator","in":"query","description":"What mode to use when filtering. Must be one of: AND, OR.","required":false,"schema":{"type":"string","enum":["AND","OR"]},"example":"AND"}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ListResponseUserDto"}}}}},"deprecated":true}},"/api/v1/users/me":{"get":{"tags":["User API"],"summary":"Get current user","description":"Retrieve the currently authenticated user's information","operationId":"me","responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/GetResponseUserDetails"}}}}}}},"/api/v1/tenants/{tenantId}/users":{"get":{"tags":["Tenant Controller"],"summary":"List users of a tenant","description":"Retrieve a paginated list of users associated with a specific tenant.","operationId":"listTenantUsers","parameters":[{"name":"tenantId","in":"path","description":"The ID of the tenant.","required":true,"schema":{"type":"string","format":"uuid"},"example":"123e4567-e89b-12d3-a456-426614174000"},{"name":"name","in":"query","description":"Partial or full Name of the user to search for.","required":false,"schema":{"type":"string"}},{"name":"email","in":"query","description":"Email of the user to search for.","required":false,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Page","required":false,"schema":{"type":"integer","format":"int32","minimum":1},"example":1},{"name":"limit","in":"query","description":"The maximum number of results to return. Default is 50. Max is 200.","required":false,"schema":{"type":"integer","format":"int32","maximum":200,"minimum":0},"example":50},{"name":"sortBy","in":"query","description":"Column to sort by.","required":false,"schema":{"type":"string"},"example":"lastActivityAt"},{"name":"sortDirection","in":"query","description":"Sort direction. Must be one of: DESC, ASC.","required":false,"schema":{"type":"string","enum":["ASC","DESC"]},"example":"DESC"},{"name":"operator","in":"query","description":"What mode to use when filtering. Must be one of: AND, OR.","required":false,"schema":{"type":"string","enum":["AND","OR"]},"example":"AND"}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListResponseUserWithRole"}}}}}}},"/api/v1/tenants/{tenantId}/enterprise-organizations":{"get":{"tags":["Tenant Controller"],"summary":"List enterprise organizations of a tenant","description":"Retrieve a list of enterprise organizations associated with a specific tenant.","operationId":"listTenantEnterpriseOrganizations","parameters":[{"name":"tenantId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"name","in":"query","description":"Name of the enterprise organization","required":false,"schema":{"type":"string"},"example":"Development Enterprise Organization"},{"name":"identityProviderId","in":"query","description":"ID of the identity provider","required":false,"schema":{"type":"string","format":"uuid"},"example":"123e4567-e89b-12d3-a456-426614174000"},{"name":"page","in":"query","description":"Page number","required":false,"schema":{"type":"integer","format":"int32"},"example":1},{"name":"limit","in":"query","description":"Number of items per page","required":false,"schema":{"type":"integer","format":"int32"},"example":10},{"name":"sortDirection","in":"query","description":"Sort direction","required":false,"schema":{"type":"string","enum":["ASC","DESC"]},"example":"ASC"},{"name":"sortBy","in":"query","description":"Sort by field","required":false,"schema":{"type":"string"},"example":"name"}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListResponseEnterpriseOrganizationDto"}}}}}}},"/api/v1/permissions":{"get":{"tags":["Permission Controller"],"summary":"Get all permissions","description":"Retrieve all permissions, optionally filtered by entity type.","operationId":"getAllPermissions","parameters":[{"name":"entityType","in":"query","description":"Filter permissions by entity type","required":false,"schema":{"type":"string","enum":["USER","SYSTEM","SERVICE","USER_PROFILE","WORKSPACE","TENANT","ENTERPRISE_ORGANIZATION","PERMISSION","ROLE"]}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetResponseSetPermissionDto"}}}}}}},"/api/v1/permissions/sync":{"get":{"tags":["Permission Controller"],"summary":"Sync permissions","description":"Synchronize permissions from the system definitions.","operationId":"syncPermissions","responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"type":"string"}}}}}}},"/api/v1/enterprise-organizations/{enterpriseOrgId}/users":{"get":{"tags":["Enterprise Organization Controller"],"summary":"List users in an enterprise organization","description":"List all users associated with a specific enterprise organization.","operationId":"listUsersInEnterpriseOrganization","parameters":[{"name":"enterpriseOrgId","in":"path","description":"Enterprise organization id","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"name","in":"query","description":"Partial or full Name of the user to search for.","required":false,"schema":{"type":"string"}},{"name":"email","in":"query","description":"Email of the user to search for.","required":false,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Page","required":false,"schema":{"type":"integer","format":"int32","minimum":1},"example":1},{"name":"limit","in":"query","description":"The maximum number of results to return. Default is 50. Max is 200.","required":false,"schema":{"type":"integer","format":"int32","maximum":200,"minimum":0},"example":50},{"name":"sortBy","in":"query","description":"Column to sort by.","required":false,"schema":{"type":"string"},"example":"lastActivityAt"},{"name":"sortDirection","in":"query","description":"Sort direction. Must be one of: DESC, ASC.","required":false,"schema":{"type":"string","enum":["ASC","DESC"]},"example":"DESC"},{"name":"operator","in":"query","description":"What mode to use when filtering. Must be one of: AND, OR.","required":false,"schema":{"type":"string","enum":["AND","OR"]},"example":"AND"}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListResponseUserWithRole"}}}}}}},"/api/v1/tenants/{tenantId}/{roleId}":{"delete":{"tags":["Tenant Roles Controller"],"summary":"Delete tenant role","description":"Delete a specific role from a tenant.","operationId":"deleteTenantRole","parameters":[{"name":"tenantId","in":"path","description":"The ID of the tenant","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"roleId","in":"path","description":"The ID of the role","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"type":"string"}}}}}}},"/api/v1/enterprise-organizations/{enterpriseOrgId}/domains/{domainId}":{"delete":{"tags":["Enterprise Organization Domains"],"summary":"Remove domain from enterprise organization","description":"Remove an email domain mapping from the enterprise organization","operationId":"removeDomain","parameters":[{"name":"enterpriseOrgId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"domainId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"422":{"description":"Unprocessable Content","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/GetResponseString"}}}}}}}},"components":{"schemas":{"APIFieldError":{"type":"object","properties":{"fieldName":{"type":"string"},"fieldError":{"type":"string"}}},"APIMeta":{"type":"object","properties":{"description":{"type":"string"},"version":{"type":"string"}}},"APIStatusError":{"type":"object","properties":{"message":{"type":"string"},"statusCode":{"type":"integer","format":"int32"},"timestamp":{"type":"string"},"path":{"type":"string"},"success":{"type":"boolean"},"apiFieldErrors":{"type":"array","items":{"$ref":"#/components/schemas/APIFieldError"},"uniqueItems":true}}},"ErrorResponse":{"type":"object","properties":{"_status":{"$ref":"#/components/schemas/APIStatusError"},"_meta":{"$ref":"#/components/schemas/APIMeta"}}},"PatchUserInWorkspaceRequest":{"type":"object","properties":{"userId":{"type":"string","format":"uuid","description":"ID of the user"},"id":{"type":"string","format":"uuid","description":"ID of the user role"},"roleId":{"type":"string","format":"uuid","description":"ID of the role"}},"required":["roleId","userId"]},"GetResponseUserRoleDto":{"type":"object","properties":{"_data":{"$ref":"#/components/schemas/UserRoleDto"},"_meta":{"$ref":"#/components/schemas/Meta"}}},"Meta":{"type":"object","properties":{"description":{"type":"string"},"version":{"type":"string"}}},"UserRoleDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"ID of the user role"},"userId":{"type":"string","format":"uuid","description":"ID of the user"},"roleId":{"type":"string","format":"uuid","description":"ID of the role"}},"required":["id","roleId","userId"]},"CreateWorkspaceRequest":{"type":"object","properties":{"name":{"type":"string","description":"Name of the workspace","example":"Development Workspace","minLength":1},"logo":{"type":"string","description":"Logo of the workspace","example":"https://example.no/logo.png"},"enterpriseOrganizationId":{"type":"string","format":"uuid","description":"ID of the enterprise organization","example":"123e4567-e89b-12d3-a456-426614174000"},"tenantId":{"type":"string","format":"uuid","description":"ID of the tenant","example":"123e4567-e89b-12d3-a456-426614174000"},"skipMemberAssignment":{"type":"boolean","default":false,"description":"By default the currently authenticated user will be added as an admin of the newly created workspace. Set this to true to skip this logic."}},"required":["name"]},"GetResponseWorkspaceDto":{"type":"object","properties":{"_data":{"$ref":"#/components/schemas/WorkspaceDto"},"_meta":{"$ref":"#/components/schemas/Meta"}}},"SimpleEnterpriseOrganizationDto":{"type":"object","properties":{"permissions":{"type":"array","items":{"type":"string"},"uniqueItems":true},"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"logo":{"type":"string"}},"required":["id","name","permissions"]},"SimpleTenantDto":{"type":"object","properties":{"permissions":{"type":"array","items":{"type":"string"},"uniqueItems":true},"id":{"type":"string","format":"uuid"},"name":{"type":"string"}},"required":["id","name","permissions"]},"WorkspaceDto":{"type":"object","properties":{"permissions":{"type":"array","items":{"type":"string"},"uniqueItems":true},"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"logo":{"type":"string"},"tenant":{"$ref":"#/components/schemas/SimpleTenantDto"},"enterpriseOrganization":{"$ref":"#/components/schemas/SimpleEnterpriseOrganizationDto"},"userCount":{"type":"integer","format":"int32"},"workspaceType":{"type":"string","enum":["SHARED","ENTERPRISE","USER_DEFAULT","ENTERPRISE_DEFAULT"]},"updatedAt":{"type":"string","format":"date-time"},"createdAt":{"type":"string","format":"date-time"}},"required":["createdAt","id","name","permissions","tenant","updatedAt","userCount"]},"AddUserInWorkspaceRequest":{"type":"object","properties":{"userId":{"type":"string","format":"uuid","description":"ID of the user"}},"required":["userId"]},"ModifyRoleRequest":{"type":"object","description":"Role removal details","properties":{"roleId":{"type":"string","format":"uuid"}}},"CustomRoleRequest":{"type":"object","description":"Role update details","properties":{"name":{"type":"string"},"description":{"type":"string"}}},"GetResponseRoleDto":{"type":"object","properties":{"_data":{"$ref":"#/components/schemas/RoleDto"},"_meta":{"$ref":"#/components/schemas/Meta"}}},"RoleDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"description":{"type":"string"},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"isDefault":{"type":"boolean"}}},"ModifyPermissionRequest":{"type":"object","description":"Permissions to remove","properties":{"permissionIds":{"type":"array","items":{"type":"string","format":"uuid"},"uniqueItems":true}}},"CreateTenantRequest":{"type":"object","properties":{"name":{"type":"string","description":"Tenant name, also used as the Auth0 organization name. Lowercase letters, numbers, _ and -, max 50 characters. Required on create.","example":"ntb","minLength":1,"pattern":"^[a-z0-9_-]{1,50}$"},"indexNamePrefix":{"type":"string","description":"Prefix of the tenant's search indexes. Required on create.","example":"im-media-ntb-","minLength":1,"pattern":".*\\S.*"},"indexAlias":{"type":"string","description":"Alias of the tenant's search index. Required on create.","example":"im-media-ntb","minLength":1,"pattern":".*\\S.*"},"owners":{"type":"array","description":"Content owners the tenant can access. Required on create.","example":["NTB","TT"],"items":{"type":"string"},"maxItems":2147483647,"minItems":1},"publicSiteName":{"type":"string","description":"Public site product name, shown in the browser tab.","example":"NTB Bilder og video"},"adminSiteName":{"type":"string","description":"Admin back office product name.","example":"NTB Image Portal Admin"},"description":{"type":"string","description":"Public site meta description.","example":"Landets største leverandør av visuelt innhold."},"logoUrl":{"type":"string","description":"Absolute https URL of the header logo (http only for localhost). Required on create.","example":"https://cdn.ntb.dev/logo.png","minLength":1},"origins":{"type":"array","description":"Public/admin site origin pairs in this environment, aliases included. Required on create; on update, replaces the existing list when sent, kept when omitted.","items":{"$ref":"#/components/schemas/TenantOriginDto"},"maxItems":2147483647,"minItems":1}},"required":["indexAlias","indexNamePrefix","logoUrl","name","origins","owners"]},"TenantOriginDto":{"type":"object","properties":{"publicOrigin":{"type":"string","description":"Public site origin: scheme, host and optional port, no path.","example":"https://public.im.test.ntb.dev","minLength":1},"adminOrigin":{"type":"string","description":"Admin site origin: scheme, host and optional port, no path.","example":"https://admin.im.test.ntb.dev","minLength":1}},"required":["adminOrigin","publicOrigin"]},"GetResponseTenantDto":{"type":"object","properties":{"_data":{"$ref":"#/components/schemas/TenantDto"},"_meta":{"$ref":"#/components/schemas/Meta"}}},"TenantContactDto":{"type":"object","properties":{"email":{"type":"string","description":"Customer service email address.","example":"kundeservice@ntb.no"},"phone":{"type":"string","description":"Customer service phone number.","example":"+47 22 00 32 00"}}},"TenantDto":{"type":"object","properties":{"permissions":{"type":"array","items":{"type":"string"},"uniqueItems":true},"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"indexNamePrefix":{"type":"string"},"indexAlias":{"type":"string"},"owners":{"type":"array","items":{"type":"string"}},"auth0OrganizationId":{"type":"string"},"publicSiteName":{"type":"string","description":"Public site product name."},"adminSiteName":{"type":"string","description":"Admin back office product name."},"description":{"type":"string","description":"Public site meta description."},"logoUrl":{"type":"string"},"origins":{"type":"array","items":{"$ref":"#/components/schemas/TenantOriginDto"}},"contact":{"$ref":"#/components/schemas/TenantContactDto","description":"Customer service contact details. Only sent when includeContact=true; an empty object when the tenant has none."},"updatedAt":{"type":"string","format":"date-time"},"createdAt":{"type":"string","format":"date-time"}},"required":["auth0OrganizationId","createdAt","id","indexAlias","indexNamePrefix","logoUrl","name","origins","owners","permissions","updatedAt"]},"GetResponseString":{"type":"object","properties":{"_data":{"type":"string"},"_meta":{"$ref":"#/components/schemas/Meta"}}},"GetResponseIdentityProviderDto":{"type":"object","properties":{"_data":{"$ref":"#/components/schemas/IdentityProviderDto"},"_meta":{"$ref":"#/components/schemas/Meta"}}},"IdentityProviderDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"auth0ConnectionId":{"type":"string"},"auth0ConnectionName":{"type":"string"},"auth0ConnectionStrategy":{"type":"string"},"auth0Ticket":{"type":"string"},"status":{"type":"string","enum":["ACTIVE","PENDING"]},"tenant":{"$ref":"#/components/schemas/SimpleTenantDto"},"updatedAt":{"type":"string","format":"date-time"},"createdAt":{"type":"string","format":"date-time"}},"required":["auth0ConnectionId","createdAt","id","status","updatedAt"]},"CreateEnterpriseOrganizationRequest":{"type":"object","properties":{"name":{"type":"string","description":"Name of the enterprise organization","example":"Development Organization","minLength":1},"logo":{"type":"string","description":"Logo of the enterprise organization","example":"https://example.no/logo.png"},"active":{"type":"boolean","description":"Active status of the enterprise organization. Can only be set to true if at least one domain or identity provider is configured.","example":true},"tenantId":{"type":"string","format":"uuid","description":"ID of the tenant that the enterprise organization should belong to","example":"123e4567-e89b-12d3-a456-426614174000"}},"required":["name"]},"EnterpriseOrganizationDto":{"type":"object","properties":{"permissions":{"type":"array","items":{"type":"string"},"uniqueItems":true},"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"logo":{"type":"string"},"tenant":{"$ref":"#/components/schemas/SimpleTenantDto"},"identityProvider":{"$ref":"#/components/schemas/IdentityProviderDto"},"directUserCount":{"type":"integer","format":"int32"},"userCount":{"type":"integer","format":"int32"},"workspaceCount":{"type":"integer","format":"int32"},"updatedAt":{"type":"string","format":"date-time"},"createdAt":{"type":"string","format":"date-time"}},"required":["createdAt","directUserCount","id","name","permissions","tenant","updatedAt","userCount","workspaceCount"]},"GetResponseEnterpriseOrganizationDto":{"type":"object","properties":{"_data":{"$ref":"#/components/schemas/EnterpriseOrganizationDto"},"_meta":{"$ref":"#/components/schemas/Meta"}}},"AddDomainRequest":{"type":"object","properties":{"domain":{"type":"string","description":"The email domain to add (e.g., company.com)","maxLength":255,"minLength":3}},"required":["domain"]},"EnterpriseOrganizationDomainDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"enterpriseOrganizationId":{"type":"string","format":"uuid"},"domain":{"type":"string"},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"}},"required":["createdAt","domain","enterpriseOrganizationId","id","updatedAt"]},"GetResponseEnterpriseOrganizationDomainDto":{"type":"object","properties":{"_data":{"$ref":"#/components/schemas/EnterpriseOrganizationDomainDto"},"_meta":{"$ref":"#/components/schemas/Meta"}}},"GetResponseBoolean":{"type":"object","properties":{"_data":{"type":"boolean"},"_meta":{"$ref":"#/components/schemas/Meta"}}},"BasicWorkspaceInfo":{"type":"object","properties":{"name":{"type":"string","description":"Name of the workspace","example":"Development Workspace","minLength":1},"logo":{"type":"string","description":"Logo of the workspace","example":"https://example.no/logo.png"},"enterpriseOrganizationId":{"type":"string","format":"uuid","description":"ID of the enterprise organization","example":"123e4567-e89b-12d3-a456-426614174000"}},"required":["name"]},"PatchUserRequest":{"type":"object","properties":{"name":{"type":"string"},"active":{"type":"boolean"},"preferences":{"$ref":"#/components/schemas/UserPreferences"}}},"UserPreferences":{"type":"object","properties":{"language":{"type":"string","enum":["ENGLISH","NORWEGIAN","SWEDISH","DANISH","FINNISH"]},"theme":{"type":"string","enum":["DARK","LIGHT","SYSTEM"]}}},"GetResponseUserDto":{"type":"object","properties":{"_data":{"$ref":"#/components/schemas/UserDto"},"_meta":{"$ref":"#/components/schemas/Meta"}}},"SimpleIdentityProviderDto":{"type":"object","properties":{"permissions":{"type":"array","items":{"type":"string"},"uniqueItems":true},"id":{"type":"string","format":"uuid"},"auth0ConnectionId":{"type":"string"},"auth0ConnectionName":{"type":"string"},"auth0ConnectionStrategy":{"type":"string"}},"required":["auth0ConnectionId","id","permissions"]},"UserDto":{"type":"object","properties":{"permissions":{"type":"array","items":{"type":"string"},"uniqueItems":true},"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"email":{"type":"string"},"tenant":{"$ref":"#/components/schemas/SimpleTenantDto"},"identityProvider":{"$ref":"#/components/schemas/SimpleIdentityProviderDto"},"enterpriseOrganization":{"$ref":"#/components/schemas/SimpleEnterpriseOrganizationDto"},"auth0UserId":{"type":"string"},"avatar":{"type":"string"},"preferences":{"$ref":"#/components/schemas/UserPreferences"},"active":{"type":"boolean"},"deleted":{"type":"boolean"},"superadmin":{"type":"boolean"},"firstLoginCompleted":{"type":"boolean"},"autoAssignedToEnterpriseOrg":{"type":"boolean"},"lastActivityAt":{"type":"string","format":"date-time"},"lastLoginAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"createdAt":{"type":"string","format":"date-time"}},"required":["active","auth0UserId","autoAssignedToEnterpriseOrg","createdAt","deleted","email","firstLoginCompleted","id","identityProvider","lastActivityAt","lastLoginAt","name","permissions","superadmin","tenant","updatedAt"]},"PatchTenantRequest":{"type":"object","properties":{"name":{"type":"string","description":"Tenant name, also used as the Auth0 organization name. Lowercase letters, numbers, _ and -, max 50 characters. Required on create.","example":"ntb","pattern":"^[a-z0-9_-]{1,50}$"},"indexNamePrefix":{"type":"string","description":"Prefix of the tenant's search indexes. Required on create.","example":"im-media-ntb-","pattern":".*\\S.*"},"indexAlias":{"type":"string","description":"Alias of the tenant's search index. Required on create.","example":"im-media-ntb","pattern":".*\\S.*"},"owners":{"type":"array","description":"Content owners the tenant can access. Required on create.","example":["NTB","TT"],"items":{"type":"string"},"maxItems":2147483647,"minItems":1},"publicSiteName":{"type":"string","description":"Public site product name, shown in the browser tab.","example":"NTB Bilder og video"},"adminSiteName":{"type":"string","description":"Admin back office product name.","example":"NTB Image Portal Admin"},"description":{"type":"string","description":"Public site meta description.","example":"Landets største leverandør av visuelt innhold."},"logoUrl":{"type":"string","description":"Absolute https URL of the header logo (http only for localhost). Required on create.","example":"https://cdn.ntb.dev/logo.png"},"origins":{"type":"array","description":"Public/admin site origin pairs in this environment, aliases included. Required on create; on update, replaces the existing list when sent, kept when omitted.","items":{"$ref":"#/components/schemas/TenantOriginDto"},"maxItems":2147483647,"minItems":1}}},"PatchEnterpriseOrganizationRequest":{"type":"object","properties":{"name":{"type":"string","description":"Name of the enterprise organization","example":"Development Organization","minLength":1},"logo":{"type":"string","description":"Logo of the enterprise organization","example":"https://example.no/logo.png"},"active":{"type":"boolean","description":"Active status of the enterprise organization. Can only be set to true if at least one domain or identity provider is configured.","example":true}},"required":["name"]},"ListResponseWorkspaceDto":{"type":"object","properties":{"_data":{"type":"array","items":{"$ref":"#/components/schemas/WorkspaceDto"}},"_meta":{"$ref":"#/components/schemas/Meta"},"_page":{"$ref":"#/components/schemas/Page"}}},"Page":{"type":"object","properties":{"offset":{"type":"integer","format":"int32"},"limit":{"type":"integer","format":"int32"},"total":{"type":"integer","format":"int64"}}},"ListResponseUserWithRole":{"type":"object","properties":{"_data":{"type":"array","items":{"$ref":"#/components/schemas/UserWithRole"}},"_meta":{"$ref":"#/components/schemas/Meta"},"_page":{"$ref":"#/components/schemas/Page"}}},"UserWithRole":{"type":"object","properties":{"permissions":{"type":"array","items":{"type":"string"},"uniqueItems":true},"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"email":{"type":"string"},"tenant":{"$ref":"#/components/schemas/SimpleTenantDto"},"identityProvider":{"$ref":"#/components/schemas/SimpleIdentityProviderDto"},"enterpriseOrganization":{"$ref":"#/components/schemas/SimpleEnterpriseOrganizationDto"},"auth0UserId":{"type":"string"},"avatar":{"type":"string"},"preferences":{"$ref":"#/components/schemas/UserPreferences"},"active":{"type":"boolean"},"deleted":{"type":"boolean"},"superadmin":{"type":"boolean"},"firstLoginCompleted":{"type":"boolean"},"autoAssignedToEnterpriseOrg":{"type":"boolean"},"lastActivityAt":{"type":"string","format":"date-time"},"lastLoginAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"createdAt":{"type":"string","format":"date-time"},"roles":{"type":"array","items":{"$ref":"#/components/schemas/RoleDto"}}},"required":["active","auth0UserId","autoAssignedToEnterpriseOrg","createdAt","deleted","email","firstLoginCompleted","id","identityProvider","lastActivityAt","lastLoginAt","name","permissions","superadmin","tenant","updatedAt"]},"GetResponseSetRoleDto":{"type":"object","properties":{"_data":{"type":"array","items":{"$ref":"#/components/schemas/RoleDto"},"uniqueItems":true},"_meta":{"$ref":"#/components/schemas/Meta"}}},"GetResponseListRoleDto":{"type":"object","properties":{"_data":{"type":"array","items":{"$ref":"#/components/schemas/RoleDto"}},"_meta":{"$ref":"#/components/schemas/Meta"}}},"ListResponsePermissionDto":{"type":"object","properties":{"_data":{"type":"array","items":{"$ref":"#/components/schemas/PermissionDto"}},"_meta":{"$ref":"#/components/schemas/Meta"},"_page":{"$ref":"#/components/schemas/Page"}}},"PermissionDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"entityType":{"type":"string"}}},"ListResponseUserDto":{"type":"object","properties":{"_data":{"type":"array","items":{"$ref":"#/components/schemas/UserDto"}},"_meta":{"$ref":"#/components/schemas/Meta"},"_page":{"$ref":"#/components/schemas/Page"}}},"GetResponseUserDetails":{"type":"object","properties":{"_data":{"$ref":"#/components/schemas/UserDetails"},"_meta":{"$ref":"#/components/schemas/Meta"}}},"SimpleWorkspaceDto":{"type":"object","properties":{"permissions":{"type":"array","items":{"type":"string"},"uniqueItems":true},"id":{"type":"string","format":"uuid"},"name":{"type":"string"}},"required":["permissions"]},"UserDetails":{"type":"object","properties":{"permissions":{"type":"array","items":{"type":"string"},"uniqueItems":true},"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"email":{"type":"string"},"tenant":{"$ref":"#/components/schemas/SimpleTenantDto"},"identityProvider":{"$ref":"#/components/schemas/SimpleIdentityProviderDto"},"enterpriseOrganization":{"$ref":"#/components/schemas/SimpleEnterpriseOrganizationDto"},"auth0UserId":{"type":"string"},"avatar":{"type":"string"},"preferences":{"$ref":"#/components/schemas/UserPreferences"},"active":{"type":"boolean"},"deleted":{"type":"boolean"},"superadmin":{"type":"boolean"},"firstLoginCompleted":{"type":"boolean"},"autoAssignedToEnterpriseOrg":{"type":"boolean"},"lastActivityAt":{"type":"string","format":"date-time"},"lastLoginAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"createdAt":{"type":"string","format":"date-time"},"workspaces":{"type":"array","items":{"$ref":"#/components/schemas/SimpleWorkspaceDto"},"uniqueItems":true}},"required":["active","auth0UserId","autoAssignedToEnterpriseOrg","createdAt","deleted","email","firstLoginCompleted","id","identityProvider","lastActivityAt","lastLoginAt","name","permissions","superadmin","tenant","updatedAt"]},"ListResponseTenantDto":{"type":"object","properties":{"_data":{"type":"array","items":{"$ref":"#/components/schemas/TenantDto"}},"_meta":{"$ref":"#/components/schemas/Meta"},"_page":{"$ref":"#/components/schemas/Page"}}},"ListResponseEnterpriseOrganizationDto":{"type":"object","properties":{"_data":{"type":"array","items":{"$ref":"#/components/schemas/EnterpriseOrganizationDto"}},"_meta":{"$ref":"#/components/schemas/Meta"},"_page":{"$ref":"#/components/schemas/Page"}}},"GetResponseSetPermissionDto":{"type":"object","properties":{"_data":{"type":"array","items":{"$ref":"#/components/schemas/PermissionDto"},"uniqueItems":true},"_meta":{"$ref":"#/components/schemas/Meta"}}},"GetResponseListEnterpriseOrganizationDomainDto":{"type":"object","properties":{"_data":{"type":"array","items":{"$ref":"#/components/schemas/EnterpriseOrganizationDomainDto"}},"_meta":{"$ref":"#/components/schemas/Meta"}}}},"securitySchemes":{"bearerAuth":{"type":"http","name":"Authorization","in":"header","scheme":"bearer","bearerFormat":"JWT"}}}}