{"openapi":"3.0.0","info":{"title":"awork API","version":"1.3.0","description":"This is the API documentation for awork.","termsOfService":"https://www.awork.com/legal-and-privacy/privacy-policy-awork-app","contact":{"name":"awork Support","url":"https://support.awork.com","email":"support@awork.com"}},"servers":[{"url":"https://api.awork.com/api/v1","description":"awork Production"}],"paths":{"/absenceregions":{"get":{"tags":["AbsenceRegions"],"summary":"Returns all absence regions.","description":"Returns all absence regions with their public holiday details.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `user-planning-data:write` permission to see users assigned to absence regions.</Check>","operationId":"GetAbsenceRegions","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AbsenceRegionModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["AbsenceRegions"],"summary":"Creates an absence region.","description":"Creates an absence region for an ISO 3166-1 alpha-2 country and location. Names must be unique. Marking the new region as default clears the previous default region. This operation requires a Standard workspace plan or higher.\r\n\r\n<Note title=\"Subscription Level\" icon=\"layer-group\">This endpoint requires the `Standard` plan or higher.</Note>\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `user-planning-data:write` permissions.</Check>","operationId":"PostAbsenceRegion","requestBody":{"description":"The model to create the absence region.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AbsenceRegionForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AbsenceRegionModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","user-planning-data":"write"},"x-subscriptionlevel":{"minimumPlan":"standard"}}},"/absenceregions/countries":{"get":{"tags":["AbsenceRegions"],"summary":"Returns supported absence region countries.","description":"Returns the supported countries and their ISO 3166-1 alpha-2 codes for absence regions.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetAbsenceRegionsCountries","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AbsenceRegionCountry"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/absenceregions/countries/{countryCode}/locations":{"get":{"tags":["AbsenceRegions"],"summary":"Returns locations for the specified country.","description":"Returns the country's locations as ISO 3166-2 codes, including regions and subregions when available. An unsupported country code returns not found.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetAbsenceRegionsCountryLocationsByCountryCode","parameters":[{"name":"countryCode","in":"path","description":"The country code.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AbsenceRegionLocation"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/absenceregions/me/assign":{"post":{"tags":["AbsenceRegions"],"summary":"Sets the current user's absence region.","description":"Sets the current user's absence region. A user can have only one region; assigning a new region replaces the previous one. A null region id removes the current assignment.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `user-planning-data:write` permissions.</Check>","operationId":"PostMeAbsenceRegionsAssign","requestBody":{"description":"The model to assign or unassign the current user to/from an absence region.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AssignUserToAbsenceRegionForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","user-planning-data":"write"}},"put":{"tags":["AbsenceRegions"],"summary":"Sets the current user's absence region.","description":"Sets the current user's absence region. A user can have only one region; assigning a new region replaces the previous one. A null region id removes the current assignment.\r\n            This endpoint is deprecated; use the POST endpoint instead.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `user-planning-data:write` permissions.</Check>","operationId":"PutMeAbsenceRegionsAssign","requestBody":{"description":"The model to assign or unassign the current user to/from an absence region.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AssignUserToAbsenceRegionForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"deprecated":true,"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","user-planning-data":"write"}}},"/absenceregions/users/assign":{"post":{"tags":["AbsenceRegions"],"summary":"Sets users for an absence region.","description":"Sets the users assigned to an absence region. A user can belong to only one region, so assigning a user here removes any previous assignment. An empty user list removes all assignments.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `user-planning-data:write` permissions.</Check>","operationId":"PostAbsenceRegionsUsersAssign","requestBody":{"description":"The model to assign or unassign users to/from an absence region.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AssignUsersToAbsenceRegionForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","user-planning-data":"write"}},"put":{"tags":["AbsenceRegions"],"summary":"Sets users for an absence region.","description":"Sets the users assigned to an absence region. A user can belong to only one region, so assigning a user here removes any previous assignment. An empty user list removes all assignments.\r\n            This endpoint is deprecated; use the POST endpoint instead.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `user-planning-data:write` permissions.</Check>","operationId":"PutAbsenceRegionsUsersAssign","requestBody":{"description":"The model to assign or unassign users to/from an absence region.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AssignUsersToAbsenceRegionForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"deprecated":true,"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","user-planning-data":"write"}}},"/absenceregions/{absenceRegionId}":{"delete":{"tags":["AbsenceRegions"],"summary":"Deletes the specified absence region.","description":"Deletes the specified absence region, unassigns its users, and deletes related workspace absences. Deleting the default region leaves the workspace without a default region.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `user-planning-data:write` permissions.</Check>","operationId":"DeleteAbsenceRegionById","parameters":[{"name":"absenceRegionId","in":"path","description":"The id of the absence region to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","user-planning-data":"write"}},"get":{"tags":["AbsenceRegions"],"summary":"Returns the specified absence region.","description":"Returns the absence region with public holiday details for its country and location.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `user-planning-data:write` permission to see users assigned to the absence region.</Check>","operationId":"GetAbsenceRegionById","parameters":[{"name":"absenceRegionId","in":"path","description":"The id of the absence region.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AbsenceRegionModelWithHolidayDetails"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["AbsenceRegions"],"summary":"Updates the specified absence region.","description":"Updates the region name, country, location, or default status. Names must remain unique, and marking this region as default clears the previous default region.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `user-planning-data:write` permissions.</Check>","operationId":"PutAbsenceRegionById","parameters":[{"name":"absenceRegionId","in":"path","description":"The id of the absence region to update.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to update the absence region.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AbsenceRegionForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AbsenceRegionModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","user-planning-data":"write"}}},"/absences":{"get":{"tags":["Absences"],"summary":"Returns all absences.","description":"Returns workspace absences visible to the current user.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `user-planning-data:read` permission to view other users' absences.</Check>","operationId":"GetAbsences","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Absence"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Absences"],"summary":"Creates an absence.","description":"Creates an absence with dates rounded to 00:00:00, 12:00:00, or 23:59:59 UTC to support full-day and half-day periods. The end date must be the same as or later than the start date, and overlapping absences are rejected unless the provider allows them.\r\n            \r\n             <Check title=\"Required Permissions\" icon=\"key\">The user must own the absence, be an admin, or have `user-planning-data:write` permission.</Check>","operationId":"PostAbsence","requestBody":{"description":"The model to create the absence.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AbsenceForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Absence"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/absences/{absenceId}":{"delete":{"tags":["Absences"],"summary":"Deletes the specified absence.","description":"Deletes the specified absence unless it is managed by an external provider. Web and mobile requests cannot delete externally managed absences.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must own the absence, be an admin, or have `user-planning-data:delete` permission.</Check>","operationId":"DeleteAbsenceById","parameters":[{"name":"absenceId","in":"path","description":"The id of the absence to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Absences"],"summary":"Returns the specified absence.","description":"Returns the specified absence when it is visible to the current user.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must own the absence, be an admin, or have `user-planning-data:read` permission.</Check>","operationId":"GetAbsenceById","parameters":[{"name":"absenceId","in":"path","description":"The id of the absence.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Absence"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Absences"],"summary":"Updates the specified absence.","description":"Updates the specified absence with dates rounded to 00:00:00, 12:00:00, or 23:59:59 UTC to support full-day and half-day periods. The end date must be the same as or later than the start date, and overlapping absences are rejected unless the provider allows them.\r\n            \r\n             Web and mobile requests cannot update absences managed by an external provider.\r\n             <Check title=\"Required Permissions\" icon=\"key\">The user must own the absence, be an admin, or have `user-planning-data:write` permission.</Check>","operationId":"PutAbsenceById","parameters":[{"name":"absenceId","in":"path","description":"The id of the absence to update.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to update the absence.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AbsenceForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Absence"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/accounts/me/authorizedclients":{"delete":{"tags":["Client Applications"],"summary":"Revokes the current account's authorizations and refresh tokens for all third-party OAuth client applications.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteAccountsAuthorizedClients","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorizedClientApplicationRevocationResponse"}}}},"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Client Applications"],"summary":"Returns the third-party OAuth client applications authorized by the current account.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetAccountsAuthorizedClients","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AuthorizedClientApplication"}}}}},"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/accounts/me/authorizedclients/{clientId}":{"delete":{"tags":["Client Applications"],"summary":"Revokes the current account's authorization and refresh tokens for one third-party OAuth client application.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteAccountsAuthorizedClientsByClientId","parameters":[{"name":"clientId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthorizedClientApplicationRevocationResponse"}}}},"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/accounts/{accountId}":{"put":{"tags":["Accounts"],"summary":"Updates the account profile and starts email verification when required.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PutAccountsByAccountId","parameters":[{"name":"accountId","in":"path","description":"The accountId value.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"skipEmailVerification","in":"query","description":"The skipEmailVerification value.","schema":{"type":"boolean","default":false}},{"name":"sendAdminInitiatedVerificationEmail","in":"query","description":"The sendAdminInitiatedVerificationEmail value.","schema":{"type":"boolean","default":false}}],"requestBody":{"description":"The model value.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Account"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/accounts/{email}/ispasswordvalid":{"post":{"tags":["Accounts"],"summary":"Checks a password or passwordless token for the requested account.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin.</Check>","operationId":"PostAccountsIsPasswordValidByEmail","parameters":[{"name":"email","in":"path","description":"The email value.","required":true,"schema":{"type":"string"}},{"name":"aw-internal-request","in":"header","description":"Marks this request as an internal request. Only allowed by the awork app or internally.","required":true,"schema":{"type":"string","default":"true"}}],"requestBody":{"description":"The password value.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PasswordForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"boolean"}}}},"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true"},"x-internal":true}},"/agents":{"get":{"tags":["Custom Agents"],"summary":"Returns all custom agents.","description":"Lists custom agents visible to the requesting user in the current workspace, including visible global agents.\r\n            Results are ordered by name and include the user's access level for each agent.\r\n            Use an agent id from this response to retrieve or update its shared settings.\r\n            Read GET /agents/configuration for the current user's selected accounts and connection status.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetAgents","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AgentSummaryResponseModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Custom Agents"],"summary":"Creates a new custom agent.","description":"Creates a custom agent in the current workspace and returns its configuration and id.\r\n            Provide a name and either PresetKey or both ModelProvider and ModelName. Do not combine these model selection options.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostAgents","requestBody":{"description":"The configuration for the new agent.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateAgentRequestModel"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentSummaryResponseModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/configuration":{"get":{"tags":["Custom Agents"],"summary":"Returns connection configuration for the current user's custom agents.","description":"Lists the configuration for each custom agent the user can read in the workspace.\r\n            Each result contains the linked connector and skill ids, the account selected for each connector,\r\n            why that account was selected, and whether it is available.\r\n            Uses a saved agent choice, or the enabled awork Agent default when no choice is saved.\r\n            An editor-provided account is used when the connector has specificConnection mode.\r\n            API-key requests do not inherit awork Agent defaults.\r\n            This read does not save or change any choices. An empty list is returned when no agents are visible.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetAgentsConfiguration","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CustomAgentConfigurationResponseModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/connectors":{"get":{"tags":["AgentRuntime"],"summary":"Lists the connectors visible to the requesting user in the current workspace.","description":"Lists connectors visible to the requesting user in the current workspace.\r\n            Use the returned connector ids to link existing connectors to custom agents.\r\n            The user must have access to the custom-agent feature.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetConnectors","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ConnectorResponseModel"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/connectors/presets":{"get":{"tags":["AgentRuntime"],"summary":"Lists the predefined connector presets available to the workspace.","description":"Lists predefined connector presets and the OAuth callback URI used for connector setup.\r\n            Create connectors in the awork app.\r\n            The response describes setup options; it does not create a connector.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetConnectorsPresets","parameters":[{"name":"includeAdded","in":"query","description":"Whether to include providers already added to the workspace for metadata lookup.","schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectorPresetsResponseModel"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/connectors/{connectorId}/sharing":{"put":{"tags":["AgentRuntime"],"summary":"Makes a custom connector workspace-visible or private.","description":"Updates whether a custom connector is visible to the workspace or private and returns its sharing configuration.\r\n            Set IsSharedWithWorkspace to the desired visibility. Making a connector private fails while connections remain shared or another user has a connection or agent using it.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must own the connector or be a workspace administrator, and must have permission to contribute to the agent library.</Check>","operationId":"PutConnectorsSharingByConnectorId","parameters":[{"name":"connectorId","in":"path","description":"The connector id.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The connector sharing configuration.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectorSharingRequestModel"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectorSharingModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/defaults":{"get":{"tags":["AgentRuntime"],"summary":"Gets the default agent options for a personal or custom agent.","description":"Returns default model, tool access, connector, and skill options for a personal-agent or custom-agent conversation.\r\n            Set type to 'personal-agent' for the requesting user's defaults, or 'custom-agent' and provide agentId for a custom agent.\r\n            The response also includes the effective model catalog for the workspace.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have read access to the selected custom agent.</Check>","operationId":"GetAgentDefaults","parameters":[{"name":"type","in":"query","description":"The agent type to resolve defaults for ('personal-agent' or 'custom-agent').","required":true,"schema":{"type":"string"}},{"name":"agentId","in":"query","description":"The id of the custom agent when  is 'custom-agent'.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentDefaultsResponseModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/management/threads":{"get":{"tags":["AgentThreads"],"summary":"Returns thread metadata for usage analytics.","description":"Returns thread metadata for usage analytics, including the thread Id, name, credits, and creation timestamp.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin.</Check>","operationId":"GetAgentsManagementThreads","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AiThreadAdminMetadataResponseModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true"}}},"/agents/models":{"get":{"tags":["AgentRuntime"],"summary":"Returns the AI models available to agents.","description":"Returns the agent model catalog with effective availability for the current workspace.\r\n            The response includes model providers, model details, defaults, and available image capabilities.\r\n            Use these values when selecting a model for an agent or conversation.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetModels","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentRuntimeModelsResponseModel"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/models/settings/disable":{"post":{"tags":["AgentRuntime"],"summary":"Disables a model, vendor, or region and updates settings that use it.","description":"Disables a model, vendor, or region for the workspace and updates settings that use it.\r\n            Use the model settings in the awork app to review affected configurations and eligible replacements before disabling.\r\n            Specify the required replacement models in the request. Returns no content when the changes are saved.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PostAgentsModelsSettingsDisable","requestBody":{"description":"The disable and migration command.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DisableModelsRequestModel"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/agents/models/settings/presets/{presetKey}":{"put":{"tags":["AgentRuntime"],"summary":"Sets a workspace preset to Auto or a selected active text model.","description":"Updates a workspace model preset to use central Auto selection or an explicit active text model.\r\n            Identify the preset by its catalog key and provide the assignment in the request body.\r\n            Returns no content when the assignment is saved, or a validation error if the selection is invalid.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PutAgentsModelsSettingsPresetsByPresetKey","parameters":[{"name":"presetKey","in":"path","description":"The preset key.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"The preset assignment.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetModelPresetRequestModel"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/agents/models/settings/regions/{regionKey}/enable":{"post":{"tags":["AgentRuntime"],"summary":"Enables an AI model region for the workspace.","description":"Enables an AI model serving region in the workspace's model policy.\r\n            Use the stable region key from the model catalog. Returns no content when the policy is saved.\r\n            Read [GET /agents/models](#/AgentRuntime/GetModels) to inspect the resulting model availability.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PostAgentsModelsSettingsRegionsEnableByRegionKey","parameters":[{"name":"regionKey","in":"path","description":"The stable serving-region key.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/agents/models/settings/vendors/{vendorKey}/enable":{"post":{"tags":["AgentRuntime"],"summary":"Enables one AI model vendor for the workspace.","description":"Enables an AI model vendor in the workspace's model policy.\r\n            Use the stable vendor key from the model catalog. Returns no content when the policy is saved.\r\n            Read [GET /agents/models](#/AgentRuntime/GetModels) to inspect the resulting model availability.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PostAgentsModelsSettingsVendorsEnableByVendorKey","parameters":[{"name":"vendorKey","in":"path","description":"The stable vendor key.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/agents/models/{modelKey}/enable":{"post":{"tags":["AgentRuntime"],"summary":"Enables one AI model for the workspace.","description":"Enables one catalog model for the workspace and returns no content when the policy is saved.\r\n            Use the stable model key from [GET /agents/models](#/AgentRuntime/GetModels). The model's vendor and serving region must be enabled first.\r\n            Removed models and models that cannot be changed in the current rollout state return a validation error.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PostAgentsModelsEnableByModelKey","parameters":[{"name":"modelKey","in":"path","description":"The stable, URL-safe catalog key.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/agents/schedules":{"get":{"tags":["Agent Schedules"],"summary":"Lists project schedules.","description":"Lists readable schedules directly linked to a project or linked through one of its tasks.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetAgentsSchedules","parameters":[{"name":"projectId","in":"query","description":"The required project id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AgentScheduleResponseModel"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/schedules/me":{"get":{"tags":["Agent Schedules"],"summary":"Lists owned schedules.","description":"Lists schedules owned by the requesting user whose active agents remain readable. The overview processes the newest 1,000 owned schedules.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetAgentsSchedulesMe","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AgentScheduleResponseModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/skills":{"get":{"tags":["Agent Skills"],"summary":"Returns all skills.","description":"Returns one page of shared skills available to the requesting user. Pages contain at most 1000 skills. Use page and pageSize query parameters; pagination metadata is returned in aw-* headers.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetSkills","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SkillResponseModel"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Agent Skills"],"summary":"Creates a reusable skill.","description":"Creates a user-owned skill and enables it when the creator may configure the awork Agent.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostSkills","requestBody":{"description":"The request payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSkillRequestModel"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SkillResponseModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/skills/import":{"post":{"tags":["Agent Skills"],"summary":"Imports a skill package.","description":"Imports a skill from an agentskills.io ZIP package or standalone SKILL.md file. Pass agentId to import the skill as private to that agent; omit it to create a reusable skill.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostSkillsImport","parameters":[{"name":"agentId","in":"query","description":"The optional owning agent ID.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"file":{"type":"string","description":"An agentskills.io ZIP package or standalone SKILL.md file.","format":"binary"},"content":{"type":"string","description":"Standalone SKILL.md content used by agent and MCP callers.","format":"binary"},"fileName":{"type":"string","description":"The file name used when content is supplied, for example SKILL.md."}},"description":"Upload either file or content. When content is used, fileName must identify the imported file."}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SkillResponseModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/skills/secretvalues":{"delete":{"tags":["Agent Skills"],"summary":"Deletes a skill secret value.","description":"Deletes a stored skill secret value. Workspace-scoped values require admin permissions; user-scoped values affect only the requesting user.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteSkillsSecretValues","parameters":[{"name":"envVarName","in":"query","description":"The env var name of the value.","required":true,"schema":{"type":"string"}},{"name":"scope","in":"query","description":"The scope of the value (\"workspace\" or \"user\").","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Agent Skills"],"summary":"Lists skill secret statuses.","description":"Lists which secrets have saved values for the workspace or the requesting user. The secret values themselves are never returned.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetSkillsSecretValues","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SkillSecretValueStatusResponseModel"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Agent Skills"],"summary":"Sets a skill secret value.","description":"Sets a skill secret value. Workspace-scoped values require admin permissions; user-scoped values are stored for the requesting user only.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PutSkillsSecretValues","requestBody":{"description":"The request payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetSkillSecretValueRequestModel"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/skills/{skillId}":{"delete":{"tags":["Agent Skills"],"summary":"Deletes a skill.","description":"Deletes a shared skill when the caller has manage access.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteSkillsBySkillId","parameters":[{"name":"skillId","in":"path","description":"The skill ID.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Agent Skills"],"summary":"Returns a skill.","description":"Returns one skill when the caller has read access directly or through the optional linked agent.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetSkillsBySkillId","parameters":[{"name":"skillId","in":"path","description":"The skill ID.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"agentId","in":"query","description":"The optional linked agent through which read access is requested.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SkillResponseModel"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Agent Skills"],"summary":"Updates a skill.","description":"Updates a shared skill when the caller has manage access.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PutSkillsBySkillId","parameters":[{"name":"skillId","in":"path","description":"The skill ID.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The request payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSkillRequestModel"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SkillResponseModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/skills/{skillId}/export":{"get":{"tags":["Agent Skills"],"summary":"Exports a skill package.","description":"Exports a skill as an agentskills.io ZIP package containing SKILL.md and bundled files.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetSkillsExportBySkillId","parameters":[{"name":"skillId","in":"path","description":"The skill ID.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"agentId","in":"query","description":"The optional linked agent through which read access is requested.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/zip":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/skills/{skillId}/files":{"delete":{"tags":["Agent Skills"],"summary":"Deletes a skill file.","description":"Deletes one bundled file by its path relative to the skill root.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteSkillsFilesBySkillId","parameters":[{"name":"skillId","in":"path","description":"The skill ID.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"relativePath","in":"query","description":"The path of the file relative to the skill root.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Agent Skills"],"summary":"Lists skill files.","description":"Returns the bundled files for a skill after checking read access directly or through the optional linked agent.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetSkillsFilesBySkillId","parameters":[{"name":"skillId","in":"path","description":"The skill ID.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"agentId","in":"query","description":"The optional linked agent through which read access is requested.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SkillFileResponseModel"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Agent Skills"],"summary":"Uploads a skill file.","description":"Uploads or replaces a bundled file. The relative path defaults to the uploaded file name and can be overridden with the relativePath query parameter, for example scripts/sync.py.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostSkillsFilesBySkillId","parameters":[{"name":"skillId","in":"path","description":"The skill ID.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"relativePath","in":"query","description":"The optional target path relative to the skill root.","schema":{"type":"string","default":""}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["file"],"type":"object","properties":{"file":{"type":"string","description":"The bundled skill file to upload.","format":"binary"}}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SkillFileResponseModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/skills/{skillId}/files/byuploadid":{"post":{"tags":["Agent Skills"],"summary":"Stores a temporary upload as a bundled skill file.","description":"Stores or replaces a bundled file from a temporary upload of the current user. The relative path\r\n            defaults to fileName and can be overridden with relativePath, for example references/logo.png.\r\n            The same file, count, and package limits apply as for the multipart upload.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostSkillsFilesByUploadIdBySkillId","parameters":[{"name":"skillId","in":"path","description":"The skill ID.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The temporary upload and target path.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadSkillFileByUploadIdRequestModel"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SkillFileResponseModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/skills/{skillId}/files/download":{"get":{"tags":["Agent Skills"],"summary":"Downloads a skill file.","description":"Downloads one bundled file by its path relative to the skill root after checking read access.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetSkillsFilesDownloadBySkillId","parameters":[{"name":"skillId","in":"path","description":"The skill ID.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"relativePath","in":"query","description":"The path of the file relative to the skill root.","required":true,"schema":{"type":"string"}},{"name":"agentId","in":"query","description":"The optional linked agent through which read access is requested.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/octet-stream":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/skills/{skillId}/secrets":{"get":{"tags":["Agent Skills"],"summary":"Lists skill secret requirements.","description":"Lists the secrets a skill needs and whether they are set for the user. Secret values are never returned.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetSkillsSecretsBySkillId","parameters":[{"name":"skillId","in":"path","description":"The skill ID.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"agentId","in":"query","description":"The optional linked agent through which read access is requested.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SkillSecretRequirementResponseModel"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Agent Skills"],"summary":"Updates skill secret requirements.","description":"Replaces the list of secrets a skill needs and returns the resulting requirements.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PutSkillsSecretsBySkillId","parameters":[{"name":"skillId","in":"path","description":"The skill ID.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The request payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetSkillSecretRequirementsRequestModel"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SkillSecretRequirementResponseModel"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/skills/{skillId}/sharing":{"get":{"tags":["Agent Skills"],"summary":"Returns a skill's sharing configuration.","description":"Gets the sharing configuration for a manageable, user-owned skill.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetSkillsSharingBySkillId","parameters":[{"name":"skillId","in":"path","description":"The skill ID.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SkillSharingResponseModel"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Agent Skills"],"summary":"Updates a skill's sharing configuration.","description":"Replaces the sharing configuration for a manageable, user-owned skill.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PutSkillsSharingBySkillId","parameters":[{"name":"skillId","in":"path","description":"The skill ID.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The replacement sharing configuration.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSkillSharingRequestModel"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SkillSharingResponseModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/threads":{"post":{"tags":["AgentThreads"],"summary":"Creates a conversation with the awork Agent or a custom agent.","description":"Creates a conversation with the awork Agent or a custom agent and optionally submits the first message.\r\n            Supply content or attachments to submit the first message and start processing.\r\n            awork Agent threads can be created without a message. Custom Agent threads require text or an attachment.\r\n            The response contains the thread and accepted first-message identifiers, not the agent's reply.\r\n            See [GET /agents/threads/{threadId}/messages](api:GET/agents/threads/{threadId}/messages) to retrieve replies.\r\n            Each request creates a new thread. Retrying after a lost response can create another thread.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostAgentsThreads","requestBody":{"description":"The thread creation payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AiThreadCreateRequestModel"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AiThreadCreatedResponseModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/threads/{threadId}":{"get":{"tags":["AgentThreads"],"summary":"Gets an agent thread.","description":"Returns details of the specified agent conversation.\r\n            Use the thread id returned when creating a conversation. Retrieve its messages separately with [GET /agents/threads/{threadId}/messages](api:GET/agents/threads/{threadId}/messages).\r\n            Returns not found if the thread is missing or is not visible to the user.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetAgentsThreadsByThreadId","parameters":[{"name":"threadId","in":"path","description":"The id of the thread to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentThreadResponseModel"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/threads/{threadId}/cancel":{"post":{"tags":["AgentThreads"],"summary":"Cancels the active run for the specified agent thread.","description":"Cancels the active run in the specified personal-agent or custom-agent conversation and returns the thread.\r\n            A successful cancellation also pauses dispatch of the next queued message.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to contribute to the thread.</Check>","operationId":"PostAgentsThreadsCancelByThreadId","parameters":[{"name":"threadId","in":"path","description":"The thread id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentThreadResponseModel"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/threads/{threadId}/files/{fileId}":{"get":{"tags":["Agent Thread Files"],"summary":"Returns a file of the specified agent thread.","description":"Returns file metadata for a file attached to the specified agent thread.\r\n            Both the thread id and file id must match the attachment. Returns not found if the file is not attached to that thread.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `read` access to the agent thread.</Check>","operationId":"GetAgentsThreadsFilesByThreadIdAndFileId","parameters":[{"name":"threadId","in":"path","description":"The agent thread id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The file id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/threads/{threadId}/files/{fileId}/download":{"get":{"tags":["Agent Thread Files"],"summary":"Returns content from a file attached to the specified agent thread.","description":"Returns the binary content of a file attached to the specified agent thread.\r\n            Use the thread id and file id from the attachment metadata. For images, width, height, and crop control resizing.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have read access to the agent thread.</Check>","operationId":"GetAgentsThreadsFilesDownloadByThreadIdAndFileId","parameters":[{"name":"threadId","in":"path","description":"The agent thread id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The file id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"width","in":"query","description":"The optional image width.","schema":{"type":"number","format":"double"}},{"name":"height","in":"query","description":"The optional image height.","schema":{"type":"number","format":"double"}},{"name":"crop","in":"query","description":"Whether to crop the image when resizing it.","schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/threads/{threadId}/messages":{"get":{"tags":["AgentThreads"],"summary":"Lists agent thread messages.","description":"Lists messages from the specified personal-agent or custom-agent conversation.\r\n            Use this endpoint to retrieve replies after creating a thread or submitting a message.\r\n            Returns not found if the thread is missing or the user cannot read it.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetAgentsThreadsMessagesByThreadId","parameters":[{"name":"threadId","in":"path","description":"The thread id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AgentThreadMessageResponseModel"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["AgentThreads"],"summary":"Submits a message to an agent conversation.","description":"Submits a new message to an existing agent conversation for processing.\r\n            Provide text, attachments, or both. The message starts processing or enters the thread's queue.\r\n            The response confirms acceptance; it does not contain the agent's reply.\r\n            Read [GET /agents/threads/{threadId}/messages](api:GET/agents/threads/{threadId}/messages) to retrieve replies.\r\n            Each request submits a new message. Retrying after a lost response can submit the message again.\r\n            Processing is subject to the workspace's AI availability and usage limits.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to contribute to the thread.</Check>","operationId":"PostAgentsThreadsMessagesByThreadId","parameters":[{"name":"threadId","in":"path","description":"The id of the thread to send the message in.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model with the content to send to the agent thread.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentThreadMessageRequestModel"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AiThreadMessageAcceptedResponseModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/threads/{threadId}/messages/{messageId}/status":{"get":{"tags":["AgentThreads"],"summary":"Gets agent thread message status.","description":"Returns the processing status of a submitted agent thread message, including messages still in the queue.\r\n            Use the accepted message id returned by the server when creating a thread or submitting a message.\r\n            The response indicates whether an agent response exists and includes its id and error details when available.\r\n            Retrieve reply content with [GET /agents/threads/{threadId}/messages](api:GET/agents/threads/{threadId}/messages).\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetAgentsThreadsMessagesStatusByThreadIdAndMessageId","parameters":[{"name":"threadId","in":"path","description":"The id of the thread that contains the message.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"messageId","in":"path","description":"The accepted message id returned by the server.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AiThreadMessageProcessingStatusResponseModel"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/{agentId}":{"get":{"tags":["Custom Agents"],"summary":"Returns the custom agent's configuration.","description":"Returns the agent's shared settings, including the requesting user's access level.\r\n            Use this response to inspect the agent's model, prompt, and linked capabilities.\r\n            Read GET /agents/{agentId}/configuration for the current user's selected accounts and connection status.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have read access to the agent.</Check>","operationId":"GetAgentsByAgentId","parameters":[{"name":"agentId","in":"path","description":"The agent id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentSummaryResponseModel"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Custom Agents"],"summary":"Updates the custom agent's configuration.","description":"Updates the custom agent's configuration and returns the saved agent.\r\n            Saves a new system prompt version if the prompt changes.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have manage access to the agent. Changing workspace sharing also requires permission to contribute to the agent library.</Check>","operationId":"PutAgentsByAgentId","parameters":[{"name":"agentId","in":"path","description":"The agent id.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The new agent configuration.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateAgentRequestModel"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentSummaryResponseModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/{agentId}/configuration":{"get":{"tags":["Custom Agents"],"summary":"Returns a custom agent's connection configuration for the current user.","description":"Returns the linked connector and skill ids, the account selected for each connector,\r\n            why that account was selected, and whether it is available.\r\n            Uses a saved agent choice, or the enabled awork Agent default when no choice is saved.\r\n            An editor-provided account is used when the connector has specificConnection mode.\r\n            API-key requests do not inherit awork Agent defaults.\r\n            This read does not save or change any choices.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have read access to the agent.</Check>","operationId":"GetAgentsConfigurationByAgentId","parameters":[{"name":"agentId","in":"path","description":"The agent id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomAgentConfigurationResponseModel"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/{agentId}/connectors/{connectorId}":{"delete":{"tags":["Custom Agents"],"summary":"Unlinks a connector from an agent.","description":"Removes the connector link from the specified agent.\r\n            Returns no content when the link is removed or is already absent.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have manage access to the agent.</Check>","operationId":"DeleteConnectorsByConnectorIdAndAgentId","parameters":[{"name":"agentId","in":"path","description":"The agent id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"connectorId","in":"path","description":"The connector id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Custom Agents"],"summary":"Links a connector to an agent.","description":"Links an existing connector to the specified agent and returns the linked connector.\r\n            Use [GET /agents/connectors](#/AgentRuntime/GetConnectors) to find a connector id.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have manage access to the agent.</Check>","operationId":"PostConnectorsByConnectorIdAndAgentId","parameters":[{"name":"agentId","in":"path","description":"The agent id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"connectorId","in":"path","description":"The connector id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectorResponseModel"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/{agentId}/copy":{"post":{"tags":["Custom Agents"],"summary":"Copies an existing custom agent.","description":"Creates a copy of an existing custom agent in the current workspace.\r\n            Provide the new name and optional description in the request body. The source agent supplies the initial configuration and system prompt.\r\n            Returns the new agent with its own id.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have read access to the source agent.</Check>","operationId":"PostAgentsCopyByAgentId","parameters":[{"name":"agentId","in":"path","description":"The source agent id.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The name and description for the copy.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CopyAgentRequestModel"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentSummaryResponseModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/{agentId}/files":{"get":{"tags":["Agent Files"],"summary":"Returns all files of the specified agent.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesByAgentNameAndAgentId","parameters":[{"name":"agentId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileInfo"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/{agentId}/files/byuploadid":{"post":{"tags":["FileUpload"],"summary":"Creates a file from an upload id.","description":"After a file has been uploaded to an upload URL generated from the <see cref=\"T:Awork.Files.Service.Feature.FileUpload.Endpoints.PostGenerateUploadURL\" /> endpoint, this endpoint can be used to create a file agent from the uploaded file by providing the upload id.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostUploadByUploadId","parameters":[{"name":"agentId","in":"path","description":"The id of the agent to attach the file to.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model describing the uploaded file metadata.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadByUploadIdForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/{agentId}/files/{fileId}":{"delete":{"tags":["Agent Files"],"summary":"Deletes the specified agent file and its versions.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteFilesByAgentNameAndAgentIdAndFileId","parameters":[{"name":"agentId","in":"path","description":"The agent id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The file id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/{agentId}/schedules":{"get":{"tags":["Agent Schedules"],"summary":"Lists agent schedules.","description":"Lists the schedules configured for an agent after checking the caller's read access.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetSchedulesByAgentId","parameters":[{"name":"agentId","in":"path","description":"The Custom Agent ID.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AgentScheduleResponseModel"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Agent Schedules"],"summary":"Creates an agent schedule.","description":"Creates a schedule for an agent after validating its cadence, timezone, and optional project or task context.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostSchedulesByAgentId","parameters":[{"name":"agentId","in":"path","description":"The Custom Agent ID.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The schedule payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateAgentScheduleRequestModel"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentScheduleResponseModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/{agentId}/schedules/nextoccurrence":{"post":{"tags":["Agent Schedules"],"summary":"Previews a schedule occurrence.","description":"Calculates the next occurrence for the supplied cadence without changing the schedule.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostSchedulesNextOccurrenceByAgentId","parameters":[{"name":"agentId","in":"path","description":"The Custom Agent ID.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The cadence preview request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentScheduleNextOccurrenceRequestModel"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentScheduleNextOccurrenceResponseModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"503":{"description":"Service Unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/{agentId}/schedules/{scheduleId}":{"delete":{"tags":["Agent Schedules"],"summary":"Deletes an agent schedule.","description":"Deletes a schedule configured for an agent after checking the caller's access.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteSchedulesByScheduleIdAndAgentId","parameters":[{"name":"agentId","in":"path","description":"The agent id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"scheduleId","in":"path","description":"The schedule id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Agent Schedules"],"summary":"Updates an agent schedule.","description":"Updates a schedule configured for an agent after validating its cadence, timezone, and optional context.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PutSchedulesByScheduleIdAndAgentId","parameters":[{"name":"agentId","in":"path","description":"The agent id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"scheduleId","in":"path","description":"The schedule id.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The updated schedule payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateAgentScheduleRequestModel"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentScheduleResponseModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/{agentId}/schedules/{scheduleId}/run":{"post":{"tags":["Agent Schedules"],"summary":"Runs an agent schedule.","description":"Immediately starts a new agent session for the selected schedule.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostSchedulesRunByScheduleIdAndAgentId","parameters":[{"name":"agentId","in":"path","description":"The agent id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"scheduleId","in":"path","description":"The schedule id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AiThreadCreatedResponseModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/{agentId}/schedules/{scheduleId}/setenabled":{"post":{"tags":["Agent Schedules"],"summary":"Changes schedule state.","description":"Enables or disables the selected agent schedule and returns the updated schedule.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostSchedulesSetEnabledByScheduleIdAndAgentId","parameters":[{"name":"agentId","in":"path","description":"The agent id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"scheduleId","in":"path","description":"The schedule id.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The requested enabled state.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetAgentScheduleEnabledRequestModel"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentScheduleResponseModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/{agentId}/setarchived":{"post":{"tags":["Custom Agents"],"summary":"Archives or unarchives an agent.","description":"Archives or unarchives the specified custom agent and returns its updated configuration.\r\n            Set IsArchived to true to archive the agent, or false to unarchive it.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have manage access to the agent.</Check>","operationId":"PostAgentsSetArchivedByAgentId","parameters":[{"name":"agentId","in":"path","description":"The agent id.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"Whether to archive or unarchive the agent.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetAgentArchivedRequestModel"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentSummaryResponseModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/{agentId}/skills":{"get":{"tags":["Custom Agents"],"summary":"Lists agent skills.","description":"Returns the skills linked to an agent after checking read access to the agent.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetSkillsByAgentId","parameters":[{"name":"agentId","in":"path","description":"The agent id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SkillResponseModel"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Custom Agents"],"summary":"Creates a private skill for an agent.","description":"Creates a private skill owned by the agent and links the new skill to that agent.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostSkillsByAgentId","parameters":[{"name":"agentId","in":"path","description":"The owning agent id.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The name and content of the new skill.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSkillRequestModel"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SkillResponseModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/{agentId}/skills/{skillId}":{"delete":{"tags":["Custom Agents"],"summary":"Removes a skill from an agent.","description":"Also deletes the skill if it is private to the agent.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteSkillsBySkillIdAndAgentId","parameters":[{"name":"agentId","in":"path","description":"The agent id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"skillId","in":"path","description":"The skill id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/{agentId}/skills/{skillId}/link":{"post":{"tags":["Custom Agents"],"summary":"Links a skill to an agent.","description":"Links a shared skill to an agent when the caller can manage the agent and read the skill.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostSkillsLinkBySkillIdAndAgentId","parameters":[{"name":"agentId","in":"path","description":"The agent id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"skillId","in":"path","description":"The skill id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentSkillLinkResponseModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/{agentId}/systempromptversions":{"get":{"tags":["Custom Agents"],"summary":"Lists the agent's saved system prompt versions.","description":"Lists the saved system prompt versions for the specified custom agent.\r\n            Use a returned version id with the system prompt restore endpoint to restore an earlier prompt.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have read access to the agent.</Check>","operationId":"GetAgentsSystemPromptVersionsByAgentId","parameters":[{"name":"agentId","in":"path","description":"The agent id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SystemPromptVersionResponseModel"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/agents/{agentId}/systempromptversions/{systemPromptVersionId}/restore":{"post":{"tags":["Custom Agents"],"summary":"Restores a previous system prompt version.","description":"Restores a saved system prompt version as the agent's current prompt.\r\n            The restore records a new history version and returns that version. Use the system prompt versions endpoint to find a version id.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have manage access to the agent.</Check>","operationId":"PostAgentsSystemPromptVersionRestore","parameters":[{"name":"agentId","in":"path","description":"The agent id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"systemPromptVersionId","in":"path","description":"The prompt version id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SystemPromptVersionResponseModel"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/apiusers":{"get":{"tags":["ApiUsers"],"summary":"Returns all API users.","description":"Returns API users configured in the workspace.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:read` permissions.</Check>","operationId":"GetApiUsers","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ApiUser"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"read"}},"post":{"tags":["ApiUsers"],"summary":"Creates an API user.","description":"Creates an archived API user for the specified client application. The client application must exist, the name must be unique, and the selected role must be active and non-guest. If no role is supplied, the active admin role is used.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PostApiUser","requestBody":{"description":"The model to create the API user.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiUserPostForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiUser"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/apiusers/{apiUserId}":{"delete":{"tags":["ApiUsers"],"summary":"Deletes the specified API user.","description":"Deletes the specified API user and revokes its access.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"DeleteApiUserById","parameters":[{"name":"apiUserId","in":"path","description":"The id of the API user to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}},"get":{"tags":["ApiUsers"],"summary":"Returns the specified API user.","description":"Returns the specified API user and its configured role.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:read` permissions.</Check>","operationId":"GetApiUserById","parameters":[{"name":"apiUserId","in":"path","description":"The id of the API user.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiUser"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"read"}},"put":{"tags":["ApiUsers"],"summary":"Updates the specified API user.","description":"Updates the specified API user's name or role. Names must remain unique, and the target role must be active and non-guest.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PutApiUserById","parameters":[{"name":"apiUserId","in":"path","description":"The id of the API user to update.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to update the API user.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiUserForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiUser"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/automations/catalog":{"get":{"tags":["Project Automations"],"summary":"Returns all supported automation trigger and action types.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetAutomationsCatalog","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutomationCatalogModel"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/autopilot/availablealerts":{"get":{"tags":["Autopilot"],"summary":"Returns all available alerts for autopilots.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetAutopilotAvailableAlerts","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}},"example":["behind_schedule","overdue"]}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/autopilot/{autopilotId}":{"get":{"tags":["Autopilot"],"summary":"Returns the autopilot with the specified id.","description":"Returns the autopilot including its alerts.\r\n            To get the autopilot data the user needs to be the owner of the project or 'read' permissions\r\n            of the feature 'project-master-data' globally or in their project role.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetAutopilotByAutopilotId","parameters":[{"name":"autopilotId","in":"path","description":"The id of the autopilot.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Autopilot"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/clientapplications":{"get":{"tags":["Client Applications"],"summary":"Returns all client applications.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:read` permissions.</Check>","operationId":"GetClientApplications","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ClientApplication"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"read"}},"post":{"tags":["Client Applications"],"summary":"Registers a new client application.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PostClientApplications","requestBody":{"description":"The client application model.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClientApplicationCreateForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClientApplicationCreateResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/clientapplications/register":{"post":{"tags":["Client Applications"],"summary":"Dynamically registers a new OAuth 2.0 client according to RFC 7591.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Allows unauthenticated access.</Check>","operationId":"PostClientApplicationsRegister","requestBody":{"description":"The dynamic client registration request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DynamicClientRegistrationEndpointRequest"}}},"required":true},"responses":{"201":{"description":"Created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DynamicClientRegistrationResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"anonymous":"true"}}},"/clientapplications/{clientId}":{"delete":{"tags":["Client Applications"],"summary":"Deletes the specified client application.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"DeleteClientApplicationsByClientId","parameters":[{"name":"clientId","in":"path","description":"The id of the client application.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}},"get":{"tags":["Client Applications"],"summary":"Returns the client application with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:read` permissions.</Check>","operationId":"GetClientApplicationsByClientId","parameters":[{"name":"clientId","in":"path","description":"The id of the client application.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClientApplication"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"read"}},"put":{"tags":["Client Applications"],"summary":"Updates the client application with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PutClientApplicationsByClientId","parameters":[{"name":"clientId","in":"path","description":"The id of the client application.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"The client application model.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClientApplicationUpdateForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClientApplication"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/clientapplications/{clientId}/generateapikey":{"post":{"tags":["Client Applications"],"summary":"Generates an API key for the specified client application.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:read` permissions.</Check>","operationId":"PostClientApplicationsGenerateApiKeyByClientId","parameters":[{"name":"clientId","in":"path","description":"The id of the client application.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"The model to generate an API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClientApplicationApiKeyForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokenResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"read"}}},"/clientapplications/{clientId}/generatesecret":{"post":{"tags":["Client Applications"],"summary":"Generates a new secret for the specified client application.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PostClientApplicationsGenerateSecretByClientId","parameters":[{"name":"clientId","in":"path","description":"The id of the client application.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClientApplicationGeneratePasswordResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/companies":{"get":{"tags":["Companies"],"summary":"Returns all companies.","description":"Returns all companies in the workspace.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `company-master-data:read` permissions.</Check>","operationId":"GetCompanies","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Company"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","company-master-data":"read"}},"post":{"tags":["Companies"],"summary":"Creates a company.","description":"Creates a company and returns the created company.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `company-master-data:write` permissions.</Check>","operationId":"PostCompany","requestBody":{"description":"The company to create.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompanyForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Company"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","company-master-data":"write"}}},"/companies/deletetags":{"post":{"tags":["CompanyTags"],"summary":"Removes a tag from all companies.","description":"Removes the specified tag from every company in the workspace.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `company-master-data:write` permissions.</Check>","operationId":"PostCompaniesDeleteTags","requestBody":{"description":"The model with the tag to be removed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteTagForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","company-master-data":"write"}}},"/companies/industries":{"get":{"tags":["Companies"],"summary":"Returns all company industries in use.","description":"Returns the distinct company industries currently used in the workspace.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `company-master-data:read` permissions.</Check>","operationId":"GetCompaniesIndustries","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","company-master-data":"read"}}},"/companies/tags":{"get":{"tags":["CompanyTags"],"summary":"Returns company tags in use.","description":"Returns all tags currently used by companies.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetCompanyTags","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/BaseTagModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/companies/updatetags":{"post":{"tags":["CompanyTags"],"summary":"Updates a tag for all companies.","description":"Updates a tag across all companies. The tag can be renamed or merged with an existing tag according to the submitted options.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `company-master-data:write` permissions.</Check>","operationId":"PostCompaniesUpdateTags","requestBody":{"description":"The model containing the tag updates.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagUpdateForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","company-master-data":"write"}}},"/companies/{companyId}":{"get":{"tags":["Companies"],"summary":"Returns the specified company.","description":"Returns the specified company. External companies omit contact information, tags, project counts, descriptions, and industries.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `company-master-data:read` permissions.</Check>","operationId":"GetCompanyById","parameters":[{"name":"companyId","in":"path","description":"The id of the company.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Company"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","company-master-data":"read"}},"put":{"tags":["Companies"],"summary":"Updates the specified company.","description":"Updates the specified company's name, description, and industry.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `company-master-data:write` permissions.</Check>","operationId":"PutCompanyById","parameters":[{"name":"companyId","in":"path","description":"The id of the company to update.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model with updated company data.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompanyForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Company"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","company-master-data":"write"}}},"/companies/{companyId}/addtags":{"post":{"tags":["CompanyTags"],"summary":"Adds tags to the specified company.","description":"Adds the submitted tags and returns the tags assigned to the specified company.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `company-master-data:write` permission for the specified company.</Check>","operationId":"PostCompanyAddTagsByCompanyId","parameters":[{"name":"companyId","in":"path","description":"The id of the company to add tags to.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model containing the tags to be added.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagForm"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/BaseTagModel"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/companies/{companyId}/contactinfo":{"get":{"tags":["Companies"],"summary":"Returns the company's contact information.","description":"Returns all contact information stored for the specified company.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `company-master-data:read` permissions.</Check>","operationId":"GetCompanyContactInfoByCompanyId","parameters":[{"name":"companyId","in":"path","description":"The id of the company.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ContactInfoForCompanies"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","company-master-data":"read"}},"post":{"tags":["Companies"],"summary":"Creates company contact information.","description":"Creates contact information for the specified company and refreshes its address data when needed.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `company-master-data:write` permissions.</Check>","operationId":"PostCompanyContactInfoByCompanyId","parameters":[{"name":"companyId","in":"path","description":"The id of the company.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The contact info to create.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactInfoForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactInfoForCompanies"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","company-master-data":"write"}}},"/companies/{companyId}/contactinfo/{contactInfoId}":{"delete":{"tags":["Companies"],"summary":"Deletes company contact information.","description":"Deletes the specified contact information from the company and refreshes its address data when needed. The contact information must belong to the specified company.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `company-master-data:write` permissions.</Check>","operationId":"DeleteCompanyContactInfoByCompanyIdAndContactInfoId","parameters":[{"name":"companyId","in":"path","description":"The id of the company.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"contactInfoId","in":"path","description":"The id of the contact info.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","company-master-data":"write"}},"get":{"tags":["Companies"],"summary":"Returns specified company contact information.","description":"Returns the specified company contact information. The contact information must belong to the specified company.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `company-master-data:read` permissions.</Check>","operationId":"GetCompanyContactInfoByCompanyIdAndContactInfoId","parameters":[{"name":"companyId","in":"path","description":"The id of the company.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"contactInfoId","in":"path","description":"The id of the contact info.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactInfoForCompanies"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","company-master-data":"read"}},"put":{"tags":["Companies"],"summary":"Updates company contact information.","description":"Updates the specified company contact information and refreshes the company's address data when needed. The contact information must belong to the specified company.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `company-master-data:write` permissions.</Check>","operationId":"PutCompanyContactInfoByCompanyIdAndContactInfoId","parameters":[{"name":"companyId","in":"path","description":"The id of the company.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"contactInfoId","in":"path","description":"The id of the contact info.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The updated contact info data.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactInfoForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactInfoForCompanies"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","company-master-data":"write"}}},"/companies/{companyId}/delete":{"post":{"tags":["Companies"],"summary":"Deletes the specified company.","description":"Deletes the specified company using the selected delete operation. Linked projects can be detached, moved to another company, or deleted with related work.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `company-master-data:write` permissions.</Check>","operationId":"PostCompanyDeleteByCompanyId","parameters":[{"name":"companyId","in":"path","description":"The id of the company.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model describing how to delete the company.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompanyDeleteForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","company-master-data":"write"}}},"/companies/{companyId}/deletetags":{"post":{"tags":["CompanyTags"],"summary":"Removes tags from the specified company.","description":"Removes the submitted tags from the specified company. A partial failure returns a multi-status response with the reason for each tag that could not be removed.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `company-master-data:write` permission for the specified company.</Check>","operationId":"PostCompanyDeleteTagsByCompanyId","parameters":[{"name":"companyId","in":"path","description":"The id of the company.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The tags to remove.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/DeleteTagForm"}}}},"required":true},"responses":{"204":{"description":"No Content"},"207":{"description":"Multi-Status"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/companies/{companyId}/externalfiles":{"post":{"tags":["Company Files"],"summary":"Creates external file references for the specified company.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostExternalFilesByCompanyNameAndCompanyId","parameters":[{"name":"companyId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ExternalFileForm"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileInfo"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/companies/{companyId}/files":{"delete":{"tags":["Company Files"],"summary":"Deletes all files and versions for the specified company.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteFilesByCompanyNameAndCompanyId","parameters":[{"name":"companyId","in":"path","description":"The company id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Company Files"],"summary":"Uploads a file for the specified company.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesByCompanyNameAndCompanyId","parameters":[{"name":"companyId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/companies/{companyId}/files/byurl":{"post":{"tags":["Company Files"],"summary":"Uploads a file from a public URL for the specified company.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesByUrlByCompanyNameAndCompanyId","parameters":[{"name":"companyId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FilePostForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/companies/{companyId}/files/{fileId}":{"delete":{"tags":["Company Files"],"summary":"Deletes the specified company file and its versions.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteFilesByCompanyNameAndCompanyIdAndFileId","parameters":[{"name":"companyId","in":"path","description":"The company id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The file id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Company Files"],"summary":"Returns the file with the specified id of the company with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesByCompanyNameAndCompanyIdAndFileId","parameters":[{"name":"companyId","in":"path","description":"The id of the company.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The id of the file.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Company Files"],"summary":"Updates metadata for the specified file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PutFilesByCompanyNameAndCompanyIdAndFileId","parameters":[{"name":"companyId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfoUpdateForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/companies/{companyId}/files/{fileId}/changeentity":{"post":{"tags":["Company Files"],"summary":"Changes the company that owns the specified file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesChangeCompanyByCompanyNameAndCompanyIdAndFileId","parameters":[{"name":"companyId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileEntityForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/companies/{companyId}/files/{fileId}/copy":{"post":{"tags":["Company Files"],"summary":"Copies the specified file to another company.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesCopyByCompanyNameAndCompanyIdAndFileId","parameters":[{"name":"companyId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileCopyForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/companies/{companyId}/files/{fileId}/download":{"get":{"tags":["Company Files"],"summary":"Returns the latest content of the specified company file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesDownloadByCompanyNameAndCompanyIdAndFileId","parameters":[{"name":"companyId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"width","in":"query","schema":{"type":"number","format":"double"}},{"name":"height","in":"query","schema":{"type":"number","format":"double"}},{"name":"crop","in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/companies/{companyId}/files/{fileId}/pdf":{"get":{"tags":["Company Files"],"summary":"Returns the specified company file as PDF.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesPdfByCompanyNameAndCompanyIdAndFileId","parameters":[{"name":"companyId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"inline","in":"query","schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/companies/{companyId}/files/{fileId}/shareurl":{"get":{"tags":["Company Files"],"summary":"Returns a public URL for the specified file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesShareUrlByCompanyNameAndCompanyIdAndFileId","parameters":[{"name":"companyId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/companies/{companyId}/files/{fileId}/versions":{"get":{"tags":["Company Files"],"summary":"Returns all versions of the specified company file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsByCompanyNameAndCompanyIdAndFileId","parameters":[{"name":"companyId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileVersion"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Company Files"],"summary":"Uploads a new version of the specified company file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesVersionsByCompanyNameAndCompanyIdAndFileId","parameters":[{"name":"companyId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileVersion"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/companies/{companyId}/files/{fileId}/versions/{versionId}":{"get":{"tags":["Company Files"],"summary":"Returns the company file version with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsByCompanyNameAndCompanyIdAndFileIdAndVersionId","parameters":[{"name":"companyId","in":"path","description":"The id of the company.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The id of the file.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"versionId","in":"path","description":"The id of the file version.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileVersion"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/companies/{companyId}/files/{fileId}/versions/{versionId}/download":{"get":{"tags":["Company Files"],"summary":"Returns the content of the specified company file version.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsDownloadByCompanyNameAndCompanyIdAndFileIdAndVersionId","parameters":[{"name":"companyId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"versionId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/companies/{companyId}/tags":{"get":{"tags":["CompanyTags"],"summary":"Returns tags for the specified company.","description":"Returns the tags assigned to the specified company.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `company-master-data:read` permission for the specified company.</Check>","operationId":"GetCompanyTagsByCompanyId","parameters":[{"name":"companyId","in":"path","description":"The id of the company.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/BaseTagModel"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/customfielddefinitions":{"get":{"tags":["CustomFields"],"summary":"Returns all custom field definitions.","description":"Returns all custom field definitions in the workspace. Set `includeLinkedProjectIds` to include the projects linked to each definition.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetCustomFieldDefinitions","parameters":[{"name":"includeLinkedProjectIds","in":"query","description":"Whether to include linked project Ids in the response.","schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CustomFieldDefinitionWithSelectionOptionsAndLinkedProjectIds"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["CustomFields"],"summary":"Creates a custom field definition.","description":"Creates a custom field definition that can be linked to project templates, projects, or tasks according to its entity type.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostCustomFieldDefinition","requestBody":{"description":"The model containing the details for creating a new custom field definition.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomFieldDefinitionPostForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomFieldDefinitionWithSelectionOptions"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/customfielddefinitions/{customFieldDefinitionId}":{"delete":{"tags":["CustomFields"],"summary":"Deletes the specified custom field definition.","description":"Deletes the specified custom field definition, its selection options, its links, and all dependent task and task-template values.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"DeleteCustomFieldDefinitionById","parameters":[{"name":"customFieldDefinitionId","in":"path","description":"The id of the custom field definition to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}},"put":{"tags":["CustomFields"],"summary":"Updates the specified custom field definition.","description":"Updates the definition's name, type, or order. Type changes are limited to compatible date and date-time types or select and colored-select types.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PutCustomFieldDefinitionById","parameters":[{"name":"customFieldDefinitionId","in":"path","description":"The id of the custom field definition to update.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to change the custom field definition.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomFieldDefinitionPutForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomFieldDefinition"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/customfielddefinitions/{customFieldDefinitionId}/selectionoptions":{"post":{"tags":["CustomFields"],"summary":"Creates an option for a custom field.","description":"Creates a selection option for the specified custom field definition and places it at the requested order.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostCustomFieldDefinitionSelectionOptionsByCustomFieldDefinitionId","parameters":[{"name":"customFieldDefinitionId","in":"path","description":"The id of the custom field definition to add a selection option to.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model describing the selection option to create.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomFieldSelectionOptionsForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomFieldSelectionOption"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/customfielddefinitions/{customFieldDefinitionId}/selectionoptions/{selectionOptionId}":{"delete":{"tags":["CustomFields"],"summary":"Deletes a custom field selection option.","description":"Deletes the specified selection option from the custom field definition and clears references to that option from existing custom field values.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"DeleteCustomFieldDefinitionSelectionOptionByCustomFieldDefinitionIdAndSelectionOptionId","parameters":[{"name":"customFieldDefinitionId","in":"path","description":"The id of the custom field definition containing the selection option.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"selectionOptionId","in":"path","description":"The id of the selection option to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}},"put":{"tags":["CustomFields"],"summary":"Updates a custom field selection option.","description":"Updates the specified selection option's value, color, and order within its custom field definition.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PutCustomFieldDefinitionSelectionOptionByCustomFieldDefinitionIdAndSelectionOptionId","parameters":[{"name":"customFieldDefinitionId","in":"path","description":"The id of the custom field definition containing the selection option.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"selectionOptionId","in":"path","description":"The id of the selection option to update.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model describing the updated selection option.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomFieldSelectionOptionsForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomFieldSelectionOption"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/documents":{"get":{"tags":["Documents"],"summary":"Returns all documents.","description":"Returns documents visible to the current user. Set `includeTrashedDocuments` to include documents in the trash.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `read` permission for each returned document.</Check>","operationId":"GetDocuments","parameters":[{"name":"includeTrashedDocuments","in":"query","description":"Whether to include trashed documents in the result.","schema":{"type":"boolean","default":false}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/DocumentModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Documents"],"summary":"Creates a document.","description":"Creates a document with optional HTML or Markdown content. Set `contentFormat` to `html` or `markdown`; HTML is the default. Canonical awork Markdown preserves safe editor structures during re-import.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostDocument","requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/DocumentPostForm"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentModel"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documents/trash/{documentId}/restore":{"post":{"tags":["Documents"],"summary":"Restores the specified document.","description":"Restores the specified document from the trash. Related versions, content, and child documents are restored asynchronously. Restoring an already active document has no effect.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `write` permission for the specified document.</Check>","operationId":"PostDocumentsTrashRestoreByDocumentId","parameters":[{"name":"documentId","in":"path","description":"The id of the document to restore.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"alsoRestoreChildren","in":"query","description":"Whether to also restore children documents.","schema":{"type":"boolean","default":true}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documents/{documentId}":{"delete":{"tags":["Documents"],"summary":"Deletes the specified document.","description":"Moves the specified document to the trash. The document is moved synchronously; child documents and related entities are moved asynchronously. Set `alsoDeleteChildren` to control whether child documents are included.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `manage` permission for the specified document.</Check>","operationId":"DeleteDocumentById","parameters":[{"name":"documentId","in":"path","description":"The id of the document to delete.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"alsoDeleteChildren","in":"query","description":"Whether to also delete children documents. If false, the children's parent references are updated to point to the deleted document's parent.","schema":{"type":"boolean","default":true}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Documents"],"summary":"Returns the specified document.","description":"Returns the specified document when it is visible to the current user.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `read` permission for the specified document.</Check>","operationId":"GetDocumentById","parameters":[{"name":"documentId","in":"path","description":"The id of the document to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentModel"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Documents"],"summary":"Updates the specified document.","description":"Updates the specified document's content, location, sharing, or display properties. Moving a document can change its access rules and may be restricted by the workspace plan.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `write` permission for the specified document.</Check>","operationId":"PutDocumentById","parameters":[{"name":"documentId","in":"path","description":"The id of the document to update.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The document form data with the updated information.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documents/{documentId}/comments":{"delete":{"tags":["DocumentComments"],"summary":"Deletes all comments of the specified document.","description":"Deletes all comments of the specified document.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteCommentsByDocumentNameAndDocumentId","parameters":[{"name":"documentId","in":"path","description":"The id of the document.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["DocumentComments"],"summary":"Returns all comments of the document with the specified id.","description":"Returns all comments of the document with the specified id. The user needs read permissions on the document.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetCommentsByDocumentNameAndDocumentId","parameters":[{"name":"documentId","in":"path","description":"The id of the document.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Comment"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["DocumentComments"],"summary":"Creates a new comment on the document with the specified id.","description":"Creates a new comment on the document with the specified id.\r\n            A user can only create a comment for him/herself, except for admins and api users.\r\n            \r\n            <Check title=\"Required Permissions\" icon=\"key\">To create a comment the user must have at least `read` permissions on the specified document.</Check>","operationId":"PostCommentsByDocumentNameAndDocumentId","parameters":[{"name":"documentId","in":"path","description":"The id of the document to create the comment for.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to create the comment.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommentForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Comment"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documents/{documentId}/comments/{commentId}":{"delete":{"tags":["DocumentComments"],"summary":"Deletes the comment with the specified id on the document with the specified id.","description":"Deletes the comment with the specified id on the document with the specified id.\r\n            The delete includes the reactions of the comment.\r\n            If there are any replies to the comment, they will be deleted as well.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteCommentByDocumentNameAndDocumentIdAndCommentId","parameters":[{"name":"documentId","in":"path","description":"The id of the document.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"commentId","in":"path","description":"The id of the comment.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["DocumentComments"],"summary":"Returns the comment with the specified id of the document with the specified id.","description":"Returns the comment with the specified id of the document with the specified id.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetCommentByDocumentNameAndDocumentIdAndCommentId","parameters":[{"name":"documentId","in":"path","description":"The id of the document.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"commentId","in":"path","description":"The id of the comment.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Comment"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["DocumentComments"],"summary":"Updates the comment with the specified id on the document with the specified id.","description":"<Check title=\"Required Permissions\" icon=\"key\">To update a comment the user must either have at least `read` permissions on the specified document, be the creator of the comment or be admin.</Check>","operationId":"PutCommentByDocumentNameAndDocumentIdAndCommentId","parameters":[{"name":"documentId","in":"path","description":"The id of the document.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"commentId","in":"path","description":"The id of the comment.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model with the updated comment information.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommentPutForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Comment"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documents/{documentId}/comments/{commentId}/react":{"post":{"tags":["DocumentComments"],"summary":"Updates the reactions of the comment with the specified id on the document with the specified id.","description":"<Check title=\"Required Permissions\" icon=\"key\">To update a reaction of a comment the user must have at least `read` permissions on the specified document.</Check>","operationId":"PostCommentReactByDocumentNameAndDocumentIdAndCommentId","parameters":[{"name":"documentId","in":"path","description":"The id of the document.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"commentId","in":"path","description":"The id of the comment.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model used to update the reactions of the comment with the specified id.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactionForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documents/{documentId}/comments/{commentId}/setresolved":{"post":{"tags":["DocumentComments"],"summary":"Sets the resolved status of a comment.","description":"Sets the resolved status of a comment. Users need write permissions on the document to resolve/unresolve comments.\r\n            Currently, the IsResolved property is only available for document comments.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostCommentSetResolvedByDocumentNameAndDocumentIdAndCommentId","parameters":[{"name":"documentId","in":"path","description":"The id of the document.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"commentId","in":"path","description":"The id of the comment.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The resolved status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetResolvedForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Comment"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documents/{documentId}/content":{"get":{"tags":["Documents"],"summary":"Returns the current document content.","description":"Returns the current version as HTML by default. Use `format=markdown` for canonical Markdown, or `streamAsFile` to receive file content.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `read` permission for the specified document.</Check>","operationId":"GetDocumentContentByDocumentId","parameters":[{"name":"documentId","in":"path","description":"The id of the document.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"streamAsFile","in":"query","description":"Whether to stream the content as a file. By default, the document's content is returned in a model containing a property `Content` holding the content as a string.","schema":{"type":"boolean","default":false}},{"name":"format","in":"query","description":"The response format. Supported values are `html` and `markdown`.","schema":{"type":"string","default":"html"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string"}}}},"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Documents"],"summary":"Updates the specified document content.","description":"Updates document content using UTF-8 HTML or Markdown. Set `contentFormat` to `html` or `markdown`; HTML is the default. Canonical awork Markdown preserves safe editor structures during re-import.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `write` permission for the specified document.</Check>","operationId":"PutDocumentContentByDocumentId","parameters":[{"name":"documentId","in":"path","description":"The id of the document to update.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/DocumentContentForm"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documents/{documentId}/contributors":{"post":{"tags":["Documents"],"summary":"Adds contributors to the specified document.","description":"Adds contributors and grants them access to the document. Access for related entities is recalculated asynchronously.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `write` permission for the specified document.</Check>","operationId":"PostDocumentContributorsByDocumentId","parameters":[{"name":"documentId","in":"path","description":"The id of the document to add contributors to.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model used to add the document contributors.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ContributorPostForm"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/MinimalContributorModel"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documents/{documentId}/contributors/{documentContributorId}":{"delete":{"tags":["Documents"],"summary":"Deletes a contributor from the specified document.","description":"Deletes only explicit contributors; inherited contributors cannot be removed. Access for related entities is recalculated asynchronously.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `write` permission for the specified document.</Check>","operationId":"DeleteDocumentContributorByDocumentIdAndDocumentContributorId","parameters":[{"name":"documentId","in":"path","description":"The id of the document to delete the contributor from.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"documentContributorId","in":"path","description":"The id of the document contributor to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Documents"],"summary":"Updates a document contributor's access.","description":"Updates the specified contributor's access to the document. Access for related entities is recalculated asynchronously.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `write` permission for the specified document.</Check>","operationId":"PutDocumentContributorByDocumentIdAndDocumentContributorId","parameters":[{"name":"documentId","in":"path","description":"The id of the document to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"documentContributorId","in":"path","description":"The id of the document contributor to update.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model used to update the document contributor's access.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContributorForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MinimalContributorModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documents/{documentId}/duplicate":{"post":{"tags":["Documents"],"summary":"Duplicates the specified document.","description":"Duplicates the document's content, permissions, and child documents. Child duplication may complete asynchronously.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `read` permission for the specified document.</Check>","operationId":"PostDocumentDuplicateByDocumentId","parameters":[{"name":"documentId","in":"path","description":"The id of the document to duplicate.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documents/{documentId}/externalfiles":{"post":{"tags":["Document Files"],"summary":"Creates external file references for the specified document.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostExternalFilesByDocumentNameAndDocumentId","parameters":[{"name":"documentId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ExternalFileForm"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileInfo"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documents/{documentId}/files":{"delete":{"tags":["Document Files"],"summary":"Deletes all files and versions for the specified document.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteFilesByDocumentNameAndDocumentId","parameters":[{"name":"documentId","in":"path","description":"The document id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Document Files"],"summary":"Returns all files of the specified document.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesByDocumentNameAndDocumentId","parameters":[{"name":"documentId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileInfo"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Document Files"],"summary":"Uploads a file for the specified document.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesByDocumentNameAndDocumentId","parameters":[{"name":"documentId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documents/{documentId}/files/byuploadid":{"post":{"tags":["FileUpload"],"summary":"Creates a file from an upload id.","description":"After a file has been uploaded to an upload URL generated from the <see cref=\"T:Awork.Files.Service.Feature.FileUpload.Endpoints.PostGenerateUploadURL\" /> endpoint, this endpoint can be used to create a file document from the uploaded file by providing the upload id.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostUploadByUploadId","parameters":[{"name":"documentId","in":"path","description":"The id of the document to attach the file to.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model describing the uploaded file metadata.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadByUploadIdForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documents/{documentId}/files/byurl":{"post":{"tags":["Document Files"],"summary":"Uploads a file from a public URL for the specified document.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesByUrlByDocumentNameAndDocumentId","parameters":[{"name":"documentId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FilePostForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documents/{documentId}/files/{fileId}":{"delete":{"tags":["Document Files"],"summary":"Deletes the specified document file and its versions.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteFilesByDocumentNameAndDocumentIdAndFileId","parameters":[{"name":"documentId","in":"path","description":"The document id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The file id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Document Files"],"summary":"Returns the file with the specified id of the document with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesByDocumentNameAndDocumentIdAndFileId","parameters":[{"name":"documentId","in":"path","description":"The id of the document.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The id of the file.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Document Files"],"summary":"Updates metadata for the specified file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PutFilesByDocumentNameAndDocumentIdAndFileId","parameters":[{"name":"documentId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfoUpdateForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documents/{documentId}/files/{fileId}/copy":{"post":{"tags":["Document Files"],"summary":"Copies the specified file to another document.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesCopyByDocumentNameAndDocumentIdAndFileId","parameters":[{"name":"documentId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileCopyForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documents/{documentId}/files/{fileId}/download":{"get":{"tags":["Document Files"],"summary":"Returns the latest content of the specified document file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesDownloadByDocumentNameAndDocumentIdAndFileId","parameters":[{"name":"documentId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"width","in":"query","schema":{"type":"number","format":"double"}},{"name":"height","in":"query","schema":{"type":"number","format":"double"}},{"name":"crop","in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documents/{documentId}/files/{fileId}/shareurl":{"get":{"tags":["Document Files"],"summary":"Returns a public URL for the specified file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesShareUrlByDocumentNameAndDocumentIdAndFileId","parameters":[{"name":"documentId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documents/{documentId}/files/{fileId}/versions":{"get":{"tags":["Document Files"],"summary":"Returns all versions of the specified document file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsByDocumentNameAndDocumentIdAndFileId","parameters":[{"name":"documentId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileVersion"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Document Files"],"summary":"Uploads a new version of the specified document file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesVersionsByDocumentNameAndDocumentIdAndFileId","parameters":[{"name":"documentId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileVersion"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documents/{documentId}/files/{fileId}/versions/{versionId}":{"get":{"tags":["Document Files"],"summary":"Returns the document file version with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsByDocumentNameAndDocumentIdAndFileIdAndVersionId","parameters":[{"name":"documentId","in":"path","description":"The id of the document.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The id of the file.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"versionId","in":"path","description":"The id of the file version.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileVersion"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documents/{documentId}/files/{fileId}/versions/{versionId}/download":{"get":{"tags":["Document Files"],"summary":"Returns the content of the specified document file version.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsDownloadByDocumentNameAndDocumentIdAndFileIdAndVersionId","parameters":[{"name":"documentId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"versionId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documents/{documentId}/teams":{"post":{"tags":["Documents"],"summary":"Adds teams to the specified document.","description":"Adds teams and changes their access to the document. Access for related entities is recalculated asynchronously.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `write` permission for the specified document.</Check>","operationId":"PostDocumentTeamsByDocumentId","parameters":[{"name":"documentId","in":"path","description":"The id of the document.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model used to add document teams to the document.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/EntityToTeamPostForm"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/MinimalEntityToTeamModel"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documents/{documentId}/teams/{documentToTeamId}":{"delete":{"tags":["Documents"],"summary":"Deletes a team from the specified document.","description":"Deletes only explicit document teams; inherited teams cannot be removed. Access for related entities is recalculated asynchronously.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `write` permission for the specified document.</Check>","operationId":"DeleteDocumentTeamByDocumentIdAndDocumentToTeamId","parameters":[{"name":"documentId","in":"path","description":"The id of the document to delete the team from.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"documentToTeamId","in":"path","description":"The id of the document to team connection.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Documents"],"summary":"Updates a document team's access.","description":"Updates the specified team's access to the document. Access for related entities is recalculated asynchronously.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `write` permission for the specified document.</Check>","operationId":"PutDocumentTeamByDocumentIdAndDocumentToTeamId","parameters":[{"name":"documentId","in":"path","description":"The id of the document.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"documentToTeamId","in":"path","description":"The id of the document to team connection to update.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model used to update document teams of a document.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntityToTeamForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MinimalEntityToTeamModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documentspaces":{"get":{"tags":["DocumentSpaces"],"summary":"Returns all document spaces.","description":"Returns document spaces visible to the current user.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `read` permission for each returned document space.</Check>","operationId":"GetDocumentSpaces","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/DocumentSpaceModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["DocumentSpaces"],"summary":"Creates a document space.","description":"Creates a document space and assigns the requested workspace access level. The space is inserted into the workspace order.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin.</Check>","operationId":"PostDocumentSpace","requestBody":{"description":"The model used to create the document space.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentSpaceForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentSpaceModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true"}}},"/documentspaces/{documentSpaceId}":{"delete":{"tags":["DocumentSpaces"],"summary":"Deletes the specified document space.","description":"Deletes the specified document space. Documents in the space and related entities, such as comments, are permanently deleted asynchronously.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin.</Check>","operationId":"DeleteDocumentSpaceById","parameters":[{"name":"documentSpaceId","in":"path","description":"The id of the document space to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true"}},"get":{"tags":["DocumentSpaces"],"summary":"Returns the specified document space.","description":"Returns the specified document space when it is visible to the current user.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `read` permission for the specified document space.</Check>","operationId":"GetDocumentSpaceById","parameters":[{"name":"documentSpaceId","in":"path","description":"The id of the document space to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentModel"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["DocumentSpaces"],"summary":"Updates the specified document space.","description":"Updates the space name, icon, color, order, or workspace access level and reapplies its position in the workspace order.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin.</Check>","operationId":"PutDocumentSpaceById","parameters":[{"name":"documentSpaceId","in":"path","description":"The id of the document space.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model used to update the document space.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentSpaceForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentSpaceModel"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true"}}},"/documentspaces/{documentSpaceId}/contributors":{"post":{"tags":["DocumentSpaces"],"summary":"Adds contributors to the specified document space.","description":"Adds contributors and changes their access to the document space and its documents.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin.</Check>","operationId":"PostDocumentSpaceContributorsByDocumentSpaceId","parameters":[{"name":"documentSpaceId","in":"path","description":"The id of the document space.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model with the list of contributors to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ContributorPostForm"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MinimalContributorModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true"}}},"/documentspaces/{documentSpaceId}/contributors/{documentSpaceContributorId}":{"delete":{"tags":["DocumentSpaces"],"summary":"Deletes a document space contributor.","description":"Deletes the specified contributor and removes their access to the document space and its documents.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin.</Check>","operationId":"DeleteDocumentSpaceContributorByDocumentSpaceIdAndDocumentSpaceContributorId","parameters":[{"name":"documentSpaceId","in":"path","description":"The id of the document space.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"documentSpaceContributorId","in":"path","description":"The id of the document space contributor to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true"}},"put":{"tags":["DocumentSpaces"],"summary":"Updates a document space contributor's access.","description":"Updates the specified contributor's access to the document space and its documents.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin.</Check>","operationId":"PutDocumentSpaceContributorByDocumentSpaceIdAndDocumentSpaceContributorId","parameters":[{"name":"documentSpaceId","in":"path","description":"The id of the document space.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"documentSpaceContributorId","in":"path","description":"The id of the document space contributor.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model with the updated contributor data.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContributorForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MinimalContributorModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true"}}},"/documentspaces/{documentSpaceId}/documents":{"get":{"tags":["Documents"],"summary":"Returns documents in the specified document space.","description":"Returns non-trashed documents visible in the specified document space.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `read` permission for the specified document space.</Check>","operationId":"GetDocumentSpaceDocumentsByDocumentSpaceId","parameters":[{"name":"documentSpaceId","in":"path","description":"The id of the document space to retrieve documents from.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/DocumentModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documentspaces/{documentSpaceId}/documents/trash":{"get":{"tags":["Documents"],"summary":"Returns trashed documents in a document space.","description":"Returns deleted documents visible in the specified document space.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `read` permission for the specified document space.</Check>","operationId":"GetDocumentSpaceDocumentsTrashByDocumentSpaceId","parameters":[{"name":"documentSpaceId","in":"path","description":"The id of the document space to retrieve trashed documents from.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/DocumentModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/documentspaces/{documentSpaceId}/teams":{"post":{"tags":["DocumentSpaces"],"summary":"Adds teams to the specified document space.","description":"Adds teams and changes their access to the document space and its documents.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin.</Check>","operationId":"PostDocumentSpaceTeamsByDocumentSpaceId","parameters":[{"name":"documentSpaceId","in":"path","description":"The id of the document space.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model with the list of teams to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/EntityToTeamPostForm"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MinimalEntityToTeamModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true"}}},"/documentspaces/{documentSpaceId}/teams/{documentSpaceToTeamId}":{"delete":{"tags":["DocumentSpaces"],"summary":"Deletes a team from the specified document space.","description":"Deletes the specified team and removes its access to the document space and its documents.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin.</Check>","operationId":"DeleteDocumentSpaceTeamByDocumentSpaceIdAndDocumentSpaceToTeamId","parameters":[{"name":"documentSpaceId","in":"path","description":"The id of the document space.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"documentSpaceToTeamId","in":"path","description":"The id of the document space to team connection.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true"}},"put":{"tags":["DocumentSpaces"],"summary":"Updates a document space team's access.","description":"Updates the specified team's access to the document space and its documents.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin.</Check>","operationId":"PutDocumentSpaceTeamByDocumentSpaceIdAndDocumentSpaceToTeamId","parameters":[{"name":"documentSpaceId","in":"path","description":"The id of the document space.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"documentSpaceToTeamId","in":"path","description":"The id of the document space to team connection.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model with the updated team access.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntityToTeamForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MinimalEntityToTeamModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true"}}},"/files/generateuploadurl":{"post":{"tags":["FileUpload"],"summary":"Generates a URL to upload a file to.","description":"Generates a URL that can be used to upload a file. Use the returned upload id to create a file entry. See <see cref=\"T:Awork.Files.Service.Feature.FileUpload.Endpoints.PostUploadByUploadId\" /> for more information.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostGenerateUploadURL","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GenerateUploadUrlResponseModel"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/files/images/agents/{agentId}":{"delete":{"tags":["Images"],"summary":"Deletes the profile image of the agent with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteFilesImagesByAgentNameAndAgentId","parameters":[{"name":"agentId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Images"],"summary":"Returns the image of the agent with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Allows unauthenticated access.</Check>","operationId":"GetFilesImagesByAgentNameAndAgentId","parameters":[{"name":"agentId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"width","in":"query","schema":{"type":"number","format":"double"}},{"name":"height","in":"query","schema":{"type":"number","format":"double"}},{"name":"crop","in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"304":{"description":"Not Modified","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"anonymous":"true"}},"post":{"tags":["Images"],"summary":"Uploads a new profile image.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesImagesByAgentNameAndAgentId","parameters":[{"name":"agentId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/files/images/agents/{agentId}/byuploadid":{"post":{"tags":["Images"],"summary":"Sets a profile image from a previously uploaded file.","description":"After an image has been uploaded to an upload URL generated by the /files/generateuploadurl endpoint, this endpoint sets the uploaded image as the profile image of the agent by providing the upload id.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesImagesByUploadIdByAgentNameAndAgentId","parameters":[{"name":"agentId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadByUploadIdForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/files/images/companies/{companyId}":{"delete":{"tags":["Images"],"summary":"Deletes the profile image of the company with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteFilesImagesByCompanyNameAndCompanyId","parameters":[{"name":"companyId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Images"],"summary":"Returns the image of the company with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Allows unauthenticated access.</Check>","operationId":"GetFilesImagesByCompanyNameAndCompanyId","parameters":[{"name":"companyId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"width","in":"query","schema":{"type":"number","format":"double"}},{"name":"height","in":"query","schema":{"type":"number","format":"double"}},{"name":"crop","in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"304":{"description":"Not Modified","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"anonymous":"true"}},"post":{"tags":["Images"],"summary":"Uploads a new profile image.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesImagesByCompanyNameAndCompanyId","parameters":[{"name":"companyId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/files/images/companies/{companyId}/byuploadid":{"post":{"tags":["Images"],"summary":"Sets a profile image from a previously uploaded file.","description":"After an image has been uploaded to an upload URL generated by the /files/generateuploadurl endpoint, this endpoint sets the uploaded image as the profile image of the company by providing the upload id.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesImagesByUploadIdByCompanyNameAndCompanyId","parameters":[{"name":"companyId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadByUploadIdForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/files/images/projects/{projectId}":{"delete":{"tags":["Images"],"summary":"Deletes the profile image of the project with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteFilesImagesByProjectNameAndProjectId","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Images"],"summary":"Returns the image of the project with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Allows unauthenticated access.</Check>","operationId":"GetFilesImagesByProjectNameAndProjectId","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"width","in":"query","schema":{"type":"number","format":"double"}},{"name":"height","in":"query","schema":{"type":"number","format":"double"}},{"name":"crop","in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"304":{"description":"Not Modified","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"anonymous":"true"}},"post":{"tags":["Images"],"summary":"Uploads a new profile image.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesImagesByProjectNameAndProjectId","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/files/images/projects/{projectId}/byuploadid":{"post":{"tags":["Images"],"summary":"Sets a profile image from a previously uploaded file.","description":"After an image has been uploaded to an upload URL generated by the /files/generateuploadurl endpoint, this endpoint sets the uploaded image as the profile image of the project by providing the upload id.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesImagesByUploadIdByProjectNameAndProjectId","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadByUploadIdForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/files/images/projecttemplates/{projecttemplateId}":{"delete":{"tags":["Images"],"summary":"Deletes the profile image of the projecttemplate with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteFilesImagesByProjectTemplateNameAndProjectTemplateId","parameters":[{"name":"projecttemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Images"],"summary":"Returns the image of the projecttemplate with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Allows unauthenticated access.</Check>","operationId":"GetFilesImagesByProjectTemplateNameAndProjectTemplateId","parameters":[{"name":"projecttemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"width","in":"query","schema":{"type":"number","format":"double"}},{"name":"height","in":"query","schema":{"type":"number","format":"double"}},{"name":"crop","in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"304":{"description":"Not Modified","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"anonymous":"true"}},"post":{"tags":["Images"],"summary":"Uploads a new profile image.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesImagesByProjectTemplateNameAndProjectTemplateId","parameters":[{"name":"projecttemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/files/images/projecttemplates/{projecttemplateId}/byuploadid":{"post":{"tags":["Images"],"summary":"Sets a profile image from a previously uploaded file.","description":"After an image has been uploaded to an upload URL generated by the /files/generateuploadurl endpoint, this endpoint sets the uploaded image as the profile image of the projecttemplate by providing the upload id.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesImagesByUploadIdByProjectTemplateNameAndProjectTemplateId","parameters":[{"name":"projecttemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadByUploadIdForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/files/images/users/{userId}":{"delete":{"tags":["Images"],"summary":"Deletes the profile image of the user with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteFilesImagesByUserNameAndUserId","parameters":[{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Images"],"summary":"Returns the image of the user with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Allows unauthenticated access.</Check>","operationId":"GetFilesImagesByUserNameAndUserId","parameters":[{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"width","in":"query","schema":{"type":"number","format":"double"}},{"name":"height","in":"query","schema":{"type":"number","format":"double"}},{"name":"crop","in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"304":{"description":"Not Modified","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"anonymous":"true"}},"post":{"tags":["Images"],"summary":"Uploads a new profile image.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesImagesByUserNameAndUserId","parameters":[{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/files/images/users/{userId}/byuploadid":{"post":{"tags":["Images"],"summary":"Sets a profile image from a previously uploaded file.","description":"After an image has been uploaded to an upload URL generated by the /files/generateuploadurl endpoint, this endpoint sets the uploaded image as the profile image of the user by providing the upload id.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesImagesByUploadIdByUserNameAndUserId","parameters":[{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadByUploadIdForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/files/images/workspaces/{workspaceId}":{"delete":{"tags":["Images"],"summary":"Deletes the profile image of the workspace with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteFilesImagesByWorkspaceNameAndWorkspaceId","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Images"],"summary":"Returns the image of the workspace with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Allows unauthenticated access.</Check>","operationId":"GetFilesImagesByWorkspaceNameAndWorkspaceId","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"width","in":"query","schema":{"type":"number","format":"double"}},{"name":"height","in":"query","schema":{"type":"number","format":"double"}},{"name":"crop","in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"304":{"description":"Not Modified","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"anonymous":"true"}},"post":{"tags":["Images"],"summary":"Uploads a new profile image.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesImagesByWorkspaceNameAndWorkspaceId","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/files/images/workspaces/{workspaceId}/byuploadid":{"post":{"tags":["Images"],"summary":"Sets a profile image from a previously uploaded file.","description":"After an image has been uploaded to an upload URL generated by the /files/generateuploadurl endpoint, this endpoint sets the uploaded image as the profile image of the workspace by providing the upload id.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesImagesByUploadIdByWorkspaceNameAndWorkspaceId","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadByUploadIdForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/files/images/{entityType}":{"get":{"tags":["SharedFiles"],"summary":"Returns the public profile image.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Allows unauthenticated access.</Check>","operationId":"GetFilesImagesByEntityType","parameters":[{"name":"entityType","in":"path","description":"The entity type for which we are requesting the image.","required":true,"schema":{"type":"string"}},{"name":"token","in":"query","description":"The token to allow access.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"anonymous":"true"}}},"/files/{fileId}/download":{"get":{"tags":["Files"],"summary":"Returns the latest content of the specified file and supports range requests.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesDownloadByFileId","parameters":[{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"width","in":"query","schema":{"type":"number","format":"double"}},{"name":"height","in":"query","schema":{"type":"number","format":"double"}},{"name":"crop","in":"query","schema":{"type":"boolean"}},{"name":"enlarge","in":"query","schema":{"type":"boolean","default":true}},{"name":"inline","in":"query","schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"206":{"description":"Partial Content","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"416":{"description":"Range Not Satisfiable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/files/{fileId}/pdf":{"get":{"tags":["Files"],"summary":"Returns the latest version of the specified file as PDF.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesPdfByFileId","parameters":[{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"inline","in":"query","schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/filters":{"get":{"tags":["Filters"],"summary":"Returns the current user's filters.","description":"Returns the union of filters owned by the requesting user and filters explicitly shared with the requesting user.\r\n            Use the specialized created-by-me and shared-with-me endpoints when only one category is needed.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilters","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Filter"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/filters/{entityType}":{"get":{"tags":["Filters"],"summary":"Returns the current user's filters for the specified user type.","description":"Returns the union of filters owned by the requesting user and filters explicitly shared with the requesting user\r\n            for the requested user type.\r\n            Use the specialized created-by-me and shared-with-me endpoints when only one category is needed.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFiltersByUserType","parameters":[{"name":"entityType","in":"path","description":"The entity type route value.","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Filter"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/filters/{entityType}/evaluate":{"post":{"tags":["Filters"],"summary":"Evaluates a filter definition against the specified user type and returns the filtered results without saving the filter.\n            This endpoint is designed for quick filters where the frontend builds a FilterDefinition dynamically\n            and needs to evaluate it immediately without persisting it to the database.\n            Supports standard paging, ordering, and additional query constraints from query parameters.","description":"Evaluates an ad-hoc filter without persisting it. Useful for testing filters before saving or for temporary filtering needs.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilterEvaluateByUserType","parameters":[{"name":"entityType","in":"path","description":"The entity type name (tasks, projects, companies, users).","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"The filter application form containing the FilterDefinition to evaluate.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApplyFilterForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ObjectPagedResult"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/filters/{filterId}/contributors":{"post":{"tags":["Filters"],"summary":"Adds explicit contributors to the specified filter.","description":"Adding filter contributors grants explicit access to the filter with the specified access levels.\r\n             Existing explicit contributors are ignored and therefore not recreated.\r\n             The filter creator cannot be added as an explicit contributor because ownership is handled implicitly.\r\n            \r\n             <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `manage` permissions for the specified filter.</Check>","operationId":"PostFilterContributorsByFilterId","parameters":[{"name":"filterId","in":"path","description":"The filter that should receive explicit contributors.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The contributor permissions to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ContributorPostForm"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/MinimalContributorModel"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/filters/{filterId}/contributors/{filterContributorId}":{"delete":{"tags":["Filters"],"summary":"Removes an explicit contributor from the specified filter.","description":"Removing a filter contributor revokes that contributor's explicit access to the filter.\r\n             The contributor entry must belong to the specified filter.\r\n            \r\n             <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `manage` permissions for the specified filter.</Check>","operationId":"DeleteFilterContributorByFilterIdAndFilterContributorId","parameters":[{"name":"filterId","in":"path","description":"The filter that owns the contributor entry.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"filterContributorId","in":"path","description":"The contributor entry to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Filters"],"summary":"Updates the access level of an explicit filter contributor.","description":"Updating a filter contributor changes that contributor's explicit access level for the filter.\r\n             The contributor entry must belong to the specified filter.\r\n            \r\n             <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `manage` permissions for the specified filter.</Check>","operationId":"PutFilterContributorByFilterIdAndFilterContributorId","parameters":[{"name":"filterId","in":"path","description":"The filter that owns the contributor entry.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"filterContributorId","in":"path","description":"The contributor entry to update.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The new contributor permission payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContributorForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MinimalContributorModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/filters/{filterId}/teams":{"post":{"tags":["Filters"],"summary":"Adds explicit team permissions to the specified filter.","description":"Adding filter teams grants explicit access to the filter for all members of the specified teams.\r\n             Existing explicit team permissions are ignored and therefore not recreated.\r\n            \r\n             <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `manage` permissions for the specified filter.</Check>","operationId":"PostFilterTeamsByFilterId","parameters":[{"name":"filterId","in":"path","description":"The filter that should receive explicit team permissions.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The team permissions to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/EntityToTeamPostForm"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/MinimalEntityToTeamModel"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/filters/{filterId}/teams/{filterToTeamId}":{"delete":{"tags":["Filters"],"summary":"Removes an explicit team permission from the specified filter.","description":"Removing a filter team permission revokes that team's explicit access to the filter.\r\n             The team permission entry must belong to the specified filter.\r\n            \r\n             <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `manage` permissions for the specified filter.</Check>","operationId":"DeleteFilterTeamByFilterIdAndFilterToTeamId","parameters":[{"name":"filterId","in":"path","description":"The filter that owns the team permission entry.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"filterToTeamId","in":"path","description":"The team permission entry to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Filters"],"summary":"Updates the access level of an explicit team permission on the specified filter.","description":"Updating a filter team permission changes the explicit access level of the referenced team for the filter.\r\n             The team permission entry must belong to the specified filter.\r\n            \r\n             <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `manage` permissions for the specified filter.</Check>","operationId":"PutFilterTeamByFilterIdAndFilterToTeamId","parameters":[{"name":"filterId","in":"path","description":"The filter that owns the team permission entry.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"filterToTeamId","in":"path","description":"The team permission entry to update.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The new team permission payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntityToTeamForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MinimalEntityToTeamModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/invitations":{"get":{"tags":["Invitations"],"summary":"Prevents GET requests to the invitations route from throwing errors.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Allows unauthenticated access.</Check>","operationId":"GetInvitations","responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"anonymous":"true"}},"post":{"tags":["Invitations"],"summary":"Invites a user to a workspace.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Allows unauthenticated access.</Check>","operationId":"PostInvitations","requestBody":{"description":"The invitation details.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Invitation"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvitationResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"anonymous":"true"}}},"/invitations/accept":{"post":{"tags":["Invitations"],"summary":"Accepts an invitation using its invitation code.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Allows unauthenticated access.</Check>","operationId":"PostInvitationsAccept","requestBody":{"description":"The invitation code and optional referral code.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AcceptInvitation"}}},"required":true},"responses":{"200":{"description":"OK"},"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"anonymous":"true"}}},"/me":{"get":{"tags":["Users"],"summary":"Returns the current user and workspace.","description":"Returns the current user's profile together with the selected workspace.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetMe","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserAndWorkspace"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/allavailabletasks":{"get":{"tags":["AssignedTasks"],"summary":"Returns tasks visible to the current user.","description":"Returns tasks available to the current user and removes time details when the user lacks the related time-tracking access.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `read` permission for each returned task.</Check>","operationId":"GetMeAllAvailableTasks","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/assignedtasks":{"get":{"tags":["AssignedTasks"],"summary":"Returns tasks assigned to the current user.","description":"Returns tasks assigned to the current user. Use the assignment date range or `inProgress` to narrow the result.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to view each returned task.</Check>","operationId":"GetMeAssignedTasks","parameters":[{"name":"inProgress","in":"query","description":"Whether to return only assigned project tasks of running projects. Defaults to true.","schema":{"type":"boolean","default":false}},{"name":"assignedOnFrom","in":"query","description":"The start date for filtering by assignment date. If set, tasks are returned only when the assignment date is greater or equal than this value.","schema":{"type":"string","format":"date-time"}},{"name":"assignedOnTo","in":"query","description":"The end date for filtering by assignment date. If set, tasks are returned only when the assignment date is less or equal than this value.","schema":{"type":"string","format":"date-time"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskModel"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/assignedtasks/{taskId}":{"get":{"tags":["AssignedTasks"],"summary":"Returns an assigned task for the current user.","description":"Returns the specified task when it is assigned to the current user. Time-tracking details are included only when permitted.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to view the assigned task.</Check>","operationId":"GetMeAssignedTaskByTaskId","parameters":[{"name":"taskId","in":"path","description":"The id of the task to return.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskModel"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/dashboards":{"get":{"tags":["Dashboards"],"summary":"Returns dashboards for the current user.","description":"Returns dashboards for the current user. Set `includeWidgets` to include widget details. A default dashboard is created when none exists.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be the creator.</Check>","operationId":"GetMeDashboards","parameters":[{"name":"includeWidgets","in":"query","description":"Include widgets.","schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Dashboard"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"owner":"true"}}},"/me/filters":{"get":{"tags":["Filters"],"summary":"Returns the filters created by the current user.","description":"Returns filters that were created by and are owned by the requesting user.\r\n            Shared filters are excluded, even if the requesting user also has explicit access through contributor, team, or workspace permissions.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetMeFilters","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Filter"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/filters/{entityType}":{"get":{"tags":["Filters"],"summary":"Returns the filters created by the current user for the specified user type.","description":"Returns filters that were created by and are owned by the requesting user and match the requested user type.\r\n            Shared filters are excluded, even if the requesting user also has explicit access through contributor, team, or workspace permissions.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetMeFiltersByUserType","parameters":[{"name":"entityType","in":"path","description":"The entity type route value.","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Filter"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Filters"],"summary":"Creates a persisted filter definition for the specified user type.","description":"Creates a new filter owned by the current user.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostMeFilterByUserType","parameters":[{"name":"entityType","in":"path","description":"Route segment identifying the entity type (tasks, projects, companies, users).","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"The filter definition payload supplied by the caller.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FilterForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Filter"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/filters/{entityType}/fromquery":{"post":{"tags":["Filters"],"summary":"Creates a persisted filter from an OData query string.\n            Convenience endpoint for external API consumers who want to create filters using familiar OData syntax.","description":"Creates a filter from an OData filterby query string.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostMeFilterFromQueryByUserType","parameters":[{"name":"entityType","in":"path","description":"Route segment identifying the entity type (tasks, projects, companies, users).","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"The filter query payload containing the filter name, sharing settings, and query string.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FilterFromQueryForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Filter"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/filters/{filterId}":{"delete":{"tags":["Filters"],"summary":"Deletes a filter.","description":"Deletes the filter when the current user has manage access.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteMeFilterById","parameters":[{"name":"filterId","in":"path","description":"Identifier of the filter to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Filters"],"summary":"Returns a single filter by its identifier for the current user.","description":"Returns the filter if the current user has read access.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetMeFilterById","parameters":[{"name":"filterId","in":"path","description":"The filter identifier.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Filter"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Filters"],"summary":"Updates an existing filter definition.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PutMeFilterById","parameters":[{"name":"filterId","in":"path","description":"Identifier of the filter to update.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The updated filter definition supplied by the caller.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FilterForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Filter"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/filters/{filterId}/copy":{"post":{"tags":["Filters"],"summary":"Creates a copy of an existing filter.","description":"Copies the filter definition and query.\r\n            The copied filter will be owned only by the requesting user.\r\n            The name of the copied filter will be \"{original name} (Copy)\" or \"{original name} (Kopie)\" for German users.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostMeFilterCopyByFilterId","parameters":[{"name":"filterId","in":"path","description":"The identifier of the filter to copy.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Filter"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/filters/{filterId}/{entityType}":{"get":{"tags":["Filters"],"summary":"Evaluates a filter by applying it to the specified target user type and returning the filtered results.\n             Supports standard paging, ordering, and additional query constraints from query parameters.","description":"Retrieves and evaluates a saved filter to return matching entities.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetMeFilterByFilterIdAndUserType","parameters":[{"name":"filterId","in":"path","description":"The identifier of the filter to evaluate.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"entityType","in":"path","description":"The entity type name (tasks, projects, companies, users).","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ObjectPagedResult"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/otherprivatetasks":{"get":{"tags":["PrivateTasks"],"summary":"Returns reassigned private tasks.","description":"Returns private tasks originally created by the current user and later assigned to someone else.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetMeOtherPrivateTasks","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskModel"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/otherprivatetasks/{taskId}":{"get":{"tags":["PrivateTasks"],"summary":"Returns a reassigned private task.","description":"Returns the specified private task when it was created by the current user and assigned to someone else.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetMeOtherPrivateTaskByTaskId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskModel"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/otherprivatetasks/{taskId}/checklistitems":{"get":{"tags":["ChecklistItems"],"summary":"Returns the checklist items for a private task.","description":"Returns the checklist items for a private task. The checklist belongs to the specified private task. <Check title=\"Required Permissions\" icon=\"key\">The user must be the creator of the task.</Check>","operationId":"GetMyOtherPrivateTaskChecklistItemsByUserIdAndTaskId","parameters":[{"name":"userId","in":"query","description":"The id of the user.","schema":{"type":"string","format":"uuid"}},{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ChecklistItem"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/otherprivatetasks/{taskId}/checklistitems/{checklistItemId}":{"get":{"tags":["ChecklistItems"],"summary":"Returns a checklist item for a private task.","description":"Returns a checklist item for a private task. The checklist belongs to the specified private task. <Check title=\"Required Permissions\" icon=\"key\">The user must be the creator of the task.</Check>","operationId":"GetMyOtherPrivateTaskChecklistItemByUserIdAndTaskIdAndChecklistItemId","parameters":[{"name":"userId","in":"query","description":"The id of the user.","schema":{"type":"string","format":"uuid"}},{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"checklistItemId","in":"path","description":"The id of the checklist item.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChecklistItem"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/permissions":{"get":{"tags":["Permissions"],"summary":"Returns permissions for the current user.","description":"Returns the current user's permissions for the selected workspace.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetMePermissions","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserPermissionInfoExternal"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/privatedocuments":{"get":{"tags":["Documents"],"summary":"Returns private documents for the current user.","description":"Returns private documents owned by the current user.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetMePrivateDocuments","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/DocumentModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/privatedocuments/trash":{"get":{"tags":["Documents"],"summary":"Returns trashed private documents.","description":"Returns private documents owned by the current user that are in the trash.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetMePrivateDocumentsTrash","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/DocumentModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/privatetasks":{"get":{"tags":["PrivateTasks"],"summary":"Returns private tasks for the current user.","description":"Returns all private tasks owned by the current user.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetMePrivateTasks","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskModel"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/privatetasks/deletetags":{"post":{"tags":["TaskTags"],"summary":"Removes a tag from private tasks.","description":"Removes the submitted tag from the current user's private tasks.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to edit the affected private tasks.</Check>","operationId":"PostMePrivateTasksDeleteTags","requestBody":{"description":"The model to remove the tag from all private tasks.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteTagForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/privatetasks/tags":{"get":{"tags":["TaskTags"],"summary":"Returns tags for the user's private tasks.","description":"Returns tags assigned to the current user's private tasks, including their usage counts.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to view the affected private tasks.</Check>","operationId":"GetMePrivateTasksTags","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/BaseTagModelWithCount"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/privatetasks/taskstatuses":{"get":{"tags":["PrivateTasks"],"summary":"Returns the task statuses for private tasks for the specified user.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetMyPrivateTaskStatuses","parameters":[{"name":"userId","in":"query","description":"The id of the user.","schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskStatus"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/privatetasks/updatetags":{"post":{"tags":["TaskTags"],"summary":"Updates a tag for private tasks.","description":"Updates the submitted tag across the current user's private tasks.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to edit the affected private tasks.</Check>","operationId":"PostMePrivateTasksUpdateTags","requestBody":{"description":"The model to update the tag including the old and new tag names.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagUpdateForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"207":{"description":"Multi-Status"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/privatetasks/{taskId}":{"get":{"tags":["PrivateTasks"],"summary":"Returns a private task for the current user.","description":"Returns the specified private task when it belongs to the current user.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetMePrivateTaskByTaskId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskModel"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/privatetasks/{taskId}/checklistitems":{"get":{"tags":["ChecklistItems"],"summary":"Returns the checklist for a private task.","description":"Returns the checklist for a private task. The checklist belongs to the specified private task. <Check title=\"Required Permissions\" icon=\"key\">The user must be be assigned to the task.</Check>","operationId":"GetMyPrivateTaskChecklistItemsByUserIdAndTaskId","parameters":[{"name":"userId","in":"query","description":"The id of the user.","schema":{"type":"string","format":"uuid"}},{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ChecklistItem"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/privatetasks/{taskId}/checklistitems/{checklistItemId}":{"get":{"tags":["ChecklistItems"],"summary":"Returns a checklist item from a private task.","description":"Returns a checklist item from a private task. The checklist belongs to the specified private task. <Check title=\"Required Permissions\" icon=\"key\">The user must be assigned to the task.</Check>","operationId":"GetMyPrivateTaskChecklistItemByUserIdAndTaskIdAndChecklistItemId","parameters":[{"name":"userId","in":"query","description":"The id of the user.","schema":{"type":"string","format":"uuid"}},{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"checklistItemId","in":"path","description":"The id of the checklist item to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChecklistItem"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/projecttasks":{"get":{"tags":["ProjectTasks"],"summary":"Returns project tasks for the current user.","description":"Returns project tasks visible to the current user.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:read` permission; otherwise only assigned tasks are returned.</Check>","operationId":"GetMeProjectTasks","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/shareddocuments":{"get":{"tags":["Documents"],"summary":"Returns documents shared with the current user.","description":"Returns documents shared directly or through project or document-space membership. Private documents are excluded.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `read` permission for each returned document.</Check>","operationId":"GetMeSharedDocuments","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/DocumentModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/sharedfilters":{"get":{"tags":["Filters"],"summary":"Returns filters explicitly shared with the current user.","description":"Returns filters where the requesting user has been granted explicit access through user permissions,\r\n            team permissions, or workspace-wide filter permissions.\r\n            Excludes filters owned by the requesting user.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetMeSharedFilters","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Filter"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/sharedfilters/{entityType}":{"get":{"tags":["Filters"],"summary":"Returns filters explicitly shared with the current user for the specified user type.","description":"Returns filters where the requesting user has been granted explicit access through user permissions,\r\n            team permissions, or workspace-wide filter permissions and that match the requested user type.\r\n            Excludes filters owned by the requesting user.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetMeSharedFiltersByUserType","parameters":[{"name":"entityType","in":"path","description":"The entity type route value.","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Filter"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/tasks/tags":{"get":{"tags":["AssignedTasks"],"summary":"Returns tags for tasks visible to the user.","description":"Returns tags assigned to tasks visible to the current user. Tags can be filtered by task properties.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to view the affected tasks.</Check>","operationId":"GetMeTasksTags","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/BaseTagModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/me/timeentries/last":{"get":{"tags":["TimeEntries"],"summary":"Returns the last time entry of a specified user.","description":"The last time entry is always the last one that was started.\r\n            Time entries which are started in the future are ignored.\r\n            If a time entry does not have a start time, 12.00 am is automatically assumed as the start time\r\n            for comparison with other time entries from the same day.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or the creator.</Check>","operationId":"GetMyLastTimeEntries","parameters":[{"name":"userId","in":"query","description":"The id of the user.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeTracking"}}}},"204":{"description":"No Content"}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","owner":"true"}}},"/me/timetracking/pause":{"post":{"tags":["TimeTracking"],"summary":"Pauses a running time tracking for a user.","description":"If there is already a paused time tracking nothing happens. If there is no running time tracking, returns NoContent.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be the creator.</Check>","operationId":"PostPauseMyTimeTracking","parameters":[{"name":"userId","in":"query","description":"The id of the user.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeTracking"}}}},"204":{"description":"No Content"}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"owner":"true"}}},"/me/timetracking/resume":{"post":{"tags":["TimeTracking"],"summary":"Resumes a paused time tracking for a user.","description":"If there is already a running time tracking nothing happens. If there is no running time tracking, returns NoContent.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be the creator.</Check>","operationId":"PostResumeMyTimeTracking","parameters":[{"name":"userId","in":"query","description":"The id of the user.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeTracking"}}}},"204":{"description":"No Content"}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"owner":"true"}}},"/me/timetracking/start":{"post":{"tags":["TimeTracking"],"summary":"Starts a new time tracking for a user.","description":"If there is already a running/paused time tracking it will be stopped automatically in order to start the new one.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or the creator.</Check>","operationId":"PostStartMyTimeTracking","parameters":[{"name":"userId","in":"query","description":"The id of the user.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model describing the time tracking to start.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartTimeTrackingForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeTracking"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","owner":"true"}}},"/me/timetracking/stop":{"post":{"tags":["TimeTracking"],"summary":"Stops the currently running time tracking of the specified user.","description":"The request body is optional. You can provide a stopReason to indicate how the tracking was stopped.\r\n            For external API clients, the stopReason is automatically set to \"external-api\" regardless of what is provided.\r\n            For this operation to work there must be a running time tracking for the user.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or the creator.</Check>","operationId":"PostStopMyTimeTracking","parameters":[{"name":"userId","in":"query","description":"The id of the user.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopTimeTrackingForm"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeTracking"}}}},"204":{"description":"No Content"}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","owner":"true"}}},"/permissions/features":{"get":{"tags":["Permissions"],"summary":"Returns available workspace features.","description":"Returns feature keys available in the selected workspace, including AI features when available to the workspace.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetPermissionsFeatures","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}},"example":["https://www.awork.com"]}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/permissions/projectfeatures":{"get":{"tags":["Permissions"],"summary":"Returns available project features.","description":"Returns project feature keys available in the selected workspace, including AI features when available to the workspace.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetPermissionsProjectFeatures","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}},"example":["https://www.awork.com"]}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projectmilestones":{"get":{"tags":["ProjectMilestones"],"summary":"Returns visible project milestones.","description":"Returns project milestones visible to the current user.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:read` permission for each returned project.</Check>","operationId":"GetProjectMilestones","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectMilestone"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["ProjectMilestones"],"summary":"Creates a project milestone.","description":"Creates a milestone in the specified project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be the project creator or have `project-planning-data:write` permission for the project.</Check>","operationId":"PostProjectMilestone","requestBody":{"description":"The model containing milestone details.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectMilestonePostForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectMilestone"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projectmilestones/{milestoneId}":{"get":{"tags":["ProjectMilestones"],"summary":"Returns the specified project milestone.","description":"Returns the specified milestone when its project is visible to the current user.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:read` permission for the project.</Check>","operationId":"GetProjectMilestoneByMilestoneId","parameters":[{"name":"milestoneId","in":"path","description":"The id of the milestone.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectMilestone"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projectmilestones/{projectMilestoneId}":{"delete":{"tags":["ProjectMilestones"],"summary":"Deletes the specified project milestone.","description":"Deletes the specified milestone from its project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be the project creator or have `project-planning-data:write` permission for the project.</Check>","operationId":"DeleteProjectMilestoneById","parameters":[{"name":"projectMilestoneId","in":"path","description":"The id of the project milestone to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["ProjectMilestones"],"summary":"Updates the specified project milestone.","description":"Updates the specified milestone in its project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be the project creator or have `project-planning-data:write` permission for the project.</Check>","operationId":"PutProjectMilestoneById","parameters":[{"name":"projectMilestoneId","in":"path","description":"The id of the project milestone.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model containing milestone details.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectMilestonePutForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectMilestone"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projectroles":{"get":{"tags":["ProjectRoles"],"summary":"Returns project roles in the workspace.","description":"Returns project roles in the workspace. Set `includeMembers` to include each role's members.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetProjectRoles","parameters":[{"name":"includeMembers","in":"query","description":"Whether to include the members of each project role in the response.","schema":{"type":"boolean","default":true}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectRole"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["ProjectRoles"],"summary":"Creates a project role.","description":"Creates a project role with the submitted name and settings.\r\n\r\n<Note title=\"Subscription Level\" icon=\"layer-group\">This endpoint requires the `Standard` plan or higher.</Note>\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PostProjectRole","requestBody":{"description":"The model to create the project role.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectRoleForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectRole"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"},"x-subscriptionlevel":{"minimumPlan":"standard"}}},"/projectroles/byuserid/{userId}":{"get":{"tags":["ProjectRoles"],"summary":"Returns roles assigned to the specified user.","description":"Returns project roles assigned to the specified user in the workspace.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetProjectRolesByUserIdByUserId","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectRole"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projectroles/{projectRoleId}":{"get":{"tags":["ProjectRoles"],"summary":"Returns the specified project role.","description":"Returns the project role with the specified id.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetProjectRoleById","parameters":[{"name":"projectRoleId","in":"path","description":"The id of the project role.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectRole"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["ProjectRoles"],"summary":"Updates the specified project role.","description":"Updates the specified role's name or default status. Changing the default role updates the previous default role.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PutProjectRoleById","parameters":[{"name":"projectRoleId","in":"path","description":"The id of the project role.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to update the project role.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectRoleForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectRole"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/projectroles/{projectRoleId}/delete":{"post":{"tags":["ProjectRoles"],"summary":"Deletes a project role and migrates members.","description":"Deletes the specified project role and moves its members to the role selected in the request.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PostProjectRoleDeleteByProjectRoleId","parameters":[{"name":"projectRoleId","in":"path","description":"The id of the project role.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to delete the project role.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectRoleDeleteForm"}}},"required":true},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/projectroles/{projectRoleId}/permissions":{"get":{"tags":["ProjectRoles"],"summary":"Returns permissions for the specified project role.","description":"Returns permissions assigned to the specified project role. AI role permissions are included only when available to the workspace.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetProjectRolePermissionsByProjectRoleId","parameters":[{"name":"projectRoleId","in":"path","description":"The id of the project role.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/PermissionOfProjectRole"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["ProjectRoles"],"summary":"Updates a permission for a project role.","description":"Creates, updates, or removes the submitted permission for the specified project role. AI role permissions require an eligible workspace plan.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostProjectRolePermissionsByProjectRoleId","parameters":[{"name":"projectRoleId","in":"path","description":"The id of the project role.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to create or update the project role permission.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PermissionOfProjectRoleForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PermissionOfProjectRole"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projects":{"get":{"tags":["Projects"],"summary":"Returns projects visible to the current user.","description":"Returns projects visible to the current user.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `read` permission for each returned project.</Check>","operationId":"GetProjects","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Project"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Projects"],"summary":"Creates a project.","description":"Creates a project in the selected workspace and returns it.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-create:write` permissions.</Check>","operationId":"PostProject","requestBody":{"description":"The model to create the project.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExtendedProjectForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Project"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-create":"write"}}},"/projects/batch/{operation}":{"post":{"tags":["Projects"],"summary":"Applies an operation to selected projects.","description":"Applies the selected operation to each project and returns successful and failed results. Supported operations include changing status or type, linking workflows, updating clients, leads, dates, teams, and tags, and deleting projects.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `write` permission for all projects and related entities modified by the operation.</Check>","operationId":"PostProjectsBatchByOperation","parameters":[{"name":"operation","in":"path","description":"Batch operation route key.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"Validated request body for the selected operation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectBatchOperationForm"}}},"required":true},"responses":{"207":{"description":"Multi-Status","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MultiStatusResult"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/deletetags":{"post":{"tags":["ProjectTags"],"summary":"Removes a tag from all projects.","description":"Removes the submitted tag from every project in the workspace.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-master-data:write` permissions.</Check>","operationId":"PostProjectsDeleteTags","requestBody":{"description":"The model to remove the tag from all projects.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteTagForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-master-data":"write"}}},"/projects/key/{projectKey}":{"get":{"tags":["Projects"],"summary":"Returns the project with the specified key.","description":"Returns the project matching the specified key after normalizing its case and surrounding spaces.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-master-data:read` permission for the project.</Check>","operationId":"GetProjectsKeyByProjectKey","parameters":[{"name":"projectKey","in":"path","description":"The project key to lookup.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Project"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/projecttasks/tags":{"get":{"tags":["ProjectTasks"],"summary":"Returns tags for project tasks.","description":"Returns tags currently assigned to tasks in projects visible to the current user.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetProjectsProjectTasksTags","parameters":[{"name":"projectId","in":"query","description":"The id of the project to filter tags by. Returns tags of all projects if not provided.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/BaseTagModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/tags":{"get":{"tags":["ProjectTags"],"summary":"Returns tags used by projects.","description":"Returns tags currently assigned to projects.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetProjectsTags","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/BaseTagModelWithCount"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/updatetags":{"post":{"tags":["ProjectTags"],"summary":"Updates a tag for all projects.","description":"Updates a tag across all projects. The submitted options can rename or merge the tag.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-master-data:write` permissions.</Check>","operationId":"PostProjectsUpdateTags","requestBody":{"description":"The model containing the tag updates.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagUpdateForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-master-data":"write"}}},"/projects/{projectId}":{"get":{"tags":["Projects"],"summary":"Returns the specified project.","description":"Returns the specified project's details and applies the user's visibility rules.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be the project creator or have `project-master-data:read` permission.</Check>","operationId":"GetProjectById","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Project"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Projects"],"summary":"Updates the specified project.","description":"Updates the specified project's details. Retainer projects derive their time budget from retainer budgets, and changing the description can clear its live-editing document.\r\n            \r\n             <Check title=\"Required Permissions\" icon=\"key\">The user must be the project creator or have `project-master-data:write` permission.</Check>","operationId":"PutProjectById","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model containing the new project details.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectPutForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Project"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/activities":{"get":{"tags":["Project Activities"],"summary":"Returns all activities of the project with the specified id.","description":"The activities contain information about the type of the activity, which property was changed and by whom.\r\n            This contains changes to first-level properties of the project, like name, description, status, etc., as well as several related entities, such as tags, assignments, etc.\r\n            This does not include activities of sub-entities, like tasks of a project or comments on a task.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetProjectActivities","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ActivityModel"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/addprojectmember":{"post":{"tags":["ProjectMembers"],"summary":"Adds a member to the specified project.","description":"Adds a member to the specified project. The member can be responsible when no other responsible member exists, and the selected role must be available for the project's type.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be the project creator or have `project-master-data:manage` permission for the project.</Check>","operationId":"PostProjectAddProjectMemberByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model containing project member details.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectMemberForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectMember"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/addtags":{"post":{"tags":["ProjectTags"],"summary":"Adds tags to the specified project.","description":"Adds the submitted tags and returns the tags assigned to the specified project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-master-data:write` permission for the specified project.</Check>","operationId":"PostProjectAddTagsByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project to add tags for.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model containing the tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagForm"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/BaseTagModel"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/addtaskbundle":{"post":{"tags":["TaskBundles"],"summary":"Adds a task bundle to the specified project.","description":"Adds the submitted task bundle and its tasks to the specified project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:write` permission for the project.</Check>","operationId":"PostProjectAddTaskBundleByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The add Task Bundle form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddTaskBundleForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/allfiles":{"get":{"tags":["Project Files"],"summary":"Returns project files and files of tasks linked to the project.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetProjectsAllFilesByProjectId","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileInfo"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/automations":{"get":{"tags":["Project Automations"],"summary":"Returns all automations of the specified project.","description":"<Check title=\"Required Permissions\" icon=\"key\">The user must be owner of the project or must have `project-master-data:read` permissions on the specified project.</Check>","operationId":"GetProjectAutomations","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Automation"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Project Automations"],"summary":"Creates a new automation for the specified project.","description":"Creates a new automation for the project with the specified id.\r\n            The user needs to be the owner of the project or have 'write' permissions of\r\n            the feature 'project-master-data' globally or in the project.\r\n\r\n<Note title=\"Subscription Level\" icon=\"layer-group\">This endpoint requires the `Standard` plan or higher.</Note>\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostProjectAutomation","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to create the automation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutomationTriggerForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Automation"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"},"x-subscriptionlevel":{"minimumPlan":"standard"}}},"/projects/{projectId}/automations/{automationId}":{"delete":{"tags":["Project Automations"],"summary":"Deletes the specified automation for a given project.","description":"Deletes the specified automation for a given project.\r\n            Also deletes all actions connected to the automation.\r\n            The user needs to be the owner of the project or have 'write' permissions of\r\n            the feature 'project-master-data' globally or in the project.\r\n            Automations created from a workflow cannot be deleted via this endpoint.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteProjectAutomation","parameters":[{"name":"automationId","in":"path","description":"The id of the automation.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Project Automations"],"summary":"Returns a specific automation from a project.","description":"Returns a specific automation of the project with the specified id.\r\n            Returns NotFound if the automation doesnt exist.\r\n            To get the the automation data the user needs to be the owner of the project or\r\n            have 'read' permissions of the feature 'project-master-data' globally or in his project role.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetProjectAutomation","parameters":[{"name":"automationId","in":"path","description":"The id of the automation.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Automation"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Project Automations"],"summary":"Updates the automation with the specified id.","description":"Updates the automation with the specified id.\r\n            The user needs to be the owner of the project or have 'write' permissions of\r\n            the feature 'project-master-data' globally or in the project.\r\n            If the automation was created from a workflow, only the Enabled flag can be changed.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PutProjectAutomation","parameters":[{"name":"automationId","in":"path","description":"The id of the automation.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to update the automation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutomationPutForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Automation"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/automations/{automationId}/actions":{"get":{"tags":["Project Automations"],"summary":"Gets the actions of a project automation.","description":"Gets all actions including their values of an automation.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be owner of the project or must have `project-master-data:read` permissions on the specified project.</Check>","operationId":"GetProjectAutomationActions","parameters":[{"name":"projectId","in":"path","description":"The id of the project of the automation.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"automationId","in":"path","description":"The id of the automation.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Action"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Project Automations"],"summary":"Creates a new action for an automation.","description":"Creates a new action including its values for an automation. Actions cannot be added to automations created from a workflow.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be owner of the project or must have `project-master-data:write` permissions on the specified project.</Check>","operationId":"PostProjectAutomationAction","parameters":[{"name":"projectId","in":"path","description":"The id of the project of the automation.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"automationId","in":"path","description":"The id of the automation.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to create an action.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ActionForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Action"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/automations/{automationId}/actions/{actionId}":{"delete":{"tags":["Project Automations"],"summary":"Deletes an action for a project automation.","description":"Deletes an action for an automation including all its values. Actions of automations created from a workflow cannot be deleted.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be owner of the project or must have `project-master-data:write` permissions on the specified project.</Check>","operationId":"DeleteProjectAutomationAction","parameters":[{"name":"projectId","in":"path","description":"The id of the project of the automation.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"automationId","in":"path","description":"The id of the automation.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"actionId","in":"path","description":"The id of the action.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Project Automations"],"summary":"Gets a specific action for a project automation.","description":"<Check title=\"Required Permissions\" icon=\"key\">The user must be owner of the project or must have `project-master-data:read` permissions on the specified project.</Check>","operationId":"GetProjectAutomationAction","parameters":[{"name":"projectId","in":"path","description":"The id of the project of the automation.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"automationId","in":"path","description":"The id of the automation.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"actionId","in":"path","description":"The id of the action.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Action"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Project Automations"],"summary":"Updates a specifc action of a project automation.","description":"Updates an exsting action including its values for an automation. Actions of automations created from a workflow cannot be modified.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be owner of the project or must have `project-master-data:write` permissions on the specified project.</Check>","operationId":"PutProjectAutomationAction","parameters":[{"name":"projectId","in":"path","description":"The id of the project of the automation.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"automationId","in":"path","description":"The id of the automation.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"actionId","in":"path","description":"The id of the action.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to update an action.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ActionForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Action"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/automations/{automationId}/actions/{actionId}/updateorder":{"post":{"tags":["Project Automations"],"summary":"Updates the order of a given action of a project automation.","description":"Updates the order of a given action in the list of actions of the specific project automation. Actions of automations created from a workflow cannot be modified.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be owner of the project or must have `project-master-data:write` permissions on the specified project.</Check>","operationId":"PostUpdateProjectAutomationActionOrder","parameters":[{"name":"projectId","in":"path","description":"The id of the project of the automation.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"automationId","in":"path","description":"The id of the automation.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"actionId","in":"path","description":"The id of the action.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to update the order.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateOrderForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/automations/{automationId}/execute":{"post":{"tags":["Project Automations"],"summary":"Executes a manual automation for a task.","description":"Can be used to trigger an automation that uses a manual trigger for a specific task.\r\n            The calling user becomes the initiator of the automation execution.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have write permissions on the specified task.</Check>","operationId":"PostExecuteProjectAutomation","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"automationId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutomationExecuteForm"}}},"required":true},"responses":{"202":{"description":"Accepted"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/autopilot":{"delete":{"tags":["Autopilot"],"summary":"Deletes the autopilot of the project with the specified id.","description":"Deletes the autopilot of the project with the specified id.\r\n            To access and modify the autopilot data the user needs to be the owner of the project or\r\n            must have 'read' permissions of the feature 'project-master-data' globally or in their project role.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteProjectsAutopilotByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Autopilot"],"summary":"Returns the autopilot of the project with the specified id.","description":"Returns NoContent if the project does not have an autopilot setup.\r\n            To get the autopilot data the user needs to be the owner of the project or\r\n            must have 'read' permissions of the feature 'project-master-data' globally or in their project role.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetProjectsAutopilotByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Autopilot"}}}},"204":{"description":"No Content"}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Autopilot"],"summary":"Creates a new autopilot for the project with the specified id.","description":"Creates a new autopilot for the project with the specified id.\r\n            Also creates and enables all alerts for the new autopilot.\r\n            For this action, the user needs to be the owner of the project or must have 'read' permissions\r\n            of the feature 'project-master-data' globally or in their project role.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostProjectsAutopilotByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model used to create the autopilot.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutopilotPostForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Autopilot"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Autopilot"],"summary":"Updates the autopilot of the project with the specified id.","description":"Updates the autopilot of the project with the specified id.\r\n            To access and modify the autopilot data the user needs to be the owner of the project or\r\n            must have 'read' permissions of the feature 'project-master-data' globally or in their project role.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PutProjectsAutopilotByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model used to update the autopilot.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutopilotPutForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Autopilot"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/changeprojecttype":{"post":{"tags":["Projects"],"summary":"Changes the specified project's type.","description":"Changes the specified project's type and applies the new type settings.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be the project creator or have `project-master-data:write` permission.</Check>","operationId":"PostProjectChangeProjectTypeByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to change the project type.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChangeProjectTypeForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/changestatus":{"post":{"tags":["Projects"],"summary":"Changes the specified project's status.","description":"Changes the specified project's status. The status must belong to the project's type; changing status can add task bundles and notify project members. Repeating the current status has no effect.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be the project creator or have `project-master-data:write` permission.</Check>","operationId":"PostProjectChangeStatusByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to change the project status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChangeProjectStatusForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/comments":{"delete":{"tags":["ProjectComments"],"summary":"Deletes all comments of the specified project.","description":"Deletes all comments of the specified project.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteCommentsByProjectNameAndProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["ProjectComments"],"summary":"Returns all comments of the project with the specified id.","description":"Returns all comments of the project with the specified id. The user needs read permissions on the project.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetCommentsByProjectNameAndProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Comment"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["ProjectComments"],"summary":"Creates a new comment on the project with the specified id.","description":"Creates a new comment on the project with the specified id.\r\n            A user can only create a comment for him/herself, except for admins and api users.\r\n            \r\n            <Check title=\"Required Permissions\" icon=\"key\">To create a comment the user must have at least `read` permissions on the specified project.</Check>","operationId":"PostCommentsByProjectNameAndProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project to create the comment for.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to create the comment.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommentForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Comment"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/comments/{commentId}":{"delete":{"tags":["ProjectComments"],"summary":"Deletes the comment with the specified id on the project with the specified id.","description":"Deletes the comment with the specified id on the project with the specified id.\r\n            The delete includes the reactions of the comment.\r\n            If there are any replies to the comment, they will be deleted as well.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteCommentByProjectNameAndProjectIdAndCommentId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"commentId","in":"path","description":"The id of the comment.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["ProjectComments"],"summary":"Returns the comment with the specified id of the project with the specified id.","description":"Returns the comment with the specified id of the project with the specified id.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetCommentByProjectNameAndProjectIdAndCommentId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"commentId","in":"path","description":"The id of the comment.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Comment"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["ProjectComments"],"summary":"Updates the comment with the specified id on the project with the specified id.","description":"<Check title=\"Required Permissions\" icon=\"key\">To update a comment the user must either have at least `read` permissions on the specified project, be the creator of the comment or be admin.</Check>","operationId":"PutCommentByProjectNameAndProjectIdAndCommentId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"commentId","in":"path","description":"The id of the comment.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model with the updated comment information.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommentPutForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Comment"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/comments/{commentId}/react":{"post":{"tags":["ProjectComments"],"summary":"Updates the reactions of the comment with the specified id on the project with the specified id.","description":"<Check title=\"Required Permissions\" icon=\"key\">To update a reaction of a comment the user must have at least `read` permissions on the specified project.</Check>","operationId":"PostCommentReactByProjectNameAndProjectIdAndCommentId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"commentId","in":"path","description":"The id of the comment.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model used to update the reactions of the comment with the specified id.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactionForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/customfielddefinitions":{"get":{"tags":["CustomFields"],"summary":"Returns custom fields for the specified project.","description":"Returns definitions linked directly to the project or through a workflow.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-master-data:read` permission or access to at least one task in the project.</Check>","operationId":"GetProjectCustomFieldDefinitionsByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CustomFieldDefinitionWithSelectionOptions"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/customfielddefinitions/{customFieldDefinitionId}":{"put":{"tags":["CustomFields"],"summary":"Updates custom field order in a project.","description":"Updates the order of a custom field definition linked to the specified project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-master-data:write` permission or `write` permission on the specified project.</Check>","operationId":"PutProjectCustomFieldDefinitionByProjectIdAndCustomFieldDefinitionId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"customFieldDefinitionId","in":"path","description":"The id of the custom field definition.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model used to update the order of the custom field definition.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomFieldOrderPutForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomFieldOrderForm"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/delete":{"post":{"tags":["Projects"],"summary":"Deletes the specified project.","description":"Deletes the specified project. Related tasks are deleted by default, while related time entries lose their project and task links. Set `deleteTimeTrackings` to delete those time entries as well.\r\n            \r\n             <Check title=\"Required Permissions\" icon=\"key\">The user must be the project creator or have `project-master-data:write` permission.</Check>","operationId":"PostProjectDeleteByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model containing deletion options.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectDeleteForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/deletetags":{"post":{"tags":["ProjectTags"],"summary":"Removes tags from the specified project.","description":"Removes the submitted tags from the specified project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-master-data:write` permission for the specified project.</Check>","operationId":"PostProjectDeleteTagsByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project to remove tags from.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model containing the tags to remove.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/DeleteTagForm"}}}},"required":true},"responses":{"204":{"description":"No Content"},"207":{"description":"Multi-Status"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/documents":{"get":{"tags":["Documents"],"summary":"Returns documents in the specified project.","description":"Returns non-trashed documents visible in the specified project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to view the returned documents.</Check>","operationId":"GetProjectDocumentsByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/DocumentModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/documents/trash":{"get":{"tags":["Documents"],"summary":"Returns trashed documents in the specified project.","description":"Returns deleted documents visible in the specified project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to view the returned documents.</Check>","operationId":"GetProjectDocumentsTrashByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/DocumentModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/externalfiles":{"post":{"tags":["Project Files"],"summary":"Creates external file references for the specified project.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostExternalFilesByProjectNameAndProjectId","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ExternalFileForm"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileInfo"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/files":{"delete":{"tags":["Project Files"],"summary":"Deletes all files and versions for the specified project.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteFilesByProjectNameAndProjectId","parameters":[{"name":"projectId","in":"path","description":"The project id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Project Files"],"summary":"Returns all files of the specified project.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesByProjectNameAndProjectId","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileInfo"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Project Files"],"summary":"Uploads a file for the specified project.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesByProjectNameAndProjectId","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/files/byuploadid":{"post":{"tags":["FileUpload"],"summary":"Creates a file from an upload id.","description":"After a file has been uploaded to an upload URL generated from the <see cref=\"T:Awork.Files.Service.Feature.FileUpload.Endpoints.PostGenerateUploadURL\" /> endpoint, this endpoint can be used to create a file project from the uploaded file by providing the upload id.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostUploadByUploadId","parameters":[{"name":"projectId","in":"path","description":"The id of the project to attach the file to.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model describing the uploaded file metadata.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadByUploadIdForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/files/byurl":{"post":{"tags":["Project Files"],"summary":"Uploads a file from a public URL for the specified project.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesByUrlByProjectNameAndProjectId","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FilePostForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/files/{fileId}":{"delete":{"tags":["Project Files"],"summary":"Deletes the specified project file and its versions.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteFilesByProjectNameAndProjectIdAndFileId","parameters":[{"name":"projectId","in":"path","description":"The project id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The file id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Project Files"],"summary":"Returns the file with the specified id of the project with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesByProjectNameAndProjectIdAndFileId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The id of the file.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Project Files"],"summary":"Updates metadata for the specified file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PutFilesByProjectNameAndProjectIdAndFileId","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfoUpdateForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/files/{fileId}/changeentity":{"post":{"tags":["Project Files"],"summary":"Changes the project that owns the specified file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesChangeProjectByProjectNameAndProjectIdAndFileId","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileEntityForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/files/{fileId}/copy":{"post":{"tags":["Project Files"],"summary":"Copies the specified file to another project.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesCopyByProjectNameAndProjectIdAndFileId","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileCopyForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/files/{fileId}/download":{"get":{"tags":["Project Files"],"summary":"Returns the latest content of the specified project file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesDownloadByProjectNameAndProjectIdAndFileId","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"width","in":"query","schema":{"type":"number","format":"double"}},{"name":"height","in":"query","schema":{"type":"number","format":"double"}},{"name":"crop","in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/files/{fileId}/pdf":{"get":{"tags":["Project Files"],"summary":"Returns the specified project file as PDF.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesPdfByProjectNameAndProjectIdAndFileId","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"inline","in":"query","schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/files/{fileId}/shareurl":{"get":{"tags":["Project Files"],"summary":"Returns a public URL for the specified file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesShareUrlByProjectNameAndProjectIdAndFileId","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/files/{fileId}/versions":{"get":{"tags":["Project Files"],"summary":"Returns all versions of the specified project file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsByProjectNameAndProjectIdAndFileId","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileVersion"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Project Files"],"summary":"Uploads a new version of the specified project file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesVersionsByProjectNameAndProjectIdAndFileId","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileVersion"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/files/{fileId}/versions/{versionId}":{"get":{"tags":["Project Files"],"summary":"Returns the project file version with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsByProjectNameAndProjectIdAndFileIdAndVersionId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The id of the file.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"versionId","in":"path","description":"The id of the file version.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileVersion"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/files/{fileId}/versions/{versionId}/download":{"get":{"tags":["Project Files"],"summary":"Returns the content of the specified project file version.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsDownloadByProjectNameAndProjectIdAndFileIdAndVersionId","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"versionId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/linkcustomfielddefinition":{"post":{"tags":["CustomFields"],"summary":"Links a custom field to the specified project.","description":"Links the specified custom field definition to the project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-master-data:write` permission or `write` permission on the specified project.</Check>","operationId":"PostProjectLinkCustomFieldDefinitionByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model used to link the custom field definition.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LinkCustomFieldDefinitionForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/linkworkflow":{"post":{"tags":["Workflows"],"summary":"Links a workflow to the specified project.","description":"Links the specified workflow to the project and migrates existing statuses using the provided mapping. If the project has no statuses, workflow statuses are assigned automatically. Switching workflows requires mappings for existing statuses.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be the project creator or have `project-master-data:write` permission for the project.</Check>","operationId":"PostProjectLinkWorkflowByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The link workflow form.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LinkWorkflowForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Project"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/members":{"get":{"tags":["Projects"],"summary":"Returns members of the specified project.","description":"Returns members assigned to the specified project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be the project creator or have `project-master-data:read` permission.</Check>","operationId":"GetProjectMembersByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectMember"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/milestones":{"get":{"tags":["ProjectMilestones"],"summary":"Returns milestones for the specified project.","description":"Returns milestones assigned to the specified project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:read` permission for the project.</Check>","operationId":"GetProjectMilestonesByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectMilestone"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/projectstatuses":{"get":{"tags":["ProjectStatuses"],"summary":"Returns statuses for the specified project.","description":"Returns statuses relevant to the specified project. If the project is linked to a workflow, the workflow's statuses are returned.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be the project creator or have `project-master-data:read` permission.</Check>","operationId":"GetProjectProjectStatusesByProjectId","parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectStatus"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["ProjectStatuses"],"summary":"Creates a status for the specified project.","description":"Creates a project status. Projects linked to a workflow must manage statuses through that workflow.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be the project owner or have `project-manage-config:write` permission.</Check>","operationId":"PostProjectProjectStatusesByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to create the project status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectStatusForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectStatus"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/projecttasks":{"get":{"tags":["ProjectTasks"],"summary":"Returns tasks for the specified project.","description":"Returns project tasks visible to the current user.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:read` permission; otherwise only assigned tasks are returned.</Check>","operationId":"GetProjectProjectTasksByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskModel"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/projecttasks/{taskId}":{"get":{"tags":["ProjectTasks"],"summary":"Returns the specified project task.","description":"Returns the specified task when it belongs to the project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:read` permission or be assigned to the task.</Check>","operationId":"GetProjectProjectTaskByProjectIdAndTaskId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskModel"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/projecttasks/{taskId}/changeproject":{"post":{"tags":["ProjectTasks"],"summary":"Moves a task to another project.","description":"Moves the specified task and its subtasks, related time entries, and tracked-time totals to another project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:write` permission on both projects.</Check>","operationId":"PostProjectProjectTaskChangeProjectByProjectIdAndTaskId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to change the project of the task.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChangeProjectForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/projecttasks/{taskId}/checklistitems":{"get":{"tags":["ChecklistItems"],"summary":"Returns checklist items for a project task.","description":"Returns checklist items for the specified project task.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:read` permission or be assigned to the task.</Check>","operationId":"GetProjectProjectTaskChecklistItemsByProjectIdAndTaskId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ChecklistItem"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/projecttasks/{taskId}/checklistitems/{checklistItemId}":{"get":{"tags":["ChecklistItems"],"summary":"Returns a checklist item for a project task.","description":"Returns the specified checklist item for the project task.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:read` permission or be assigned to the task.</Check>","operationId":"GetProjectProjectTaskChecklistItemByProjectIdAndTaskIdAndChecklistItemId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"checklistItemId","in":"path","description":"The id of the checklist item.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChecklistItem"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/removeprojectmember":{"post":{"tags":["Projects"],"summary":"Removes a member from the specified project.","description":"Removes the specified member from the project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be the project creator or have `project-master-data:manage` permission.</Check>","operationId":"PostProjectRemoveProjectMemberByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to remove the project member.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectMemberRemoveForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/retainers":{"get":{"tags":["Retainers"],"summary":"Returns retainers for the specified project.","description":"Returns retainers associated with the specified project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-master-data:read` permission for the project.</Check>","operationId":"GetProjectRetainersByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Retainer"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Retainers"],"summary":"Creates a retainer for the specified project.","description":"Creates a retainer and marks the project as a retainer project. Retainer budgets are created from its dates. Retainers cannot overlap, and only one active retainer is allowed per project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-master-data:write` permission for the project.</Check>","operationId":"PostProjectRetainersByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project to create a retainer for.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to create a retainer.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RetainerForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Retainer"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/retainers/{retainerId}":{"delete":{"tags":["Retainers"],"summary":"Deletes a retainer from the specified project.","description":"Deletes the specified retainer and its related budgets.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-master-data:write` permission for the project.</Check>","operationId":"DeleteProjectRetainerByProjectIdAndRetainerId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"retainerId","in":"path","description":"The id of the retainer.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Retainers"],"summary":"Returns the specified project retainer.","description":"Returns the specified retainer for the project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-master-data:read` permission for the project.</Check>","operationId":"GetProjectRetainerByProjectIdAndRetainerId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"retainerId","in":"path","description":"The id of the retainer.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Retainer"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Retainers"],"summary":"Updates the specified project retainer.","description":"Updates the retainer settings. Date changes cannot overlap another retainer, and the retainer period cannot be changed.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-master-data:write` permission for the project.</Check>","operationId":"PutProjectRetainerByProjectIdAndRetainerId","parameters":[{"name":"projectId","in":"path","description":"The id of the project to update the retainer for.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"retainerId","in":"path","description":"The id of the retainer.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to update the retainer.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RetainerForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Retainer"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/setcustomfields":{"post":{"tags":["CustomFields"],"summary":"Sets custom field values for a project.","description":"Sets the submitted custom field values on the specified project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-master-data:write` permission for the project.</Check>","operationId":"PostProjectSetCustomFieldsByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The list of custom field values to set.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CustomFieldPostForm"}}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/setprojectkey":{"post":{"tags":["Projects"],"summary":"Updates the specified project's key.","description":"Updates the project key and the identifiers of tasks in that project. The key must be unique in the workspace and use uppercase letters, numbers, or dashes.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-master-data:write` permissions.</Check>","operationId":"PostProjectSetProjectKeyByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateProjectKeyForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Project"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-master-data":"write"}}},"/projects/{projectId}/tags":{"get":{"tags":["ProjectTags"],"summary":"Returns tags for the specified project.","description":"Returns tags assigned to the specified project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-master-data:read` permission for the specified project.</Check>","operationId":"GetProjectTagsByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project to get tags for.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/BaseTagModel"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/taskdependencies":{"get":{"tags":["TaskDependencies"],"summary":"Returns task dependencies for a project.","description":"Returns dependencies involving tasks in the specified project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:read` permission for the project.</Check>","operationId":"GetProjectTaskdependenciesByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskDependency"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/tasklists":{"get":{"tags":["TaskLists"],"summary":"Returns task lists for the specified project.","description":"Returns task lists visible in the specified project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:read` permission for the project.</Check>","operationId":"GetProjectTaskListsByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"showArchived","in":"query","description":"The show Archived.","schema":{"type":"boolean","default":false}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskList"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["TaskLists"],"summary":"Creates a task list in the specified project.","description":"Creates a task list in the specified project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:manage` permission for the project.</Check>","operationId":"PostProjectTaskListsByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The task List form.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskListForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskList"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/tasklists/{taskListId}":{"get":{"tags":["TaskLists"],"summary":"Returns the specified task list.","description":"Returns the specified task list when it is visible in the project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:read` permission for the project.</Check>","operationId":"GetProjectTaskListByProjectIdAndTaskListId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskListId","in":"path","description":"The id of the task list.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskList"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["TaskLists"],"summary":"Updates the specified task list.","description":"Updates the specified task list's name and settings.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:manage` permission for the project.</Check>","operationId":"PutProjectTaskListByProjectIdAndTaskListId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskListId","in":"path","description":"The id of the task list.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The task List Put form.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskListPutForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskList"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/tasklists/{taskListId}/addtasks":{"post":{"tags":["TaskLists"],"summary":"Adds tasks to the specified task list.","description":"Adds the submitted tasks to the specified task list and returns their resulting order.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:write` permission for the project and tasks.</Check>","operationId":"PostProjectTaskListAddTasksByProjectIdAndTaskListId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskListId","in":"path","description":"The id of the task list.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The task To Task List list.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskToTaskList"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ReorderingResult"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/tasklists/{taskListId}/changeproject":{"post":{"tags":["TaskLists"],"summary":"Moves a task list to another project.","description":"Moves the task list, its tasks, and related time entries to another project. A status mapping can move tasks to replacement statuses.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:write` permission on both projects.</Check>","operationId":"PostProjectTaskListChangeProjectByProjectIdAndTaskListId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskListId","in":"path","description":"The id of the task list.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The change Project form For Task Lists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChangeProjectFormForTaskLists"}}},"required":true},"responses":{"204":{"description":"No Content"}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/tasklists/{taskListId}/copy":{"post":{"tags":["TaskLists"],"summary":"Copies the specified task list.","description":"Creates a task list with the same name and copies its tasks and subtasks. Comments, files, and activity logs are not copied.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:write` permission for the project.</Check>","operationId":"PostProjectTaskListCopyByProjectIdAndTaskListId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskListId","in":"path","description":"The id of the task list.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskList"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/tasklists/{taskListId}/delete":{"post":{"tags":["TaskLists"],"summary":"Deletes the specified task list.","description":"Deletes the specified task list and removes its task assignments.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:manage` permission for the project.</Check>","operationId":"PostProjectTaskListDeleteByProjectIdAndTaskListId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskListId","in":"path","description":"The id of the task list.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The task List Delete form.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskListDeleteForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/tasklists/{taskListId}/removetasks":{"post":{"tags":["TaskLists"],"summary":"Removes tasks from the specified task list.","description":"Removes the submitted tasks from the specified task list.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:write` permission for the project and tasks.</Check>","operationId":"PostProjectTaskListRemoveTasksByProjectIdAndTaskListId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskListId","in":"path","description":"The id of the task list.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The id of the tasks.","content":{"application/json":{"schema":{"type":"array","items":{"type":"string","format":"uuid"}}}},"required":true},"responses":{"204":{"description":"No Content"}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/tasklists/{taskListId}/setarchived":{"post":{"tags":["TaskLists"],"summary":"Archives or restores the specified task list.","description":"Archives or restores the specified task list. An archived task list remains available but cannot be edited.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:manage` permission for the project.</Check>","operationId":"PostProjectTaskListSetArchivedByProjectIdAndTaskListId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskListId","in":"path","description":"The id of the task list.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The archived Task List form.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArchivedTaskListForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskList"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/tasklists/{taskListId}/tasks/{taskId}":{"get":{"tags":["TaskLists"],"summary":"Returns a task in the specified task list.","description":"Returns the specified task when it belongs to the task list.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:read` permission for the project.</Check>","operationId":"GetProjectTaskListTaskByProjectIdAndTaskListIdAndTaskId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskListId","in":"path","description":"The id of the task list.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/tasklists/{taskListId}/tasks/{taskId}/updateorder":{"post":{"tags":["TaskLists"],"summary":"Updates a task's order in a task list.","description":"Updates the specified task's position in the task list.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:write` permission for the project and task.</Check>","operationId":"PostProjectTaskListTaskUpdateOrderByProjectIdAndTaskListIdAndTaskId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskListId","in":"path","description":"The id of the task list.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The task In Task List Update Order form.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskInTaskListUpdateOrderForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ReorderingResult"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/tasklists/{taskListId}/updateorder":{"post":{"tags":["TaskLists"],"summary":"Updates the order of the specified task list.","description":"Updates the specified task list's position within the project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:manage` permission for the project.</Check>","operationId":"PostProjectTaskListUpdateOrderByProjectIdAndTaskListId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskListId","in":"path","description":"The id of the task list.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The update Order form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateOrderForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/taskstatuses":{"get":{"tags":["TaskStatuses"],"summary":"Returns task statuses for the specified project.","description":"Returns statuses relevant to the specified project. If the project is linked to a workflow, the workflow's statuses are returned.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-master-data:read` permission or be assigned to a task on the project.</Check>","operationId":"GetProjectTaskStatusesByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskStatus"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["TaskStatuses"],"summary":"Creates a task status for the specified project.","description":"Creates a task status for the specified project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be the project creator or have `project-planning-data:write` permission.</Check>","operationId":"PostProjectTaskStatusesByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model used to create the task status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskStatusForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskStatus"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/taskstatuses/{taskStatusId}":{"get":{"tags":["TaskStatuses"],"summary":"Returns the specified project task status.","description":"Returns the specified status for the project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-master-data:read` permission or be the project creator.</Check>","operationId":"GetProjectTaskStatusByProjectIdAndTaskStatusId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskStatusId","in":"path","description":"The id of the task status.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskStatus"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["TaskStatuses"],"summary":"Updates a task status for the specified project.","description":"Updates the specified status. Its type cannot change when it is the last `todo` or `done` status in the project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be the project creator or have `project-planning-data:write` permission.</Check>","operationId":"PutProjectTaskStatusByProjectIdAndTaskStatusId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskStatusId","in":"path","description":"The id of the task status to update.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The tmodel containing the task status data.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskStatusForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskStatus"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/taskstatuses/{taskStatusId}/delete":{"post":{"tags":["TaskStatuses"],"summary":"Deletes the specified project task status.","description":"Deletes the specified status. If tasks still use it, provide another status to receive those tasks. The last `todo` or `done` status cannot be deleted.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be the project creator or have `project-planning-data:write` permission.</Check>","operationId":"PostProjectTaskStatusDeleteByProjectIdAndTaskStatusId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskStatusId","in":"path","description":"The id of the task status.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model containing the id of the new task status to move tasks to.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskStatusDeleteForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/timeentries":{"get":{"tags":["TimeEntries"],"summary":"Returns all time entries of the specified project.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetProjectTimeEntries","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TimeTracking"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/typeofwork":{"get":{"tags":["ProjectTasks"],"summary":"Returns types of work for the specified project.","description":"Returns types of work for connected or workspace projects.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-planning-data:read` permission for the project.</Check>","operationId":"GetProjectTypesOfWorkByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TypeOfWork"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/unlinkcustomfielddefinition":{"post":{"tags":["CustomFields"],"summary":"Unlinks a custom field from the specified project.","description":"Unlinking the definition removes its values from tasks in the project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-master-data:write` permission or `write` permission on the specified project.</Check>","operationId":"PostProjectUnlinkCustomFieldDefinitionByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project to unlink the custom field definition from.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model describing the custom field definition to unlink.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnlinkCustomFieldDefinitionForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/unlinkworkflow":{"post":{"tags":["Workflows"],"summary":"Unlinks a workflow from the specified project.","description":"Unlinks the workflow and clones its statuses into project-specific statuses. Custom fields and automations remain but are no longer synchronized with the workflow.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be the project creator or have `project-master-data:write` permission for the project.</Check>","operationId":"PostProjectUnlinkWorkflowByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Project"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/updateprojectmember":{"post":{"tags":["ProjectMembers"],"summary":"Updates a member of the specified project.","description":"Changes the member's role or responsible status. The selected role must be available for the project's type, and only one responsible member is allowed.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be the project creator or have `project-master-data:manage` permission for the project.</Check>","operationId":"PostProjectUpdateProjectMemberByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model containing updated project member details.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectMemberForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectMember"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projects/{projectId}/updateprojectstatusorder":{"post":{"tags":["Projects"],"summary":"Updates a project's status order.","description":"Updates the order of statuses for the specified project.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be the project owner or have `project-manage-config:write` permission.</Check>","operationId":"PostProjectUpdateProjectStatusOrderByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to update the project status order.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateProjectStatusOrderForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projectstatuses":{"get":{"tags":["ProjectStatuses"],"summary":"Returns project statuses in the workspace.","description":"Returns active project statuses by default. Set `showArchived` to include archived statuses visible to the current user.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have access to each returned project status.</Check>","operationId":"GetProjectStatuses","parameters":[{"name":"showArchived","in":"query","description":"Whether to include archived project statuses.","schema":{"type":"boolean","default":false}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectStatus"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projectstatuses/{projectStatusId}":{"get":{"tags":["ProjectStatuses"],"summary":"Returns the specified project status.","description":"Returns the project status with the specified id.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetProjectStatusById","parameters":[{"name":"projectStatusId","in":"path","description":"The id of the project status.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectStatus"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["ProjectStatuses"],"summary":"Updates the specified project status.","description":"Updates the specified project status and returns the saved status.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be the project creator or have `project-master-data:write` permission.</Check>","operationId":"PutProjectStatusById","parameters":[{"name":"projectStatusId","in":"path","description":"The id of the project status.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to update the project status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectStatusForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectStatus"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projectstatuses/{projectStatusId}/delete":{"post":{"tags":["ProjectStatuses"],"summary":"Deletes the specified project status.","description":"Deletes the specified status. Project statuses in use must be replaced, and workflow statuses must be managed through the workflow.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be the project owner or have `project-manage-config:write` permission for the project.</Check>","operationId":"PostProjectStatusDeleteByProjectStatusId","parameters":[{"name":"projectStatusId","in":"path","description":"The id of the project status to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to delete the project status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectStatusDeleteForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projectstatuses/{projectStatusId}/setarchived":{"post":{"tags":["ProjectStatuses"],"summary":"Sets the archived flag for a project status.","description":"Sets the archived flag for a project status. Archived statuses remain available for existing projects. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostProjectStatusSetArchivedByProjectStatusId","parameters":[{"name":"projectStatusId","in":"path","description":"The id of the project status.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to set the archived flag for the project status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArchivedForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectStatus"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projecttemplates":{"get":{"tags":["ProjectTemplates"],"summary":"Returns project templates.","description":"Returns project templates. Each template includes its configured project defaults. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetProjectTemplates","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectTemplate"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["ProjectTemplates"],"summary":"Creates a new project template.","description":"Creates a new project template. The new template supplies defaults for future projects.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostProjectTemplate","requestBody":{"description":"The model to create the project template.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectTemplateForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectTemplate"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttemplates/deletetags":{"post":{"tags":["ProjectTemplateTags"],"summary":"Removes a tag from project templates.","description":"Removes a tag from project templates. The submitted tags are applied to the template.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostProjectTemplatesDeleteTags","requestBody":{"description":"The model to remove the tag from all project templates.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteTagForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttemplates/tags":{"get":{"tags":["ProjectTemplateTags"],"summary":"Returns tags in use by project templates.","description":"Returns tags in use by project templates. The result includes tags shared by project templates. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetProjectTemplatesTags","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/BaseTagModel"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projecttemplates/updatetags":{"post":{"tags":["ProjectTemplateTags"],"summary":"Updates a tag globally for project templates.","description":"Updates a tag globally for project templates. The submitted tags are applied to the template.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostProjectTemplateUpdateTags","requestBody":{"description":"The model containing the tag updates.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagUpdateForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttemplates/{projectTemplateId}":{"delete":{"tags":["ProjectTemplates"],"summary":"Deletes a project template.","description":"Deletes a project template. Projects already created from the template are not changed.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"DeleteProjectTemplateById","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}},"get":{"tags":["ProjectTemplates"],"summary":"Returns a specific project template.","description":"Returns a specific project template. The response includes the template's project configuration. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetProjectTemplateById","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectTemplate"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["ProjectTemplates"],"summary":"Updates project template.","description":"Updates project template. The template defaults are changed for future projects.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PutProjectTemplateById","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to update the project template.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectTemplateForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectTemplate"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttemplates/{projectTemplateId}/addtags":{"post":{"tags":["ProjectTemplateTags"],"summary":"Adds a batch of tags to the project template.","description":"Adds a batch of tags to the project template. The submitted tags are applied to the template.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostProjectTemplateAddTagsByProjectTemplateId","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template to add tags to.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model containing the tags to add.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagForm"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/BaseTagModel"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttemplates/{projectTemplateId}/automations":{"get":{"tags":["Project Template Automations"],"summary":"Returns all automations for a project template.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetProjectTemplateAutomations","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Automation"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Project Template Automations"],"summary":"Creates a new automation for a given project template.","description":"Creates a new automation of the project template with the specified id.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostProjectTemplateAutomation","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to create the automation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutomationTriggerForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Automation"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttemplates/{projectTemplateId}/automations/{automationId}":{"delete":{"tags":["Project Template Automations"],"summary":"Deletes the specified automation for a given projecttemplate.","description":"Deletes the specified automation with its trigger and all its values.\r\n            To delete the the automation the user needs to have 'write' permissions of\r\n            the feature 'project-manage-config' globally.\r\n            If the 'removeFromProject' boolean is set to true, all automations in projects of that\r\n            project template created from that automation template are deleted aswell.\r\n            Automations created from a workflow cannot be deleted via this endpoint.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"DeleteProjectTemplateAutomation","parameters":[{"name":"automationId","in":"path","description":"The id of the automation.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"removeFromProjects","in":"query","description":"Whether to delete the automation also from all projects of the projecttemplate.","required":true,"schema":{"type":"boolean"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}},"get":{"tags":["Project Template Automations"],"summary":"Returns a specific automation for a projecttemplate.","description":"Returns a specific automation of the projecttemplate with the specified id.\r\n            Returns NotFound if the automation doesnt exist.\r\n            To get the the automation data the user needs to have 'read' permissions of\r\n            the feature 'project-manage-config' globally.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:read` permissions.</Check>","operationId":"GetProjectTemplateAutomation","parameters":[{"name":"automationId","in":"path","description":"The id of the automation.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Automation"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"read"}},"put":{"tags":["Project Template Automations"],"summary":"Updates the automation with the specified id for a given projecttemplate.","description":"Updates the specified automation for a specific projecttemplate.\r\n            If the automation was created from a workflow, only the Enabled flag can be changed.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PutProjectTemplateAutomation","parameters":[{"name":"automationId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"projectTemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutomationPutForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Automation"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttemplates/{projectTemplateId}/automations/{automationId}/actions":{"get":{"tags":["Project Template Automations"],"summary":"Gets the actions of an automation of a project template.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:read` permissions.</Check>","operationId":"GetProjectTemplateAutomationActions","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"automationId","in":"path","description":"The id of the automation.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Action"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"read"}},"post":{"tags":["Project Template Automations"],"summary":"Creates a new action for an automation of a project template.","description":"Creates an action for a specific automation of a project template including all its values. Actions cannot be added to automations created from a workflow.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostProjectTemplateAutomationAction","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"automationId","in":"path","description":"The id of the automation.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to create an action.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ActionForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Action"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttemplates/{projectTemplateId}/automations/{automationId}/actions/{actionId}":{"delete":{"tags":["Project Template Automations"],"summary":"Deletes an action for an automation of a project template.","description":"Deletes an action for a specific automation of a project template including all its values. Actions of automations created from a workflow cannot be deleted.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"DeleteProjectTemplateAutomationAction","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"automationId","in":"path","description":"The id of the automation.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"actionId","in":"path","description":"The id of the action.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}},"get":{"tags":["Project Template Automations"],"summary":"Gets a specific action for an automation of a projecttemplate.","description":"Returns a specific action for a specific automation of a project template including all its values.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:read` permissions.</Check>","operationId":"GetProjectTemplateAutomationAction","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"automationId","in":"path","description":"The id of the automation.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"actionId","in":"path","description":"The id of the action.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Action"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"read"}},"put":{"tags":["Project Template Automations"],"summary":"Updates a specifc action of an automation of a project template.","description":"Returns an updated action for a specific automation of a project template including all its values. Actions of automations created from a workflow cannot be modified.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PutProjectTemplateAutomationAction","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"automationId","in":"path","description":"The id of the automation.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"actionId","in":"path","description":"The id of the action.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to update an action.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ActionForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Action"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttemplates/{projectTemplateId}/automations/{automationId}/actions/{actionId}/updateorder":{"post":{"tags":["Project Template Automations"],"summary":"Updates the order of a project template automation action.","description":"Actions of automations created from a workflow cannot be modified.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostUpdateProjectTemplateAutomationActionOrder","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"automationId","in":"path","description":"The id of the automation.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"actionId","in":"path","description":"The id of the action.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to update the order.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateOrderForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttemplates/{projectTemplateId}/automations/{automationId}/reapply":{"post":{"tags":["Project Template Automations"],"summary":"Reapplies the automation to all projects of this specific project template.","description":"Returns NotFound if the automation doesnt exist.\r\n            To execute this you need to have 'write' permissions of\r\n            the feature 'project-manage-config' globally.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostReapplyProjectTemplateAutomation","parameters":[{"name":"automationId","in":"path","description":"The id of the automation.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttemplates/{projectTemplateId}/customfielddefinitions":{"get":{"tags":["CustomFields"],"summary":"Returns custom fields.","description":"Returns custom fields. The result includes fields linked directly or through its workflow. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetProjectTemplateCustomFieldDefinitionsByProjectTemplateId","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CustomFieldDefinitionWithSelectionOptions"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projecttemplates/{projectTemplateId}/customfielddefinitions/{customFieldDefinitionId}":{"put":{"tags":["CustomFields"],"summary":"Updates custom field order in a template.","description":"Updates custom field order in a template. The custom field order is stored for the template.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PutProjectTemplateCustomFieldDefinitionByProjectTemplateIdAndCustomFieldDefinitionId","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"customFieldDefinitionId","in":"path","description":"The id of the custom field definition.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model used to update the order of the custom field definition.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomFieldOrderPutForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomFieldOrderForm"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttemplates/{projectTemplateId}/deletetags":{"post":{"tags":["ProjectTemplateTags"],"summary":"Removes tags from the project template.","description":"Removes tags from the project template. The submitted tags are applied to the template.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostProjectTemplateDeleteTagsByProjectTemplateId","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template to remove tags from.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model containing the tags to delete.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/DeleteTagForm"}}}},"required":true},"responses":{"204":{"description":"No Content"},"207":{"description":"Multi-Status"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttemplates/{projectTemplateId}/linkcustomfielddefinition":{"post":{"tags":["CustomFields"],"summary":"Links a custom field definition to the template.","description":"Links a custom field definition to the template. The custom field is available on tasks created from the template.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostProjectTemplateLinkCustomFieldDefinitionByProjectTemplateId","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model used to link the custom field definition.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LinkCustomFieldDefinitionForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttemplates/{projectTemplateId}/milestones":{"get":{"tags":["ProjectMilestoneTemplates"],"summary":"Returns milestone templates of the given template.","description":"Returns milestone templates of the given template. Each milestone template belongs to the selected project template.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:read` permissions.</Check>","operationId":"GetProjectTemplateMilestonesByProjectTemplateId","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectMilestoneTemplate"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"read"}},"post":{"tags":["ProjectMilestoneTemplates"],"summary":"Creates milestone template for the template.","description":"Creates milestone template for the template. Projects created from the template can use this milestone.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostProjectTemplateMilestonesByProjectTemplateId","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model containing milestone template details.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectMilestoneTemplateForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectMilestoneTemplate"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttemplates/{projectTemplateId}/milestones/{milestoneId}":{"delete":{"tags":["ProjectMilestoneTemplates"],"summary":"Deletes a milestone for the project template.","description":"Deletes a milestone for the project template. The milestone is removed from the template.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"DeleteProjectTemplateMilestoneByProjectTemplateIdAndMilestoneId","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"milestoneId","in":"path","description":"The id of the milestone.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}},"get":{"tags":["ProjectMilestoneTemplates"],"summary":"Returns a milestone by id for the project template.","description":"Returns a milestone by id for the project template. The response includes the milestone's dates and status.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:read` permissions.</Check>","operationId":"GetProjectTemplateMilestoneByProjectTemplateIdAndMilestoneId","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"milestoneId","in":"path","description":"The id of the milestone.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectMilestoneTemplate"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"read"}},"put":{"tags":["ProjectMilestoneTemplates"],"summary":"Updates a milestone template for the template.","description":"Updates a milestone template for the template. The submitted dates and status replace the existing values.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PutProjectTemplateMilestoneByProjectTemplateIdAndMilestoneId","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"milestoneId","in":"path","description":"The id of the milestone.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model containing updated milestone template details.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectMilestoneTemplateForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectMilestoneTemplate"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttemplates/{projectTemplateId}/projectstatuses":{"get":{"tags":["ProjectTemplates"],"summary":"Returns project statuses of a project template.","description":"Returns project statuses of a project template. The result includes statuses available to the template. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetProjectTemplateProjectStatusesByProjectTemplateId","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template to retrieve statuses for.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectStatus"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["ProjectTemplates"],"summary":"Adds a project status to a project template.","description":"Adds a project status to a project template. Projects created from the template can use this status.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostProjectTemplateProjectStatusesByProjectTemplateId","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to add the project status to the template.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectStatusForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectStatus"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttemplates/{projectTemplateId}/setcustomfields":{"post":{"tags":["CustomFields"],"summary":"Sets the custom fields for a project template.","description":"Sets the custom fields for a project template. The custom fields become available to tasks created from the template.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostProjectTemplateSetCustomFieldsByProjectTemplateId","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The list of custom field values to set.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CustomFieldPostForm"}}}},"required":true},"responses":{"204":{"description":"No Content"}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttemplates/{projectTemplateId}/tags":{"get":{"tags":["ProjectTemplateTags"],"summary":"Returns the tags of the project template.","description":"Returns the tags of the project template. The result includes tags currently used by that template.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:read` permissions.</Check>","operationId":"GetProjectTemplateTagsByProjectTemplateId","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template to get tags for.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/BaseTagModel"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"read"}}},"/projecttemplates/{projectTemplateId}/taskbundle":{"get":{"tags":["ProjectTemplates"],"summary":"Returns the bundle associated with a template.","description":"Returns the bundle associated with a template. The response includes the task bundle linked to the template. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetProjectTemplateTaskBundleByProjectTemplateId","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskBundleResult"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projecttemplates/{projectTemplateId}/taskstatuses":{"get":{"tags":["ProjectTemplates"],"summary":"Returns task statuses of the project template.","description":"Returns task statuses of the project template. The result includes statuses available to the template. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetProjectTemplateTaskStatusesByProjectTemplateId","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskStatus"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["ProjectTemplates"],"summary":"Creates a task status for the template.","description":"Creates a task status for the template. Tasks created from the template can use this status.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostProjectTemplateTaskStatusesByProjectTemplateId","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The task Status form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskStatusForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskStatus"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttemplates/{projectTemplateId}/taskstatuses/{taskStatusId}":{"delete":{"tags":["ProjectTemplates"],"summary":"Deletes the task status of the project template.","description":"Deletes the task status of the project template. The last status of type 'todo' or 'done' cannot be deleted.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"DeleteProjectTemplateTaskStatusByProjectTemplateIdAndTaskStatusId","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskStatusId","in":"path","description":"The id of the task status.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}},"get":{"tags":["ProjectTemplates"],"summary":"Returns the task status of the project template.","description":"Returns the task status of the project template. The result includes statuses available to the template. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetProjectTemplateTaskStatusByProjectTemplateIdAndTaskStatusId","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskStatusId","in":"path","description":"The id of the task status.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskStatus"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["ProjectTemplates"],"summary":"Updates a task status for the template.","description":"Updates a task status for the template. The template uses the submitted status settings.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PutProjectTemplateTaskStatusByProjectTemplateIdAndTaskStatusId","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskStatusId","in":"path","description":"The id of the task status to update.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model used to update the task status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskStatusForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskStatus"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttemplates/{projectTemplateId}/unlinkcustomfielddefinition":{"post":{"tags":["CustomFields"],"summary":"Unlinks a custom field from a template.","description":"Unlinks a custom field from a template. When the definition is unlinked from a project template, all values of the custom field will be removed from the task templates within that project template.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostProjectTemplateUnlinkCustomFieldDefinitionByProjectTemplateId","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template to unlink the custom field definition from.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model used to unlink the custom field definition.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnlinkCustomFieldDefinitionForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttemplates/{projectTemplateId}/unlinkworkflow":{"post":{"tags":["Workflows"],"summary":"Unlinks a workflow from a project template.","description":"Unlinks a workflow from a project template. Custom fields and automations remain but become editable (no longer synced with workflow).\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostProjectTemplateUnlinkWorkflowByProjectTemplateId","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectTemplate"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttemplates/{projectTemplateId}/updateprojectstatusorder":{"post":{"tags":["ProjectTemplates"],"summary":"Updates project status order in a template.","description":"Updates project status order in a template. The selected status is moved within the template configuration.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostProjectTemplateUpdateProjectStatusOrderByProjectTemplateId","parameters":[{"name":"projectTemplateId","in":"path","description":"The id of the project template to update the status order for.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to update the project template status order.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateProjectStatusOrderForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttemplates/{projecttemplateId}/externalfiles":{"post":{"tags":["ProjectTemplate Files"],"summary":"Creates external file references for the specified projecttemplate.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostExternalFilesByProjectTemplateNameAndProjectTemplateId","parameters":[{"name":"projecttemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ExternalFileForm"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileInfo"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projecttemplates/{projecttemplateId}/files":{"delete":{"tags":["ProjectTemplate Files"],"summary":"Deletes all files and versions for the specified projecttemplate.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteFilesByProjectTemplateNameAndProjectTemplateId","parameters":[{"name":"projecttemplateId","in":"path","description":"The projecttemplate id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["ProjectTemplate Files"],"summary":"Returns all files of the specified projecttemplate.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesByProjectTemplateNameAndProjectTemplateId","parameters":[{"name":"projecttemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileInfo"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["ProjectTemplate Files"],"summary":"Uploads a file for the specified projecttemplate.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesByProjectTemplateNameAndProjectTemplateId","parameters":[{"name":"projecttemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projecttemplates/{projecttemplateId}/files/byurl":{"post":{"tags":["ProjectTemplate Files"],"summary":"Uploads a file from a public URL for the specified projecttemplate.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesByUrlByProjectTemplateNameAndProjectTemplateId","parameters":[{"name":"projecttemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FilePostForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projecttemplates/{projecttemplateId}/files/{fileId}":{"delete":{"tags":["ProjectTemplate Files"],"summary":"Deletes the specified projecttemplate file and its versions.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteFilesByProjectTemplateNameAndProjectTemplateIdAndFileId","parameters":[{"name":"projecttemplateId","in":"path","description":"The projecttemplate id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The file id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["ProjectTemplate Files"],"summary":"Returns the file with the specified id of the projecttemplate with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesByProjectTemplateNameAndProjectTemplateIdAndFileId","parameters":[{"name":"projecttemplateId","in":"path","description":"The id of the projecttemplate.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The id of the file.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["ProjectTemplate Files"],"summary":"Updates metadata for the specified file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PutFilesByProjectTemplateNameAndProjectTemplateIdAndFileId","parameters":[{"name":"projecttemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfoUpdateForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projecttemplates/{projecttemplateId}/files/{fileId}/changeentity":{"post":{"tags":["ProjectTemplate Files"],"summary":"Changes the projecttemplate that owns the specified file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesChangeProjectTemplateByProjectTemplateNameAndProjectTemplateIdAndFileId","parameters":[{"name":"projecttemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileEntityForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projecttemplates/{projecttemplateId}/files/{fileId}/copy":{"post":{"tags":["ProjectTemplate Files"],"summary":"Copies the specified file to another projecttemplate.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesCopyByProjectTemplateNameAndProjectTemplateIdAndFileId","parameters":[{"name":"projecttemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileCopyForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projecttemplates/{projecttemplateId}/files/{fileId}/download":{"get":{"tags":["ProjectTemplate Files"],"summary":"Returns the latest content of the specified projecttemplate file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesDownloadByProjectTemplateNameAndProjectTemplateIdAndFileId","parameters":[{"name":"projecttemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"width","in":"query","schema":{"type":"number","format":"double"}},{"name":"height","in":"query","schema":{"type":"number","format":"double"}},{"name":"crop","in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projecttemplates/{projecttemplateId}/files/{fileId}/pdf":{"get":{"tags":["ProjectTemplate Files"],"summary":"Returns the specified projecttemplate file as PDF.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesPdfByProjectTemplateNameAndProjectTemplateIdAndFileId","parameters":[{"name":"projecttemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"inline","in":"query","schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projecttemplates/{projecttemplateId}/files/{fileId}/shareurl":{"get":{"tags":["ProjectTemplate Files"],"summary":"Returns a public URL for the specified file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesShareUrlByProjectTemplateNameAndProjectTemplateIdAndFileId","parameters":[{"name":"projecttemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projecttemplates/{projecttemplateId}/files/{fileId}/versions":{"get":{"tags":["ProjectTemplate Files"],"summary":"Returns all versions of the specified projecttemplate file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsByProjectTemplateNameAndProjectTemplateIdAndFileId","parameters":[{"name":"projecttemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileVersion"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["ProjectTemplate Files"],"summary":"Uploads a new version of the specified projecttemplate file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesVersionsByProjectTemplateNameAndProjectTemplateIdAndFileId","parameters":[{"name":"projecttemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileVersion"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projecttemplates/{projecttemplateId}/files/{fileId}/versions/{versionId}":{"get":{"tags":["ProjectTemplate Files"],"summary":"Returns the projecttemplate file version with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsByProjectTemplateNameAndProjectTemplateIdAndFileIdAndVersionId","parameters":[{"name":"projecttemplateId","in":"path","description":"The id of the projecttemplate.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The id of the file.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"versionId","in":"path","description":"The id of the file version.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileVersion"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projecttemplates/{projecttemplateId}/files/{fileId}/versions/{versionId}/download":{"get":{"tags":["ProjectTemplate Files"],"summary":"Returns the content of the specified projecttemplate file version.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsDownloadByProjectTemplateNameAndProjectTemplateIdAndFileIdAndVersionId","parameters":[{"name":"projecttemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"versionId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projecttimebookings":{"get":{"tags":["TimeBookings"],"summary":"Returns a list of time bookings.","description":"Returns a list of time bookings. Each booking includes its project, user, and tracked duration. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetProjectTimeBookings","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TimeBooking"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["TimeBookings"],"summary":"Creates a time booking for a project and user.","description":"Creates a time booking for a project and user. The booking records time for the submitted project and user. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostProjectTimeBooking","requestBody":{"description":"The model to create the time booking.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeBookingForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeBooking"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projecttimebookings/{timeBookingId}":{"delete":{"tags":["TimeBookings"],"summary":"Deletes a time booking by id.","description":"Deletes a time booking by id. The booking is removed from the selected project. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"DeleteProjectTimeBooking","parameters":[{"name":"timeBookingId","in":"path","description":"The id of the time booking to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["TimeBookings"],"summary":"Updates a given time booking.","description":"Updates a given time booking. The saved booking reflects the submitted duration and assignment. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PutProjectTimeBooking","parameters":[{"name":"timeBookingId","in":"path","description":"The id of the time booking.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to update the time booking.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeBookingForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeBooking"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projecttypes":{"get":{"tags":["ProjectTypes"],"summary":"Returns existing project types.","description":"Returns existing project types. Each type includes its name, icon, and archived state. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetProjectTypes","parameters":[{"name":"showArchived","in":"query","description":"Whether to include archived project types in the results. Default is false.","schema":{"type":"boolean","default":false}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectType"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["ProjectTypes"],"summary":"Creates a new project type.","description":"Creates a new project type. The new type can be selected when projects are created.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostProjectType","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectTypeForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectType"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttypes/icons":{"get":{"tags":["ProjectTypes"],"summary":"Returns available project type icons.","description":"Returns available project type icons. These icons can be assigned to project types. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetProjectTypesIcons","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/projecttypes/{projectTypeId}":{"get":{"tags":["ProjectTypes"],"summary":"Returns a project type by its ID.","description":"Returns a project type by its ID. The response includes the type's name, icon, and settings. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetProjectTypeById","parameters":[{"name":"projectTypeId","in":"path","description":"The id of the project type.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectType"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["ProjectTypes"],"summary":"Updates project type.","description":"Updates project type. The submitted name, icon, and settings replace the existing values.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PutProjectTypeById","parameters":[{"name":"projectTypeId","in":"path","description":"The id of the project type.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to update the project type.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectTypeForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectType"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttypes/{projectTypeId}/delete":{"post":{"tags":["ProjectTypes"],"summary":"Deletes project types.","description":"Deletes project types. Projects using the type are reassigned before it is removed.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostProjectTypeDeleteByProjectTypeId","parameters":[{"name":"projectTypeId","in":"path","description":"The id of the project type.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to delete the project type.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteProjectTypeForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/projecttypes/{projectTypeId}/setarchived":{"post":{"tags":["ProjectTypes"],"summary":"Archives or unarchives the project type.","description":"Archives or unarchives the project type. Archived types remain available for existing projects.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostProjectTypeSetArchivedByProjectTypeId","parameters":[{"name":"projectTypeId","in":"path","description":"The id of the project type.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArchivedForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectType"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/roles":{"get":{"tags":["Roles"],"summary":"Returns roles of the workspace.","description":"Returns roles of the workspace. Each role includes its name and status.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:read` permissions.</Check>","operationId":"GetRoles","parameters":[{"name":"showArchived","in":"query","description":"Whether to show archived roles.","schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Role"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"read"}},"post":{"tags":["Roles"],"summary":"Creates a workspace role.","description":"Creates a workspace role. The role starts with the submitted settings.\r\n\r\n<Note title=\"Subscription Level\" icon=\"layer-group\">This endpoint requires the `Standard` plan or higher.</Note>\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PostRole","requestBody":{"description":"The role form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoleForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Role"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"},"x-subscriptionlevel":{"minimumPlan":"standard"}}},"/roles/moveuser":{"post":{"tags":["Roles"],"summary":"Moves a user to another role.","description":"Moves a user to another role. The user keeps workspace access under the new role.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PostRolesMoveUser","requestBody":{"description":"The move user in role payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MoveUserInRole"}}},"required":true},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/roles/users":{"get":{"tags":["Roles"],"summary":"Returns all users in roles of the workspace.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:read` permissions.</Check>","operationId":"GetRolesUsers","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"},{"name":"aw-internal-request","in":"header","description":"Marks this request as an internal request. Only allowed by the awork app or internally.","required":true,"schema":{"type":"string","default":"true"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/UserInRole"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"read"},"x-internal":true}},"/roles/{roleId}":{"get":{"tags":["Roles"],"summary":"Returns the role.","description":"Returns the role. The returned role includes its workspace settings.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:read` permissions.</Check>","operationId":"GetRoleById","parameters":[{"name":"roleId","in":"path","description":"The id of the role.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Role"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"read"}},"put":{"tags":["Roles"],"summary":"Updates the role.","description":"Updates the role. The submitted settings replace the existing values.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PutRoleById","parameters":[{"name":"roleId","in":"path","description":"The id of the role.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The role form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoleForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Role"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/roles/{roleId}/adduser":{"post":{"tags":["Roles"],"summary":"Adds the user to the role.","description":"Adds the user to the role. The user is added to the role membership.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PostRoleAddUserByRoleId","parameters":[{"name":"roleId","in":"path","description":"The id of the role.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The user in role form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserInRoleForm"}}},"required":true},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/roles/{roleId}/deactivatedmenuitems":{"get":{"tags":["Roles"],"summary":"Returns deactivated menu items for the role.","description":"Returns deactivated menu items for the role. The result lists menu items disabled for the role.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:read` permissions.</Check>","operationId":"GetRoleDeactivatedMenuItemsByRoleId","parameters":[{"name":"roleId","in":"path","description":"The id of the role.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}},"example":["https://www.awork.com"]}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"read"}},"post":{"tags":["Roles"],"summary":"Updates deactivated menu items for a role.","description":"Updates deactivated menu items for a role. The submitted menu settings replace the role's disabled items.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PostRoleDeactivatedMenuItemsByRoleId","parameters":[{"name":"roleId","in":"path","description":"The id of the role.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The list of menu item keys.","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/roles/{roleId}/delete":{"post":{"tags":["Roles"],"summary":"Deletes the role.","description":"Deletes the role. Users assigned to the role must be moved before it is removed.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PostRoleDeleteByRoleId","parameters":[{"name":"roleId","in":"path","description":"The id of the role.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The delete role form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteRoleForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/roles/{roleId}/permissions":{"get":{"tags":["Roles"],"summary":"Returns permissions of the specified role.","description":"Returns permissions of the specified role. The result lists permissions assigned to the role.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:read` permissions.</Check>","operationId":"GetRolePermissionsByRoleId","parameters":[{"name":"roleId","in":"path","description":"The id of the role.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/PermissionOfGlobalRole"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"read"}},"post":{"tags":["Roles"],"summary":"Updates permissions for a role.","description":"Updates permissions for a role. The submitted permission is added, changed, or removed for the role.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostRolePermissionsByRoleId","parameters":[{"name":"roleId","in":"path","description":"The id of the role.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The permission of role form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PermissionOfRoleForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PermissionOfProjectRole"}}}},"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/roles/{roleId}/setarchived":{"post":{"tags":["Roles"],"summary":"Archives or unarchives the role.","description":"Archives or unarchives the role. An archived role still exists for all users currently using it, but users can no longer be assigned to this role.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PostRoleSetArchivedByRoleId","parameters":[{"name":"roleId","in":"path","description":"The id of the role.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The archived form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArchivedForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Role"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/roles/{roleId}/users":{"get":{"tags":["Roles"],"summary":"Returns users of the specified role.","description":"Returns users of the specified role. The result lists users assigned to the role.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:read` permissions.</Check>","operationId":"GetRoleUsersByRoleId","parameters":[{"name":"roleId","in":"path","description":"The id of the role.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"showArchived","in":"query","description":"Whether to show archived users.","schema":{"type":"boolean","default":false}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/UserInRole"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"read"}}},"/roles/{roleId}/users/{userId}/activate":{"post":{"tags":["Roles"],"summary":"Activates the user.","description":"Activates the user. The user's sign-in status changes for the workspace.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PostRoleUserActivateByRoleIdAndUserId","parameters":[{"name":"roleId","in":"path","description":"The id of the role.","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":{"200":{"description":"OK"},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/roles/{roleId}/users/{userId}/deactivate":{"post":{"tags":["Roles"],"summary":"Deactivates the user.","description":"Deactivates the user. The user's sign-in status changes for the workspace.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PostRoleUserDeactivateByRoleIdAndUserId","parameters":[{"name":"roleId","in":"path","description":"The id of the role.","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":{"200":{"description":"OK"},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/roles/{roleName}":{"get":{"tags":["Roles"],"summary":"Returns the role for the name.","description":"Returns the role for the name. The name match is evaluated within the current workspace.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:read` permissions.</Check>","operationId":"GetRoleByRoleName","parameters":[{"name":"roleName","in":"path","description":"The name of the role.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Role"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"read"}}},"/search":{"get":{"tags":["Search"],"summary":"Performs a full-text search across workspace entities.","description":"This endpoint enables powerful full-text search capabilities across multiple types.\r\n             It returns a ranked list of matching entities based on relevance and respects user permissions.\r\n            \r\n             The search functionality includes:\r\n             - Cross-entity search across various entity types in the workspace.\r\n             - Relevance-based scoring and ranking of results.\r\n             - Respecting user access permissions for all returned results.\r\n             - Customizable result filtering by entity type and status.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetSearch","parameters":[{"name":"searchTerm","in":"query","description":"The term to search for. Max. 50 characters. Required.","schema":{"type":"string"}},{"name":"searchTypes","in":"query","description":"Comma-separated list of types to search for, or 'all'. Supported types: task, project, user, company, comment, timeentry, timereport, file, document, tasklist, dashboardnote.","schema":{"type":"string"}},{"name":"top","in":"query","description":"Count of top results. Default: 20. Must be between 1 and the configured maximum (SearchMaximumResults).","schema":{"type":"integer","format":"int32"}},{"name":"includeClosedAndStuck","in":"query","description":"If true, the result will include entities where the status is closed, stuck and done.","schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchResults"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/sharedfiles":{"get":{"tags":["SharedFiles"],"summary":"Returns a shared file.","description":"Returns the shared file for the provided token.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Allows unauthenticated access.</Check>","operationId":"GetSharedFiles","parameters":[{"name":"token","in":"query","description":"The token to allow access.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"anonymous":"true"}}},"/taskbundles":{"get":{"tags":["TaskBundles"],"summary":"Returns task bundles.","description":"Returns task bundles. Each bundle includes its task and list templates. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTaskBundles","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskBundle"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["TaskBundles"],"summary":"Creates a task bundle.","description":"Creates a task bundle. It groups reusable task and list templates.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PostTaskBundle","requestBody":{"description":"The task bundle form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskBundleForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskBundle"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/taskbundles/fromproject/{projectId}":{"post":{"tags":["TaskBundles"],"summary":"Creates a task bundle from a project.","description":"Creates a task bundle from a project. The bundle is created from the selected project.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PostTaskBundlesFromProjectByProjectId","parameters":[{"name":"projectId","in":"path","description":"The id of the project.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to create a task bundle from a project.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTaskBundleFromProjectForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskBundle"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/taskbundles/fromtasklist/{taskListId}":{"post":{"tags":["TaskBundles"],"summary":"Creates a task bundle from a task list.","description":"Creates a task bundle from a task list. The bundle is created from the selected task list.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PostTaskBundlesFromTaskListByTaskListId","parameters":[{"name":"taskListId","in":"path","description":"The id of the task list.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The form to create a task bundle from a task list.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskBundleFromTaskListForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskBundle"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/taskbundles/icons":{"get":{"tags":["TaskBundles"],"summary":"Returns available task bundle icons.","description":"Returns available task bundle icons. These icons can be assigned to task bundles. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTaskBundlesIcons","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/taskbundles/{taskBundleId}":{"delete":{"tags":["TaskBundles"],"summary":"Deletes a task bundle.","description":"Deletes a task bundle. The bundle is removed with its task templates.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"DeleteTaskBundleById","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}},"get":{"tags":["TaskBundles"],"summary":"Returns a task bundle by id.","description":"Returns a task bundle by id. The response includes the bundle's configuration. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTaskBundleById","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskBundle"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["TaskBundles"],"summary":"Updates a task bundle.","description":"Updates a task bundle. The submitted templates and settings replace the existing values.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PutTaskBundleById","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The task bundle form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskBundleForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskBundle"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/taskbundles/{taskBundleId}/copy":{"post":{"tags":["TaskBundles"],"summary":"Creates a copy of a task bundle.","description":"Creates a copy of a task bundle. The copy receives a new identity and keeps the bundle configuration.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PostTaskBundleCopyByTaskBundleId","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model containing the data to copy the task bundle.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CopyTaskBundleForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskBundle"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/taskbundles/{taskBundleId}/taskdependencytemplates":{"get":{"tags":["TaskDependencyTemplates"],"summary":"Returns dependency templates for a task bundle.","description":"Returns dependency templates for a task bundle. Each entry identifies a predecessor and successor task template.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:read` permissions.</Check>","operationId":"GetTaskBundleTaskDependencyTemplatesByTaskBundleId","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskDependencyTemplate"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"read"}},"post":{"tags":["TaskDependencyTemplates"],"summary":"Creates a dependency template for a bundle.","description":"Creates a dependency template for a bundle. The result describes dependencies configured for the bundle.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PostTaskBundleTaskDependencyTemplatesByTaskBundleId","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model describing the task dependency template to create.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskDependencyTemplateForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskDependencyTemplate"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/taskbundles/{taskBundleId}/taskdependencytemplates/{taskDependencyTemplateId}":{"delete":{"tags":["TaskDependencyTemplates"],"summary":"Deletes a dependency template from a bundle.","description":"Deletes a dependency template from a bundle. The result describes dependencies configured for the bundle.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"DeleteTaskBundleTaskDependencyTemplateByTaskBundleIdAndTaskDependencyTemplateId","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskDependencyTemplateId","in":"path","description":"The task Dependency Template Id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}},"get":{"tags":["TaskDependencyTemplates"],"summary":"Returns a dependency template from a bundle.","description":"Returns a dependency template from a bundle. The result describes dependencies configured for the bundle.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:read` permissions.</Check>","operationId":"GetTaskBundleTaskDependencyTemplateByTaskBundleIdAndTaskDependencyTemplateId","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskDependencyTemplateId","in":"path","description":"The task Dependency Template Id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskDependencyTemplate"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"read"}}},"/taskbundles/{taskBundleId}/tasklisttemplates":{"get":{"tags":["TaskBundles"],"summary":"Returns task list templates for a task bundle.","description":"Returns task list templates for a task bundle. The response includes the list template configuration. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTaskBundleTaskListTemplatesByTaskBundleId","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/NestedTaskList"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["TaskBundles"],"summary":"Creates a task list template for a bundle.","description":"Creates a task list template for a bundle. It is included when the bundle is applied.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PostTaskBundleTaskListTemplatesByTaskBundleId","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle to create the task list template for.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to create a task list template.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskListForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NestedTaskList"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/taskbundles/{taskBundleId}/tasklisttemplates/{taskListTemplateId}":{"delete":{"tags":["TaskBundles"],"summary":"Deletes a task list template.","description":"Deletes a task list template. The response includes the list template configuration.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"DeleteTaskBundleTaskListTemplateByTaskBundleIdAndTaskListTemplateId","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskListTemplateId","in":"path","description":"The task List Template Id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}},"get":{"tags":["TaskBundles"],"summary":"Returns a task list template.","description":"Returns a task list template. The response includes the list template configuration. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTaskBundleTaskListTemplateByTaskBundleIdAndTaskListTemplateId","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskListTemplateId","in":"path","description":"The task list template id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NestedTaskList"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["TaskBundles"],"summary":"Updates a task list template.","description":"Updates a task list template.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PutTaskBundleTaskListTemplateByTaskBundleIdAndTaskListTemplateId","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskListTemplateId","in":"path","description":"The task list template id.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The task list bundle put form.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskListBundlePutForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NestedTaskList"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/taskbundles/{taskBundleId}/tasklisttemplates/{taskListTemplateId}/addtasktemplates":{"post":{"tags":["TaskBundles"],"summary":"Adds task templates to a task list template.","description":"Adds task templates to a task list template. The listed task templates are added to the bundle list.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PostTaskBundleTaskListTemplateAddTaskTemplatesByTaskBundleIdAndTaskListTemplateId","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskListTemplateId","in":"path","description":"The task List Template Id.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The task Template To Task List Template list.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskTemplateToTaskListTemplate"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ReorderingResult"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/taskbundles/{taskBundleId}/tasklisttemplates/{taskListTemplateId}/removetasktemplates":{"post":{"tags":["TaskBundles"],"summary":"Removes task templates from a task list template.","description":"Removes task templates from a task list template. The listed task templates are removed from the bundle list.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PostTaskBundleTaskListTemplateRemoveTaskTemplatesByTaskBundleIdAndTaskListTemplateId","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskListTemplateId","in":"path","description":"The task List Template Id.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The guid list.","content":{"application/json":{"schema":{"type":"array","items":{"type":"string","format":"uuid"}}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/taskbundles/{taskBundleId}/tasklisttemplates/{taskListTemplateId}/tasktemplates":{"get":{"tags":["TaskBundles"],"summary":"Returns task templates inside a task list template.","description":"Returns task templates inside a task list template. The response includes task templates assigned to the list. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTaskBundleTaskListTemplateTaskTemplatesByTaskBundleIdAndTaskListTemplateId","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskListTemplateId","in":"path","description":"The task list template id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskTemplate"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/taskbundles/{taskBundleId}/tasklisttemplates/{taskListTemplateId}/tasktemplates/{taskTemplateId}":{"get":{"tags":["TaskBundles"],"summary":"Returns a task template from a list.","description":"Returns a task template from a list. The response includes task templates assigned to the list. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTaskBundleTaskListTemplateTaskTemplateByTaskBundleIdAndTaskListTemplateIdAndTaskTemplateId","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskListTemplateId","in":"path","description":"The task list template id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskTemplateId","in":"path","description":"The id of the task template.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskTemplate"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/taskbundles/{taskBundleId}/tasklisttemplates/{taskListTemplateId}/tasktemplates/{taskTemplateId}/updateorder":{"post":{"tags":["TaskBundles"],"summary":"Updates task template order in a list.","description":"Updates task template order in a list. The selected task template is moved within the list.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PostTaskBundleTaskListTemplateTaskTemplateUpdateOrderByTaskBundleIdAndTaskListTemplateIdAndTaskTemplateId","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskListTemplateId","in":"path","description":"The task List Template Id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskTemplateId","in":"path","description":"The id of the task template.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The task In Task List Update Order form.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskInTaskListUpdateOrderForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/taskbundles/{taskBundleId}/tasklisttemplates/{taskListTemplateId}/updateorder":{"post":{"tags":["TaskBundles"],"summary":"Updates task template order in a list.","description":"Updates task template order in a list. The task list template order is stored on the bundle.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PostTaskBundleTaskListTemplateUpdateOrderByTaskBundleIdAndTaskListTemplateId","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskListTemplateId","in":"path","description":"The task List Template Id.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The update Order form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateOrderForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/taskbundles/{taskBundleId}/tasktemplates":{"get":{"tags":["TaskTemplates"],"summary":"Returns task templates of the task bundle.","description":"Returns task templates of the task bundle. The response includes the task template configuration. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTaskBundleTaskTemplatesByTaskBundleId","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskTemplate"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["TaskTemplates"],"summary":"Creates a task template for the task bundle.","description":"Creates a task template for the task bundle. It is included when the bundle is applied.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PostTaskBundleTaskTemplatesByTaskBundleId","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The task Template form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskTemplateForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskTemplate"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/taskbundles/{taskBundleId}/tasktemplates/{taskTemplateId}":{"delete":{"tags":["TaskTemplates"],"summary":"Deletes the task template for the task bundle.","description":"Deletes the task template for the task bundle. The task template is removed from the bundle.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"DeleteTaskBundleTaskTemplateByTaskBundleIdAndTaskTemplateId","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskTemplateId","in":"path","description":"The id of the task template.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}},"get":{"tags":["TaskTemplates"],"summary":"Returns the task template of the task bundle.","description":"Returns the task template of the task bundle. The response includes the task template configuration. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTaskBundleTaskTemplateByTaskBundleIdAndTaskTemplateId","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskTemplateId","in":"path","description":"The id of the task template.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskTemplate"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["TaskTemplates"],"summary":"Updates the task template for the task bundle.","description":"Updates the task template for the task bundle. The updated task template is stored in the bundle.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PutTaskBundleTaskTemplateByTaskBundleIdAndTaskTemplateId","parameters":[{"name":"taskBundleId","in":"path","description":"The id of the task bundle.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskTemplateId","in":"path","description":"The id of the task template.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The task Template form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskTemplateForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskTemplate"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/taskbundles/{taskBundleId}/tasktemplates/{taskTemplateId}/setassignees":{"post":{"tags":["TaskTemplates"],"summary":"Assigns a list of users to task templates.","description":"Assigns a list of users to task templates. Users that are not passed and are already assigned will be removed. Removes existing task template assignments and adds the new assignment.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PostTaskBundlesTaskTemplatesSetAssigneesByTaskBundleIdAndTaskTemplateId","parameters":[{"name":"taskTemplateId","in":"path","description":"The id of the task template.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The id of the users.","content":{"application/json":{"schema":{"type":"array","items":{"type":"string","format":"uuid"}}}},"required":true},"responses":{"204":{"description":"No Content"},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/taskdependencies":{"post":{"tags":["TaskDependencies"],"summary":"Creates task dependency.","description":"Creates task dependency. The dependency links the selected tasks. <Check title=\"Required Permissions\" icon=\"key\">To create a task dependency, the user needs to be the assignee of both tasks or have `ProjectPlanning`\r\n            permissions in general or in the project the tasks are related to.</Check>","operationId":"PostTaskDependency","requestBody":{"description":"The task Dependency form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskDependencyForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskDependency"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/taskdependencies/{taskDependencyId}":{"delete":{"tags":["TaskDependencies"],"summary":"Deletes a task dependency.","description":"Deletes a task dependency. The dependency is removed from both related tasks. <Check title=\"Required Permissions\" icon=\"key\">To delete a task dependency, the User needs to be the assignee of both tasks or have 'ProjectPlanning'\r\n            permissions in general or in the project the task are related to.</Check>","operationId":"DeleteTaskdependencyByTaskDependencyId","parameters":[{"name":"taskDependencyId","in":"path","description":"The id of the task dependency.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks":{"post":{"tags":["Tasks"],"summary":"Creates a project or private task.","description":"Creates a project or private task. The created task is returned with its project or private-task scope. <Check title=\"Required Permissions\" icon=\"key\">The user mast either have `project-planning-data:write` permissions, be assigned to the parent task (if a parent task is specified) or create a private task.</Check>","operationId":"PostTask","requestBody":{"description":"The general Task Post form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GeneralTaskPostForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/assignuserbyemail":{"post":{"tags":["Tasks"],"summary":"Invites a user by email and assigns them to a task.","description":"Invites a user by email and assigns them to a task. The invited user is added to the task's assignees. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTasksAssignUserByEmail","requestBody":{"description":"The assign By Email form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AssignByEmailForm"}}},"required":true},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/batch/{operation}":{"post":{"tags":["Tasks"],"summary":"Updates multiple tasks with the selected operation.","description":"Updates multiple tasks with the selected operation. Supported operations move tasks, change dates, manage tags, change status or type, assign users, copy tasks, and delete tasks.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have `write` permission for the requested tasks and related entities.</Check>","operationId":"PostTasksBatchByOperation","parameters":[{"name":"operation","in":"path","description":"The operation to perform on all tasks.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"The model describing the batch task operation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BatchOperationForm"}}},"required":true},"responses":{"207":{"description":"Multi-Status","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MultiStatusResult"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/changebasetypes":{"post":{"tags":["Tasks"],"summary":"Updates the base type for multiple tasks.","description":"Updates the base type for multiple tasks. The task becomes available with the selected base type. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTasksChangeBaseTypes","requestBody":{"description":"The tasks Change Base Types form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TasksChangeBaseTypesForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"207":{"description":"Multi-Status"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/changelists":{"post":{"tags":["Tasks"],"summary":"Updates the task lists of tasks.","description":"Updates the task lists of tasks. The listed tasks are assigned to the selected lists. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTasksChangeLists","requestBody":{"description":"The change Task List forms.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ChangeTaskListsForm"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ChangeTaskListsForm"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/changestatuses":{"post":{"tags":["Tasks"],"summary":"Updates the statuses of tasks.","description":"Updates the statuses of tasks. The selected status is applied to the listed tasks. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTasksChangeStatuses","requestBody":{"description":"The change Status form list.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ChangeStatusForm"}}}},"required":true},"responses":{"204":{"description":"No Content"},"207":{"description":"Multi-Status"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/changesubtasks":{"post":{"tags":["Tasks"],"summary":"Updates task hierarchy and subtask order.","description":"Updates task hierarchy and subtask order. A moved subtask adopts the parent task's list and type, and tasks with subtasks cannot become subtasks. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTasksChangeSubtasks","requestBody":{"description":"The subtask Changes model.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ChangeSubtasksPostForm"}}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/changesubtaskstoparent":{"post":{"tags":["Tasks"],"summary":"Converts subtasks to a parent task.","description":"Converts subtasks to a parent task. Convert subtasks to a parent task. If list ids are not provided it will keep the same lists as the old parent task, placing the task as last item in the lists. If multiple list ids are provided per task, the lists will be overwritten with the lists provided. In this case, if an order is not provided, it will be put as the last item in the list. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTasksChangeSubtasksToParent","requestBody":{"description":"The change Subtasks To Parent Post form list.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ChangeSubtasksToParentPostForm"}}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/changetypeofwork":{"post":{"tags":["Tasks"],"summary":"Updates the type of work for multiple tasks.","description":"Updates the type of work for multiple tasks. The selected work type is applied to the listed tasks. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTasksChangeTypeOfWork","requestBody":{"description":"The tasks Change Types form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TasksChangeTypesForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"207":{"description":"Multi-Status"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/delete":{"post":{"tags":["Tasks"],"summary":"Deletes tasks and optionally related time entries.","description":"Deletes tasks and optionally related time entries. Related time entries are removed when requested. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTasksDelete","requestBody":{"description":"The model describing the task deletion request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TasksDeleteForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"207":{"description":"Multi-Status"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/deletetags":{"post":{"tags":["TaskTags"],"summary":"Removes a tag from project tasks.","description":"Removes a tag from project tasks. The tag is removed from matching project tasks.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-planning-data:write` permissions.</Check>","operationId":"PostTasksDeleteTags","requestBody":{"description":"The model to delete the tag from all tasks.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteTagForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-planning-data":"write"}}},"/tasks/key/{taskIdentifier}":{"get":{"tags":["Tasks"],"summary":"Returns the task for the key.","description":"Returns the task for the key. The key is matched within the current workspace. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTasksKeyByTaskIdentifier","parameters":[{"name":"taskIdentifier","in":"path","description":"The task identifier to lookup (for example, KEY-123).","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/settaskpriority":{"post":{"tags":["Tasks"],"summary":"Sets the priority flag for a task.","description":"Sets the priority flag for a task. The task priority flag is stored on the task. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTasksSetTaskPriority","requestBody":{"description":"The task Set Prio form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskSetPrioForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/tags":{"get":{"tags":["TaskTags"],"summary":"Returns task tags that are in use by tasks.","description":"Returns task tags that are in use by tasks. The result includes tags used by visible tasks. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTasksTags","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/BaseTagModel"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/updatetags":{"post":{"tags":["TaskTags"],"summary":"Updates a tag globally for project tasks.","description":"Updates a tag globally for project tasks. The renamed or merged tag is applied to matching project tasks.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-planning-data:write` permissions.</Check>","operationId":"PostTasksUpdateTags","requestBody":{"description":"The model to update the tag including the old and new tag names.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagUpdateForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"207":{"description":"Multi-Status"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-planning-data":"write"}}},"/tasks/{taskId}":{"get":{"tags":["Tasks"],"summary":"Returns the specified task.","description":"Returns the specified task. The response includes the task's current assignments and status. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTaskById","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskModel"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Tasks"],"summary":"Updates the task.","description":"Updates the task. The updated task is returned with its changed fields. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PutTaskById","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model describing the task updates.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GeneralTaskForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/activities":{"get":{"tags":["Task Activities"],"summary":"Returns all activities of the task with the specified id.","description":"The activities contain information about the type of the activity, which property was changed and by whom.\r\n            This contains changes to first-level properties of the task, like name, description, status, etc., as well as several related entities, such as tags, assignments, etc.\r\n            This does not include activities of sub-entities, like tasks of a project or comments on a task.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetTaskActivities","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ActivityModel"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/addtags":{"post":{"tags":["TaskTags"],"summary":"Adds a batch of tags to the task.","description":"Adds a batch of tags to the task. The request fails if one of the tags is invalid (e.g. empty or duplicate). <Check title=\"Required Permissions\" icon=\"key\">To add tags to a task the user must have `write` permissions on the specified task.</Check>","operationId":"PostTaskAddTagsByTaskId","parameters":[{"name":"taskId","in":"path","description":"The id of the task to add the tags to.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model with the tags to be added.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagForm"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/BaseTagModel"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/checklistitems":{"get":{"tags":["ChecklistItems"],"summary":"Returns the checklist items for the task.","description":"Returns the checklist items for the task. The checklist belongs to the specified task. <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `read` permissions on the specified task.</Check>","operationId":"GetTaskChecklistItemsByTaskId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ChecklistItem"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["ChecklistItems"],"summary":"Creates a checklist item for a task.","description":"Creates a checklist item for a task. The new item is added to the task checklist. <Check title=\"Required Permissions\" icon=\"key\">The required permissions depend on the base type of the task. If the task is a project task, the user must have either `project-master-data:write` permissions or be assigned to the task. For a user's private task, no special permissions are required.</Check>","operationId":"PostTaskChecklistItemsByTaskId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The checklist item form.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChecklistItemForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChecklistItem"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/checklistitems/tosubtasks":{"post":{"tags":["ChecklistItems"],"summary":"Converts checklist items of the task to subtasks.","description":"Converts checklist items of the task to subtasks. Each checklist item becomes a subtask of the task. <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `write` permissions on the specified task.</Check>","operationId":"PostTaskChecklistItemsToSubtasksByTaskId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskModel"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/checklistitems/{checklistItemId}":{"delete":{"tags":["ChecklistItems"],"summary":"Deletes a checklist item from a task.","description":"Deletes a checklist item from a task. The selected checklist item is removed from the task. <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `write` permissions on the specified task.</Check>","operationId":"DeleteTaskChecklistItemByTaskIdAndChecklistItemId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"checklistItemId","in":"path","description":"The id of the checklist item to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["ChecklistItems"],"summary":"Returns the checklist item for a task.","description":"Returns the checklist item for a task. The checklist belongs to the specified task. <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `read` permissions on the specified task.</Check>","operationId":"GetTaskChecklistItemByTaskIdAndChecklistItemId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"checklistItemId","in":"path","description":"The id of the checklist item.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChecklistItem"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["ChecklistItems"],"summary":"Updates a checklist item for a task.","description":"Updates a checklist item for a task. The submitted item fields are stored on the checklist item. <Check title=\"Required Permissions\" icon=\"key\">The required permissions depend on the base type of the task. If the task is a project task, the user must have either `project-master-data:write` permissions or be assigned to the task. For a user's private task, no special permissions are required.</Check>","operationId":"PutTaskChecklistItemByTaskIdAndChecklistItemId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"checklistItemId","in":"path","description":"The id of the checklist item.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The checklist item form.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChecklistItemForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChecklistItem"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/comments":{"delete":{"tags":["TaskComments"],"summary":"Deletes all comments of the specified task.","description":"Deletes all comments of the specified task.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteCommentsByTaskNameAndTaskId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["TaskComments"],"summary":"Returns all comments of the task with the specified id.","description":"Returns all comments of the task with the specified id. The user needs read permissions on the task.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetCommentsByTaskNameAndTaskId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Comment"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["TaskComments"],"summary":"Creates a new comment on the task with the specified id.","description":"Creates a new comment on the task with the specified id.\r\n            A user can only create a comment for him/herself, except for admins and api users.\r\n            \r\n            <Check title=\"Required Permissions\" icon=\"key\">To create a comment the user must have at least `read` permissions on the specified task.</Check>","operationId":"PostCommentsByTaskNameAndTaskId","parameters":[{"name":"taskId","in":"path","description":"The id of the task to create the comment for.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to create the comment.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommentForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Comment"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/comments/{commentId}":{"delete":{"tags":["TaskComments"],"summary":"Deletes the comment with the specified id on the task with the specified id.","description":"Deletes the comment with the specified id on the task with the specified id.\r\n            The delete includes the reactions of the comment.\r\n            If there are any replies to the comment, they will be deleted as well.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteCommentByTaskNameAndTaskIdAndCommentId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"commentId","in":"path","description":"The id of the comment.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["TaskComments"],"summary":"Returns the comment with the specified id of the task with the specified id.","description":"Returns the comment with the specified id of the task with the specified id.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetCommentByTaskNameAndTaskIdAndCommentId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"commentId","in":"path","description":"The id of the comment.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Comment"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["TaskComments"],"summary":"Updates the comment with the specified id on the task with the specified id.","description":"<Check title=\"Required Permissions\" icon=\"key\">To update a comment the user must either have at least `read` permissions on the specified task, be the creator of the comment or be admin.</Check>","operationId":"PutCommentByTaskNameAndTaskIdAndCommentId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"commentId","in":"path","description":"The id of the comment.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model with the updated comment information.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommentPutForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Comment"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/comments/{commentId}/react":{"post":{"tags":["TaskComments"],"summary":"Updates the reactions of the comment with the specified id on the task with the specified id.","description":"<Check title=\"Required Permissions\" icon=\"key\">To update a reaction of a comment the user must have at least `read` permissions on the specified task.</Check>","operationId":"PostCommentReactByTaskNameAndTaskIdAndCommentId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"commentId","in":"path","description":"The id of the comment.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model used to update the reactions of the comment with the specified id.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactionForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/copy":{"post":{"tags":["Tasks"],"summary":"Creates a copy of the specified task.","description":"Creates a copy of the specified task. Comments, files and activity logs are not copied. If the task is a parent task, it will also copy its subtasks. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTaskCopyByTaskId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskModel"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/deleterecurrency":{"post":{"tags":["Tasks"],"summary":"Deletes the recurrence rule for a task.","description":"Deletes the recurrence rule for a task. The task no longer repeats after the rule is removed. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTaskDeleteRecurrencyByTaskId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/deletetags":{"post":{"tags":["TaskTags"],"summary":"Removes tags from the task.","description":"Removes tags from the task. Returns 207 MultiStatus if at least one tag could not be removed, including the reasons. <Check title=\"Required Permissions\" icon=\"key\">To remove tags from a task the user must have `write` permissions on the specified task.</Check>","operationId":"PostTaskDeleteTagsByTaskId","parameters":[{"name":"taskId","in":"path","description":"The id of the task to remove the tags from.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model with the tags to be removed.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/DeleteTagForm"}}}},"required":true},"responses":{"204":{"description":"No Content"},"207":{"description":"Multi-Status"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/externalfiles":{"post":{"tags":["Task Files"],"summary":"Creates external file references for the specified task.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostExternalFilesByTaskNameAndTaskId","parameters":[{"name":"taskId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ExternalFileForm"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileInfo"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/files":{"delete":{"tags":["Task Files"],"summary":"Deletes all files and versions for the specified task.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteFilesByTaskNameAndTaskId","parameters":[{"name":"taskId","in":"path","description":"The task id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Task Files"],"summary":"Returns all files of the specified task.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesByTaskNameAndTaskId","parameters":[{"name":"taskId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileInfo"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Task Files"],"summary":"Uploads a file for the specified task.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesByTaskNameAndTaskId","parameters":[{"name":"taskId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/files/byuploadid":{"post":{"tags":["FileUpload"],"summary":"Creates a file from an upload id.","description":"After a file has been uploaded to an upload URL generated from the <see cref=\"T:Awork.Files.Service.Feature.FileUpload.Endpoints.PostGenerateUploadURL\" /> endpoint, this endpoint can be used to create a file task from the uploaded file by providing the upload id.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostUploadByUploadId","parameters":[{"name":"taskId","in":"path","description":"The id of the task to attach the file to.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model describing the uploaded file metadata.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadByUploadIdForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/files/byurl":{"post":{"tags":["Task Files"],"summary":"Uploads a file from a public URL for the specified task.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesByUrlByTaskNameAndTaskId","parameters":[{"name":"taskId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FilePostForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/files/{fileId}":{"delete":{"tags":["Task Files"],"summary":"Deletes the specified task file and its versions.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteFilesByTaskNameAndTaskIdAndFileId","parameters":[{"name":"taskId","in":"path","description":"The task id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The file id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Task Files"],"summary":"Returns the file with the specified id of the task with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesByTaskNameAndTaskIdAndFileId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The id of the file.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Task Files"],"summary":"Updates metadata for the specified file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PutFilesByTaskNameAndTaskIdAndFileId","parameters":[{"name":"taskId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfoUpdateForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/files/{fileId}/changeentity":{"post":{"tags":["Task Files"],"summary":"Changes the task that owns the specified file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesChangeTaskByTaskNameAndTaskIdAndFileId","parameters":[{"name":"taskId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileEntityForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/files/{fileId}/copy":{"post":{"tags":["Task Files"],"summary":"Copies the specified file to another task.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesCopyByTaskNameAndTaskIdAndFileId","parameters":[{"name":"taskId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileCopyForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/files/{fileId}/download":{"get":{"tags":["Task Files"],"summary":"Returns the latest content of the specified task file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesDownloadByTaskNameAndTaskIdAndFileId","parameters":[{"name":"taskId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"width","in":"query","schema":{"type":"number","format":"double"}},{"name":"height","in":"query","schema":{"type":"number","format":"double"}},{"name":"crop","in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/files/{fileId}/pdf":{"get":{"tags":["Task Files"],"summary":"Returns the specified task file as PDF.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesPdfByTaskNameAndTaskIdAndFileId","parameters":[{"name":"taskId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"inline","in":"query","schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/files/{fileId}/shareurl":{"get":{"tags":["Task Files"],"summary":"Returns a public URL for the specified file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesShareUrlByTaskNameAndTaskIdAndFileId","parameters":[{"name":"taskId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/files/{fileId}/versions":{"get":{"tags":["Task Files"],"summary":"Returns all versions of the specified task file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsByTaskNameAndTaskIdAndFileId","parameters":[{"name":"taskId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileVersion"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Task Files"],"summary":"Uploads a new version of the specified task file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesVersionsByTaskNameAndTaskIdAndFileId","parameters":[{"name":"taskId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileVersion"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/files/{fileId}/versions/{versionId}":{"get":{"tags":["Task Files"],"summary":"Returns the task file version with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsByTaskNameAndTaskIdAndFileIdAndVersionId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The id of the file.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"versionId","in":"path","description":"The id of the file version.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileVersion"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/files/{fileId}/versions/{versionId}/download":{"get":{"tags":["Task Files"],"summary":"Returns the content of the specified task file version.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsDownloadByTaskNameAndTaskIdAndFileIdAndVersionId","parameters":[{"name":"taskId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"versionId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/recurrency":{"get":{"tags":["Tasks"],"summary":"Returns the recurrence rule of a task.","description":"Returns the recurrence rule of a task. The response includes the task's recurrence settings. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTaskRecurrencyByTaskId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecurrencyModel"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/setassignees":{"post":{"tags":["Tasks"],"summary":"Assigns a list of users to a task.","description":"Assigns a list of users to a task. Replaces existing assignments with the provided list. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTaskSetAssigneesByTaskId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The id of the users.","content":{"application/json":{"schema":{"type":"array","items":{"type":"string","format":"uuid"}}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/setcustomfields":{"post":{"tags":["CustomFields"],"summary":"Sets the custom fields for a task.","description":"Sets the custom fields for a task. The required properties depend on the type of the custom field. <Check title=\"Required Permissions\" icon=\"key\">The user must have at least `write` permissions on the specified task.</Check>","operationId":"PostTaskSetCustomFieldsByTaskId","parameters":[{"name":"taskId","in":"path","description":"The id of the task to set custom fields for.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model containing the details for setting the custom fields for a task.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CustomFieldPostForm"}}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/setplannedefforts":{"post":{"tags":["Tasks"],"summary":"Modifies planned efforts for the task assignments.","description":"Modifies planned efforts for the task assignments. Only the provided assignments are updated; missing assignments remain unchanged. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTaskSetPlannedEffortsByTaskId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The planned Efforts.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/PlannedEffortForm"}}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/setrecurrency":{"post":{"tags":["Tasks"],"summary":"Adds or updates a recurrence rule for a task.","description":"Adds or updates a recurrence rule for a task. The recurrence rule is stored on the task. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTaskSetRecurrencyByTaskId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model describing the recurrence rule to apply.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskRecurrencyForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/tags":{"get":{"tags":["TaskTags"],"summary":"Returns the tags of the task.","description":"Returns the tags of the task. The result includes tags assigned to the task. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTaskTagsByTaskId","parameters":[{"name":"taskId","in":"path","description":"The id of the task to get the tags for.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/BaseTagModel"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/taskdependencies":{"get":{"tags":["TaskDependencies"],"summary":"Returns task dependencies for a specific task.","description":"Returns task dependencies for a specific task. The result includes dependencies linked to the task. <Check title=\"Required Permissions\" icon=\"key\">To get all dependencies of a task, the user needs project planning permissions on that project or be assigned to that task.</Check>","operationId":"GetTaskTaskdependenciesByTaskId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskDependency"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/timeentries":{"get":{"tags":["TimeEntries"],"summary":"Returns all time entries of the specified task.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetTaskTimeEntries","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TimeTracking"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasks/{taskId}/updateorder":{"post":{"tags":["Tasks"],"summary":"Updates the order of a task within its list.","description":"Updates the order of a task within its list. The task is repositioned within its list. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTaskUpdateOrderByTaskId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The update Order form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateOrderForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ReorderingResult"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/taskschedules":{"get":{"tags":["TaskSchedules"],"summary":"Returns a list of task schedules.","description":"Returns a list of task schedules. Each result includes its task and timing settings. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTaskSchedules","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskSchedule"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["TaskSchedules"],"summary":"Creates a schedule for a task.","description":"Creates a schedule for a task. The schedule controls planned work for the task. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTaskSchedule","requestBody":{"description":"The model to create the task schedule.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskScheduleForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskSchedule"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/taskschedules/bytaskid/{taskId}":{"post":{"tags":["TaskSchedules"],"summary":"Creates task schedules from a task by id.","description":"Creates task schedules from a task by id. If more than one user is assigned to the task, then the user needs to opt in to create task schedules for all assignees by setting the 'createSchedulesForAllAssignees' query param to true. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTaskSchedulesByTaskIdByTaskId","parameters":[{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"createSchedulesForAllAssignees","in":"query","description":"Whether to create schedules for all assignees.","schema":{"type":"boolean","default":false}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/taskschedules/{taskScheduleId}":{"delete":{"tags":["TaskSchedules"],"summary":"Deletes a task schedule by id.","description":"Deletes a task schedule by id. The schedule is removed from the task. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"DeleteTaskScheduleById","parameters":[{"name":"taskScheduleId","in":"path","description":"The id of the task schedule.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["TaskSchedules"],"summary":"Returns a task schedule by id.","description":"Returns a task schedule by id. The response includes the schedule's task and timing settings. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTaskScheduleById","parameters":[{"name":"taskScheduleId","in":"path","description":"The id of the task schedule.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskSchedule"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["TaskSchedules"],"summary":"Updates a given task schedule.","description":"Updates a given task schedule. The saved schedule reflects the submitted timing. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PutTaskScheduleById","parameters":[{"name":"taskScheduleId","in":"path","description":"The id of the task schedule.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to update the task schedule.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskSchedulePutForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskSchedule"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasktemplates/deletetags":{"post":{"tags":["TaskTemplateTags"],"summary":"Removes a tag from task templates.","description":"Removes a tag from task templates. The tag is removed from matching task templates.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PostDeleteTagForAllTaskTemplates","requestBody":{"description":"The model to remove the tag from all task templates.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteTagForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/tasktemplates/tags":{"get":{"tags":["TaskTemplateTags"],"summary":"Returns tags that are in use by task templates.","description":"Returns tags that are in use by task templates. The result includes tags assigned to the task template. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTaskTemplateTags","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/BaseTagModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasktemplates/updatetags":{"post":{"tags":["TaskTemplateTags"],"summary":"Updates a tag globally for task templates.","description":"Updates a tag globally for task templates. The renamed or merged tag is applied to matching task templates.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PostTaskTemplatesUpdateTags","requestBody":{"description":"The model containing the tag updates.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagUpdateForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/tasktemplates/{taskTemplateId}":{"get":{"tags":["TaskTemplates"],"summary":"Returns the task template.","description":"Returns the task template. The response includes the task template configuration. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTaskTemplateById","parameters":[{"name":"taskTemplateId","in":"path","description":"The id of the task template.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskTemplate"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasktemplates/{taskTemplateId}/addtags":{"post":{"tags":["TaskTemplateTags"],"summary":"Adds a batch of tags to the task template.","description":"Adds a batch of tags to the task template. The request fails if one of the tags is invalid (e.g. empty or duplicate).\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PostCreateTaskTemplateTag","parameters":[{"name":"taskTemplateId","in":"path","description":"The id of the task template to add tags to.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model with the tags to be added.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagForm"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/BaseTagModel"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/tasktemplates/{taskTemplateId}/checklistitemtemplates":{"get":{"tags":["TaskBundles"],"summary":"Returns checklist items for a task template.","description":"Returns checklist items for a task template. The result lists checklist templates defined for the task template.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:read` permissions.</Check>","operationId":"GetTaskTemplateChecklistItemTemplatesByTaskTemplateId","parameters":[{"name":"taskTemplateId","in":"path","description":"The id of the task template.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ChecklistItemTemplate"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"read"}},"post":{"tags":["TaskBundles"],"summary":"Creates a checklist item template.","description":"Creates a checklist item template. It can be used when creating checklist items from the task template.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PostTaskTemplateChecklistItemTemplatesByTaskTemplateId","parameters":[{"name":"taskTemplateId","in":"path","description":"The id of the task template.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The checklist Item Template form.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChecklistItemTemplateForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChecklistItemTemplate"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/tasktemplates/{taskTemplateId}/checklistitemtemplates/{checklistItemTemplateId}":{"delete":{"tags":["TaskBundles"],"summary":"Deletes a checklist item template.","description":"Deletes a checklist item template. The checklist template is removed from the task template.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"DeleteTaskTemplateChecklistItemTemplateByTaskTemplateIdAndChecklistItemTemplateId","parameters":[{"name":"taskTemplateId","in":"path","description":"The id of the task template.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"checklistItemTemplateId","in":"path","description":"The checklist Item Template Id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}},"get":{"tags":["TaskBundles"],"summary":"Returns a checklist item template.","description":"Returns a checklist item template. The response includes the checklist template's label and completion settings.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:read` permissions.</Check>","operationId":"GetTaskTemplateChecklistItemTemplateByTaskTemplateIdAndChecklistItemTemplateId","parameters":[{"name":"taskTemplateId","in":"path","description":"The id of the task template.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"checklistItemTemplateId","in":"path","description":"The checklist item template id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChecklistItemTemplate"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"read"}},"put":{"tags":["TaskBundles"],"summary":"Updates a checklist item template.","description":"Updates a checklist item template. The submitted checklist template fields are stored.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PutTaskTemplateChecklistItemTemplateByTaskTemplateIdAndChecklistItemTemplateId","parameters":[{"name":"taskTemplateId","in":"path","description":"The id of the task template.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"checklistItemTemplateId","in":"path","description":"The checklist Item Template Id.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The checklist Item Template form.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChecklistItemTemplateForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChecklistItemTemplate"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/tasktemplates/{taskTemplateId}/deleterecurrency":{"post":{"tags":["TaskBundles"],"summary":"Deletes a task template recurrence rule.","description":"Deletes a task template recurrence rule. The recurrence rule is removed from the template.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PostTaskTemplateDeleteRecurrencyByTaskTemplateId","parameters":[{"name":"taskTemplateId","in":"path","description":"The id of the task template.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/tasktemplates/{taskTemplateId}/deletetags":{"post":{"tags":["TaskTemplateTags"],"summary":"Removes tags from the task template.","description":"Removes tags from the task template. Returns 207 MultiStatus if at least one tag could not be removed, including the reasons.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PostDeleteTaskTemplatesTags","parameters":[{"name":"taskTemplateId","in":"path","description":"The id of the task template to remove tags from.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The list of tags to remove from the task template.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/DeleteTagForm"}}}},"required":true},"responses":{"204":{"description":"No Content"},"207":{"description":"Multi-Status"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/tasktemplates/{taskTemplateId}/recurrency":{"get":{"tags":["TaskBundles"],"summary":"Returns recurrency details for a task template.","description":"Returns recurrency details for a task template. The response includes the template's recurrence settings.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:read` permissions.</Check>","operationId":"GetTaskTemplateRecurrencyByTaskTemplateId","parameters":[{"name":"taskTemplateId","in":"path","description":"The id of the task template.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskRecurrencyForm"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"read"}}},"/tasktemplates/{taskTemplateId}/setcustomfields":{"post":{"tags":["CustomFields"],"summary":"Sets the custom fields for the task template.","description":"Sets the custom fields for the task template. The required properties depend on the type of the custom field. Only task templates which are linked to a project template may have custom fields set.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostTaskTemplateSetCustomFieldsByTaskTemplateId","parameters":[{"name":"taskTemplateId","in":"path","description":"The id of the task template to set custom fields for.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model containing the details for setting the custom fields for a task template.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CustomFieldPostForm"}}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/tasktemplates/{taskTemplateId}/setrecurrency":{"post":{"tags":["TaskBundles"],"summary":"Updates a task template recurrence rule.","description":"Updates a task template recurrence rule. The template uses the submitted recurrence rule.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PostTaskTemplateSetRecurrencyByTaskTemplateId","parameters":[{"name":"taskTemplateId","in":"path","description":"The id of the task template.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model describing the recurrence rule to apply.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskBundleRecurrencyForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/tasktemplates/{taskTemplateId}/tags":{"get":{"tags":["TaskTemplateTags"],"summary":"Returns the tags of the task template.","description":"Returns the tags of the task template. The result includes tags assigned to the task template. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTagsByTaskTemplateId","parameters":[{"name":"taskTemplateId","in":"path","description":"The id of the task template.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/BaseTagModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasktemplates/{taskTemplateId}/taskdependencytemplates":{"get":{"tags":["TaskDependencyTemplates"],"summary":"Returns dependency templates for a task template.","description":"Returns dependency templates for a task template. The result lists dependencies defined for the task template.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:read` permissions.</Check>","operationId":"GetTaskTemplateTaskDependencyTemplatesByTaskTemplateId","parameters":[{"name":"taskTemplateId","in":"path","description":"The id of the task template.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskDependencyTemplate"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"read"}}},"/tasktemplates/{tasktemplateId}/externalfiles":{"post":{"tags":["TaskTemplate Files"],"summary":"Creates external file references for the specified tasktemplate.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostExternalFilesByTaskTemplateNameAndTaskTemplateId","parameters":[{"name":"tasktemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ExternalFileForm"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileInfo"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasktemplates/{tasktemplateId}/files":{"delete":{"tags":["TaskTemplate Files"],"summary":"Deletes all files and versions for the specified tasktemplate.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteFilesByTaskTemplateNameAndTaskTemplateId","parameters":[{"name":"tasktemplateId","in":"path","description":"The tasktemplate id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["TaskTemplate Files"],"summary":"Returns all files of the specified tasktemplate.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesByTaskTemplateNameAndTaskTemplateId","parameters":[{"name":"tasktemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileInfo"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["TaskTemplate Files"],"summary":"Uploads a file for the specified tasktemplate.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesByTaskTemplateNameAndTaskTemplateId","parameters":[{"name":"tasktemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasktemplates/{tasktemplateId}/files/byuploadid":{"post":{"tags":["FileUpload"],"summary":"Creates a file from an upload id.","description":"After a file has been uploaded to an upload URL generated from the <see cref=\"T:Awork.Files.Service.Feature.FileUpload.Endpoints.PostGenerateUploadURL\" /> endpoint, this endpoint can be used to create a file tasktemplate from the uploaded file by providing the upload id.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostUploadByUploadId","parameters":[{"name":"tasktemplateId","in":"path","description":"The id of the tasktemplate to attach the file to.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model describing the uploaded file metadata.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadByUploadIdForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasktemplates/{tasktemplateId}/files/byurl":{"post":{"tags":["TaskTemplate Files"],"summary":"Uploads a file from a public URL for the specified tasktemplate.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesByUrlByTaskTemplateNameAndTaskTemplateId","parameters":[{"name":"tasktemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FilePostForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasktemplates/{tasktemplateId}/files/{fileId}":{"delete":{"tags":["TaskTemplate Files"],"summary":"Deletes the specified tasktemplate file and its versions.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteFilesByTaskTemplateNameAndTaskTemplateIdAndFileId","parameters":[{"name":"tasktemplateId","in":"path","description":"The tasktemplate id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The file id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["TaskTemplate Files"],"summary":"Returns the file with the specified id of the tasktemplate with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesByTaskTemplateNameAndTaskTemplateIdAndFileId","parameters":[{"name":"tasktemplateId","in":"path","description":"The id of the tasktemplate.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The id of the file.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["TaskTemplate Files"],"summary":"Updates metadata for the specified file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PutFilesByTaskTemplateNameAndTaskTemplateIdAndFileId","parameters":[{"name":"tasktemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfoUpdateForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasktemplates/{tasktemplateId}/files/{fileId}/changeentity":{"post":{"tags":["TaskTemplate Files"],"summary":"Changes the tasktemplate that owns the specified file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesChangeTaskTemplateByTaskTemplateNameAndTaskTemplateIdAndFileId","parameters":[{"name":"tasktemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileEntityForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasktemplates/{tasktemplateId}/files/{fileId}/copy":{"post":{"tags":["TaskTemplate Files"],"summary":"Copies the specified file to another tasktemplate.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesCopyByTaskTemplateNameAndTaskTemplateIdAndFileId","parameters":[{"name":"tasktemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileCopyForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasktemplates/{tasktemplateId}/files/{fileId}/download":{"get":{"tags":["TaskTemplate Files"],"summary":"Returns the latest content of the specified tasktemplate file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesDownloadByTaskTemplateNameAndTaskTemplateIdAndFileId","parameters":[{"name":"tasktemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"width","in":"query","schema":{"type":"number","format":"double"}},{"name":"height","in":"query","schema":{"type":"number","format":"double"}},{"name":"crop","in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasktemplates/{tasktemplateId}/files/{fileId}/pdf":{"get":{"tags":["TaskTemplate Files"],"summary":"Returns the specified tasktemplate file as PDF.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesPdfByTaskTemplateNameAndTaskTemplateIdAndFileId","parameters":[{"name":"tasktemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"inline","in":"query","schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasktemplates/{tasktemplateId}/files/{fileId}/shareurl":{"get":{"tags":["TaskTemplate Files"],"summary":"Returns a public URL for the specified file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesShareUrlByTaskTemplateNameAndTaskTemplateIdAndFileId","parameters":[{"name":"tasktemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasktemplates/{tasktemplateId}/files/{fileId}/versions":{"get":{"tags":["TaskTemplate Files"],"summary":"Returns all versions of the specified tasktemplate file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsByTaskTemplateNameAndTaskTemplateIdAndFileId","parameters":[{"name":"tasktemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileVersion"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["TaskTemplate Files"],"summary":"Uploads a new version of the specified tasktemplate file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesVersionsByTaskTemplateNameAndTaskTemplateIdAndFileId","parameters":[{"name":"tasktemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileVersion"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasktemplates/{tasktemplateId}/files/{fileId}/versions/{versionId}":{"get":{"tags":["TaskTemplate Files"],"summary":"Returns the tasktemplate file version with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsByTaskTemplateNameAndTaskTemplateIdAndFileIdAndVersionId","parameters":[{"name":"tasktemplateId","in":"path","description":"The id of the tasktemplate.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The id of the file.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"versionId","in":"path","description":"The id of the file version.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileVersion"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/tasktemplates/{tasktemplateId}/files/{fileId}/versions/{versionId}/download":{"get":{"tags":["TaskTemplate Files"],"summary":"Returns the content of the specified tasktemplate file version.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsDownloadByTaskTemplateNameAndTaskTemplateIdAndFileIdAndVersionId","parameters":[{"name":"tasktemplateId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"versionId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/teams":{"get":{"tags":["Teams"],"summary":"Returns teams in the workspace.","description":"Returns teams in the workspace. The result follows the workspace's team visibility restrictions. <Check title=\"Required Permissions\" icon=\"key\">When team restrictions are applied for the workspace, the user must either be an admin or member of the team to retrieve it.</Check>","operationId":"GetTeams","parameters":[{"name":"includeUserIds","in":"query","description":"Whether to include the ids of users that are in the team.","schema":{"type":"boolean","default":false}},{"name":"includeProjectIds","in":"query","description":"Whether to include the ids of projects that are assigned to the team.","schema":{"type":"boolean","default":false}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Team"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Teams"],"summary":"Creates a team.","description":"Creates a team. It can then be assigned to users and projects.\r\n\r\n<Note title=\"Subscription Level\" icon=\"layer-group\">This endpoint requires the `Standard` plan or higher.</Note>\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin.</Check>","operationId":"PostTeam","requestBody":{"description":"The model used to create the team.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TeamForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Team"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true"},"x-subscriptionlevel":{"minimumPlan":"standard"}}},"/teams/{teamId}":{"delete":{"tags":["Teams"],"summary":"Deletes the team.","description":"Deletes the team. The team is removed from workspace membership and project grouping.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin.</Check>","operationId":"DeleteTeamById","parameters":[{"name":"teamId","in":"path","description":"The id of the team to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true"}},"get":{"tags":["Teams"],"summary":"Returns the team.","description":"Returns the team. The response includes the team's members and projects. <Check title=\"Required Permissions\" icon=\"key\">When team restrictions are applied for the workspace, the user must either be an admin or member of the team to retrieve it.</Check>","operationId":"GetTeamById","parameters":[{"name":"teamId","in":"path","description":"The id of the team.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"includeUserIds","in":"query","description":"Whether to include the ids of users that are in the team.","schema":{"type":"boolean","default":false}},{"name":"includeProjectIds","in":"query","description":"Whether to include the ids of projects that are assigned to the team.","schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Team"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Teams"],"summary":"Updates the team.","description":"Updates the team. The submitted settings replace the existing values.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin.</Check>","operationId":"PutTeamById","parameters":[{"name":"teamId","in":"path","description":"The id of the team to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"includeUserIds","in":"query","description":"Whether to include the ids of users that are in the team.","schema":{"type":"boolean","default":false}},{"name":"includeProjectIds","in":"query","description":"Whether to include the ids of projects that are assigned to the team.","schema":{"type":"boolean","default":false}}],"requestBody":{"description":"The model with the team data.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TeamForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Team"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true"}}},"/teams/{teamId}/addprojects":{"post":{"tags":["Teams"],"summary":"Adds projects to the specified team.","description":"Adds projects to the specified team. The listed projects become associated with the team. <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-master-data:write` permissions or be the owner of the projects.</Check>","operationId":"PostTeamAddProjectsByTeamId","parameters":[{"name":"teamId","in":"path","description":"The id of the team.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model with the list of project ids to add.","content":{"application/json":{"schema":{"type":"array","items":{"type":"string","format":"uuid"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectInTeam"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/teams/{teamId}/addusers":{"post":{"tags":["Teams"],"summary":"Adds users to the specified team.","description":"Adds users to the specified team. The listed users become members of the team.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin.</Check>","operationId":"PostTeamAddUsersByTeamId","parameters":[{"name":"teamId","in":"path","description":"The id of the team.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model with the list of user ids to add.","content":{"application/json":{"schema":{"type":"array","items":{"type":"string","format":"uuid"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/UserInTeam"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true"}}},"/teams/{teamId}/removeprojects":{"post":{"tags":["Teams"],"summary":"Removes projects from the specified team.","description":"Removes projects from the specified team. The listed projects stop being associated with the team. <Check title=\"Required Permissions\" icon=\"key\">The user must have `project-master-data:write` permissions or be the owner of the projects.</Check>","operationId":"PostTeamRemoveProjectsByTeamId","parameters":[{"name":"teamId","in":"path","description":"The id of the team.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model with the list of project ids to remove.","content":{"application/json":{"schema":{"type":"array","items":{"type":"string","format":"uuid"}}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/teams/{teamId}/removeusers":{"post":{"tags":["Teams"],"summary":"Removes users from the specified team.","description":"Removes users from the specified team. The listed users stop being members of the team.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin.</Check>","operationId":"PostTeamRemoveUsersByTeamId","parameters":[{"name":"teamId","in":"path","description":"The id of the team.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model with the list of user ids to remove.","content":{"application/json":{"schema":{"type":"array","items":{"type":"string","format":"uuid"}}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true"}}},"/temporaryfiles":{"get":{"tags":["Temporary Files"],"summary":"Returns all temporary files of the current user.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetTemporaryFiles","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileInfo"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Temporary Files"],"summary":"Creates a new temporary file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostTemporaryFiles","requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/temporaryfiles/{fileId}":{"get":{"tags":["Temporary Files"],"summary":"Returns the temporary file with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetTemporaryFilesByFileId","parameters":[{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Temporary Files"],"summary":"Updates the meta information of the temporary file with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PutTemporaryFilesByFileId","parameters":[{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfoUpdateForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/temporaryfiles/{fileId}/download":{"get":{"tags":["Temporary Files"],"summary":"Returns the content of the temporary file with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetTemporaryFilesDownloadByFileId","parameters":[{"name":"fileId","in":"path","description":"The temporary file to download.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK"},"206":{"description":"Partial Content"},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"416":{"description":"Range Not Satisfiable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/temporaryfiles/{fileId}/setentity":{"post":{"tags":["Temporary Files"],"summary":"Sets the temporary file to a global or entity file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostTemporaryFilesSetEntityByFileId","parameters":[{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileEntityForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/timebookings":{"get":{"tags":["TimeBookings"],"summary":"Returns a list of time bookings.","description":"Returns a list of time bookings. Each booking includes its project, user, and tracked duration. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTimeBookings","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TimeBooking"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["TimeBookings"],"summary":"Creates a time booking for a project and user.","description":"Creates a time booking for a project and user. The booking records time for the submitted project and user. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTimeBooking","requestBody":{"description":"The model to create the time booking.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeBookingForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeBooking"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/timebookings/{timeBookingId}":{"delete":{"tags":["TimeBookings"],"summary":"Deletes a time booking by id.","description":"Deletes a time booking by id. The booking is removed from the selected project. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"DeleteTimeBookingById","parameters":[{"name":"timeBookingId","in":"path","description":"The id of the time booking to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["TimeBookings"],"summary":"Updates a given time booking.","description":"Updates a given time booking. The saved booking reflects the submitted duration and assignment. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PutTimeBookingById","parameters":[{"name":"timeBookingId","in":"path","description":"The id of the time booking.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to update the time booking.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeBookingForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeBooking"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/timeentries":{"get":{"tags":["TimeEntries"],"summary":"Returns time entries in the workspace.","description":"Returns time entries in the workspace. The result includes entries the current user is allowed to view.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must own the time entry or have `project-timetracking:read` permission for connected project entries.</Check>","operationId":"GetTimeEntries","parameters":[{"name":"searchReindex","in":"query","description":"Whether to reindex for search.","schema":{"type":"boolean","default":false}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TimeTracking"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["TimeEntries"],"summary":"Creates a time entry.","description":"Creates a time entry. The entry records the submitted project, task, user, and duration. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTimeEntry","requestBody":{"description":"The time entry data.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeEntryPostForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeTracking"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/timeentries/batch/{operation}":{"post":{"tags":["TimeEntries"],"summary":"Updates multiple time entries using the operation.","description":"Updates multiple time entries using the operation. Each requested change is reported separately.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested time entries.</Check>","operationId":"PostTimeEntriesBatchByOperation","parameters":[{"name":"operation","in":"path","description":"The batch operation type.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"The time entry batch operation data.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeEntryBatchOperationForm"}}},"required":true},"responses":{"207":{"description":"Multi-Status","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MultiStatusResult"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/timeentries/delete":{"post":{"tags":["TimeEntries"],"summary":"Deletes the time entry for the ids.","description":"Deletes the time entry for the ids. This endpoint is deprecated, please use the batch endpoint POST /timeentries/batch/delete instead. Deletes the time entries with the specified ids. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTimeEntriesDelete","requestBody":{"description":"The time entry ids to delete.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteTimeEntriesForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"deprecated":true,"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/timeentries/setbillable":{"post":{"tags":["TimeEntries"],"summary":"Sets the time entries for the ids to billable.","description":"Sets the time entries for the ids to billable. The selected billing state is applied to the time entries. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTimeEntriesSetBillable","requestBody":{"description":"The time entry ids and billable flag.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetTimeEntryBillableForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"deprecated":true,"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/timeentries/setbilled":{"post":{"tags":["TimeEntries"],"summary":"Sets the time entries for the ids to billed.","description":"Sets the time entries for the ids to billed. The selected billing state is applied to the time entries. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTimeEntriesSetBilled","requestBody":{"description":"The time entry ids and billed flag.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetTimeEntryBilledForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"deprecated":true,"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/timeentries/settypeofwork":{"post":{"tags":["TimeEntries"],"summary":"Sets the type of work of the specified timeentries.","description":"Sets the type of work of the specified timeentries. The selected work type is applied to the time entries. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTimeEntriesSetTypeOfWork","requestBody":{"description":"The time entry ids and type of work.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetTimeEntryTypeOfWork"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"deprecated":true,"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/timeentries/setunbillable":{"post":{"tags":["TimeEntries"],"summary":"Sets the time entries for the ids to unbillable.","description":"Sets the time entries for the ids to unbillable. Billed entries also become unbilled when an administrator changes them.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must be an administrator to change a billed entry. For other entries, the user must own the entry or have applicable `user-timetracking:write`, `project-timetracking:write`, or project-role write permission. Team restrictions also apply.</Check>","operationId":"PostTimeEntriesSetUnbillable","requestBody":{"description":"The time entry ids and billable flag.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetTimeEntryBillableForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"deprecated":true,"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/timeentries/setunbilled":{"post":{"tags":["TimeEntries"],"summary":"Sets the time entries for the ids to unbilled.","description":"Sets the time entries for the ids to unbilled. The selected billing state is applied to the time entries. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PostTimeEntriesSetUnBilled","requestBody":{"description":"The time entry ids and billed flag.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetTimeEntryBilledForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"deprecated":true,"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/timeentries/simplified":{"get":{"tags":["TimeEntries"],"summary":"Returns simplified time entries.","description":"Returns simplified time entries grouped by the requested property when one is supplied.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to view the returned time entries.</Check>","operationId":"GetTimeEntriesSimplified","parameters":[{"name":"grouping","in":"query","description":"The grouping type.","schema":{"type":"string"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SimplifiedTimeTracking"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/timeentries/{timeEntryId}":{"delete":{"tags":["TimeEntries"],"summary":"Deletes the time entry.","description":"Deletes the time entry. The time entry is removed from the selected project or task. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"DeleteTimeEntryById","parameters":[{"name":"timeEntryId","in":"path","description":"The id of the time entry.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["TimeEntries"],"summary":"Returns the specified time entry.","description":"Returns the specified time entry when it is visible to the current user.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must own the time entry or have permission to view it.</Check>","operationId":"GetTimeEntryById","parameters":[{"name":"timeEntryId","in":"path","description":"The id of the time entry.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeTracking"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["TimeEntries"],"summary":"Updates the time entry.","description":"Updates the time entry. The break duration of the time entry is kept the same. The break duration cannot be smaller than the duration of the time entry. To remove the breaks, use the endpoint POST /timeentries/{id}/removeBreaks. Following combination of times and duration are allowed for already completed time entries: - start time (local or utc) and end time (local or utc) (this option always takes precedence) - start time (local or utc) and duration - end time (local or utc) and duration For running time entries, you can only update the start time (local or utc) while the duration stays 0. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PutTimeEntryById","parameters":[{"name":"timeEntryId","in":"path","description":"The id of the time entry.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The time entry data to update.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeTrackingPutForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeTracking"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/timeentries/{timeEntryId}/removebreaks":{"post":{"tags":["TimeEntries"],"summary":"Removes breaks from the specified time entry.","description":"Removes all breaks from the specified time entry and resumes its timer.\r\n            <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to edit the time entry.</Check>","operationId":"PostTimeEntryRemoveBreaks","parameters":[{"name":"timeEntryId","in":"path","description":"The id of the time entry.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeTracking"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/timereports":{"get":{"tags":["TimeReports"],"summary":"Returns time reports of a user.","description":"Returns time reports of a user. The response includes details for the selected time range. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTimeReports","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TimeReport"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/timetracking/settings":{"get":{"tags":["TimeTrackingSettings"],"summary":"Returns the global timetracking settings.","description":"Returns the global timetracking settings. The response contains the workspace's time-tracking defaults. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTimeTrackingSettings","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TimeTrackingSetting"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/typeofwork":{"get":{"tags":["TypeOfWork"],"summary":"Returns types of work.","description":"Returns types of work. Each type includes its billing and color settings. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTypesOfWork","parameters":[{"name":"showArchived","in":"query","description":"The show Archived.","schema":{"type":"boolean","default":false}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TypeOfWork"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["TypeOfWork"],"summary":"Creates a type of work.","description":"Creates a type of work. It can then be selected on time entries.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PostTypesOfWork","requestBody":{"description":"The type Of Work form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TypeOfWorkForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TypeOfWork"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/typeofwork/icons":{"get":{"tags":["TypeOfWork"],"summary":"Returns possible icons for type of work.","description":"Returns possible icons for type of work. These icons can be assigned to work types. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTypesOfWorkIcons","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/typeofwork/{typeOfWorkId}":{"get":{"tags":["TypeOfWork"],"summary":"Returns the type of work.","description":"Returns the type of work. The response includes the type's label, color, and billing settings. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetTypeOfWorkById","parameters":[{"name":"typeOfWorkId","in":"path","description":"The id of the type of work.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TypeOfWork"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["TypeOfWork"],"summary":"Changes the properties of a type of work.","description":"Changes the properties of a type of work. Future entries use the submitted billing and color settings.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `task-manage-config:write` permissions.</Check>","operationId":"PutTypeOfWorkById","parameters":[{"name":"typeOfWorkId","in":"path","description":"The id of the type of work.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The type Of Work form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TypeOfWorkForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TypeOfWork"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","task-manage-config":"write"}}},"/typeofwork/{typeOfWorkId}/delete":{"post":{"tags":["TypeOfWork"],"summary":"Deletes the type of work.","description":"Deletes the type of work. The type of work is removed from the workspace.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PostTypeOfWorkDeleteByTypeOfWorkId","parameters":[{"name":"typeOfWorkId","in":"path","description":"The id of the type of work.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model containing the new type of work id to substitute.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteTaskTypeForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/typeofwork/{typeOfWorkId}/setarchived":{"post":{"tags":["TypeOfWork"],"summary":"Archives or unarchives the type of work.","description":"Archives or unarchives the type of work. Archived types remain available for existing time entries.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PostTypeOfWorkSetArchivedByTypeOfWorkId","parameters":[{"name":"typeOfWorkId","in":"path","description":"The id of the type of work.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The archived form payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArchivedForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TypeOfWork"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/users":{"get":{"tags":["Users"],"summary":"Returns users with their details.","description":"Returns users with their details. Archived users are excluded by default; set 'showArchived' to include them. API users are included in the response. <Check title=\"Required Permissions\" icon=\"key\">The user must have `user-master-data:read` permission to see all workspace users. Without it, the response contains only the requesting user. If team restrictions apply, the response is limited to users in the user's teams.</Check>","operationId":"GetUsers","parameters":[{"name":"showArchived","in":"query","description":"Whether to show archived users.","schema":{"type":"boolean","default":false}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/User"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/autofill/{email}":{"get":{"tags":["Users"],"summary":"Returns user name and gender for the email.","description":"Returns user name and gender for the email. The response contains the matching name and gender fields. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetUsersAutofillByEmail","parameters":[{"name":"email","in":"path","description":"The user's email.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutofillUser"}}}},"204":{"description":"No Content"}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/deletetags":{"post":{"tags":["UserTags"],"summary":"Removes a tag from users.","description":"Removes a tag from users. The selected tag is removed from matching users.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `user-master-data:write` permissions.</Check>","operationId":"PostUsersDeleteTags","requestBody":{"description":"The model with the tag to be removed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteTagForm"}}},"required":true},"responses":{"204":{"description":"No Content"}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","user-master-data":"write"}}},"/users/me":{"get":{"tags":["Users"],"summary":"Returns the logged-in user and workspace.","description":"Returns the logged-in user and workspace. This is an alternate URL for the /me endpoint. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetUsersMe","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserAndWorkspace"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/projecttimebookings":{"get":{"tags":["TimeBookings"],"summary":"Returns time bookings for users.","description":"Returns time bookings for users. Each booking includes its project, user, and tracked duration. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetProjectTimeBookingsForUsers","parameters":[{"name":"userIds","in":"query","description":"The ids of the users.","required":true,"schema":{"type":"string","description":"This class is used to bind a querystring list of Guid (as a comma-separated list) to the List of Guid parameter in a\nminimal API endpoint.","example":"123e4567-e89b-12d3-a456-426614174000,223e4567-e89b-12d3-a456-426614174001"}},{"name":"intervalStart","in":"query","description":"The start of the interval.","required":true,"schema":{"type":"string","format":"date"}},{"name":"intervalEnd","in":"query","description":"The end of the interval.","required":true,"schema":{"type":"string","format":"date"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/GetTimeBookingForUsersResult"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/tags":{"get":{"tags":["UserTags"],"summary":"Returns tags that are in use.","description":"Returns tags that are in use. The result includes tags used by users in the workspace. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetUsersTags","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/BaseTagModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/timebookings":{"get":{"tags":["TimeBookings"],"summary":"Returns time bookings for users.","description":"Returns time bookings for users. Each booking includes its project, user, and tracked duration. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetUsersTimeBookings","parameters":[{"name":"userIds","in":"query","description":"The ids of the users.","required":true,"schema":{"type":"string","description":"This class is used to bind a querystring list of Guid (as a comma-separated list) to the List of Guid parameter in a\nminimal API endpoint.","example":"123e4567-e89b-12d3-a456-426614174000,223e4567-e89b-12d3-a456-426614174001"}},{"name":"intervalStart","in":"query","description":"The start of the interval.","required":true,"schema":{"type":"string","format":"date"}},{"name":"intervalEnd","in":"query","description":"The end of the interval.","required":true,"schema":{"type":"string","format":"date"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/GetTimeBookingForUsersResult"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/updatetags":{"post":{"tags":["UserTags"],"summary":"Updates a tag globally for users.","description":"Updates a tag globally for users. The renamed or merged tag is applied to matching users.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `user-master-data:write` permissions.</Check>","operationId":"PostUsersUpdateTags","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagUpdateForm"}}},"required":true},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","user-master-data":"write"}}},"/users/workload":{"get":{"tags":["Workload"],"summary":"Returns the users' workloads per day.","description":"Returns the users' workloads per day. Takes into consideration weekly availability, absences, user capacity, planned efforts, as well as project budget.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `user-planning-data:read` permissions.</Check>","operationId":"GetUsersWorkload","parameters":[{"name":"userIds","in":"query","description":"The ids of the users to get the workload for, as a comma-separated list of Guids.","required":true,"schema":{"type":"string","description":"This class is used to bind a querystring list of Guid (as a comma-separated list) to the List of Guid parameter in a\nminimal API endpoint.","example":"123e4567-e89b-12d3-a456-426614174000,223e4567-e89b-12d3-a456-426614174001"}},{"name":"intervalStart","in":"query","description":"The start of the interval to filter by.","required":true,"schema":{"type":"string","format":"date-time"}},{"name":"intervalEnd","in":"query","description":"The end of the interval to filter by.","required":true,"schema":{"type":"string","format":"date-time"}},{"name":"roughPlanningFrom","in":"query","description":"The number of days from today when the rough planning should start.","required":true,"schema":{"type":"integer","format":"int32"}},{"name":"fetchDetails","in":"query","description":"(Optional - default: false) If set to true, the result will contain the hierarchy of elements that are contributing\n            to the workload (projects, tasks, appointments).\n            Otherwise it will return only the workload value.\n            Works only for single day queries.","schema":{"type":"boolean","default":false}},{"name":"ignoreCalendarEvents","in":"query","description":"Whether to ignore calendar events. Can significantly improve performance.","schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/GetWorkloadForUsersResult"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","user-planning-data":"read"}}},"/users/{userId}":{"delete":{"tags":["Users"],"summary":"Deletes the user.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `user-manage-config:delete` permissions.</Check>","operationId":"DeleteUserById","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","user-manage-config":"delete"}},"get":{"tags":["Users"],"summary":"Returns the user.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetUserById","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/User"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Users"],"summary":"Updates the user.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or the creator or have `user-master-data:write` permissions.</Check>","operationId":"PutUserById","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to update the user.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/User"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","owner":"true","user-master-data":"write"}}},"/users/{userId}/activate":{"post":{"tags":["Users"],"summary":"Activates the user.","description":"Activates the user. The user is then allowed to sign in again and will be notified via email.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `user-manage-config:write` permissions.</Check>","operationId":"PostUserActivateByUserId","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","user-manage-config":"write"}}},"/users/{userId}/addtags":{"post":{"tags":["UserTags"],"summary":"Adds a batch of tags to the user.","description":"Adds a batch of tags to the user. The selected tags are added to the user.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `user-master-data:write` permissions.</Check>","operationId":"PostUserAddTagsByUserId","parameters":[{"name":"userId","in":"path","description":"The id of the user to add tags to.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model with the tags to be added.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TagForm"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/BaseTagModel"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","user-master-data":"write"}}},"/users/{userId}/allavailabletasks":{"get":{"tags":["AssignedTasks"],"summary":"Returns tasks the specified user is allowed to see.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetUserAllAvailableTasksByUserId","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/assignedtasks":{"get":{"tags":["AssignedTasks"],"summary":"Returns tasks assigned to the specified user.","description":"Returns tasks assigned to the specified user. The result includes tasks assigned to that user. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetUserAssignedTasksByUserId","parameters":[{"name":"userId","in":"path","description":"The id of the user to get the tasks for.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"inProgress","in":"query","description":"Whether to return only assigned project tasks of running projects. Defaults to true.","schema":{"type":"boolean","default":false}},{"name":"assignedOnFrom","in":"query","description":"The start date for filtering by assignment date. If set, tasks are returned only when the assignment date is greater or equal than this value.","schema":{"type":"string","format":"date-time"}},{"name":"assignedOnTo","in":"query","description":"The end date for filtering by assignment date. If set, tasks are returned only when the assignment date is less or equal than this value.","schema":{"type":"string","format":"date-time"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/assignedtasks/{taskId}":{"get":{"tags":["AssignedTasks"],"summary":"Returns the assigned task of a specified user.","description":"Returns the assigned task of a specified user. The result includes tasks assigned to that user. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetUserAssignedTaskByUserIdAndTaskId","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskId","in":"path","description":"The id of the task to return.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskModel"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/capacity":{"get":{"tags":["UserCapacities"],"summary":"Returns the capacity of the specified user.","description":"Returns the capacity of the specified user. The response includes the user's planning capacity. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetUserCapacityByUserId","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserCapacity"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["UserCapacities"],"summary":"Updates the capacity of the specified user.","description":"Updates the capacity of the specified user. The capacity is stored for the user's planning. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"PutUserCapacityByUserId","parameters":[{"name":"userId","in":"path","description":"The user whose capacity should be updated.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"Updated capacity values for each day of the week.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserCapacityForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserCapacity"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/contactinfo":{"get":{"tags":["Users"],"summary":"Returns the contact infos of the user.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or the creator or have `user-master-data:read` permissions.</Check>","operationId":"GetUserContactInfoByUserId","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ContactInfo"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","owner":"true","user-master-data":"read"}},"post":{"tags":["Users"],"summary":"Creates contact info for the user.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or the creator or have `user-master-data:write` permissions.</Check>","operationId":"PostUserContactInfoByUserId","parameters":[{"name":"userId","in":"path","description":"The user to add contact information to.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model containing contact information details including address, phone number, and type.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactInfoFormForUsers"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactInfo"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","owner":"true","user-master-data":"write"}}},"/users/{userId}/contactinfo/{contactInfoId}":{"delete":{"tags":["Users"],"summary":"Deletes the contact info of the user.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or the creator or have `user-master-data:write` permissions.</Check>","operationId":"DeleteUserContactInfoByUserIdAndContactInfoId","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"contactInfoId","in":"path","description":"The id of the contact info.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","owner":"true","user-master-data":"write"}},"get":{"tags":["Users"],"summary":"Returns the contact info of the user.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or the creator or have `user-master-data:read` permissions.</Check>","operationId":"GetUserContactInfoByUserIdAndContactInfoId","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"contactInfoId","in":"path","description":"The id of the contact info.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactInfo"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","owner":"true","user-master-data":"read"}},"put":{"tags":["Users"],"summary":"Updates the contact info of the user.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or the creator or have `user-master-data:write` permissions.</Check>","operationId":"PutUserContactInfoByUserIdAndContactInfoId","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"contactInfoId","in":"path","description":"The id of the contact info.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The contact info model.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactInfoFormForUsers"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","owner":"true","user-master-data":"write"}}},"/users/{userId}/deactivate":{"post":{"tags":["Users"],"summary":"Deactivates the user.","description":"Deactivates the user. A deactivated user can no longer sign in. This is only possible if the user is not the last admin user.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `user-manage-config:write` permissions.</Check>","operationId":"PostUserDeactivateByUserId","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"includeSummary","in":"query","description":"Whether to return the private project orphan resolution summary.","schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostUserDeactivateByUserIdResponse"}}}},"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","user-manage-config":"write"}}},"/users/{userId}/deletetags":{"post":{"tags":["UserTags"],"summary":"Removes tags from the user.","description":"Removes tags from the user. The selected tags are removed from the user.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `user-master-data:write` permissions.</Check>","operationId":"PostUserDeleteTagsByUserId","parameters":[{"name":"userId","in":"path","description":"The id of the user whose tags should be removed.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model with the tags to be removed.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/DeleteTagForm"}}}},"required":true},"responses":{"204":{"description":"No Content"},"207":{"description":"Multi-Status"}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","user-master-data":"write"}}},"/users/{userId}/externalfiles":{"post":{"tags":["User Files"],"summary":"Creates external file references for the specified user.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostExternalFilesByUserNameAndUserId","parameters":[{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ExternalFileForm"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileInfo"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/files":{"delete":{"tags":["User Files"],"summary":"Deletes all files and versions for the specified user.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteFilesByUserNameAndUserId","parameters":[{"name":"userId","in":"path","description":"The user id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["User Files"],"summary":"Returns all files of the specified user.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesByUserNameAndUserId","parameters":[{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileInfo"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["User Files"],"summary":"Uploads a file for the specified user.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesByUserNameAndUserId","parameters":[{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/files/byurl":{"post":{"tags":["User Files"],"summary":"Uploads a file from a public URL for the specified user.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesByUrlByUserNameAndUserId","parameters":[{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FilePostForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/files/{fileId}":{"delete":{"tags":["User Files"],"summary":"Deletes the specified user file and its versions.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteFilesByUserNameAndUserIdAndFileId","parameters":[{"name":"userId","in":"path","description":"The user id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The file id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["User Files"],"summary":"Returns the file with the specified id of the user with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesByUserNameAndUserIdAndFileId","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The id of the file.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["User Files"],"summary":"Updates metadata for the specified file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PutFilesByUserNameAndUserIdAndFileId","parameters":[{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfoUpdateForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/files/{fileId}/changeentity":{"post":{"tags":["User Files"],"summary":"Changes the user that owns the specified file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesChangeUserByUserNameAndUserIdAndFileId","parameters":[{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileEntityForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/files/{fileId}/copy":{"post":{"tags":["User Files"],"summary":"Copies the specified file to another user.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesCopyByUserNameAndUserIdAndFileId","parameters":[{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileCopyForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/files/{fileId}/download":{"get":{"tags":["User Files"],"summary":"Returns the latest content of the specified user file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesDownloadByUserNameAndUserIdAndFileId","parameters":[{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"width","in":"query","schema":{"type":"number","format":"double"}},{"name":"height","in":"query","schema":{"type":"number","format":"double"}},{"name":"crop","in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/files/{fileId}/pdf":{"get":{"tags":["User Files"],"summary":"Returns the specified user file as PDF.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesPdfByUserNameAndUserIdAndFileId","parameters":[{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"inline","in":"query","schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/files/{fileId}/shareurl":{"get":{"tags":["User Files"],"summary":"Returns a public URL for the specified file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesShareUrlByUserNameAndUserIdAndFileId","parameters":[{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/files/{fileId}/versions":{"get":{"tags":["User Files"],"summary":"Returns all versions of the specified user file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsByUserNameAndUserIdAndFileId","parameters":[{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileVersion"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["User Files"],"summary":"Uploads a new version of the specified user file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesVersionsByUserNameAndUserIdAndFileId","parameters":[{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileVersion"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/files/{fileId}/versions/{versionId}":{"get":{"tags":["User Files"],"summary":"Returns the user file version with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsByUserNameAndUserIdAndFileIdAndVersionId","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The id of the file.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"versionId","in":"path","description":"The id of the file version.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileVersion"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/files/{fileId}/versions/{versionId}/download":{"get":{"tags":["User Files"],"summary":"Returns the content of the specified user file version.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsDownloadByUserNameAndUserIdAndFileIdAndVersionId","parameters":[{"name":"userId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"versionId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/otherprivatetasks":{"get":{"tags":["PrivateTasks"],"summary":"Returns private tasks reassigned by the user.","description":"Returns private tasks reassigned by the user. Private tasks are always created for the current user but can be reassigned to other users afterwards. This endpoint returns all private tasks that were originally created by the user but were reassigned to someone else. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetUserOtherPrivateTasksByUserId","parameters":[{"name":"userId","in":"path","description":"The id of the user that created the private tasks.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskModel"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/otherprivatetasks/{taskId}":{"get":{"tags":["PrivateTasks"],"summary":"Returns a private task reassigned by the user.","description":"Returns a private task reassigned by the user. Private tasks are always created for the current user but can be reassigned to other users afterwards. This endpoint returns a private task that was originally created by the user but was reassigned to someone else. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetUserOtherPrivateTaskByUserIdAndTaskId","parameters":[{"name":"userId","in":"path","description":"The id of the user the task is assigned to.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskId","in":"path","description":"The id of the task to return.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskModel"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/otherprivatetasks/{taskId}/checklistitems":{"get":{"tags":["ChecklistItems"],"summary":"Returns the checklist items for a private task.","description":"Returns the checklist items for a private task. The checklist belongs to the specified private task. <Check title=\"Required Permissions\" icon=\"key\">The user must be the creator of the task.</Check>","operationId":"GetUserOtherPrivateTaskChecklistItemsByUserIdAndTaskId","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ChecklistItem"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/otherprivatetasks/{taskId}/checklistitems/{checklistItemId}":{"get":{"tags":["ChecklistItems"],"summary":"Returns a checklist item for a private task.","description":"Returns a checklist item for a private task. The checklist belongs to the specified private task. <Check title=\"Required Permissions\" icon=\"key\">The user must be the creator of the task.</Check>","operationId":"GetUserOtherPrivateTaskChecklistItemByUserIdAndTaskIdAndChecklistItemId","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"checklistItemId","in":"path","description":"The id of the checklist item.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChecklistItem"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/privatetasks":{"get":{"tags":["PrivateTasks"],"summary":"Returns private tasks of the user.","description":"Returns private tasks of the user. The result includes tasks owned by that user. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetUserPrivateTasksByUserId","parameters":[{"name":"userId","in":"path","description":"The id of the user to fetch private tasks for.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskModel"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/privatetasks/taskstatuses":{"get":{"tags":["PrivateTasks"],"summary":"Returns the task statuses for private tasks for the specified user.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetPrivateTaskStatusesByUserId","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskStatus"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/privatetasks/{taskId}":{"get":{"tags":["PrivateTasks"],"summary":"Returns the private task of a user.","description":"Returns the private task of a user. The result includes tasks owned by that user. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetUserPrivateTaskByUserIdAndTaskId","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskModel"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/privatetasks/{taskId}/checklistitems":{"get":{"tags":["ChecklistItems"],"summary":"Returns the checklist for a private task.","description":"Returns the checklist for a private task. The checklist belongs to the specified private task. <Check title=\"Required Permissions\" icon=\"key\">The user must be be assigned to the task.</Check>","operationId":"GetUserPrivateTaskChecklistItemsByUserIdAndTaskId","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ChecklistItem"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/privatetasks/{taskId}/checklistitems/{checklistItemId}":{"get":{"tags":["ChecklistItems"],"summary":"Returns a checklist item from a private task.","description":"Returns a checklist item from a private task. The checklist belongs to the specified private task. <Check title=\"Required Permissions\" icon=\"key\">The user must be assigned to the task.</Check>","operationId":"GetUserPrivateTaskChecklistItemByUserIdAndTaskIdAndChecklistItemId","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskId","in":"path","description":"The id of the task.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"checklistItemId","in":"path","description":"The id of the checklist item to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChecklistItem"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/setarchived":{"post":{"tags":["Users"],"summary":"Archives or unarchives the user.","description":"Archives or unarchives the user. Archived objects can not be used any longer but still exist for being referenced by other entities.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostUserSetArchivedByUserId","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model to archive or unarchive the user.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArchivedForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExtendedUser"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/users/{userId}/tags":{"get":{"tags":["UserTags"],"summary":"Returns the tags of the users.","description":"Returns the tags of the users. The result includes tags assigned to that user. <Check title=\"Required Permissions\" icon=\"key\">To read the tags of a user the user must have 'read' permissions on the specified user.</Check>","operationId":"GetUserTagsByUserId","parameters":[{"name":"userId","in":"path","description":"The id of the user to get the tags for.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/BaseTagModel"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/tasks/tags":{"get":{"tags":["AssignedTasks"],"summary":"Returns task tags the user is allowed to see.","description":"Returns task tags the user is allowed to see. The tags can be filtered by the properties of the task model. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetUserTasksTagsByUserId","parameters":[{"name":"userId","in":"path","description":"The id of the user to get the tags for.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/BaseTagModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/users/{userId}/timeentries/last":{"get":{"tags":["TimeEntries"],"summary":"Returns the last time entry of a specified user.","description":"The last time entry is always the last one that was started.\r\n            Time entries which are started in the future are ignored.\r\n            If a time entry does not have a start time, 12.00 am is automatically assumed as the start time\r\n            for comparison with other time entries from the same day.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or the creator.</Check>","operationId":"GetLastTimeEntriesByUserId","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeTracking"}}}},"204":{"description":"No Content"}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","owner":"true"}}},"/users/{userId}/timetracking/pause":{"post":{"tags":["TimeTracking"],"summary":"Pauses a running time tracking for a user.","description":"If there is already a paused time tracking nothing happens. If there is no running time tracking, returns NoContent.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be the creator.</Check>","operationId":"PostPauseTimeTrackingByUserId","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeTracking"}}}},"204":{"description":"No Content"}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"owner":"true"}}},"/users/{userId}/timetracking/resume":{"post":{"tags":["TimeTracking"],"summary":"Resumes a paused time tracking for a user.","description":"If there is already a running time tracking nothing happens. If there is no running time tracking, returns NoContent.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be the creator.</Check>","operationId":"PostResumeTimeTrackingByUserId","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeTracking"}}}},"204":{"description":"No Content"}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"owner":"true"}}},"/users/{userId}/timetracking/start":{"post":{"tags":["TimeTracking"],"summary":"Starts a new time tracking for a user.","description":"If there is already a running/paused time tracking it will be stopped automatically in order to start the new one.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or the creator.</Check>","operationId":"PostStartTimeTrackingByUserId","parameters":[{"name":"userId","in":"path","description":"The id of the user.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The model describing the time tracking to start.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartTimeTrackingForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeTracking"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","owner":"true"}}},"/users/{userId}/timetracking/stop":{"post":{"tags":["TimeTracking"],"summary":"Stops the currently running time tracking of the specified user.","description":"The request body is optional. You can provide a stopReason to indicate how the tracking was stopped.\r\n            For external API clients, the stopReason is automatically set to \"external-api\" regardless of what is provided.\r\n            For this operation to work there must be a running time tracking for the user.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or the creator.</Check>","operationId":"PostStopTimeTrackingByUserId","parameters":[{"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/StopTimeTrackingForm"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeTracking"}}}},"204":{"description":"No Content"}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","owner":"true"}}},"/webhooks":{"get":{"tags":["Webhooks"],"summary":"Returns all configured webhooks.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:read` permissions.</Check>","operationId":"GetWebhooks","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/WebhookConfig"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"read"}},"post":{"tags":["Webhooks"],"summary":"Creates a new webhook.","description":"The receiver type is inferred from the URI. All unknown receivers are treated as 'custom'.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PostWebhook","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookConfigForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookConfig"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/webhooks/eventtypes":{"get":{"tags":["Webhooks"],"summary":"Returns all available event types.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetWebhookEventTypes","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/webhooks/eventtypes/slack":{"get":{"tags":["Webhooks"],"summary":"Returns all available event types for Slack webhooks.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetSlackEventTypes","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/webhooks/{webhookId}":{"delete":{"tags":["Webhooks"],"summary":"Deletes the webhook with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"DeleteWebhook","parameters":[{"name":"webhookId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}},"get":{"tags":["Webhooks"],"summary":"Returns the webhook with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:read` permissions.</Check>","operationId":"GetWebhook","parameters":[{"name":"webhookId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookConfig"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"read"}},"put":{"tags":["Webhooks"],"summary":"Updates the webhook with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PutWebhook","parameters":[{"name":"webhookId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookConfigForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookConfig"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/webhooks/{webhookId}/logs":{"get":{"tags":["Webhooks"],"summary":"Returns all logs of the webhook with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:read` permissions.</Check>","operationId":"GetWebhookLogs","parameters":[{"name":"webhookId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/WebhookLog"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"read"}}},"/workflows":{"get":{"tags":["Workflows"],"summary":"Returns workflows.","description":"Returns workflows. Each workflow includes its linked statuses and custom fields. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetWorkflows","parameters":[{"name":"showArchived","in":"query","schema":{"type":"boolean","default":false}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Workflow"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Workflows"],"summary":"Creates a new workflow.","description":"Creates a new workflow. It can then be linked to projects.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostWorkflow","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Workflow"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/workflows/automations/copy":{"post":{"tags":["Workflow Automations"],"summary":"Copies automations from one workflow to another.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostCopyWorkflowAutomations","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CopyWorkflowAutomationsForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Automation"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/workflows/{workflowId}":{"get":{"tags":["Workflows"],"summary":"Returns a specified workflow.","description":"Returns a specified workflow. Linked statuses and custom fields are included. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetWorkflowById","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Workflow"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Workflows"],"summary":"Updates a workflow.","description":"Updates a workflow. Linked projects use its submitted status and field settings.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PutWorkflowById","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Workflow"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/workflows/{workflowId}/automations":{"get":{"tags":["Workflow Automations"],"summary":"Retrieves automations of the specified workflow.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:read` permissions.</Check>","operationId":"GetWorkflowAutomations","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Automation"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"read"}},"post":{"tags":["Workflow Automations"],"summary":"Creates a new automation for a workflow.","description":"\r\n\r\n<Note title=\"Subscription Level\" icon=\"layer-group\">This endpoint requires the `Standard` plan or higher.</Note>\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostWorkflowAutomation","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutomationTriggerForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Automation"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"},"x-subscriptionlevel":{"minimumPlan":"standard"}}},"/workflows/{workflowId}/automations/{automationId}":{"delete":{"tags":["Workflow Automations"],"summary":"Deletes a workflow automation by id.","description":"Requires specifying whether to delete or unlink synced automations on linked projects/templates.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"DeleteWorkflowAutomation","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"automationId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"deleteSyncedAutomations","in":"query","schema":{"type":"boolean"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}},"get":{"tags":["Workflow Automations"],"summary":"Retrieves a specific automation of the specified workflow.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:read` permissions.</Check>","operationId":"GetWorkflowAutomation","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"automationId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Automation"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"read"}},"put":{"tags":["Workflow Automations"],"summary":"Updates an automation of the specified workflow.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PutWorkflowAutomation","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"automationId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutomationPutForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Automation"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/workflows/{workflowId}/automations/{automationId}/actions":{"get":{"tags":["Workflow Automations"],"summary":"Gets all actions of an automation of a workflow.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:read` permissions.</Check>","operationId":"GetWorkflowActions","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"automationId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Action"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"read"}},"post":{"tags":["Workflow Automations"],"summary":"Creates a new action for an automation of a workflow.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostWorkflowAction","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"automationId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ActionForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Action"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/workflows/{workflowId}/automations/{automationId}/actions/{actionId}":{"delete":{"tags":["Workflow Automations"],"summary":"Deletes an action from an automation of a workflow.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"DeleteWorkflowAction","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"automationId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"actionId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}},"get":{"tags":["Workflow Automations"],"summary":"Gets a specific action of an automation of a workflow.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:read` permissions.</Check>","operationId":"GetWorkflowAction","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"automationId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"actionId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Action"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"read"}},"put":{"tags":["Workflow Automations"],"summary":"Updates an action of an automation of a workflow.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PutWorkflowAction","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"automationId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"actionId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ActionForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Action"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/workflows/{workflowId}/automations/{automationId}/actions/{actionId}/updateorder":{"post":{"tags":["Workflow Automations"],"summary":"Updates the order of an action within an automation of a workflow.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostUpdateWorkflowActionOrder","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"automationId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"actionId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateOrderForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/workflows/{workflowId}/copy":{"post":{"tags":["Workflows"],"summary":"Creates a copy of a workflow.","description":"Creates a copy of a workflow. The new workflow will have a unique name with \" (Copy)\" appended.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostWorkflowCopyByWorkflowId","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Workflow"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/workflows/{workflowId}/customfielddefinitions":{"get":{"tags":["CustomFields"],"summary":"Returns custom fields linked to a workflow.","description":"Returns custom fields linked to a workflow. The result includes fields linked to the workflow. <Check title=\"Required Permissions\" icon=\"key\">The user must have permission to access the requested resource.</Check>","operationId":"GetWorkflowCustomFieldDefinitionsByWorkflowId","parameters":[{"name":"workflowId","in":"path","description":"The id of the workflow.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CustomFieldDefinitionWithSelectionOptions"}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/workflows/{workflowId}/customfielddefinitions/{customFieldDefinitionId}":{"put":{"tags":["CustomFields"],"summary":"Updates custom fields.","description":"Updates custom fields. The custom field order is stored for the workflow.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PutWorkflowCustomFieldDefinitionByWorkflowIdAndCustomFieldDefinitionId","parameters":[{"name":"workflowId","in":"path","description":"The workflow Id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"customFieldDefinitionId","in":"path","description":"The custom field definition Id.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The order update form.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomFieldOrderPutForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomFieldOrderForm"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/workflows/{workflowId}/delete":{"post":{"tags":["Workflows"],"summary":"Deletes a workflow.","description":"Deletes a workflow. If the workflow is linked to projects or project templates they can either be unlinked or migrated to another workflow before the workflow is deleted.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostWorkflowDeleteByWorkflowId","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteWorkflowForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/workflows/{workflowId}/linkcustomfielddefinition":{"post":{"tags":["CustomFields"],"summary":"Links a custom field definition to a workflow.","description":"Links a custom field definition to a workflow. The custom field is available on the workflow.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostWorkflowLinkCustomFieldDefinitionByWorkflowId","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LinkCustomFieldDefinitionForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/workflows/{workflowId}/projectstatuses":{"get":{"tags":["Workflows"],"summary":"Returns project statuses of the workflow.","description":"Returns project statuses of the workflow. The result includes statuses configured for the workflow. <Check title=\"Required Permissions\" icon=\"key\">The user must either have `project-master-data:read` permissions for a linked project, be assigned to a non-deleted task in a linked project, be allowed to see the external workflow, or have admin / `project-manage-config:read` permissions.</Check>","operationId":"GetWorkflowProjectStatusesByWorkflowId","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ProjectStatus"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Workflows"],"summary":"Creates a project status in a workflow.","description":"Creates a project status in a workflow. Linked projects can use this status.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostWorkflowProjectStatusesByWorkflowId","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectStatusForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectStatus"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/workflows/{workflowId}/projectstatuses/{projectStatusId}":{"get":{"tags":["Workflows"],"summary":"Returns the project status of the workflow.","description":"Returns the project status of the workflow. The result includes statuses configured for the workflow. <Check title=\"Required Permissions\" icon=\"key\">The user must either have `project-master-data:read` permissions for a linked project, be assigned to a non-deleted task in a linked project, be allowed to see the external workflow, or have admin / `project-manage-config:read` permissions.</Check>","operationId":"GetWorkflowProjectStatusByWorkflowIdAndProjectStatusId","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"projectStatusId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectStatus"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Workflows"],"summary":"Updates a project status for the workflow.","description":"Updates a project status for the workflow. Linked projects use the submitted status settings.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PutWorkflowProjectStatusByWorkflowIdAndProjectStatusId","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"projectStatusId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectStatusForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectStatus"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/workflows/{workflowId}/projectstatuses/{projectStatusId}/delete":{"post":{"tags":["Workflows"],"summary":"Deletes a project status from the workflow.","description":"Deletes a project status from the workflow. A workflow must always have at least one project status to ensure projects using this workflow have a valid status. If you attempt to delete the last remaining project status, this endpoint will return a BadRequest error. If any projects are currently using this status, you must provide a NewProjectStatusId in the request body to migrate those projects to a different status within the same workflow.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostWorkflowProjectStatusDeleteByWorkflowIdAndProjectStatusId","parameters":[{"name":"workflowId","in":"path","description":"The Id of the workflow.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"projectStatusId","in":"path","description":"The Id of the project status to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"Optional form containing the new status Id for migration.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteWorkflowProjectStatusForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/workflows/{workflowId}/setarchived":{"post":{"tags":["Workflows"],"summary":"Sets the archived status of a workflow.","description":"Sets the archived status of a workflow. Archived workflows remain available for existing links.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostWorkflowSetArchivedByWorkflowId","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArchivedForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Workflow"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/workflows/{workflowId}/taskstatuses":{"get":{"tags":["Workflows"],"summary":"Returns task statuses of the workflow.","description":"Returns task statuses of the workflow. The result includes statuses configured for the workflow. <Check title=\"Required Permissions\" icon=\"key\">The user must either have `project-master-data:read` permissions for a linked project, be assigned to a non-deleted task in a linked project, be allowed to see the external workflow, or have admin / `project-manage-config:read` permissions.</Check>","operationId":"GetWorkflowTaskStatusesByWorkflowId","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TaskStatus"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Workflows"],"summary":"Creates a task status for the specified workflow.","description":"Creates a task status for the specified workflow. Linked projects can use this status.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostWorkflowTaskStatusesByWorkflowId","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskStatusForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskStatus"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/workflows/{workflowId}/taskstatuses/{taskStatusId}":{"get":{"tags":["Workflows"],"summary":"Returns the task status of the workflow.","description":"Returns the task status of the workflow. The result includes statuses configured for the workflow. <Check title=\"Required Permissions\" icon=\"key\">The user must either have `project-master-data:read` permissions for a linked project, be assigned to a non-deleted task in a linked project, be allowed to see the external workflow, or have admin / `project-manage-config:read` permissions.</Check>","operationId":"GetWorkflowTaskStatusByWorkflowIdAndTaskStatusId","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskStatusId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskStatus"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Workflows"],"summary":"Updates a task status for the specified workflow.","description":"Updates a task status for the specified workflow. Linked projects use the submitted status settings.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PutWorkflowTaskStatusByWorkflowIdAndTaskStatusId","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskStatusId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskStatusForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskStatus"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/workflows/{workflowId}/taskstatuses/{taskStatusId}/delete":{"post":{"tags":["Workflows"],"summary":"Deletes the task status of the workflow.","description":"Deletes the task status of the workflow. A workflow must always have at least one task status of type 'todo' and one of type 'done'. If you attempt to delete the last status of either type, this endpoint will return a BadRequest error. If any tasks are currently using this status, you must provide a NewTaskStatusId in the request body to migrate those tasks to a different status within the same workflow.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostWorkflowTaskStatusDeleteByWorkflowIdAndTaskStatusId","parameters":[{"name":"workflowId","in":"path","description":"The Id of the workflow.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"taskStatusId","in":"path","description":"The Id of the task status to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"Optional form containing the new status Id for migration.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteWorkflowTaskStatusForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/workflows/{workflowId}/unlinkcustomfielddefinition":{"post":{"tags":["CustomFields"],"summary":"Unlinks a custom field from a workflow.","description":"Unlinks a custom field from a workflow. The custom field is no longer linked to the workflow.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostWorkflowUnlinkCustomFieldDefinitionByWorkflowId","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnlinkWorkflowCustomFieldDefinitionForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/workflows/{workflowId}/updateprojectstatusorder":{"post":{"tags":["Workflows"],"summary":"Updates project status order in a workflow.","description":"Updates project status order in a workflow. The selected status is moved within the workflow configuration.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `project-manage-config:write` permissions.</Check>","operationId":"PostWorkflowUpdateProjectStatusOrderByWorkflowId","parameters":[{"name":"workflowId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateProjectStatusOrderForm"}}},"required":true},"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","project-manage-config":"write"}}},"/workspaceabsences":{"get":{"tags":["WorkspaceAbsences"],"summary":"Returns workspace absences.","description":"Returns workspace absences. Gets all workspace absences.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `user-planning-data:write` permissions.</Check>","operationId":"GetWorkspaceAbsences","parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/WorkspaceAbsenceModel"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","user-planning-data":"write"}},"post":{"tags":["WorkspaceAbsences"],"summary":"Creates a new workspace absence.","description":"Creates a new workspace absence. A workspace absence is a kind of absence that is applied to all users in a workspace. It can be used to define special holidays (e.g: company offsite) that apply to all users in a workspace. It can be limited to a specific absence region, in which case only users in that region will be affected.\r\n\r\n<Note title=\"Subscription Level\" icon=\"layer-group\">This endpoint requires the `Standard` plan or higher.</Note>\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `user-planning-data:write` permissions.</Check>","operationId":"PostWorkspaceAbsence","requestBody":{"description":"Workspace absence details including start date, end date, description, and optional region.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkspaceAbsenceForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkspaceAbsenceModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","user-planning-data":"write"},"x-subscriptionlevel":{"minimumPlan":"standard"}}},"/workspaceabsences/{workspaceAbsenceId}":{"delete":{"tags":["WorkspaceAbsences"],"summary":"Deletes a workspace absence.","description":"Deletes a workspace absence. The absence is removed from the workspace.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `user-planning-data:write` permissions.</Check>","operationId":"DeleteWorkspaceAbsenceById","parameters":[{"name":"workspaceAbsenceId","in":"path","description":"The workspace absence to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","user-planning-data":"write"}},"put":{"tags":["WorkspaceAbsences"],"summary":"Updates a workspace absence.","description":"Updates a workspace absence. The submitted dates and region determine when it applies.\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `user-planning-data:write` permissions.</Check>","operationId":"PutWorkspaceAbsenceById","parameters":[{"name":"workspaceAbsenceId","in":"path","description":"The workspace absence to update.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"Updated workspace absence details including start date, end date, description, and optional region.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkspaceAbsenceForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkspaceAbsenceModel"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","user-planning-data":"write"}}},"/workspaces/types":{"get":{"tags":["Workspaces"],"summary":"Returns all available workspace types.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Allows unauthenticated access.</Check>","operationId":"GetWorkspacesTypes","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"string"}}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"anonymous":"true"}}},"/workspaces/{workspaceId}":{"get":{"tags":["Workspaces"],"summary":"Returns the workspace with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetWorkspacesByWorkspaceId","parameters":[{"name":"workspaceId","in":"path","description":"The id of the workspace.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Workspace"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Workspaces"],"summary":"Updates the workspace with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">The user must be an admin or have `workspace-manage-config:write` permissions.</Check>","operationId":"PutWorkspacesByWorkspaceId","parameters":[{"name":"workspaceId","in":"path","description":"The workspace id.","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"The new workspace values.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkspacePutForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Workspace"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"admin":"true","workspace-manage-config":"write"}}},"/workspaces/{workspaceId}/externalfiles":{"post":{"tags":["Workspace Files"],"summary":"Creates external file references for the specified workspace.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostExternalFilesByWorkspaceNameAndWorkspaceId","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ExternalFileForm"}}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileInfo"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/workspaces/{workspaceId}/files":{"delete":{"tags":["Workspace Files"],"summary":"Deletes all files and versions for the specified workspace.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteFilesByWorkspaceNameAndWorkspaceId","parameters":[{"name":"workspaceId","in":"path","description":"The workspace id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Workspace Files"],"summary":"Returns all files of the specified workspace.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesByWorkspaceNameAndWorkspaceId","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileInfo"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Workspace Files"],"summary":"Uploads a file for the specified workspace.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesByWorkspaceNameAndWorkspaceId","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/workspaces/{workspaceId}/files/byurl":{"post":{"tags":["Workspace Files"],"summary":"Uploads a file from a public URL for the specified workspace.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesByUrlByWorkspaceNameAndWorkspaceId","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FilePostForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/workspaces/{workspaceId}/files/{fileId}":{"delete":{"tags":["Workspace Files"],"summary":"Deletes the specified workspace file and its versions.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"DeleteFilesByWorkspaceNameAndWorkspaceIdAndFileId","parameters":[{"name":"workspaceId","in":"path","description":"The workspace id.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The file id.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No Content"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"get":{"tags":["Workspace Files"],"summary":"Returns the file with the specified id of the workspace with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesByWorkspaceNameAndWorkspaceIdAndFileId","parameters":[{"name":"workspaceId","in":"path","description":"The id of the workspace.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The id of the file.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"put":{"tags":["Workspace Files"],"summary":"Updates metadata for the specified file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PutFilesByWorkspaceNameAndWorkspaceIdAndFileId","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfoUpdateForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/workspaces/{workspaceId}/files/{fileId}/changeentity":{"post":{"tags":["Workspace Files"],"summary":"Changes the workspace that owns the specified file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesChangeWorkspaceByWorkspaceNameAndWorkspaceIdAndFileId","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileEntityForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/workspaces/{workspaceId}/files/{fileId}/copy":{"post":{"tags":["Workspace Files"],"summary":"Copies the specified file to another workspace.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesCopyByWorkspaceNameAndWorkspaceIdAndFileId","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileCopyForm"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileInfo"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/workspaces/{workspaceId}/files/{fileId}/download":{"get":{"tags":["Workspace Files"],"summary":"Returns the latest content of the specified workspace file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesDownloadByWorkspaceNameAndWorkspaceIdAndFileId","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"width","in":"query","schema":{"type":"number","format":"double"}},{"name":"height","in":"query","schema":{"type":"number","format":"double"}},{"name":"crop","in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/workspaces/{workspaceId}/files/{fileId}/pdf":{"get":{"tags":["Workspace Files"],"summary":"Returns the specified workspace file as PDF.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesPdfByWorkspaceNameAndWorkspaceIdAndFileId","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"inline","in":"query","schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/workspaces/{workspaceId}/files/{fileId}/shareurl":{"get":{"tags":["Workspace Files"],"summary":"Returns a public URL for the specified file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesShareUrlByWorkspaceNameAndWorkspaceIdAndFileId","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/workspaces/{workspaceId}/files/{fileId}/versions":{"get":{"tags":["Workspace Files"],"summary":"Returns all versions of the specified workspace file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsByWorkspaceNameAndWorkspaceIdAndFileId","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/pageSize"},{"$ref":"#/components/parameters/orderby"},{"$ref":"#/components/parameters/filterby"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/FileVersion"}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}},"post":{"tags":["Workspace Files"],"summary":"Uploads a new version of the specified workspace file.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"PostFilesVersionsByWorkspaceNameAndWorkspaceIdAndFileId","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileVersion"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/workspaces/{workspaceId}/files/{fileId}/versions/{versionId}":{"get":{"tags":["Workspace Files"],"summary":"Returns the workspace file version with the specified id.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsByWorkspaceNameAndWorkspaceIdAndFileIdAndVersionId","parameters":[{"name":"workspaceId","in":"path","description":"The id of the workspace.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","description":"The id of the file.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"versionId","in":"path","description":"The id of the file version.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileVersion"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}},"/workspaces/{workspaceId}/files/{fileId}/versions/{versionId}/download":{"get":{"tags":["Workspace Files"],"summary":"Returns the content of the specified workspace file version.","description":"\r\n\r\n<Check title=\"Required Permissions\" icon=\"key\">Any authenticated user.</Check>","operationId":"GetFilesVersionsDownloadByWorkspaceNameAndWorkspaceIdAndFileIdAndVersionId","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"versionId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"string","format":"binary"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"oauth2":["full_access"]}],"x-api-versions":["v1"],"x-access":{"any":"true"}}}},"components":{"schemas":{"AgentAccessLevelRequestModel":{"type":"object","properties":{"accessLevel":{"enum":["read","manage"],"type":"string","description":"The access level to grant."}},"additionalProperties":false,"description":"Changes a contributor's access level for an agent."},"AgentConnectorConfigurationRequestModel":{"required":["connectionMode"],"type":"object","properties":{"connectionMode":{"maxLength":25,"minLength":1,"enum":["actingUser","specificConnection"],"type":"string","description":"How the agent selects a connection for the connector."},"connectionId":{"type":"string","description":"The connection id to use.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"Configures an agent's connector connection."},"AgentConnectorLinkResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The linked connector identifier.","format":"uuid","example":"6ba7b810-9dad-11d1-80b4-00c04fd430c8"},"name":{"type":"string","description":"The connector name.","nullable":true,"example":"Google Drive"},"status":{"type":"string","description":"Always pending in this shared response. It does not indicate whether an account is connected.\nRead the agent's configuration endpoint for the current user's connection status.","nullable":true,"example":"pending"},"connectionMode":{"type":"string","description":"How the agent chooses an account: actingUser lets each user supply their own;\nspecificConnection uses the editor-provided account for everyone.","nullable":true,"example":"specificConnection"},"connectionId":{"type":"string","description":"The editor-provided account id in specificConnection mode; otherwise null.","format":"uuid","nullable":true,"example":"6ba7b811-9dad-11d1-80b4-00c04fd430c8"}},"additionalProperties":false,"description":"A connector linked to a custom agent, with settings shared by everyone who uses the agent."},"AgentConnectorUserConnectionRequestModel":{"required":["connectionId"],"type":"object","properties":{"connectionId":{"type":"string","description":"The connection selected by the current user.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"Selects the current user's connection for a connector."},"AgentContributorRequestModel":{"type":"object","properties":{"userId":{"type":"string","description":"The user who receives access.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"enum":["read","manage"],"type":"string","description":"The access level to grant."}},"additionalProperties":false,"description":"Shares an agent with a user."},"AgentContributorResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The access grant id.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The user who receives access.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"enum":["read","manage"],"type":"string","description":"The access level granted to the user."}},"additionalProperties":false,"description":"Represents a user the agent is shared with."},"AgentDefaultsResponseModel":{"type":"object","properties":{"type":{"type":"string","description":"The matching agent thread type.","nullable":true,"example":"custom-agent"},"modelProvider":{"type":"string","description":"The default model provider.","nullable":true,"example":"openai"},"modelName":{"type":"string","description":"The default model name.","nullable":true,"example":"gpt-5.6-terra"},"presetKey":{"type":"string","description":"The stored preset identity for preset-based agents.","nullable":true,"example":"balanced"},"reasoningLevel":{"type":"string","description":"The default reasoning level.","nullable":true,"example":"medium"},"toolAccess":{"$ref":"#/components/schemas/AgentToolAccessDefaultsModel"},"connectorIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The default connector ids.","nullable":true},"skillIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The default skill ids.","nullable":true},"availableModels":{"$ref":"#/components/schemas/AgentRuntimeModelsResponseModel"}},"additionalProperties":false,"description":"Provides agent thread defaults."},"AgentDelegationResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The delegation id.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"agentId":{"type":"string","description":"The parent agent that owns the delegation.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"delegatedAgentId":{"type":"string","description":"The agent that receives the delegated work.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The delegation name shown in workflow settings.","nullable":true},"description":{"type":"string","description":"A short explanation of the delegated work.","nullable":true},"executionMode":{"enum":["orchestracted"],"type":"string","description":"How the parent agent invokes the delegated agent."},"promptOverride":{"type":"string","description":"Additional instructions supplied to the delegated agent.","nullable":true},"sortOrder":{"type":"integer","description":"The delegation's display order.","format":"int32"}},"additionalProperties":false,"description":"Describes a delegation from one agent to another."},"AgentMemoryResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The memory id assigned by Mem0.","nullable":true},"memory":{"type":"string","description":"The memory text inferred and stored by Mem0.","nullable":true},"scope":{"type":"string","description":"The memory scope.","nullable":true},"projectId":{"type":"string","description":"The project id when the memory is project-scoped.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"clientId":{"type":"string","description":"The client id when the memory is client-scoped.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"score":{"type":"number","description":"The relevance score returned by Mem0 search.","format":"double","nullable":true},"createdAt":{"type":"string","description":"The creation timestamp returned by Mem0.","format":"date-time","nullable":true},"updatedAt":{"type":"string","description":"The update timestamp returned by Mem0.","format":"date-time","nullable":true}},"additionalProperties":false,"description":"Represents a stored agent memory returned by the agent runtime API."},"AgentMessageConnectorConnectionRequestModel":{"type":"object","properties":{"connectorId":{"type":"string","description":"The connector identifier.","format":"uuid","example":"7e376777-7834-4af6-9eb8-da065f568d30"},"connectionId":{"type":"string","description":"The connection identifier.","format":"uuid","example":"af18602d-c8aa-4f63-a21e-5a7f59b2412c"}},"additionalProperties":false,"description":"Selects a connection for a Custom agent connector."},"AgentParticipationResponseModel":{"type":"object","properties":{"participationId":{"type":"string","description":"The participation identifier.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"agentId":{"type":"string","description":"The participating agent.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"type":{"type":"string","description":"Gets the runtime type of the participating agent.","nullable":true,"readOnly":true},"agentName":{"type":"string","description":"The agent name captured for the audit record.","nullable":true},"threadId":{"type":"string","description":"The latest thread available for the agent in this context.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"responsibleUserId":{"type":"string","description":"The responsible user of the latest run.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"firstThreadRunId":{"type":"string","description":"The first run in the participation.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"lastThreadRunId":{"type":"string","description":"The latest run in the participation.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"When participation was first recorded.","format":"date-time"},"updatedOn":{"type":"string","description":"When participation was last updated.","format":"date-time"},"threadAvailable":{"type":"boolean","description":"Whether the thread is still available."},"canReadThread":{"type":"boolean","description":"Whether the requester can open the thread."},"canReadRunHistory":{"type":"boolean","description":"Whether the requester can inspect the participation's run history."},"canInvokeAgent":{"type":"boolean","description":"Whether the requester can run the agent in this context."},"canCancelAgent":{"type":"boolean","description":"Whether the requester can cancel the current agent run."},"triggeredByUserId":{"type":"string","description":"The user who triggered the latest recorded run.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"Represents one agent's latest participation in a task or project."},"AgentParticipationRunResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The run identifier.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"executingUserId":{"type":"string","description":"The user whose permissions applied to the run.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"triggeredByUserId":{"type":"string","description":"The user who triggered the run.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"triggerType":{"type":"string","description":"How the run was triggered.","nullable":true},"status":{"type":"string","description":"The terminal or active run status.","nullable":true},"startedOn":{"type":"string","description":"When execution started.","format":"date-time","nullable":true},"completedOn":{"type":"string","description":"When execution completed.","format":"date-time","nullable":true},"failureReason":{"type":"string","description":"The terminal failure reason.","nullable":true}},"additionalProperties":false,"description":"Represents one immutable run shown beneath an agent participation entry."},"AgentPresetCatalogResponseModel":{"type":"object","properties":{"sourceAgentId":{"type":"string","description":"The source agent used to import the selected preset.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"versionNumber":{"type":"integer","description":"The preset version number.","format":"int32"},"name":{"type":"string","description":"The localized display name.","nullable":true},"description":{"type":"string","description":"The localized short description.","nullable":true},"detailedDescription":{"type":"string","description":"The localized detailed catalog description.","nullable":true},"systemPrompt":{"type":"string","description":"The published system instructions.","nullable":true},"modelPresetKey":{"type":"string","description":"The target workspace model preset key used when importing.","nullable":true},"modelProvider":{"type":"string","description":"The model provider from the workspace Balanced preset.","nullable":true},"modelName":{"type":"string","description":"The model from the workspace Balanced preset.","nullable":true},"reasoningLevel":{"type":"string","description":"The reasoning level from the workspace Balanced preset.","nullable":true},"importBlocker":{"type":"string","description":"The code that explains why the preset cannot be imported.","nullable":true},"importWarnings":{"type":"array","items":{"type":"string"},"description":"Codes for capabilities that will be disabled on import.","nullable":true},"webSearchEnabled":{"type":"boolean","description":"Whether web search is enabled in the preset."},"aworkAccessEnabled":{"type":"boolean","description":"Whether awork access is enabled in the preset."},"googleGenAiAccessEnabled":{"type":"boolean","description":"Whether Google image generation is enabled in the preset."},"openAiImageGenerationAccessEnabled":{"type":"boolean","description":"Whether OpenAI image generation is enabled in the preset."},"hasAvatar":{"type":"boolean","description":"Whether the preset has an avatar."},"skillNames":{"type":"array","items":{"type":"string"},"description":"The skill names included in the preset.","nullable":true}},"additionalProperties":false,"description":"Describes an agent preset available to import."},"AgentPresetDefinitionResponseModel":{"type":"object","properties":{"sourceAgentId":{"type":"string","description":"The source agent, which also identifies the preset.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"sourceAgentName":{"type":"string","description":"The source agent name when the preset was published.","nullable":true},"language":{"type":"string","description":"The published language.","nullable":true},"detailedDescription":{"type":"string","description":"The detailed catalog description.","nullable":true},"isPublished":{"type":"boolean","description":"Whether the preset is currently visible to customers."},"latestPublishedVersionNumber":{"type":"integer","description":"The active preset version number.","format":"int32"},"nextVersionNumber":{"type":"integer","description":"The version number assigned by the next publication.","format":"int32"},"versions":{"type":"array","items":{"$ref":"#/components/schemas/AgentPresetVersionSummaryResponseModel"},"description":"The saved preset version history.","nullable":true}},"additionalProperties":false,"description":"Describes an agent preset and its publication status."},"AgentPresetSourceAgentResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The source agent id.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The agent name.","nullable":true},"description":{"type":"string","description":"The short agent description.","nullable":true},"presetKey":{"type":"string","description":"The model preset key.","nullable":true},"modelProvider":{"type":"string","description":"The model provider.","nullable":true},"modelName":{"type":"string","description":"The model name.","nullable":true},"reasoningLevel":{"type":"string","description":"The reasoning level.","nullable":true},"systemPrompt":{"type":"string","description":"The current system prompt.","nullable":true},"webSearchEnabled":{"type":"boolean","description":"Whether web search is enabled."},"aworkAccessEnabled":{"type":"boolean","description":"Whether awork access is enabled."},"googleGenAiAccessEnabled":{"type":"boolean","description":"Whether Google image generation is enabled."},"openAiImageGenerationAccessEnabled":{"type":"boolean","description":"Whether OpenAI image generation is enabled."},"publicationBlockers":{"type":"array","items":{"type":"string"},"description":"The source features that prevent preset publication.","nullable":true},"includedSkillNames":{"type":"array","items":{"type":"string"},"description":"The names of skills copied when the preset is imported.","nullable":true}},"additionalProperties":false,"description":"Describes a custom agent used as a source for a preset."},"AgentPresetVersionSummaryResponseModel":{"type":"object","properties":{"versionNumber":{"type":"integer","description":"The preset version number.","format":"int32"},"publishedOn":{"type":"string","description":"When this version was published.","format":"date-time"},"isPublished":{"type":"boolean","description":"Whether this version remains published."},"isActive":{"type":"boolean","description":"Whether this version is currently available to import."}},"additionalProperties":false,"description":"Describes an agent preset version."},"AgentRuntimeModelResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The model id used by the provider API.","nullable":true,"example":"gpt-5.6-terra"},"key":{"type":"string","description":"The stable catalog key.","nullable":true,"example":"openai:gpt-5.6-terra"},"kind":{"type":"string","description":"The model kind.","nullable":true,"example":"text"},"vendorKey":{"type":"string","description":"The stable vendor key.","nullable":true,"example":"openai"},"vendorCountry":{"type":"string","description":"The vendor country shown in the model picker.","nullable":true,"example":"EU"},"regionKey":{"type":"string","description":"The stable serving-region key.","nullable":true,"example":"europe"},"displayName":{"type":"string","description":"The display label.","nullable":true,"example":"GPT-5.6 Terra"},"status":{"type":"string","description":"The lifecycle status of the model.","nullable":true,"example":"active"},"isNew":{"type":"boolean","description":"Whether the model is newly published.","example":false},"isWorkspaceEnabled":{"type":"boolean","description":"Whether workspace policy enables the model.","example":true},"isInUse":{"type":"boolean","description":"Whether a current workspace configuration or thread uses the model.","example":true},"isAvailable":{"type":"boolean","description":"Whether provider readiness makes the model available.","example":true},"disabledReason":{"type":"string","description":"The reason the model is unavailable.","nullable":true,"example":"Its vendor or region is disabled."},"canToggle":{"type":"boolean","description":"Whether the workspace can change this model's switch.","example":true},"creditFactor":{"type":"number","description":"The Terra-relative cost factor for the representative cached-input workload.","format":"double","nullable":true,"example":1},"servedFrom":{"type":"string","description":"The serving region label.","nullable":true,"example":"Europe"},"servingFlag":{"type":"string","description":"The serving region flag.","nullable":true,"example":"🇪🇺"},"supportsImageInput":{"type":"boolean","description":"Whether the model accepts native image input.","example":true},"supportedReasoningLevels":{"type":"array","items":{"type":"string"},"description":"The reasoning levels supported by this model.","nullable":true}},"additionalProperties":false,"description":"Represents one agent runtime model exposed by the catalog."},"AgentRuntimeModelsResponseModel":{"type":"object","properties":{"defaultProvider":{"type":"string","description":"The default provider.","nullable":true,"example":"openai"},"defaultModel":{"type":"string","description":"The default model.","nullable":true,"example":"gpt-5.6-terra"},"providers":{"type":"array","items":{"$ref":"#/components/schemas/AgentRuntimeProviderModelsResponseModel"},"description":"The available providers and their models.","nullable":true},"performanceLevels":{"type":"array","items":{"$ref":"#/components/schemas/AgentRuntimePerformanceLevelResponseModel"},"description":"The predefined performance levels that resolve to available models.","nullable":true},"workspaceSettings":{"$ref":"#/components/schemas/AgentRuntimeWorkspaceModelSettingsResponseModel"},"availableImageCapabilities":{"type":"array","items":{"type":"string"},"description":"Image capability keys available in this workspace.","nullable":true},"imageCapabilityModels":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/AgentRuntimeModelResponseModel"},"description":"The configured runtime model for each image capability, using the workspace catalog metadata.","nullable":true}},"additionalProperties":false,"description":"Describes the models available to the workspace."},"AgentRuntimePerformanceLevelResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The stable identifier used by clients to present the performance level.","nullable":true,"example":"balanced"},"provider":{"type":"string","description":"The selected model provider.","nullable":true,"example":"openai"},"model":{"type":"string","description":"The selected model name.","nullable":true,"example":"gpt-5.6-terra"},"reasoningLevel":{"type":"string","description":"The selected reasoning level.","nullable":true,"example":"medium"},"isDefault":{"type":"boolean","description":"Whether this is the default performance level for new personal agent chats.","example":true}},"additionalProperties":false,"description":"Represents a predefined performance level for the agent model selector."},"AgentRuntimeProviderModelsResponseModel":{"type":"object","properties":{"provider":{"type":"string","description":"The stable provider key.","nullable":true,"example":"openai"},"displayName":{"type":"string","description":"The provider name shown to users.","nullable":true,"example":"OpenAI"},"defaultModel":{"type":"string","description":"The provider model selected by default.","nullable":true,"example":"gpt-5.6-terra"},"models":{"type":"array","items":{"type":"string"},"description":"The available provider model keys.","nullable":true},"modelDetails":{"type":"array","items":{"$ref":"#/components/schemas/AgentRuntimeModelResponseModel"},"description":"Rich model metadata for model pickers.","nullable":true}},"additionalProperties":false,"description":"Describes the models available from one provider."},"AgentRuntimeWorkspaceModelPresetResponseModel":{"type":"object","properties":{"presetKey":{"type":"string","description":"The preset key.","nullable":true,"example":"balanced"},"isAuto":{"type":"boolean","description":"Whether the preset uses central Auto resolution.","example":false},"modelKey":{"type":"string","description":"The explicit model key.","nullable":true,"example":"openai:gpt-5.6-terra"},"reasoningLevel":{"type":"string","description":"The effective reasoning level.","nullable":true,"example":"medium"},"modelStatus":{"type":"string","description":"The stored model lifecycle status.","nullable":true,"example":"active"},"warning":{"type":"string","description":"The warning shown for a deprecated stored reference.","nullable":true,"example":"This preset uses a deprecated model and remains visible for existing agents."},"error":{"type":"string","description":"The error shown for a removed or unavailable stored reference.","nullable":true,"example":"This preset model is disabled by workspace settings."}},"additionalProperties":false,"description":"Represents one effective workspace preset assignment."},"AgentRuntimeWorkspaceModelSettingsResponseModel":{"type":"object","properties":{"autoEnableNewModels":{"type":"boolean","description":"Whether new models in enabled parents are enabled automatically.","example":true},"vendors":{"type":"array","items":{"$ref":"#/components/schemas/AgentRuntimeWorkspaceModelSwitchResponseModel"},"description":"The effective vendor states.","nullable":true},"regions":{"type":"array","items":{"$ref":"#/components/schemas/AgentRuntimeWorkspaceModelSwitchResponseModel"},"description":"The effective region states.","nullable":true},"presets":{"type":"array","items":{"$ref":"#/components/schemas/AgentRuntimeWorkspaceModelPresetResponseModel"},"description":"Effective Fast, Balanced, and Deep preset assignments.","nullable":true},"models":{"type":"array","items":{"$ref":"#/components/schemas/AgentRuntimeModelResponseModel"},"description":"The full effective catalog used by workspace model settings.","nullable":true},"availableImageCapabilities":{"type":"array","items":{"type":"string"},"description":"Image capability keys available in this workspace.","nullable":true}},"additionalProperties":false,"description":"Represents effective workspace AI model policy."},"AgentRuntimeWorkspaceModelSwitchResponseModel":{"type":"object","properties":{"key":{"type":"string","description":"The stable switch key.","nullable":true,"example":"openai"},"displayName":{"type":"string","description":"The display name.","nullable":true,"example":"OpenAI"},"country":{"type":"string","description":"The vendor country, when this switch represents a vendor.","nullable":true,"example":"US"},"isEnabled":{"type":"boolean","description":"Whether the switch is enabled.","example":true},"isNew":{"type":"boolean","description":"Whether this switch is newly published.","example":false},"canToggle":{"type":"boolean","description":"Whether this parent switch can be changed.","example":true},"disabledReason":{"type":"string","description":"The authoritative reason the switch or its children are unavailable.","nullable":true,"example":"Its vendor or region is disabled."}},"additionalProperties":false,"description":"Represents one effective workspace model switch."},"AgentScheduleNextOccurrenceRequestModel":{"required":["cronRule","recurrenceInterval","timezone"],"type":"object","properties":{"cronRule":{"maxLength":100,"minLength":1,"type":"string","description":"The cron rule used for recurring execution."},"recurrenceInterval":{"maximum":99,"minimum":1,"type":"integer","description":"The number of matching cron occurrences between scheduled runs.","format":"int32"},"timezone":{"maxLength":100,"minLength":1,"type":"string","description":"The IANA timezone used to evaluate the cron rule."},"scheduleId":{"type":"string","description":"The optional existing schedule whose current cadence phase is used.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"Represents the cadence used to preview the next scheduled agent run."},"AgentScheduleNextOccurrenceResponseModel":{"type":"object","properties":{"nextRunOn":{"type":"string","description":"The next selected occurrence in UTC.","format":"date-time"},"isFirstRun":{"type":"boolean","description":"Whether the occurrence starts a new cadence phase."}},"additionalProperties":false,"description":"Represents the next scheduled agent run preview."},"AgentScheduleResponseModel":{"type":"object","properties":{"name":{"type":"string","description":"The schedule display name.","nullable":true},"id":{"type":"string","description":"The schedule id.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"When the schedule was created.","format":"date-time"},"agentId":{"type":"string","description":"The agent id that is executed by this schedule.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"type":{"type":"string","description":"Runtime target type: personal-agent or custom-agent.","nullable":true},"ownerUserId":{"type":"string","description":"The user id whose context is used to execute the scheduled run.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"prompt":{"type":"string","description":"Optional custom instructions. An omitted or null prompt means no custom instructions.","nullable":true},"cronRule":{"type":"string","description":"The normalized cron rule used for recurring execution.","nullable":true},"recurrenceInterval":{"type":"integer","description":"The number of matching cron occurrences between scheduled runs.","format":"int32"},"timezone":{"type":"string","description":"The timezone used to evaluate the cron rule.","nullable":true},"projectId":{"type":"string","description":"The optional project context id.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"taskId":{"type":"string","description":"The optional task context id.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"isEnabled":{"type":"boolean","description":"Whether this schedule is active."},"needsAttention":{"type":"boolean","description":"Whether the schedule needs user attention."},"lastFailureReason":{"type":"string","description":"The latest rejection reason.","nullable":true},"consecutiveFailureCount":{"type":"integer","description":"The number of consecutive failed scheduled executions.","format":"int32"},"lastAttemptOn":{"type":"string","description":"The latest occurrence time.","format":"date-time","nullable":true},"lastSuccessfulRunOn":{"type":"string","description":"The latest accepted occurrence time.","format":"date-time","nullable":true}},"additionalProperties":false,"description":"Represents a scheduled agent run configuration."},"AgentSessionSourceType":{"enum":["manual","project","task","client","workflow","automation"],"type":"string","description":"Identifies the product source that created a custom-agent thread."},"AgentShareNotificationRecipientsRequest":{"type":"object","properties":{"shares":{"type":"array","items":{"$ref":"#/components/schemas/AgentShareNotificationTargetModel"},"description":"The grants added or restored by the complete sharing operation.","nullable":true},"userIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The candidate recipient ids.","nullable":true}},"additionalProperties":false,"description":"Requests the users who gained access from one agent assignment."},"AgentShareNotificationRecipientsResponse":{"type":"object","properties":{"userIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The users who did not already have access.","nullable":true}},"additionalProperties":false,"description":"Users who gained access from an agent assignment."},"AgentShareNotificationTargetModel":{"type":"object","properties":{"shareId":{"type":"string","description":"The share row id.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"targetType":{"type":"string","description":"The target kind: user or team.","nullable":true},"targetId":{"type":"string","description":"The user or team id.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"Describes one new agent share."},"AgentSkillLinkResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The agent-skill link id.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"agentId":{"type":"string","description":"The agent that uses the skill.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"skillId":{"type":"string","description":"The linked skill id.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"skillKey":{"type":"string","description":"The linked skill's stable key.","nullable":true},"skillName":{"type":"string","description":"The linked skill's display name.","nullable":true}},"additionalProperties":false,"description":"Describes a skill linked to an agent."},"AgentSummaryResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"23e68187-91d6-4f7e-8d31-e3f2c60d7427"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"9ad63972-4396-4b0b-9e7d-40b852cdebf8"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"3d844c62-7410-4df9-a5b2-78805c0ee260"},"type":{"type":"string","description":"The public agent type.","nullable":true,"example":"custom-agent"},"connectors":{"type":"array","items":{"$ref":"#/components/schemas/AgentConnectorLinkResponseModel"},"description":"The linked connectors.","nullable":true},"name":{"type":"string","description":"The name shown to users.","nullable":true,"example":"Client Status Reporter"},"description":{"type":"string","description":"A short explanation of what the agent does.","nullable":true,"example":"Prepares client-ready project status reports."},"currentSystemPromptVersionId":{"type":"string","description":"The current system prompt version.","format":"uuid","nullable":true,"example":"fd077515-d4a8-4f79-9fbf-19271bd0123d"},"modelProvider":{"type":"string","description":"The configured model provider when no preset is selected.","nullable":true,"example":"openai"},"modelName":{"type":"string","description":"The configured model name when no preset is selected.","nullable":true,"example":"gpt-5.6-terra"},"presetKey":{"type":"string","description":"The configured workspace model preset key.","nullable":true,"example":"balanced"},"reasoningLevel":{"type":"string","description":"The configured reasoning level.","nullable":true,"example":"medium"},"systemPrompt":{"type":"string","description":"The current system prompt.","nullable":true,"example":"Prepare concise client-ready project updates from awork data."},"webSearchEnabled":{"type":"boolean","description":"Whether web search is enabled.","example":true},"aworkAccessEnabled":{"type":"boolean","description":"Whether awork access is enabled.","example":true},"googleGenAiAccessEnabled":{"type":"boolean","description":"Whether Google image generation is enabled.","example":false},"openAiImageGenerationAccessEnabled":{"type":"boolean","description":"Whether OpenAI image generation is enabled.","example":false},"skillIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The skills linked to the agent.","nullable":true},"hasImage":{"type":"boolean","description":"Whether the agent has a profile image.","example":true},"isArchived":{"type":"boolean","description":"Whether the agent is archived.","example":false},"workspaceAccessLevel":{"enum":["read","manage"],"type":"string","description":"The workspace-wide access level.","nullable":true,"example":null},"accessLevel":{"enum":["read","manage"],"type":"string","description":"The requesting user's access level.","example":"manage"}},"additionalProperties":false,"description":"Describes a custom agent and its current configuration."},"AgentThreadArtifactResponseModel":{"type":"object","properties":{"path":{"type":"string","description":"The file path relative to the thread workspace.","nullable":true},"fileName":{"type":"string","description":"The final segment of the file path.","nullable":true},"mimeType":{"type":"string","description":"The file's MIME type.","nullable":true},"sizeBytes":{"type":"integer","description":"The file size in bytes.","format":"int64"},"sha256":{"type":"string","description":"The lowercase SHA-256 digest of the file content.","nullable":true},"modifiedOn":{"type":"string","description":"When the file was last modified.","format":"date-time","nullable":true},"createdOn":{"type":"string","description":"When the file was created.","format":"date-time","nullable":true}},"additionalProperties":false,"description":"Describes a file produced by an agent thread."},"AgentThreadAttachmentRequestModel":{"type":"object","properties":{"temporaryFileId":{"type":"string","description":"The identifier returned when uploading a temporary file. Do not also supply aworkFileId.","format":"uuid","nullable":true,"example":"af6ac9db-479a-49b8-8e1b-994ba79e940f"},"aworkFileId":{"type":"string","description":"The identifier of an existing awork file the caller can read. Do not also supply temporaryFileId.","format":"uuid","nullable":true,"example":"7a5c994a-320a-4850-a7a8-dad86809d3ef"}},"additionalProperties":false,"description":"References an attached file. Supply exactly one of temporaryFileId or aworkFileId."},"AgentThreadEventResponseModel":{"type":"object","properties":{"sequence":{"type":"integer","description":"The event's durable order within the thread.","format":"int64"},"eventName":{"type":"string","description":"The runtime event type.","nullable":true},"dataJson":{"type":"string","description":"The event payload as JSON.","nullable":true},"traceId":{"type":"string","description":"The distributed trace that produced the event.","nullable":true},"createdOn":{"type":"string","description":"When the event was created.","format":"date-time","nullable":true},"createdBy":{"type":"string","description":"The user or service that created the event.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"When the event was last updated.","format":"date-time","nullable":true},"updatedBy":{"type":"string","description":"The user or service that last updated the event.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"Describes a persisted agent thread event."},"AgentThreadInvocationType":{"enum":["chat","task-assignment","project-assignment"],"type":"string","description":"Identifies how an agent thread starts."},"AgentThreadMessageRequestModel":{"type":"object","properties":{"content":{"type":"string","description":"The message text. Required when no attachments are supplied.","nullable":true,"example":"Summarize this project's progress, risks, and next steps."},"attachments":{"maxItems":20,"type":"array","items":{"$ref":"#/components/schemas/AgentThreadAttachmentRequestModel"},"description":"Up to 20 distinct files attached to this message. Each file can contain up to 20 MiB.\nUpload new files before submitting their identifiers.","nullable":true},"modelProvider":{"type":"string","description":"The provider for a model override. Supply it together with modelName.","nullable":true,"example":"openai"},"modelName":{"type":"string","description":"The model to use for this message. It must be available in the workspace.","nullable":true,"example":"gpt-5.6-terra"},"reasoningLevel":{"type":"string","description":"The reasoning level for this message. Supported values depend on the selected model.","nullable":true,"example":"medium"},"toolAccess":{"$ref":"#/components/schemas/AgentToolAccessOptionsModel"},"connectorIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The connector selection for this message.","nullable":true},"connectorConnections":{"type":"array","items":{"$ref":"#/components/schemas/AgentMessageConnectorConnectionRequestModel"},"description":"Connection choices for custom-agent connectors. These do not change agent settings.","nullable":true},"skillIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The skill selection for this message.","nullable":true},"answerToInterruptId":{"type":"string","description":"The interrupt identifier returned with the question being answered.","nullable":true,"example":"interrupt_01K4CLIENTSTATUS"}},"additionalProperties":false,"description":"Submits a follow-up message or answers a pending question in an agent conversation."},"AgentThreadMessageResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"23e68187-91d6-4f7e-8d31-e3f2c60d7427"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"9ad63972-4396-4b0b-9e7d-40b852cdebf8"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"3d844c62-7410-4df9-a5b2-78805c0ee260"},"threadId":{"type":"string","description":"The thread that owns the message.","format":"uuid","example":"6cbb219e-839d-4d23-b273-3a78bbd842ae"},"parentThreadId":{"type":"string","description":"The parent thread for a delegated message.","format":"uuid","nullable":true,"example":"b5a57e4d-0eec-45b6-b55e-4b70bf0f2a18"},"role":{"type":"string","description":"The message author's role.","nullable":true,"example":"agent"},"content":{"type":"string","description":"The user-visible message text.","nullable":true,"example":"The Acme website project is on track for Friday, with budget approval still pending."},"clientMessageId":{"type":"string","description":"The client-generated idempotency key for a user message.","nullable":true,"example":"client-status-2026-08-29"},"runtimeMessageId":{"type":"string","description":"The stable message reference used by the runtime provider.","nullable":true,"example":"msg_01K4CLIENTSTATUS"},"model":{"type":"string","description":"The model that produced the message.","nullable":true,"example":"gpt-5.6-terra"},"toolCallId":{"type":"string","description":"The provider tool-call identifier associated with the message.","nullable":true,"example":"call_01K4CLIENTSTATUS"},"temporaryFiles":{"type":"array","items":{"$ref":"#/components/schemas/TemporaryFileReference"},"description":"The temporary files attached to the message.","nullable":true},"toolCalls":{"type":"array","items":{"$ref":"#/components/schemas/AiToolCall"},"description":"The tool calls stored with this message.","nullable":true},"reasoning":{"type":"array","items":{"$ref":"#/components/schemas/AgentThreadReasoningResponseModel"},"description":"The user-visible reasoning text stored with this message.","nullable":true},"agentId":{"type":"string","description":"The custom agent that produced the message, if applicable.","format":"uuid","nullable":true,"example":"4d22e163-2b4a-4d47-b51c-5b2217f84f57"},"messageOrder":{"type":"integer","description":"The message order.","format":"int32","example":2},"isStreaming":{"type":"boolean","description":"Whether the message is still streaming.","example":false},"streamCompleted":{"type":"boolean","description":"The stream completed.","example":true},"traceId":{"type":"string","description":"The distributed trace that produced the message.","nullable":true,"example":"0af7651916cd43dd8448eb211c80319c"},"modelProvider":{"type":"string","description":"The model provider selected for this message.","nullable":true,"example":"openai"},"reasoningLevel":{"type":"string","description":"The reasoning level selected for this message.","nullable":true,"example":"medium"},"toolAccess":{"$ref":"#/components/schemas/AgentToolAccessPolicy"},"connectorIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The connector identifiers selected for this message.","nullable":true},"skillIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The skill identifiers selected for this message.","nullable":true}},"additionalProperties":false,"description":"Describes a message in an agent thread."},"AgentThreadReasoningResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The provider reasoning item id.","nullable":true,"example":"reasoning_01J8M7Q2A3B4C5D6E7F8G9H0JK"},"text":{"type":"string","description":"The safe reasoning summary text.","nullable":true,"example":"Checked the project context before preparing the answer."}},"additionalProperties":false,"description":"Represents user-visible reasoning text restored from a canonical chat payload."},"AgentThreadResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"23e68187-91d6-4f7e-8d31-e3f2c60d7427"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"9ad63972-4396-4b0b-9e7d-40b852cdebf8"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"3d844c62-7410-4df9-a5b2-78805c0ee260"},"updatedOn":{"type":"string","description":"The parent timestamp used to order thread queue snapshots, with subsecond precision.","format":"date-time","example":"2026-09-15T15:47:35.9586190Z"},"type":{"type":"string","description":"The thread type.","nullable":true,"example":"custom-agent"},"title":{"type":"string","description":"The thread title.","nullable":true,"example":"Weekly client status report"},"status":{"type":"string","description":"The thread status.","nullable":true,"example":"completed"},"isReadOnly":{"type":"boolean","description":"Whether the requester may only read this thread.","example":false},"isShared":{"type":"boolean","description":"Whether this thread without project or task context currently has active shares.","example":true},"viewerAccess":{"$ref":"#/components/schemas/AgentThreadViewerAccessModel"},"contributors":{"type":"array","items":{"$ref":"#/components/schemas/AiThreadContributorResponseModel"},"description":"The users who explicitly joined this thread.","nullable":true},"activityUsers":{"type":"array","items":{"$ref":"#/components/schemas/NestedUserModel"},"description":"Current details for users referenced by membership and sharing activities on detail responses.","nullable":true},"queue":{"type":"array","items":{"$ref":"#/components/schemas/AiThreadQueuedMessageResponseModel"},"description":"The queued thread messages in dispatch order.","nullable":true},"agentId":{"type":"string","description":"The agent used for the initial execution.","format":"uuid","nullable":true,"example":"4d22e163-2b4a-4d47-b51c-5b2217f84f57"},"agentNameSnapshot":{"type":"string","description":"The immutable initial agent name.","nullable":true,"example":"Client Status Reporter"},"executionOwnerUserId":{"type":"string","description":"The user whose permissions applied to the initial execution.","format":"uuid","nullable":true,"example":"9ad63972-4396-4b0b-9e7d-40b852cdebf8"},"executionTriggeredByUserId":{"type":"string","description":"The user who triggered the initial execution.","format":"uuid","nullable":true,"example":"52c28884-c751-4e0b-820c-9abe8a524a29"},"executionType":{"type":"string","description":"The initial execution type.","nullable":true,"example":"chat"},"executionSourceId":{"type":"string","description":"The entity that caused the initial execution.","format":"uuid","nullable":true,"example":"c907b29e-f640-4639-910d-722623fd5b4a"},"modelProvider":{"type":"string","description":"The model provider.","nullable":true,"example":"openai"},"modelName":{"type":"string","description":"The provider model name.","nullable":true,"example":"gpt-5.6-terra"},"parentThreadId":{"type":"string","description":"The parent thread id.","format":"uuid","nullable":true,"example":"b5a57e4d-0eec-45b6-b55e-4b70bf0f2a18"},"projectId":{"type":"string","description":"The associated project id.","format":"uuid","nullable":true,"example":"c907b29e-f640-4639-910d-722623fd5b4a"},"taskId":{"type":"string","description":"The associated task id.","format":"uuid","nullable":true,"example":"d88ef8fa-e549-4ca6-96d8-83f5be9d37a2"},"clientId":{"type":"string","description":"The associated client id.","format":"uuid","nullable":true,"example":"61341e18-3e3f-4efb-b471-b781e64f69f7"},"documentId":{"type":"string","description":"The associated document id.","format":"uuid","nullable":true,"example":"5a442338-8da3-49e9-a702-b45d6f829d43"},"startedOn":{"type":"string","description":"When execution started.","format":"date-time","nullable":true,"example":"2026-08-29T08:00:05Z"},"completedOn":{"type":"string","description":"When execution completed.","format":"date-time","nullable":true,"example":"2026-08-29T08:01:42Z"},"lastActivityOn":{"type":"string","description":"The latest activity timestamp.","format":"date-time","nullable":true,"example":"2026-08-29T08:01:42Z"},"lastActivityBy":{"type":"string","description":"The user responsible for the latest user-message activity.","format":"uuid","nullable":true,"example":"9ad63972-4396-4b0b-9e7d-40b852cdebf8"},"failureReason":{"type":"string","description":"The failure reason.","nullable":true,"example":"The model provider could not complete the run."},"lastSequence":{"type":"integer","description":"The latest persisted event sequence.","format":"int64","example":42},"latestThreadUpdateSequence":{"type":"integer","description":"The latest event sequence that creates a thread update.","format":"int64","example":42},"hasUpdate":{"type":"boolean","description":"Whether the requester has an unseen update.","example":false},"isArchived":{"type":"boolean","description":"Whether the requester archived the thread.","example":false},"archivedOn":{"type":"string","description":"When the requester archived the thread.","format":"date-time","nullable":true,"example":"2026-08-29T09:30:00Z"},"isPinned":{"type":"boolean","description":"Whether the requester pinned the thread.","example":false},"pinnedOrder":{"type":"number","description":"The requester's pinned order.","format":"double","nullable":true,"example":1},"isAwaitingAction":{"type":"boolean","description":"Whether the thread awaits user action.","example":false},"pendingBatchConfirmation":{"$ref":"#/components/schemas/PendingBatchConfirmationResponseModel"},"pendingUserQuestion":{"$ref":"#/components/schemas/PendingUserQuestionResponseModel"},"usedConnectors":{"type":"array","items":{"$ref":"#/components/schemas/UsedConnectorResponseModel"},"description":"Connectors used successfully in this thread on detail responses.","nullable":true},"contextWindowUsageRatio":{"type":"number","description":"The context-window usage ratio on detail responses.","format":"double","nullable":true,"example":0.42},"rating":{"type":"string","description":"The personal-thread rating on detail responses.","nullable":true,"example":"positive"}},"additionalProperties":false,"description":"Describes an agent thread."},"AgentThreadSeenRequestModel":{"type":"object","properties":{"updateSequence":{"maximum":9223372036854776000,"minimum":1,"type":"integer","description":"The rendered thread update sequence to mark as seen.","format":"int64"}},"additionalProperties":false},"AgentThreadSeenResponseModel":{"type":"object","properties":{"wasUpdated":{"type":"boolean","description":"Whether the seen cursor advanced."}},"additionalProperties":false},"AgentThreadShareRequestTargetModel":{"type":"object","properties":{"targetType":{"type":"string","description":"Whether the target is a user, team, or workspace.","nullable":true,"example":"user"},"targetId":{"type":"string","description":"The user, team, or workspace identifier.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"canWrite":{"type":"boolean","description":"Whether the target can write after Join.","example":true}},"additionalProperties":false,"description":"Defines one user, team, or workspace in a replacement thread shares."},"AgentThreadShareTargetModel":{"type":"object","properties":{"id":{"type":"string","description":"The stable share identifier.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"targetType":{"type":"string","description":"Whether the target is a user, team, or workspace.","nullable":true,"example":"user"},"targetId":{"type":"string","description":"The user, team, or workspace identifier.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"canWrite":{"type":"boolean","description":"Whether the target can write after Join.","example":true},"createdOn":{"type":"string","description":"When this share was created.","format":"date-time","example":"2026-09-11T10:00:00Z"}},"additionalProperties":false,"description":"Describes one user, team, or workspace in a thread shares."},"AgentThreadSharingResponseModel":{"type":"object","properties":{"ownerUserId":{"type":"string","description":"The thread owner, whose access cannot be removed through sharing.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"shares":{"type":"array","items":{"$ref":"#/components/schemas/AgentThreadShareTargetModel"},"description":"The active user, team, and workspace shares.","nullable":true},"viewerAccess":{"$ref":"#/components/schemas/AgentThreadViewerAccessModel"}},"additionalProperties":false,"description":"Describes a thread shares and the requester's current access."},"AgentThreadUpdateCountResponseModel":{"type":"object","properties":{"updatedCount":{"type":"integer","description":"The updated thread count.","format":"int32"}},"additionalProperties":false},"AgentThreadViewerAccessModel":{"type":"object","properties":{"canRead":{"type":"boolean","description":"Whether the requester can read the thread.","example":true},"canWrite":{"type":"boolean","description":"Whether the effective share grants Manage access. The field name preserves the existing API contract.","example":true},"isJoined":{"type":"boolean","description":"Whether the requester joined the thread.","example":true},"canJoin":{"type":"boolean","description":"Whether the requester can Join.","example":true},"canSend":{"type":"boolean","description":"Whether the requester can send.","example":true},"canStop":{"type":"boolean","description":"Whether the requester can stop active work.","example":true},"canManageThread":{"type":"boolean","description":"Whether the requester can rename or delete the thread.","example":true},"canManageSharing":{"type":"boolean","description":"Whether the requester can manage sharing.","example":true},"canLeave":{"type":"boolean","description":"Whether the requester can leave.","example":true},"sendBlockedReason":{"type":"string","description":"The reason that prevents sending.","nullable":true,"example":"join-required"}},"additionalProperties":false,"description":"Describes the requester's current shared-thread capabilities."},"AgentThreadWorkspaceIdModel":{"type":"object","properties":{"workspaceId":{"type":"string","description":"The owning workspace id.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"AgentToTeamRequestModel":{"type":"object","properties":{"teamId":{"type":"string","description":"The team that receives access.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"enum":["read","manage"],"type":"string","description":"The access level to grant."}},"additionalProperties":false,"description":"Shares an agent with a team."},"AgentToTeamResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The access grant id.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"teamId":{"type":"string","description":"The team that receives access.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"enum":["read","manage"],"type":"string","description":"The access level granted to the team."}},"additionalProperties":false,"description":"Represents a team the agent is shared with."},"AgentToolAccessDefaultsModel":{"type":"object","properties":{"awork":{"type":"boolean","description":"A value indicating whether awork tools are enabled by default.","example":true},"webSearch":{"type":"boolean","description":"A value indicating whether web search is enabled by default.","example":true},"googleGenAi":{"type":"boolean","description":"A value indicating whether Google GenAI tools are enabled by default.","example":false},"openAiImageGeneration":{"type":"boolean","description":"A value indicating whether OpenAI image generation is enabled by default.","example":false},"availableImageCapabilities":{"type":"array","items":{"type":"string"},"description":"Image capability keys available in the workspace.","nullable":true}},"additionalProperties":false,"description":"Represents default agent tool access settings."},"AgentToolAccessOptionsModel":{"type":"object","properties":{"awork":{"type":"boolean","description":"Whether awork tools are enabled for this run.","example":true},"webSearch":{"type":"boolean","description":"Whether web search is enabled for this run.","example":true},"googleGenAi":{"type":"boolean","description":"Whether Google GenAI tools are enabled for this run.","example":false},"openAiImageGeneration":{"type":"boolean","description":"Whether OpenAI image generation is enabled for this run.","example":false}},"additionalProperties":false,"description":"Per-message agent tool access options."},"AgentToolAccessPolicy":{"type":"object","properties":{"webSearchEnabled":{"type":"boolean","description":"Whether web search was enabled.","example":true},"aworkAccessEnabled":{"type":"boolean","description":"Whether awork access was enabled.","example":true},"googleGenAiAccessEnabled":{"type":"boolean","description":"Whether Google image generation was enabled.","example":false},"openAiImageGenerationAccessEnabled":{"type":"boolean","description":"Whether OpenAI image generation was enabled.","example":false}},"additionalProperties":false,"description":"Describes the tool access used for an agent message."},"AgentUsageActiveUserResponseModel":{"type":"object","properties":{"userId":{"type":"string","description":"ID of the user attributed with the credit usage.","format":"uuid","example":"84d132c8-9499-4e55-9e8f-fb79b1d4a610"},"creditsUsed":{"type":"integer","description":"Credit usage for the user, rounded to an integer.","format":"int64","example":1840}},"additionalProperties":false,"description":"Represents one active user and their converted credit usage."},"AgentUsageActivityDayResponseModel":{"type":"object","properties":{"date":{"type":"string","description":"UTC calendar date in yyyy-MM-dd format.","nullable":true,"example":"2026-08-31"},"activityCount":{"type":"integer","description":"Number of distinct threads with cost usage on the date.","format":"int32","example":3}},"additionalProperties":false,"description":"Represents agent activity for one UTC calendar day."},"AgentUsageActivitySummaryResponseModel":{"type":"object","properties":{"activeUsers":{"type":"array","items":{"$ref":"#/components/schemas/AgentUsageActiveUserResponseModel"},"description":"Users with positive credit usage, ordered by credit usage in descending order.","nullable":true,"example":[{"userId":"84d132c8-9499-4e55-9e8f-fb79b1d4a610","creditsUsed":1840}]},"days":{"type":"array","items":{"$ref":"#/components/schemas/AgentUsageActivityDayResponseModel"},"description":"Daily agent activity for the current and previous two UTC calendar months.","nullable":true,"example":[{"date":"2026-08-31","activityCount":3}]}},"additionalProperties":false,"description":"Contains workspace agent activity for the current and two previous calendar months."},"AgentUsageCreditsDayResponseModel":{"type":"object","properties":{"date":{"type":"string","description":"UTC calendar date in yyyy-MM-dd format.","nullable":true,"example":"2026-08-31"},"creditsUsed":{"type":"integer","description":"Credits allocated to the date as an integer.","format":"int64","example":130}},"additionalProperties":false,"description":"Represents converted agent credit usage for one UTC calendar day."},"AgentUsageCreditsSummaryResponseModel":{"type":"object","properties":{"totalThreads":{"type":"integer","description":"Number of distinct threads with cost usage in the selected date range.","format":"int32","example":42},"totalCreditsUsed":{"type":"integer","description":"Credit usage in the selected date range, rounded up to an integer.","format":"int64","example":2760},"days":{"type":"array","items":{"$ref":"#/components/schemas/AgentUsageCreditsDayResponseModel"},"description":"Daily credit usage for the selected date range, including dates with zero usage.","nullable":true,"example":[{"date":"2026-08-31","creditsUsed":130}]}},"additionalProperties":false,"description":"Contains workspace thread and credit usage for a date range."},"AgentUsageOverviewResponseModel":{"type":"object","properties":{"activity":{"$ref":"#/components/schemas/AgentUsageActivitySummaryResponseModel"},"credits":{"$ref":"#/components/schemas/AgentUsageCreditsSummaryResponseModel"},"topConsumers":{"$ref":"#/components/schemas/AgentUsageTopConsumersResponseModel"}},"additionalProperties":false,"description":"Contains all data for the workspace agent usage overview widgets."},"AgentUsageTopConsumerResponseModel":{"type":"object","properties":{"entityId":{"type":"string","description":"ID of the Agent, user, project, or client represented by this entry. The entity type is defined by the requested grouping. Provider and model entries use an empty ID and are identified by provider and model.","format":"uuid","example":"c17b45e8-14e2-48d1-8c4f-5b443331c2d8"},"provider":{"type":"string","description":"The provider name for provider or model grouping.","nullable":true},"model":{"type":"string","description":"The model name for model grouping.","nullable":true},"displayName":{"type":"string","description":"The display name for provider or model grouping.","nullable":true},"agentNameSnapshot":{"type":"string","description":"Agent display name captured for the initial run. This is set for agent grouping and null for other groupings.","nullable":true},"creditsUsed":{"type":"integer","description":"Credit usage for the entity, rounded to an integer.","format":"int64","example":920}},"additionalProperties":false,"description":"Represents one entity with high agent credit usage."},"AgentUsageTopConsumersResponseModel":{"type":"object","properties":{"groupBy":{"type":"string","description":"Entity type used to group the entries.","nullable":true,"example":"agent"},"entries":{"type":"array","items":{"$ref":"#/components/schemas/AgentUsageTopConsumerResponseModel"},"description":"Up to five entities with positive credit usage, ordered by credit usage in descending order.","nullable":true,"example":[{"entityId":"c17b45e8-14e2-48d1-8c4f-5b443331c2d8","creditsUsed":920}]}},"additionalProperties":false,"description":"Contains the five entities with the highest agent credit usage."},"AgentWorkflowStepResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The workflow step id.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"agentId":{"type":"string","description":"The agent that owns the workflow step.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The workflow step name.","nullable":true},"stepKind":{"enum":["task","verifier"],"type":"string","description":"The behavior of the workflow step.","nullable":true},"delegationId":{"type":"string","description":"The delegation executed by this step, if any.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"nextStepId":{"type":"string","description":"The step to run after this step succeeds.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"rejectStepId":{"type":"string","description":"The step to run when a verifier rejects the result.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"promptOverride":{"type":"string","description":"Additional instructions supplied to this step.","nullable":true},"outputName":{"type":"string","description":"The name used to store this step's output.","nullable":true},"failureMode":{"enum":["stop","continue"],"type":"string","description":"How the workflow handles a failed step.","nullable":true},"sortOrder":{"type":"integer","description":"The step's display order.","format":"int32"}},"additionalProperties":false,"description":"Describes an agent workflow step."},"AiExhaustedQuotaFallbackOptions":{"type":"object","properties":{"modelProvider":{"type":"string","description":"The provider used for restricted execution.","nullable":true},"modelName":{"type":"string","description":"The model used for restricted execution.","nullable":true},"reasoningEffort":{"type":"string","description":"The reasoning effort used for restricted execution.","nullable":true},"maxOutputTokens":{"type":"integer","description":"The maximum output tokens generated by one restricted response.","format":"int32"}},"additionalProperties":false,"description":"Defines the restricted personal-agent runtime used after the primary quota binds."},"AiPlanCreditAllowanceResponseModel":{"type":"object","properties":{"plan":{"type":"string","description":"The configured paid plan or sponsored profile name.","nullable":true,"example":"Pro"},"planType":{"$ref":"#/components/schemas/AiQuotaPlanType"},"creditsIncluded":{"type":"integer","description":"The whole credits included in the primary monthly quota, or null for an unlimited profile.","format":"int64","nullable":true,"example":7500},"isUnlimited":{"type":"boolean","description":"Whether this item represents the unmetered sponsored profile."}},"additionalProperties":false,"description":"Describes the customer-visible primary credit allowance for one AI plan or sponsored profile."},"AiPlanStatusResponseModel":{"type":"object","properties":{"isAiPlanActive":{"type":"boolean","description":"Whether the workspace AI plan is active."}},"additionalProperties":false,"description":"Reports whether the current workspace has an active AI plan."},"AiQuotaActivationOptions":{"type":"object","properties":{"quotaPlanOverride":{"type":"string","description":"The minimum quota plan applied during the activation period. A user's higher paid plan still wins, and null disables the activation boost.","nullable":true,"example":"Pro"},"overrideDurationInPeriods":{"type":"integer","description":"Number of monthly quota periods for which the activation boost remains effective. It must be one when a boost is configured and zero when disabled.","format":"int32","example":1}},"additionalProperties":false,"description":"Defines the temporary minimum quota plan granted after a workspace activates awork AI for the first time."},"AiQuotaAvailabilityResponseModel":{"type":"object","properties":{"accessSource":{"type":"string","description":"Whether the entitlement is paid, sponsored, or included with the base plan.","nullable":true},"quotaMode":{"type":"string","description":"Whether the quota is blocked, metered, or unlimited.","nullable":true},"isUnlimited":{"type":"boolean","description":"True when the user has unlimited AI access."},"isAvailable":{"type":"boolean","description":"True when awork AI is active and the user is below every configured hard limit; otherwise false.","example":false},"executionMode":{"type":"string","description":"Whether execution is full, limited by exhausted-quota fallback, or blocked.","nullable":true},"fallbackModelProvider":{"type":"string","description":"The model provider used for exhausted-quota fallback execution. Null outside fallback mode.","nullable":true},"fallbackModelName":{"type":"string","description":"The model used for exhausted-quota fallback execution. Null outside fallback mode.","nullable":true},"fallbackReasoningEffort":{"type":"string","description":"The reasoning effort used for exhausted-quota fallback execution. Null outside fallback mode.","nullable":true},"unavailableReason":{"type":"string","description":"Machine-readable reason for an unavailable result: `quota_exhausted` or `awork_ai_inactive`. Null when AI is available.","nullable":true,"example":"quota_exhausted"},"availableAgainOn":{"type":"string","description":"Earliest known UTC time at which the exhausted limit releases or resets. Null when no reliable time is known.","format":"date-time","nullable":true,"example":"2026-09-01T00:00:00Z"},"plan":{"type":"string","description":"The user's assigned entitlement plan.","nullable":true,"example":"Starter"},"quotaPlan":{"type":"string","description":"The effective quota plan used for the current period.","nullable":true,"example":"Pro"},"activationBoostEndsOn":{"type":"string","description":"The exclusive end of the first-activation boost. Null when no boost applies.","format":"date-time","nullable":true},"creditsIncluded":{"type":"integer","description":"The effective primary credit allowance.","format":"int64","nullable":true,"example":7500},"creditsUsed":{"type":"integer","description":"The whole credits consumed in the current primary period.","format":"int64","nullable":true,"example":1824},"creditsAvailable":{"type":"integer","description":"The non-negative whole credits remaining in the current primary period.","format":"int64","nullable":true,"example":5676},"creditsUsedPercentage":{"type":"number","description":"The percentage of primary credits consumed, capped at 100.","format":"double","nullable":true,"example":24.3},"primaryPeriodEndOn":{"type":"string","description":"The exclusive end of the current primary credit period.","format":"date-time","nullable":true},"aiTrialExpiredAt":{"type":"string","description":"Retained UTC end of the workspace's AI trial, when it has expired.","format":"date-time","nullable":true}},"additionalProperties":false,"description":"Reports whether the authenticated user may start AI execution and exposes customer-safe credit usage."},"AiQuotaConfigurationResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"Identifier of this immutable configuration version. Clients use it for optimistic concurrency when saving a replacement.","format":"uuid","example":"7f46eb64-ae32-4ac7-af03-118c5599c684"},"options":{"$ref":"#/components/schemas/AiQuotaOptions"},"createdOn":{"type":"string","description":"UTC time at which this version was created.","format":"date-time","example":"2026-08-03T09:30:00Z"},"createdBy":{"type":"string","description":"Identifier of the authenticated internal operator who created this version.","format":"uuid","example":"b35d6f6d-fcc2-4e41-9380-1c14c2948847"}},"additionalProperties":false,"description":"Returns one immutable AI quota configuration version together with its audit metadata."},"AiQuotaLimitOptions":{"type":"object","properties":{"key":{"type":"string","description":"Stable identifier for this limit within its plan, used to match configuration, stored snapshots, and temporary overrides.","nullable":true,"example":"monthly"},"role":{"type":"string","description":"Purpose of the limit shown in administrator status: `Primary` is the plan's monthly allowance, `Secondary` paces usage over a shorter period, and `ShortTerm` limits bursts.","nullable":true,"example":"Primary"},"amountType":{"type":"string","description":"Determines how AiService.Feature.Quota.Models.AiQuotaLimitOptions.AmountValue is calculated: `AbsoluteCredits` is a fixed customer-credit amount and `PercentOfPrimary` derives an amount from the plan's primary limit.","nullable":true,"example":"AbsoluteCredits"},"amountValue":{"type":"number","description":"Limit amount expressed either as customer credits or as a whole-number percentage of the primary limit, according to AiService.Feature.Quota.Models.AiQuotaLimitOptions.AmountType.","format":"double","example":1750},"windowType":{"type":"string","description":"Determines the evaluated time range: `Aligned` uses fixed boundaries from AiService.Feature.Quota.Models.AiQuotaLimitOptions.WindowAnchor, while `Rolling` looks back from the current check time.","nullable":true,"example":"Aligned"},"windowUnit":{"type":"string","description":"Time unit combined with AiService.Feature.Quota.Models.AiQuotaLimitOptions.WindowLength to define the limit's evaluation period: `Month`, `Day`, or `Hour`.","nullable":true,"example":"Month"},"windowLength":{"type":"integer","description":"Number of AiService.Feature.Quota.Models.AiQuotaLimitOptions.WindowUnit units included in one evaluation period.","format":"int32","example":1},"windowAnchor":{"type":"string","description":"Boundary from which aligned windows are calculated. `QuotaPeriodStart` ties them to the workspace's shared monthly quota period.","nullable":true,"example":"QuotaPeriodStart"},"enforcement":{"type":"string","description":"Action taken once consumed credits reach the limit. `HardBlock` prevents new model and tool execution while allowing already-started runs to finish.","nullable":true,"example":"HardBlock"},"priority":{"type":"integer","description":"Ordering value used to choose which exhausted limit is reported when multiple limits block the same user.","format":"int32","example":1}},"additionalProperties":false,"description":"Defines one credit limit that is evaluated before AI model or tool execution begins."},"AiQuotaOptions":{"type":"object","properties":{"plans":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/AiQuotaPlanOptions"},"description":"Quota definitions keyed by logical paid plan name. `Starter` is required; additional plan names are allowed.","nullable":true,"example":{"Starter":{"creditsPerUsd":100,"limits":[{"key":"monthly","role":"Primary","amountType":"AbsoluteCredits","amountValue":1750,"windowType":"Aligned","windowUnit":"Month","windowLength":1,"windowAnchor":"QuotaPeriodStart","enforcement":"HardBlock","priority":1}]},"Plus":{"creditsPerUsd":100,"limits":[{"key":"monthly","role":"Primary","amountType":"AbsoluteCredits","amountValue":3500,"windowType":"Aligned","windowUnit":"Month","windowLength":1,"windowAnchor":"QuotaPeriodStart","enforcement":"HardBlock","priority":1}]},"Pro":{"creditsPerUsd":100,"limits":[{"key":"monthly","role":"Primary","amountType":"AbsoluteCredits","amountValue":7500,"windowType":"Aligned","windowUnit":"Month","windowLength":1,"windowAnchor":"QuotaPeriodStart","enforcement":"HardBlock","priority":1}]},"Max":{"creditsPerUsd":105,"limits":[{"key":"monthly","role":"Primary","amountType":"AbsoluteCredits","amountValue":16000,"windowType":"Aligned","windowUnit":"Month","windowLength":1,"windowAnchor":"QuotaPeriodStart","enforcement":"HardBlock","priority":1}]},"Ultra":{"creditsPerUsd":100,"limits":[{"key":"monthly","role":"Primary","amountType":"AbsoluteCredits","amountValue":64000,"windowType":"Aligned","windowUnit":"Month","windowLength":1,"windowAnchor":"QuotaPeriodStart","enforcement":"HardBlock","priority":1}]}}},"internalProfiles":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/AiQuotaPlanOptions"},"description":"Profile definitions for sponsored users, including the special `NoCredits` and `Unlimited` modes.","nullable":true},"allowUnlimitedInternalProfile":{"type":"boolean","description":"Whether sponsored users can use the unmetered `Unlimited` profile."},"includedPlans":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/AiQuotaPlanOptions"},"description":"Included limited-access profiles keyed by normalized base-subscription plan.","nullable":true},"exhaustedQuotaFallback":{"$ref":"#/components/schemas/AiExhaustedQuotaFallbackOptions"},"activation":{"$ref":"#/components/schemas/AiQuotaActivationOptions"}},"additionalProperties":false,"description":"Defines the complete global AI quota policy stored as one immutable configuration version."},"AiQuotaPlanOptions":{"type":"object","properties":{"creditsPerUsd":{"type":"number","description":"How many customer credits one USD of attributed provider cost consumes.","format":"double","example":100},"limits":{"type":"array","items":{"$ref":"#/components/schemas/AiQuotaLimitOptions"},"description":"Limits evaluated together for the plan. The user must remain below every hard limit to begin AI execution, and exactly one limit must have the `Primary` role.","nullable":true,"example":[{"key":"monthly","role":"Primary","amountType":"AbsoluteCredits","amountValue":1750,"windowType":"Aligned","windowUnit":"Month","windowLength":1,"windowAnchor":"QuotaPeriodStart","enforcement":"HardBlock","priority":1}]}},"additionalProperties":false,"description":"Defines every credit limit and the internal conversion factor for one logical awork AI plan."},"AiQuotaPlanType":{"enum":["Paid","Sponsored"],"type":"string","description":"Identifies the entitlement family for a customer-visible AI quota plan."},"AiQuotaUsageResetResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The reset identifier.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"scope":{"type":"string","description":"The reset scope.","nullable":true},"workspaceId":{"type":"string","description":"The affected workspace, when applicable.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The affected user, when applicable.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"resetOn":{"type":"string","description":"The inclusive time from which usage counts again.","format":"date-time"},"reason":{"type":"string","description":"The reset explanation.","nullable":true},"reference":{"type":"string","description":"The optional incident or support reference.","nullable":true}},"additionalProperties":false,"description":"Reports a stored AI quota usage reset."},"AiSpeechTokenResponseModel":{"type":"object","properties":{"token":{"type":"string","description":"The short-lived Azure Speech authorization token.","nullable":true},"region":{"type":"string","description":"The Azure Speech region the token belongs to.","nullable":true},"expiresInSeconds":{"type":"integer","description":"The number of seconds until the token expires.","format":"int32"}},"additionalProperties":false,"description":"Response model containing the authorization details required to initialize Azure Speech recognition."},"AiThreadAdminMetadataResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The thread identifier.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"type":{"type":"string","description":"The thread type.","nullable":true},"title":{"type":"string","description":"The contextual thread title. A private thread title is available only to its creator.\nContributors do not widen this: they exist only on project- or task-backed threads, whose titles are never masked.","nullable":true},"createdBy":{"type":"string","description":"The human creator identifier.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"agentId":{"type":"string","description":"The associated Agent identifier.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"agentNameSnapshot":{"type":"string","description":"The Agent display name captured for the initial run.","nullable":true},"executionType":{"type":"string","description":"The initial execution trigger type: direct, task-assignment, project-assignment, mention, schedule, automation, queue, delegation, or workflow.","nullable":true},"projectId":{"type":"string","description":"The project context identifier.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"taskId":{"type":"string","description":"The task context identifier.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"clientId":{"type":"string","description":"The client context identifier.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"status":{"type":"string","description":"The current thread status.","nullable":true},"creditsUsed":{"type":"integer","description":"The whole credits attributed to this thread for workspace administration.\nThis display value is independent from aggregate quota accounting.","format":"int64"},"provider":{"type":"string","description":"The provider of the model with the highest total attributed credit usage, or null when no usage is recorded.","nullable":true},"model":{"type":"string","description":"The model with the highest total attributed credit usage, or null when no usage is recorded.","nullable":true},"createdOn":{"type":"string","description":"When the thread was created.","format":"date-time","nullable":true},"lastActivityOn":{"type":"string","description":"When the thread last had user-visible activity.","format":"date-time","nullable":true},"updatedOn":{"type":"string","description":"When the thread was last updated.","format":"date-time","nullable":true}},"additionalProperties":false,"description":"Contains safe thread metadata for workspace AI administration."},"AiThreadContributorResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The contributor identifier.","format":"uuid","example":"70c0f52e-d9af-45e7-b260-a75592a64e43"},"userId":{"type":"string","description":"The user identifier.","format":"uuid","example":"9ad63972-4396-4b0b-9e7d-40b852cdebf8"},"accessLevel":{"type":"string","description":"The contributor access level.","nullable":true,"example":"manage"}},"additionalProperties":false,"description":"Represents a user who explicitly joined an agent thread."},"AiThreadCreateRequestModel":{"required":["type"],"type":"object","properties":{"content":{"type":"string","description":"The message text. Required when no attachments are supplied.","nullable":true,"example":"Summarize this project's progress, risks, and next steps."},"attachments":{"maxItems":20,"type":"array","items":{"$ref":"#/components/schemas/AgentThreadAttachmentRequestModel"},"description":"Up to 20 distinct files attached to this message. Each file can contain up to 20 MiB.\nUpload new files before submitting their identifiers.","nullable":true},"modelProvider":{"type":"string","description":"The provider for a model override. Supply it together with modelName.","nullable":true,"example":"openai"},"modelName":{"type":"string","description":"The model to use for this message. It must be available in the workspace.","nullable":true,"example":"gpt-5.6-terra"},"reasoningLevel":{"type":"string","description":"The reasoning level for this message. Supported values depend on the selected model.","nullable":true,"example":"medium"},"toolAccess":{"$ref":"#/components/schemas/AgentToolAccessOptionsModel"},"connectorIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The connector selection for this message.","nullable":true},"connectorConnections":{"type":"array","items":{"$ref":"#/components/schemas/AgentMessageConnectorConnectionRequestModel"},"description":"Connection choices for custom-agent connectors. These do not change agent settings.","nullable":true},"skillIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The skill selection for this message.","nullable":true},"type":{"minLength":1,"enum":["personal-agent","custom-agent"],"type":"string","description":"Select personal-agent for the awork Agent, or custom-agent for a configured workspace agent.","example":"custom-agent"},"agentId":{"type":"string","description":"The configured agent to run. Required for custom-agent threads; omit for ordinary personal-agent threads.","format":"uuid","example":"4d22e163-2b4a-4d47-b51c-5b2217f84f57"},"title":{"type":"string","description":"The thread title.","nullable":true,"example":"Weekly client status report"},"projectId":{"type":"string","description":"The project context id.","format":"uuid","nullable":true,"example":"c907b29e-f640-4639-910d-722623fd5b4a"},"taskId":{"type":"string","description":"The task context id.","format":"uuid","nullable":true,"example":"d88ef8fa-e549-4ca6-96d8-83f5be9d37a2"},"clientId":{"type":"string","description":"The client context id.","format":"uuid","nullable":true,"example":"61341e18-3e3f-4efb-b471-b781e64f69f7"},"documentId":{"type":"string","description":"The document context id.","format":"uuid","nullable":true,"example":"5a442338-8da3-49e9-a702-b45d6f829d43"}},"additionalProperties":false,"description":"Configures a new agent thread."},"AiThreadCreatedResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The thread id.","format":"uuid","example":"6cbb219e-839d-4d23-b273-3a78bbd842ae"},"threadRunId":{"type":"string","description":"The current run id.","format":"uuid","nullable":true,"example":"8f934a03-8f8b-44ea-9137-3ca563bb75e8"},"acceptedMessageId":{"type":"string","description":"The accepted first-message id, or null when the thread was created without a message.","format":"uuid","nullable":true,"example":"66fcbdc5-2ae6-43bd-b3ab-f18ccd24909a"},"type":{"type":"string","description":"The thread type.","nullable":true,"example":"custom-agent"},"title":{"type":"string","description":"The thread title.","nullable":true,"example":"Weekly client status report"},"status":{"enum":["ready","accepted","queued","failed"],"type":"string","description":"The creation result: ready without a first message, accepted with a first message, queued when the first message waits for a run, or failed to start.","example":"accepted"},"createdOn":{"type":"string","description":"The creation timestamp.","format":"date-time","nullable":true,"example":"2026-08-29T08:00:00Z"},"createdBy":{"type":"string","description":"The id of the user who created the thread.","format":"uuid","example":"9ad63972-4396-4b0b-9e7d-40b852cdebf8"},"updatedOn":{"type":"string","description":"The last update timestamp.","format":"date-time","nullable":true,"example":"2026-08-29T08:05:00Z"},"updatedBy":{"type":"string","description":"The id of the user who last updated the thread.","format":"uuid","example":"9ad63972-4396-4b0b-9e7d-40b852cdebf8"},"agentId":{"type":"string","description":"The custom agent assigned to the thread.","format":"uuid","nullable":true,"example":"4d22e163-2b4a-4d47-b51c-5b2217f84f57"},"projectId":{"type":"string","description":"The associated project id.","format":"uuid","nullable":true,"example":"c907b29e-f640-4639-910d-722623fd5b4a"},"taskId":{"type":"string","description":"The associated task id.","format":"uuid","nullable":true,"example":"d88ef8fa-e549-4ca6-96d8-83f5be9d37a2"},"clientId":{"type":"string","description":"The associated client id.","format":"uuid","nullable":true,"example":"61341e18-3e3f-4efb-b471-b781e64f69f7"},"documentId":{"type":"string","description":"The associated document id.","format":"uuid","nullable":true,"example":"5a442338-8da3-49e9-a702-b45d6f829d43"}},"additionalProperties":false,"description":"Describes a created agent thread."},"AiThreadMessageAcceptedResponseModel":{"type":"object","properties":{"threadId":{"type":"string","description":"The thread id.","format":"uuid","example":"6cbb219e-839d-4d23-b273-3a78bbd842ae"},"threadRunId":{"type":"string","description":"The run id when the message started immediately.","format":"uuid","nullable":true,"example":"8f934a03-8f8b-44ea-9137-3ca563bb75e8"},"acceptedMessageId":{"type":"string","description":"The server-assigned message id. This identity is retained while queued and when execution starts.","format":"uuid","nullable":true,"example":"66fcbdc5-2ae6-43bd-b3ab-f18ccd24909a"},"queuedMessageId":{"type":"string","description":"The persisted queue entry id when the message must wait.","format":"uuid","nullable":true,"example":"1d7279ac-342c-431c-bba5-16c65f2342c3"},"queueOrder":{"type":"integer","description":"The message's current queue position when it must wait.","format":"int32","nullable":true,"example":1},"threadUpdatedOn":{"type":"string","description":"The parent timestamp saved with queue acceptance, absent for immediate execution.","format":"date-time","nullable":true,"example":"2026-09-15T15:47:35.9586190Z"},"isQueued":{"type":"boolean","description":"Whether the backend stored the message in the queue.","example":false},"status":{"enum":["accepted","queued","failed"],"type":"string","description":"Whether the message was accepted for execution, queued behind another message, or failed to start.","example":"accepted"}},"additionalProperties":false,"description":"Represents the backend's final acceptance decision for one submitted thread message."},"AiThreadMessageProcessingStatusResponseModel":{"type":"object","properties":{"messageId":{"type":"string","description":"The server-generated identifier of the accepted user message.","format":"uuid","example":"66fcbdc5-2ae6-43bd-b3ab-f18ccd24909a"},"status":{"type":"string","description":"The processing status.","nullable":true,"example":"completed"},"hasAgentResponse":{"type":"boolean","description":"Whether an agent response was persisted.","example":true},"responseId":{"type":"string","description":"The persisted agent response id.","nullable":true,"example":"msg_01K4CLIENTSTATUS"},"lastSequenceNumber":{"type":"integer","description":"The last streamed sequence number observed for the response.","format":"int32","nullable":true,"example":42},"error":{"type":"string","description":"The processing error, if any.","nullable":true,"example":"The model provider could not complete the run."}},"additionalProperties":false,"description":"Represents the processing status for a thread message."},"AiThreadQueueMutationResponseModel":{"type":"object","properties":{"threadUpdatedOn":{"type":"string","description":"The thread timestamp after the operation completed.","format":"date-time","example":"2026-09-15T15:47:35.9586190Z"}},"additionalProperties":false,"description":"Identifies the saved thread state that confirms a queue operation."},"AiThreadQueueResponseModel":{"type":"object","properties":{"threadUpdatedOn":{"type":"string","description":"The thread timestamp after the operation completed.","format":"date-time","example":"2026-09-15T15:47:35.9586190Z"},"messages":{"type":"array","items":{"$ref":"#/components/schemas/AiThreadQueuedMessageResponseModel"},"description":"The ordered queued messages.","nullable":true}},"additionalProperties":false,"description":"Represents the shared queued-message state for one thread."},"AiThreadQueuedMessageOrderRequestModel":{"required":["order"],"type":"object","properties":{"order":{"maximum":10,"minimum":1,"type":"integer","description":"The requested one-based queue position.","format":"int32"}},"additionalProperties":false,"description":"Represents a request to move one queued message."},"AiThreadQueuedMessageResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"23e68187-91d6-4f7e-8d31-e3f2c60d7427"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"9ad63972-4396-4b0b-9e7d-40b852cdebf8"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"3d844c62-7410-4df9-a5b2-78805c0ee260"},"threadUpdatedOn":{"type":"string","description":"The parent timestamp saved with an edit; absent on queue snapshot rows.","format":"date-time","nullable":true,"example":"2026-09-15T15:47:35.9586190Z"},"threadId":{"type":"string","description":"The owning thread id.","format":"uuid","example":"6cbb219e-839d-4d23-b273-3a78bbd842ae"},"queueOrder":{"type":"integer","description":"The position in the queue.","format":"int32","example":1},"displayText":{"type":"string","description":"The text shown in the queue.","nullable":true,"example":"Add client-ready risks and next steps to the status report."},"payload":{"$ref":"#/components/schemas/AgentThreadMessageRequestModel"},"attachments":{"type":"array","items":{"$ref":"#/components/schemas/TemporaryFileReference"},"description":"Attachment display metadata resolved by the server. This metadata is not part of the editable request.","nullable":true},"responsibleUserId":{"type":"string","description":"The user whose permissions apply at dispatch time.","format":"uuid","example":"9ad63972-4396-4b0b-9e7d-40b852cdebf8"},"blockedReason":{"type":"string","description":"The stable reason that prevents automatic dispatch.","nullable":true,"example":"interrupted"}},"additionalProperties":false,"description":"Represents one message request waiting in a thread queue."},"AiThreadQueuedMessageUpdateRequestModel":{"type":"object","properties":{"content":{"type":"string","description":"The message text. Required when no attachments are supplied.","nullable":true,"example":"Summarize this project's progress, risks, and next steps."},"attachments":{"maxItems":20,"type":"array","items":{"$ref":"#/components/schemas/AgentThreadAttachmentRequestModel"},"description":"Up to 20 distinct files attached to this message. Each file can contain up to 20 MiB.\nUpload new files before submitting their identifiers.","nullable":true},"modelProvider":{"type":"string","description":"The provider for a model override. Supply it together with modelName.","nullable":true,"example":"openai"},"modelName":{"type":"string","description":"The model to use for this message. It must be available in the workspace.","nullable":true,"example":"gpt-5.6-terra"},"reasoningLevel":{"type":"string","description":"The reasoning level for this message. Supported values depend on the selected model.","nullable":true,"example":"medium"},"toolAccess":{"$ref":"#/components/schemas/AgentToolAccessOptionsModel"},"connectorIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The connector selection for this message.","nullable":true},"connectorConnections":{"type":"array","items":{"$ref":"#/components/schemas/AgentMessageConnectorConnectionRequestModel"},"description":"Connection choices for custom-agent connectors. These do not change agent settings.","nullable":true},"skillIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The skill selection for this message.","nullable":true},"answerToInterruptId":{"type":"string","description":"The interrupt identifier returned with the question being answered.","nullable":true,"example":"interrupt_01K4CLIENTSTATUS"}},"additionalProperties":false,"description":"Represents the complete replacement payload for a queued message."},"AiThreadUpdateRequestModel":{"type":"object","properties":{"projectId":{"type":"string","description":"The project to attach.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"title":{"type":"string","description":"The thread title.","nullable":true},"rating":{"enum":["positive","negative"],"type":"string","description":"The user rating for the thread.","nullable":true}},"additionalProperties":false,"description":"Updates agent thread details."},"AiToolCall":{"type":"object","properties":{"id":{"type":"string","description":"The provider tool call identifier.","nullable":true,"example":"call_01K4CLIENTSTATUS"},"toolName":{"type":"string","description":"The runtime tool that was called.","nullable":true,"example":"code_mode_execute"},"connectorId":{"type":"string","description":"The connector that supplied the tool, if applicable.","format":"uuid","nullable":true,"example":"7e376777-7834-4af6-9eb8-da065f568d30"},"connectionId":{"type":"string","description":"The connector connection used by the tool, if applicable.","format":"uuid","nullable":true,"example":"af18602d-c8aa-4f63-a21e-5a7f59b2412c"},"arguments":{"type":"object","additionalProperties":{},"description":"The structured arguments supplied to the tool.","nullable":true},"response":{"type":"string","description":"The serialized tool result.","nullable":true,"example":"{\"status\":\"completed\"}"},"chartBlock":{"type":"string","description":"The serialized native chart block produced by code mode, when present.","nullable":true,"example":"{\"type\":\"chart\",\"version\":1,\"spec\":{\"style\":\"bar\",\"series\":[{\"name\":\"Revenue\",\"values\":[1,2]}]}}"}},"additionalProperties":false,"description":"Describes a tool call stored with an agent message."},"AiUserPlanStateInternalModel":{"type":"object","properties":{"accessSource":{"type":"string","description":"Whether the assignment is paid through Chargebee, sponsored by awork, a trial, or included with the base plan.","nullable":true},"workspaceId":{"type":"string","description":"Workspace whose AI entitlement owns the assignment and shared quota period.","format":"uuid","example":"0aa6f9a2-c11d-4ecf-a789-701b7c9c01aa"},"userId":{"type":"string","description":"Active awork user whose quota snapshot must be synchronized.","format":"uuid","example":"84d132c8-9499-4e55-9e8f-fb79b1d4a610"},"plan":{"type":"string","description":"Paid plan, sponsored profile, normalized included plan, or the NoAi marker of a seatless user\nin a paid workspace, confirmed by subscriptions-service.","nullable":true,"example":"Plus"},"fallbackQuotaPlan":{"type":"string","description":"Normalized base-subscription plan that funds exhausted-quota fallback access.","nullable":true,"example":"Professional"},"quotaPlanOverride":{"type":"string","description":"Temporary workspace minimum quota plan copied at first activation. The higher of this value and AiService.Feature.Quota.Models.AiUserPlanStateInternalModel.Plan determines the user's quota plan.","nullable":true,"example":"Pro"},"quotaPlanOverrideEndsOn":{"type":"string","description":"Exclusive UTC end of the temporary minimum quota plan. Null when no activation boost applies.","format":"date-time","nullable":true,"example":"2026-09-01T00:00:00Z"},"primaryPeriodStartOn":{"type":"string","description":"Inclusive UTC start of the workspace's current shared monthly quota period.","format":"date-time","example":"2026-08-01T00:00:00Z"},"primaryPeriodEndOn":{"type":"string","description":"Exclusive UTC end of the workspace's current shared monthly quota period.","format":"date-time","example":"2026-09-01T00:00:00Z"},"aiTrialExpiredAt":{"type":"string","description":"Retained UTC end of the workspace's AI trial, when it has expired.","format":"date-time","nullable":true},"workspaceCreditLimit":{"type":"integer","description":"Shared monthly workspace credit maximum. Present only for sponsored access.","format":"int64","nullable":true},"sourceVersion":{"type":"integer","description":"Monotonically increasing subscriptions-service version used by ai-service to ignore stale or replayed synchronization messages.","format":"int64","example":42}},"additionalProperties":false,"description":"Transfers one user's confirmed commercial AI plan and shared quota-period state from subscriptions-service to ai-service."},"AiUserQuotaOverrideResponseModel":{"type":"object","properties":{"userId":{"type":"string","description":"User whose quota adjustment was stored.","format":"uuid","example":"84d132c8-9499-4e55-9e8f-fb79b1d4a610"},"effectiveOn":{"type":"string","description":"UTC time at which the adjustment starts applying.","format":"date-time","example":"2026-08-03T10:00:00Z"},"endsOn":{"type":"string","description":"Exclusive UTC time at which the adjustment stops applying.","format":"date-time","example":"2026-09-01T00:00:00Z"}},"additionalProperties":false,"description":"Confirms the stored temporary support adjustment and when it is effective."},"AiUserQuotaStatusResponseModel":{"type":"object","properties":{"accessSource":{"type":"string","description":"Whether the entitlement is paid, sponsored, or included with the base plan.","nullable":true},"quotaMode":{"type":"string","description":"Whether the quota is blocked, metered, or unlimited.","nullable":true},"isUnlimited":{"type":"boolean","description":"True when the user has unlimited AI access."},"userId":{"type":"string","description":"Identifier of the active awork user whose quota was evaluated.","format":"uuid","example":"84d132c8-9499-4e55-9e8f-fb79b1d4a610"},"isBlocked":{"type":"boolean","description":"True when at least one configured hard limit currently prevents the user from starting AI execution.","example":true},"executionMode":{"type":"string","description":"Whether execution is full, limited by exhausted-quota fallback, or blocked.","nullable":true},"blockingLimitRole":{"type":"string","description":"Administrator-facing category of the reported exhausted limit: `Primary` for monthly allowance, `Secondary` for pacing, or `ShortTerm` for burst protection. Null when the user is not blocked.","nullable":true,"example":"Primary"},"availableAgainOn":{"type":"string","description":"Earliest known UTC time at which the reported limit releases or resets. Null when the user is not blocked or no reliable time is known.","format":"date-time","nullable":true,"example":"2026-09-01T00:00:00Z"},"canUpgrade":{"type":"boolean","description":"True when the current catalog contains a self-service AI plan above the user's confirmed paid plan.","example":true},"plan":{"type":"string","description":"The user's assigned entitlement plan.","nullable":true},"quotaPlan":{"type":"string","description":"The effective quota plan used for the current period.","nullable":true},"activationBoostEndsOn":{"type":"string","description":"The exclusive end of the first-activation boost. Null when no boost applies.","format":"date-time","nullable":true},"creditsIncluded":{"type":"integer","description":"The effective primary credit allowance.","format":"int64","nullable":true},"creditsUsed":{"type":"integer","description":"The whole credits consumed in the current primary period.","format":"int64","nullable":true},"creditsAvailable":{"type":"integer","description":"The non-negative whole credits remaining in the current primary period.","format":"int64","nullable":true},"creditsUsedPercentage":{"type":"number","description":"The percentage of primary credits consumed, capped at 100.","format":"double","nullable":true},"primaryPeriodEndOn":{"type":"string","description":"The exclusive end of the current primary credit period.","format":"date-time","nullable":true},"lastManualResetOn":{"type":"string","description":"The latest manual quota usage reset that applies to this user.","format":"date-time","nullable":true}},"additionalProperties":false,"description":"Reports an eligible user's current customer-safe credit state to workspace administrators."},"CompanySearchAvailabilityModel":{"type":"object","properties":{"available":{"type":"boolean"},"sources":{"type":"array","items":{"$ref":"#/components/schemas/CompanySearchSourceModel"},"nullable":true}},"additionalProperties":false},"CompanySearchSourceModel":{"type":"object","properties":{"name":{"type":"string","nullable":true},"type":{"type":"string","nullable":true}},"additionalProperties":false},"ConfirmationAction":{"type":"object","properties":{"actionDescriptionEn":{"type":"string","description":"The English action description.","nullable":true,"example":"Delete draft tasks"},"actionDescriptionDe":{"type":"string","description":"The German action description.","nullable":true,"example":"Entwurfsaufgaben löschen"},"itemNames":{"type":"array","items":{"type":"string"},"description":"The displayed affected item names.","nullable":true},"itemCount":{"type":"integer","description":"The item count.","format":"int32","example":3},"hasMoreItems":{"type":"boolean","description":"Whether more affected items exist.","example":false}},"additionalProperties":false,"description":"A single action that requires confirmation with both English and German translations."},"ConfirmationDetails":{"type":"object","properties":{"headerMessageEn":{"type":"string","description":"The English confirmation heading.","nullable":true,"example":"Delete draft tasks"},"headerMessageDe":{"type":"string","description":"The German confirmation heading.","nullable":true,"example":"Entwurfsaufgaben löschen"},"confirmationQuestionEn":{"type":"string","description":"The English confirmation question.","nullable":true,"example":"Delete 3 draft tasks from the Acme website project?"},"confirmationQuestionDe":{"type":"string","description":"The German confirmation question.","nullable":true,"example":"3 Entwurfsaufgaben aus dem Acme-Website-Projekt löschen?"},"confirmButtonTextEn":{"type":"string","description":"The English confirm button label.","nullable":true,"example":"Delete"},"confirmButtonTextDe":{"type":"string","description":"The German confirm button label.","nullable":true,"example":"Löschen"},"cancelButtonTextEn":{"type":"string","description":"The English cancel button label.","nullable":true,"example":"Cancel"},"cancelButtonTextDe":{"type":"string","description":"The German cancel button label.","nullable":true,"example":"Abbrechen"},"isDestructive":{"type":"boolean","description":"Whether the action is destructive.","example":true},"totalItemCount":{"type":"integer","description":"The total item count.","format":"int32","example":3},"actions":{"type":"array","items":{"$ref":"#/components/schemas/ConfirmationAction"},"description":"The actions that require confirmation.","nullable":true}},"additionalProperties":false,"description":"Detailed confirmation information for the UI with both English and German translations."},"ConnectionAdminMetadataResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The connection identifier.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The safe connection display name.","nullable":true},"connectorId":{"type":"string","description":"The connector identifier.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"connectorName":{"type":"string","description":"The connector display name.","nullable":true},"ownerUserId":{"type":"string","description":"The connection owner.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"status":{"type":"string","description":"The authorization state.","nullable":true},"isSharedWithWorkspace":{"type":"boolean","description":"Whether the connection is shared with the workspace."},"sharedUserCount":{"type":"integer","description":"The number of direct user shares.","format":"int32"},"sharedTeamCount":{"type":"integer","description":"The number of team shares.","format":"int32"},"createdOn":{"type":"string","description":"When the connection was created.","format":"date-time","nullable":true},"updatedOn":{"type":"string","description":"When the connection was last updated.","format":"date-time","nullable":true}},"additionalProperties":false,"description":"Contains safe connection metadata for workspace AI administration."},"ConnectionAuthorizationInitiationRequestModel":{"type":"object","properties":{"desktopCallbackScheme":{"pattern":"^awork(?:-(?:develop|local))?$","type":"string","description":"The registered desktop protocol that receives the completed OAuth flow.","nullable":true,"example":"awork"}},"additionalProperties":false,"description":"Describes the client that starts a connector authorization flow."},"ConnectionAuthorizationInitiationResponseModel":{"type":"object","properties":{"authUrl":{"type":"string","description":"The URL where the user completes authorization.","nullable":true},"error":{"type":"string","description":"The machine-readable authorization error code.","nullable":true},"errorMessage":{"type":"string","description":"The human-readable authorization error message.","nullable":true},"connection":{"$ref":"#/components/schemas/ConnectionResponseModel"}},"additionalProperties":false},"ConnectionResponseModel":{"type":"object","properties":{"canUse":{"type":"boolean","description":"Whether normal ownership or sharing grants use of this connection and its owner is not suspended.\nAdministrator status does not grant use.","example":true},"canDelete":{"type":"boolean","description":"Whether the requesting user can delete this connection.","example":true},"isSuspended":{"type":"boolean","description":"Whether this connection is suspended because its owner is inactive.","example":false},"id":{"type":"string","description":"The connection identifier.","format":"uuid","example":"af18602d-c8aa-4f63-a21e-5a7f59b2412c"},"connectorId":{"type":"string","description":"The connector identifier.","format":"uuid","example":"7e376777-7834-4af6-9eb8-da065f568d30"},"ownerUserId":{"type":"string","description":"User identifier of the connection owner.","format":"uuid","example":"9ad63972-4396-4b0b-9e7d-40b852cdebf8"},"name":{"type":"string","description":"The connection display name.","nullable":true,"example":"Client CRM connection"},"externalIdentity":{"type":"string","description":"The external identity associated with the connection.","nullable":true,"example":"account.manager@northstar.agency"},"status":{"type":"string","description":"The human-readable connection status.","nullable":true,"example":"connected"},"isSharedWithWorkspace":{"type":"boolean","description":"Whether the connection is shared with the complete workspace.","example":true},"isOwner":{"type":"boolean","description":"Whether the current user owns the connection.","example":true},"lastAuthenticatedOn":{"type":"string","description":"When the connection was last authorized.","format":"date-time","nullable":true,"example":"2026-08-29T08:00:00Z"},"lastRefreshedOn":{"type":"string","description":"When the connection's tools were last refreshed.","format":"date-time","nullable":true,"example":"2026-08-29T08:05:00Z"}},"additionalProperties":false,"description":"Represents an authenticated identity for an MCP connector."},"ConnectionSharingModel":{"type":"object","properties":{"isSharedWithWorkspace":{"type":"boolean","description":"Whether the connection is shared with the complete workspace."},"userIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The identifiers of users with access to the connection.","nullable":true},"teamIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The identifiers of teams with access to the connection.","nullable":true}},"additionalProperties":false},"ConnectionSharingRequestModel":{"required":["isSharedWithWorkspace"],"type":"object","properties":{"isSharedWithWorkspace":{"type":"boolean","description":"Whether the connection is shared with the complete workspace."},"userIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The identifiers of users that should have access to the connection.","nullable":true},"teamIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The identifiers of teams that should have access to the connection.","nullable":true}},"additionalProperties":false},"ConnectionUpdateRequestModel":{"required":["name"],"type":"object","properties":{"name":{"maxLength":255,"minLength":1,"type":"string","description":"The connection display name."}},"additionalProperties":false},"ConnectorEndpointFieldResponseModel":{"type":"object","properties":{"key":{"type":"string","description":"The stable field key submitted when creating the connector.","nullable":true,"example":"subdomain"},"controlType":{"type":"string","description":"The control type used to render the field.","nullable":true,"example":"text"},"labelKey":{"type":"string","description":"The frontend translation key used to label the field.","nullable":true,"example":"subdomain"},"placeholderKey":{"type":"string","description":"The optional frontend translation key used for the field placeholder.","nullable":true,"example":"subdomain"},"validationKind":{"type":"string","description":"The optional validation kind applied to text values.","nullable":true,"example":"hostLabel"},"isRequired":{"type":"boolean","description":"Whether the field must have a value.","example":true},"defaultValue":{"type":"string","description":"The optional default field value.","nullable":true,"example":"northstar-agency"},"maxLength":{"type":"integer","description":"The optional maximum text length.","format":"int32","nullable":true,"example":63},"options":{"type":"array","items":{"$ref":"#/components/schemas/ConnectorEndpointOptionResponseModel"},"description":"The available options for select fields.","nullable":true}},"additionalProperties":false,"description":"Describes one user-facing field used to configure a predefined connector endpoint."},"ConnectorEndpointOptionResponseModel":{"type":"object","properties":{"value":{"type":"string","description":"The stable option value submitted when creating the connector.","nullable":true,"example":"eu"},"labelKey":{"type":"string","description":"The frontend translation key used to label the option.","nullable":true,"example":"eu"}},"additionalProperties":false,"description":"Represents one selectable connector endpoint option."},"ConnectorEndpointValueResponseModel":{"type":"object","properties":{"key":{"type":"string","description":"The stable endpoint field key.","nullable":true,"example":"region"},"labelKey":{"type":"string","description":"The frontend translation key used to label the field.","nullable":true,"example":"dataRegion"},"value":{"type":"string","description":"The configured non-secret field value.","nullable":true,"example":"eu"},"displayLabelKey":{"type":"string","description":"The optional frontend translation key used instead of the raw value.","nullable":true,"example":"eu"}},"additionalProperties":false,"description":"Represents one safely displayable configured connector endpoint value."},"ConnectorPresetCompanySearchModel":{"type":"object","properties":{"enabled":{"type":"boolean","description":"Whether the connector preset supports company search.","example":true},"toolName":{"type":"string","description":"The connector tool used for company search.","nullable":true,"example":"search_companies"},"queryParameterName":{"type":"string","description":"The tool parameter that receives the search query.","nullable":true,"example":"query"}},"additionalProperties":false},"ConnectorPresetResponseModel":{"type":"object","properties":{"hasConfiguration":{"type":"boolean","description":"Whether setup accepts endpoint values or custom OAuth client settings.","readOnly":true,"example":false},"key":{"type":"string","description":"The stable connector preset key.","nullable":true,"example":"hubspot"},"name":{"type":"string","description":"The connector preset display name.","nullable":true,"example":"HubSpot"},"logoPath":{"type":"string","description":"The connector preset logo path.","nullable":true,"example":"images/integrations/hubspot_icon.svg"},"supportsDynamicClientRegistration":{"type":"boolean","description":"Whether the connector supports dynamic client registration.","example":false},"requiresOAuthClientSecret":{"type":"boolean","description":"Whether static OAuth configuration requires a client secret.","example":false},"documentationUrl":{"type":"string","description":"The connector documentation URL.","nullable":true,"example":"https://developers.hubspot.com/docs/apps/developer-platform/build-apps/integrate-with-the-remote-hubspot-mcp-server"},"isDisabled":{"type":"boolean","description":"Whether the connector preset is disabled.","example":false},"managedOAuthProviderKey":{"type":"string","description":"The key of the managed OAuth provider.","nullable":true,"example":"hubspot"},"showOAuthCredentials":{"type":"boolean","description":"Whether OAuth credential inputs should be displayed.","nullable":true,"example":false},"companySearch":{"$ref":"#/components/schemas/ConnectorPresetCompanySearchModel"},"endpointFields":{"type":"array","items":{"$ref":"#/components/schemas/ConnectorEndpointFieldResponseModel"},"description":"The user-facing fields used to configure the connector endpoint.","nullable":true}},"additionalProperties":false},"ConnectorPresetsResponseModel":{"type":"object","properties":{"presets":{"type":"array","items":{"$ref":"#/components/schemas/ConnectorPresetResponseModel"},"description":"The predefined connector presets.","nullable":true},"oauthCallbackUri":{"type":"string","description":"The OAuth callback URI to register with OAuth providers.","nullable":true,"example":"https://app.awork.com/api/v1/agents/connectors/auth/callback"}},"additionalProperties":false,"description":"Represents the connector setup configuration available to the frontend."},"ConnectorResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"23e68187-91d6-4f7e-8d31-e3f2c60d7427"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"9ad63972-4396-4b0b-9e7d-40b852cdebf8"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"3d844c62-7410-4df9-a5b2-78805c0ee260"},"ownerUserId":{"type":"string","description":"The connector owner, or null for a preset without configuration. CreatedBy remains audit history.","format":"uuid","nullable":true,"example":"9ad63972-4396-4b0b-9e7d-40b852cdebf8"},"canDelete":{"type":"boolean","description":"Whether the requesting user can delete the connector and all its connections.","example":true},"name":{"type":"string","description":"The connector display name.","nullable":true,"example":"Client CRM"},"description":{"type":"string","description":"The connector description.","nullable":true,"example":"HubSpot CRM for lead and client account research."},"url":{"type":"string","description":"The custom connector URL.","nullable":true,"example":null},"presetKey":{"type":"string","description":"The predefined connector key.","nullable":true,"example":"hubspot"},"endpointValues":{"type":"array","items":{"$ref":"#/components/schemas/ConnectorEndpointValueResponseModel"},"description":"The safely displayable configured endpoint values.","nullable":true},"logoPath":{"type":"string","description":"The preset logo path when this server matches a catalog preset.","nullable":true,"example":"images/integrations/hubspot_icon.svg"},"status":{"type":"string","description":"The aggregate connection status.","nullable":true,"example":"connected"},"isSharedWithWorkspace":{"type":"boolean","description":"Whether the connector is shared with the workspace.","example":true},"isOwner":{"type":"boolean","description":"Whether the current user owns the connector.","example":true},"currentUserConnectionStatus":{"type":"string","description":"The current user's connection status.","nullable":true,"example":"connected"},"lastRefreshedOn":{"type":"string","description":"When the server tools were last refreshed.","format":"date-time","nullable":true,"example":"2026-08-29T08:05:00Z"},"currentUserLastAuthenticatedOn":{"type":"string","description":"When the current user last authenticated this server.","format":"date-time","nullable":true,"example":"2026-08-29T08:00:00Z"},"hasOAuthClientConfiguration":{"type":"boolean","description":"Whether static OAuth client credentials are configured.","example":true},"connectionMode":{"type":"string","description":"The selected connection resolution mode for an agent-linked response.","nullable":true,"example":"actingUser"},"connectionId":{"type":"string","description":"The selected specific connection, when applicable.","format":"uuid","nullable":true,"example":"af18602d-c8aa-4f63-a21e-5a7f59b2412c"},"currentUserConnectionId":{"type":"string","description":"The connection selected by the current user for acting-user resolution.","format":"uuid","nullable":true,"example":"af18602d-c8aa-4f63-a21e-5a7f59b2412c"},"connections":{"type":"array","items":{"$ref":"#/components/schemas/ConnectionResponseModel"},"description":"The connections visible to the current user.","nullable":true}},"additionalProperties":false,"description":"Represents a connector returned by the agent runtime API."},"ConnectorSharingModel":{"type":"object","properties":{"isSharedWithWorkspace":{"type":"boolean","description":"Whether the connector is visible to the complete workspace.","example":true}},"additionalProperties":false},"ConnectorSharingRequestModel":{"required":["isSharedWithWorkspace"],"type":"object","properties":{"isSharedWithWorkspace":{"type":"boolean","description":"Whether the connector should be visible to the complete workspace.","example":true}},"additionalProperties":false},"ConnectorToolResponseModel":{"type":"object","properties":{"name":{"type":"string","description":"The tool name.","nullable":true},"description":{"type":"string","description":"The tool description.","nullable":true},"inputSchema":{"description":"The JSON schema describing the tool input.","nullable":true}},"additionalProperties":false},"CopyAgentRequestModel":{"type":"object","properties":{"name":{"type":"string","description":"The name shown to users.","nullable":true,"example":"Client Status Reporter"},"description":{"type":"string","description":"A short explanation of what the agent does.","nullable":true,"example":"Prepares client-ready project status reports."}},"additionalProperties":false,"description":"Configures a copied agent."},"CreateAgentDelegationRequestModel":{"type":"object","properties":{"delegatedAgentId":{"type":"string","description":"The agent that receives the delegated work.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The delegation name shown in workflow settings.","nullable":true},"description":{"type":"string","description":"A short explanation of the delegated work.","nullable":true},"executionMode":{"enum":["auto","handoff","orchestrated","orchestracted","parallel","sequential","tool"],"type":"string","description":"How the parent agent invokes the delegated agent.","nullable":true},"promptOverride":{"type":"string","description":"Additional instructions supplied to the delegated agent.","nullable":true},"sortOrder":{"type":"integer","description":"The delegation's display order.","format":"int32"}},"additionalProperties":false,"description":"Configures a new delegation to another agent."},"CreateAgentMemoryRequestModel":{"type":"object","properties":{"content":{"type":"string","description":"The content Mem0 should infer memory from.","nullable":true},"scope":{"type":"string","description":"The memory scope. Defaults to agent.","nullable":true},"projectId":{"type":"string","description":"The project id for project-scoped memory.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"clientId":{"type":"string","description":"The client id for client-scoped memory.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"Represents a request to store a new agent memory."},"CreateAgentRequestModel":{"required":["name"],"type":"object","properties":{"name":{"minLength":1,"type":"string","description":"The name shown to users.","example":"Client Status Reporter"},"description":{"type":"string","description":"A short explanation of what the agent does.","nullable":true,"example":"Prepares client-ready project status reports."},"modelProvider":{"type":"string","description":"The provider that hosts the model.","nullable":true,"example":"openai"},"modelName":{"type":"string","description":"The model to run.","nullable":true,"example":"gpt-5.6-terra"},"presetKey":{"type":"string","description":"The workspace model preset to use.","nullable":true,"example":"balanced"},"reasoningLevel":{"type":"string","description":"The amount of reasoning the model uses.","nullable":true,"example":"medium"},"systemPrompt":{"type":"string","description":"The instructions that control the agent's behavior.","nullable":true,"example":"Prepare concise client-ready project updates from awork data."},"webSearchEnabled":{"type":"boolean","description":"Whether web search is enabled.","nullable":true,"example":true},"aworkAccessEnabled":{"type":"boolean","description":"Whether the agent can use awork tools.","nullable":true,"example":true},"googleGenAiAccessEnabled":{"type":"boolean","description":"Whether the agent can generate images with Google models.","nullable":true,"example":false},"openAiImageGenerationAccessEnabled":{"type":"boolean","description":"Whether the agent can generate images with OpenAI models.","nullable":true,"example":false}},"additionalProperties":false,"description":"Configures a new custom agent."},"CreateAgentScheduleRequestModel":{"required":["cronRule","name"],"type":"object","properties":{"name":{"maxLength":255,"minLength":1,"type":"string","description":"The schedule display name.","example":"Weekly client status report"},"prompt":{"maxLength":25000,"type":"string","description":"Optional custom instructions for the initial message. Omitted, null, or blank input clears custom instructions.","nullable":true,"example":"Summarize progress, risks, and next steps for the Acme website project."},"cronRule":{"maxLength":100,"minLength":1,"type":"string","description":"The cron rule used for recurring execution.","example":"0 9 * * 1"},"recurrenceInterval":{"maximum":99,"minimum":1,"type":"integer","description":"The number of matching cron occurrences between scheduled runs.","format":"int32","nullable":true,"example":2},"timezone":{"maxLength":100,"type":"string","description":"The timezone for the cron rule.","nullable":true,"example":"Europe/Berlin"},"projectId":{"type":"string","description":"The optional project context id.","format":"uuid","nullable":true,"example":"c907b29e-f640-4639-910d-722623fd5b4a"},"taskId":{"type":"string","description":"The optional task context id.","format":"uuid","nullable":true,"example":"d88ef8fa-e549-4ca6-96d8-83f5be9d37a2"},"isEnabled":{"type":"boolean","description":"Whether the schedule is enabled.","nullable":true,"example":true}},"additionalProperties":false,"description":"Represents the request payload for creating a scheduled agent run."},"CreateAgentWorkflowStepRequestModel":{"type":"object","properties":{"name":{"type":"string","description":"The workflow step name.","nullable":true},"stepKind":{"enum":["task","verifier"],"type":"string","description":"The behavior of the workflow step.","nullable":true},"delegationId":{"type":"string","description":"The delegation executed by this step, if any.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"nextStepId":{"type":"string","description":"The step to run after this step succeeds.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"rejectStepId":{"type":"string","description":"The step to run when a verifier rejects the result.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"promptOverride":{"type":"string","description":"Additional instructions supplied to this step.","nullable":true},"outputName":{"type":"string","description":"The name used to store this step's output.","nullable":true},"failureMode":{"enum":["stop","continue"],"type":"string","description":"How the workflow handles a failed step.","nullable":true},"sortOrder":{"type":"integer","description":"The step's display order.","format":"int32"}},"additionalProperties":false,"description":"Configures a new agent workflow step."},"CreateAiQuotaUsageResetRequestModel":{"required":["reason","scope"],"type":"object","properties":{"scope":{"maxLength":100,"minLength":1,"type":"string","description":"Whether the reset targets a user, workspace, or all users."},"userId":{"type":"string","description":"The target user for a user reset.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"reason":{"maxLength":1000,"minLength":1,"type":"string","description":"The required explanation for the reset."},"reference":{"maxLength":255,"type":"string","description":"An optional incident or support reference.","nullable":true}},"additionalProperties":false,"description":"Requests an auditable reset of the usage counted against an AI quota."},"CreateConnectorRequestModel":{"required":["name"],"type":"object","properties":{"presetKey":{"maxLength":100,"type":"string","description":"The optional backend-defined connector preset key.","nullable":true,"example":"hubspot"},"name":{"maxLength":255,"minLength":1,"type":"string","description":"The connector display name.","example":"Client CRM"},"description":{"maxLength":25000,"type":"string","description":"The optional connector description.","nullable":true,"example":"HubSpot CRM for lead and client account research."},"url":{"maxLength":2048,"type":"string","description":"The URL for a custom connector.","nullable":true,"example":null},"endpointValues":{"type":"object","additionalProperties":{"type":"string","nullable":true},"description":"The structured endpoint values for a predefined connector preset.","nullable":true},"oAuthClientId":{"maxLength":750,"type":"string","description":"The optional OAuth client id.","nullable":true,"example":null},"oAuthClientSecret":{"maxLength":1000,"type":"string","description":"The optional OAuth client secret.","nullable":true,"example":null},"isSharedWithWorkspace":{"type":"boolean","description":"Whether the connector is shared with the workspace. When omitted, the user's contribution permission sets the default.","nullable":true,"example":true}},"additionalProperties":false,"description":"Represents a request to create a connector."},"CreateSkillRequestModel":{"required":["instructions"],"type":"object","properties":{"key":{"maxLength":100,"type":"string","description":"The stable key used to reference the skill.","nullable":true},"name":{"maxLength":255,"type":"string","description":"The name shown in the skill library.","nullable":true},"description":{"type":"string","description":"A short explanation of what the skill does.","nullable":true},"instructions":{"minLength":1,"type":"string","description":"The Markdown instruction body from `SKILL.md`."},"instructionsSource":{"type":"string","description":"The source from which the instructions were created.","nullable":true},"metadata":{"type":"string","description":"The skill frontmatter as a JSON object.","nullable":true}},"additionalProperties":false,"description":"Configures a new reusable skill."},"CustomAgentConfigurationResponseModel":{"type":"object","properties":{"agentId":{"type":"string","description":"The custom agent identifier.","format":"uuid","example":"23e68187-91d6-4f7e-8d31-e3f2c60d7427"},"enabledConnectorIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The ids of connectors linked to this agent. A linked connector may still need a working account.","nullable":true},"enabledSkillIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The ids of skills linked to this agent.","nullable":true},"connectorConnections":{"type":"array","items":{"$ref":"#/components/schemas/CustomAgentConnectorConfigurationModel"},"description":"One entry per linked connector, with this user's account choice, its source, and its availability.","nullable":true}},"additionalProperties":false,"description":"The current user's configuration for one custom agent: linked capabilities and an account choice for each connector.\nReading this response does not save any choices."},"CustomAgentConnectorConfigurationModel":{"type":"object","properties":{"connectorId":{"type":"string","description":"The linked connector identifier.","format":"uuid","example":"6ba7b810-9dad-11d1-80b4-00c04fd430c8"},"selectedConnectionId":{"type":"string","description":"The account this user explicitly chose for this agent and connector; null when no choice is saved.","format":"uuid","nullable":true,"example":"6ba7b811-9dad-11d1-80b4-00c04fd430c8"},"defaultConnectionId":{"type":"string","description":"The account the agent would try to use after applying the selection rules; null when none is selected.\nThis may be a saved choice, an awork Agent default, or an editor-provided account.\nCheck Status before treating the account as available.","format":"uuid","nullable":true,"example":"6ba7b811-9dad-11d1-80b4-00c04fd430c8"},"connectionSource":{"type":"string","description":"Why the account was selected: userSelection is this user's saved agent choice;\npersonalDefault is their enabled awork Agent default; specificConnection is the editor-provided account;\nnone means no account was selected.","nullable":true,"example":"userSelection"},"status":{"type":"string","description":"The account's availability: pending, connected, authRequired, error, or suspended.\nMissing means no account could be selected. Inaccessible means the user cannot use the connector or account.","nullable":true,"example":"connected"}},"additionalProperties":false,"description":"The account one connector would use for the current user, and whether that account is available."},"DisableModelsRequestModel":{"required":["resourceKey","resourceType"],"type":"object","properties":{"resourceType":{"minLength":1,"type":"string","description":"The resource type: model, vendor, or region.","example":"model"},"resourceKey":{"minLength":1,"type":"string","description":"The resource key.","example":"openai:gpt-5.6-terra"},"replacements":{"type":"array","items":{"$ref":"#/components/schemas/ModelReplacementRequestModel"},"description":"One replacement mapping for every affected source model.","nullable":true},"presetReplacements":{"type":"array","items":{"$ref":"#/components/schemas/ModelPresetReplacementRequestModel"},"description":"One explicit replacement mapping for every affected preset.","nullable":true},"confirmNoImageReplacement":{"type":"boolean","description":"Whether disabling affected image models without a replacement was confirmed.","example":false}},"additionalProperties":false,"description":"Represents one atomic workspace model disable and migration command."},"ErrorResponse":{"required":["code","description","link"],"type":"object","properties":{"code":{"minLength":1,"type":"string","description":"The error code.","example":"not-found"},"description":{"minLength":1,"type":"string","description":"The description of the error.","example":"There is no matching path for this URL."},"link":{"minLength":1,"type":"string","description":"The link to the API documentation page.","example":"https://developers.awork.com"},"details":{"type":"array","items":{"type":"string"},"description":"A list of details describing the error.","nullable":true,"example":["No project with the id '123' exists."]},"validationErrors":{"type":"array","items":{"$ref":"#/components/schemas/ValidationErrorResponse"},"description":"If a validation error occurred, this contains the validation errors for each property.","nullable":true},"traceId":{"type":"string","description":"The request trace id for tracking the request.","nullable":true,"example":"a65ce5745df02af216715ff06661fb3a"}},"additionalProperties":false,"description":"The API error response."},"EvaluationIngestionResponseModel":{"type":"object","properties":{"created":{"type":"boolean","description":"Whether the request created a new record."}},"additionalProperties":false,"description":"Describes whether an idempotent evaluation write created a record."},"EvaluationRunPutForm":{"required":["environment","expectedCaseManifestJson","manifestFingerprint","sourceRevision","targetBranch","targetServiceVersion","triggerType"],"type":"object","properties":{"environment":{"maxLength":64,"minLength":0,"type":"string","description":"The evaluated environment."},"triggerType":{"maxLength":32,"minLength":0,"type":"string","description":"Whether the run was scheduled or manually triggered."},"sourceRevision":{"maxLength":64,"minLength":0,"type":"string","description":"The evaluation-suite source revision."},"targetBranch":{"maxLength":64,"minLength":0,"type":"string","description":"The branch reported by the target AI service."},"targetServiceVersion":{"maxLength":64,"minLength":0,"type":"string","description":"The version reported by the target AI service."},"targetRevision":{"maxLength":64,"minLength":0,"type":"string","description":"The git revision reported by the target AI service, when the deployment exposes it.","nullable":true},"workflowUrl":{"maxLength":1000,"minLength":0,"type":"string","description":"The source workflow URL.","nullable":true},"schemaVersion":{"maximum":2147483647,"minimum":1,"type":"integer","description":"The result schema version.","format":"int32"},"suiteVersion":{"maximum":2147483647,"minimum":1,"type":"integer","description":"The expected suite version.","format":"int32"},"manifestFingerprint":{"maxLength":128,"minLength":64,"type":"string","description":"The SHA-256 fingerprint of the expected case manifest."},"expectedCaseManifestJson":{"maxLength":25000,"minLength":0,"type":"string","description":"The bounded expected case manifest JSON."},"expectedTrialCount":{"maximum":1000,"minimum":1,"type":"integer","description":"The number of expected trials.","format":"int32"},"startedAt":{"type":"string","description":"When the external run started.","format":"date-time"}},"additionalProperties":false,"description":"Registers the expected scope of one external agent evaluation run."},"EvaluationThreadRunUsageResponseModel":{"type":"object","properties":{"runId":{"type":"string","description":"The run identifier.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"clientMessageId":{"type":"string","description":"The client message identifier of the run's trigger message, when present.","nullable":true},"status":{"type":"string","description":"The run status.","nullable":true},"executionMode":{"type":"string","description":"The quota execution mode used by the run.","nullable":true},"modelProvider":{"type":"string","description":"The model provider used by the run.","nullable":true},"modelName":{"type":"string","description":"The model name used by the run.","nullable":true},"reasoningLevel":{"type":"string","description":"The reasoning level snapshot of the run's trigger message, when present.","nullable":true},"agentId":{"type":"string","description":"The agent that performed the run, when present.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"systemPromptVersionId":{"type":"string","description":"The immutable system-prompt version selected for the run, when one exists.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"inputTokens":{"type":"integer","description":"The summed input tokens, or null when the run has no usage records.","format":"int64","nullable":true},"outputTokens":{"type":"integer","description":"The summed output tokens, or null when the run has no usage records.","format":"int64","nullable":true},"cachedInputTokens":{"type":"integer","description":"The summed cached input tokens, or null when the run has no usage records.","format":"int64","nullable":true},"reasoningTokens":{"type":"integer","description":"The summed reasoning tokens, or null when the run has no usage records.","format":"int64","nullable":true},"costUsd":{"type":"number","description":"The summed cost in US dollars, or null when any usage record has no cost.","format":"double","nullable":true},"startedAt":{"type":"string","description":"The time the run started.","format":"date-time","nullable":true},"completedAt":{"type":"string","description":"The time the run completed, failed, or was cancelled.","format":"date-time","nullable":true},"toolCallCount":{"type":"integer","description":"The number of tool calls recorded for the run.","format":"int32"},"failedToolCallCount":{"type":"integer","description":"The number of failed tool calls recorded for the run.","format":"int32"}},"additionalProperties":false,"description":"Describes one persisted run of an evaluation thread with its usage and tool-call totals."},"EvaluationThreadUsageResponseModel":{"type":"object","properties":{"threadId":{"type":"string","description":"The thread identifier.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"agentId":{"type":"string","description":"The thread's custom agent, when present.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"sourceType":{"type":"string","description":"The thread's persisted source type, when present.","nullable":true},"runs":{"type":"array","items":{"$ref":"#/components/schemas/EvaluationThreadRunUsageResponseModel"},"description":"The thread's non-deleted runs ordered by start time.","nullable":true}},"additionalProperties":false,"description":"Describes the persisted runs, usage, and tool-call totals of one evaluation thread."},"EvaluationTrialPutForm":{"required":["result"],"type":"object","properties":{"result":{"description":"The normalized structured result."}},"additionalProperties":false,"description":"Contains one normalized agent evaluation trial result."},"ExternalAgentDeliveryRequestModel":{"required":["leaseId"],"type":"object","properties":{"leaseId":{"type":"string","description":"The token of this delivery attempt.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"complete":{"type":"boolean","description":"True after the external provider accepted the reply."}},"additionalProperties":false,"description":"A delivery lease update from the external integration."},"ExternalAgentThreadRequestModel":{"required":["content","conversationId","messageId","provider","providerWorkspaceId","threadId"],"type":"object","properties":{"provider":{"maxLength":25,"minLength":1,"type":"string","description":"The provider that sent the message, such as microsoft-teams."},"providerWorkspaceId":{"maxLength":2048,"minLength":1,"type":"string","description":"The tenant or workspace that owns the external conversation."},"conversationId":{"maxLength":2048,"minLength":1,"type":"string","description":"The provider conversation containing the message."},"messageId":{"maxLength":2048,"minLength":1,"type":"string","description":"The provider message ID, unchanged when the same message is delivered again."},"threadId":{"maxLength":2048,"minLength":1,"type":"string","description":"The root message ID of the provider discussion to continue."},"replyServiceUrl":{"maxLength":2048,"type":"string","description":"The optional provider service URL used to send the final reply.","nullable":true},"content":{"maxLength":25000,"minLength":1,"type":"string","description":"The prompt submitted by the linked awork user."},"attachments":{"maxItems":20,"type":"array","items":{"$ref":"#/components/schemas/AgentThreadAttachmentRequestModel"},"description":"The files uploaded by integrations-service for this message.","nullable":true},"replyMessageId":{"maxLength":25,"type":"string","description":"The optional provider message used for the live response.","nullable":true}},"additionalProperties":false,"description":"An external message verified by integrations-service."},"ExternalAgentThreadResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The thread id.","format":"uuid","example":"6cbb219e-839d-4d23-b273-3a78bbd842ae"},"threadRunId":{"type":"string","description":"The current run id.","format":"uuid","nullable":true,"example":"8f934a03-8f8b-44ea-9137-3ca563bb75e8"},"acceptedMessageId":{"type":"string","description":"The accepted first-message id, or null when the thread was created without a message.","format":"uuid","nullable":true,"example":"66fcbdc5-2ae6-43bd-b3ab-f18ccd24909a"},"type":{"type":"string","description":"The thread type.","nullable":true,"example":"custom-agent"},"title":{"type":"string","description":"The thread title.","nullable":true,"example":"Weekly client status report"},"status":{"enum":["ready","accepted","queued","failed"],"type":"string","description":"The creation result: ready without a first message, accepted with a first message, queued when the first message waits for a run, or failed to start.","example":"accepted"},"createdOn":{"type":"string","description":"The creation timestamp.","format":"date-time","nullable":true,"example":"2026-08-29T08:00:00Z"},"createdBy":{"type":"string","description":"The id of the user who created the thread.","format":"uuid","example":"9ad63972-4396-4b0b-9e7d-40b852cdebf8"},"updatedOn":{"type":"string","description":"The last update timestamp.","format":"date-time","nullable":true,"example":"2026-08-29T08:05:00Z"},"updatedBy":{"type":"string","description":"The id of the user who last updated the thread.","format":"uuid","example":"9ad63972-4396-4b0b-9e7d-40b852cdebf8"},"agentId":{"type":"string","description":"The custom agent assigned to the thread.","format":"uuid","nullable":true,"example":"4d22e163-2b4a-4d47-b51c-5b2217f84f57"},"projectId":{"type":"string","description":"The associated project id.","format":"uuid","nullable":true,"example":"c907b29e-f640-4639-910d-722623fd5b4a"},"taskId":{"type":"string","description":"The associated task id.","format":"uuid","nullable":true,"example":"d88ef8fa-e549-4ca6-96d8-83f5be9d37a2"},"clientId":{"type":"string","description":"The associated client id.","format":"uuid","nullable":true,"example":"61341e18-3e3f-4efb-b471-b781e64f69f7"},"documentId":{"type":"string","description":"The associated document id.","format":"uuid","nullable":true,"example":"5a442338-8da3-49e9-a702-b45d6f829d43"},"isNewThread":{"type":"boolean","description":"Whether this request created a new awork thread."},"attachmentsUnavailable":{"type":"boolean","description":"Whether unavailable attachments were omitted when accepting this message."}},"additionalProperties":false,"description":"The awork thread accepted for an external message."},"FilterQueryGenerationResult":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the filter query was successfully generated."},"filter":{"type":"string","description":"The generated OData filter query (e.g., \"assignees/any(a: a/id eq me.id) and dueOn lt today\").\nNull if generation failed or no filter is needed.","nullable":true},"errorMessage":{"type":"string","description":"Error message if generation failed.","nullable":true},"errorCode":{"type":"string","description":"Stable error code for programmatic handling.","nullable":true},"reasoning":{"type":"string","description":"AI's reasoning for how the prompt was converted to the filter query.\nUseful for debugging and understanding the AI's decision-making.","nullable":true},"suggestion":{"type":"string","description":"Helpful suggestion for the user if generation failed.","nullable":true}},"additionalProperties":false,"description":"Result of generating an OData filter query from a natural language prompt for the Filter Feature."},"FilterSuggestionGenerationItem":{"type":"object","properties":{"title":{"type":"string","description":"Short label shown to the user.","nullable":true},"prompt":{"type":"string","description":"Natural-language prompt represented by the suggestion.","nullable":true},"filter":{"type":"string","description":"Additive Filter Feature query fragment represented by the suggestion.","nullable":true},"reasoning":{"type":"string","description":"Brief explanation of why this suggestion fits the existing filter.","nullable":true}},"additionalProperties":false,"description":"A single AI-generated contextual filter suggestion."},"FilterSuggestionGenerationResult":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether suggestions were generated successfully."},"suggestions":{"type":"array","items":{"$ref":"#/components/schemas/FilterSuggestionGenerationItem"},"description":"Generated contextual suggestions.","nullable":true},"errorMessage":{"type":"string","description":"Error message if generation failed.","nullable":true},"errorCode":{"type":"string","description":"Stable error code for programmatic handling.","nullable":true},"reasoning":{"type":"string","description":"AI's reasoning for the suggestion set.\nUseful for debugging and prompt evaluation.","nullable":true}},"additionalProperties":false,"description":"Result of generating contextual Filter Feature suggestions."},"GenerateFilterQueryModel":{"required":["entityType","prompt"],"type":"object","properties":{"prompt":{"minLength":1,"type":"string","description":"The natural language prompt describing the desired filter.","example":"Show all my tasks that are overdue"},"entityType":{"minLength":1,"enum":["tasks","projects","companies","users"],"type":"string","description":"The entity type to generate the filter for.","example":"tasks"},"languageCode":{"type":"string","description":"Optional language code for localized suggestions (e.g., \"en-GB\", \"de-DE\").\nDefaults to \"en\" if not provided.","nullable":true,"example":"en-GB"},"existingFilterQuery":{"type":"string","description":"Optional existing Filter Feature query that should be rewritten by the prompt.\nWhen supplied, the generated query must be the complete replacement query.","nullable":true,"example":"assignees/any(a: a/id eq me.id)"}},"additionalProperties":false,"description":"Model for generating a filter query from a natural language prompt."},"GenerateFilterSuggestionsModel":{"required":["entityType","existingFilterQuery"],"type":"object","properties":{"entityType":{"minLength":1,"enum":["tasks","projects","companies","users"],"type":"string","description":"The entity type to generate filter suggestions for.","example":"tasks"},"existingFilterQuery":{"minLength":1,"type":"string","description":"The existing Filter Feature query that should be extended by the suggestions.","example":"assignees/any(a: a/id eq me.id)"},"languageCode":{"type":"string","description":"Optional language code for localized suggestion titles and prompts.\nDefaults to \"en\" if not provided.","nullable":true,"example":"en-GB"}},"additionalProperties":false,"description":"Model for generating contextual filter suggestions from an existing filter query."},"GrantAiUserQuotaCreditsRequestModel":{"required":["credits","reason"],"type":"object","properties":{"credits":{"type":"number","description":"The positive number of credits to add to the current period.","format":"double","example":1000},"reason":{"maxLength":1000,"minLength":1,"type":"string","description":"The operator explanation retained with the current override.","example":"Temporary allowance while investigating repeated tool retries"}},"additionalProperties":false,"description":"Grants additional primary credits until the end of a user's current quota period."},"ImportAgentPresetRequestModel":{"required":["name"],"type":"object","properties":{"name":{"maxLength":255,"minLength":1,"type":"string","description":"The name of the new custom agent."}},"additionalProperties":false,"description":"Sets the name of a custom agent created from a preset."},"ModelDisablePreflightResponseModel":{"type":"object","properties":{"resourceType":{"type":"string","description":"The normalized resource type.","nullable":true,"example":"model"},"resourceKey":{"type":"string","description":"The normalized resource key.","nullable":true,"example":"openai:gpt-5.6-terra"},"canDisable":{"type":"boolean","description":"Whether the disable has no dependency or last-model block.","example":false},"blockedReason":{"type":"string","description":"The blocked reason, or an empty string when unblocked.","nullable":true,"example":"At least one text model must remain enabled."},"imageCapabilityDisableRequired":{"type":"boolean","description":"Whether an affected image capability must be migrated or disabled.","example":false},"affectedModels":{"type":"array","items":{"$ref":"#/components/schemas/ModelDisableSourceResponseModel"},"description":"The distinct affected source models.","nullable":true},"affectedPresets":{"type":"array","items":{"$ref":"#/components/schemas/ModelDisablePresetResponseModel"},"description":"The affected presets.","nullable":true}},"additionalProperties":false,"description":"Represents the server-computed dependency preflight for a workspace model disable."},"ModelDisablePresetResponseModel":{"type":"object","properties":{"presetKey":{"type":"string","description":"The affected preset key.","nullable":true,"example":"balanced"},"isAuto":{"type":"boolean","description":"Whether the preset currently uses central Auto resolution.","example":true},"sourceModelKey":{"type":"string","description":"The current source model key.","nullable":true,"example":"openai:gpt-5.6-terra"},"sourceModelDisplayName":{"type":"string","description":"The current source model display name.","nullable":true,"example":"GPT-5.6 Terra"},"eligibleReplacements":{"type":"array","items":{"$ref":"#/components/schemas/ModelDisableReplacementResponseModel"},"description":"Active text replacement models that remain enabled after the change.","nullable":true}},"additionalProperties":false,"description":"Describes one affected performance preset and its explicit replacement choices."},"ModelDisableReplacementResponseModel":{"type":"object","properties":{"modelKey":{"type":"string","description":"The stable replacement model key.","nullable":true,"example":"openai:gpt-6-luna"},"kind":{"type":"string","description":"The model capability kind.","nullable":true,"example":"text"},"displayName":{"type":"string","description":"The model display name.","nullable":true,"example":"GPT-5.6 Luna"},"vendorKey":{"type":"string","description":"The stable vendor key.","nullable":true,"example":"openai"},"regionKey":{"type":"string","description":"The stable region key.","nullable":true,"example":"europe"}},"additionalProperties":false,"description":"Describes one active replacement model that remains enabled after a disable."},"ModelDisableSourceResponseModel":{"type":"object","properties":{"modelKey":{"type":"string","description":"The stable source model key.","nullable":true,"example":"openai:gpt-5.6-terra"},"kind":{"type":"string","description":"The model capability kind.","nullable":true,"example":"text"},"displayName":{"type":"string","description":"The source model display name.","nullable":true,"example":"GPT-5.6 Terra"},"usageCount":{"type":"integer","description":"The number of persisted agent and thread configurations using the source.","format":"int32","example":4},"isReferencedByCustomAgents":{"type":"boolean","description":"Whether a Custom agent uses the source.","example":true},"requiresModelMapping":{"type":"boolean","description":"Whether the disable command requires a source replacement mapping.","example":true},"hasImageCapability":{"type":"boolean","description":"Whether an image capability is enabled on a dependent version.","example":false},"imageCapabilityNames":{"type":"array","items":{"type":"string"},"description":"The enabled image capability names.","nullable":true},"eligibleReplacements":{"type":"array","items":{"$ref":"#/components/schemas/ModelDisableReplacementResponseModel"},"description":"Active replacement models that remain enabled after the change.","nullable":true}},"additionalProperties":false,"description":"Describes one affected source model and its dependent references."},"ModelPresetReplacementRequestModel":{"type":"object","properties":{"presetKey":{"type":"string","description":"The affected preset key.","nullable":true,"example":"balanced"},"replacementModelKey":{"type":"string","description":"The replacement model key.","nullable":true,"example":"openai:gpt-6-luna"}},"additionalProperties":false,"description":"Maps one affected performance preset to an explicit replacement model."},"ModelReplacementRequestModel":{"type":"object","properties":{"sourceModelKey":{"type":"string","description":"The affected source model key.","nullable":true,"example":"openai:gpt-5.6-terra"},"replacementModelKey":{"type":"string","description":"The replacement model key, or null for a confirmed image capability removal.","nullable":true,"example":"openai:gpt-6-luna"}},"additionalProperties":false,"description":"Maps one source catalog model to one replacement catalog model."},"NestedUserModel":{"type":"object","properties":{"id":{"type":"string","description":"The identifier of the nested model.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"firstName":{"type":"string","description":"The first name of the user.","nullable":true,"example":"Carla"},"lastName":{"type":"string","description":"The last name of the user.","nullable":true,"example":"Creative"},"hasImage":{"type":"boolean","description":"Whether this user has a profile image.","nullable":true,"example":true}},"additionalProperties":false},"PendingBatchConfirmationResponseModel":{"type":"object","properties":{"confirmationId":{"type":"string","description":"The confirmation id.","nullable":true,"example":"confirm_01K4CLIENTSTATUS"},"confirmationMessage":{"type":"string","description":"The confirmation message.","nullable":true,"example":"Delete 3 draft tasks from the Acme website project?"},"affectedItemCount":{"type":"integer","description":"The affected item count.","format":"int32","example":3},"isDestructive":{"type":"boolean","description":"Whether the action is destructive.","example":true},"confirmationDetails":{"$ref":"#/components/schemas/ConfirmationDetails"},"pendingToolCalls":{"type":"array","items":{"$ref":"#/components/schemas/AiToolCall"},"description":"The tool calls awaiting confirmation.","nullable":true}},"additionalProperties":false,"description":"Represents a pending batch confirmation for an agent thread."},"PendingUserQuestionResponseModel":{"type":"object","properties":{"toolCallId":{"type":"string","description":"The tool call id.","nullable":true,"example":"call_01K4CLIENTSTATUS"},"userQuestion":{"$ref":"#/components/schemas/UserQuestionDetails"}},"additionalProperties":false,"description":"Represents a pending user question for an agent thread."},"PersonalAgentConfigurationRequestModel":{"type":"object","properties":{"enabledConnectorIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The connector ids enabled for the current user's personal agent.","nullable":true},"connectorConnections":{"type":"array","items":{"$ref":"#/components/schemas/PersonalAgentConnectorConfigurationModel"},"description":"The connectors with their explicit default connections.","nullable":true},"enabledSkillIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The skill ids enabled for the current user's personal agent.","nullable":true}},"additionalProperties":false,"description":"Represents the request payload for the current user's personal-agent configuration."},"PersonalAgentConfigurationResponseModel":{"type":"object","properties":{"enabledConnectorIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The connector ids enabled for the current user's personal agent.","nullable":true},"connectorConnections":{"type":"array","items":{"$ref":"#/components/schemas/PersonalAgentConnectorConfigurationModel"},"description":"The connectors with their explicit default connections.","nullable":true},"enabledSkillIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The skill ids enabled for the current user's personal agent.","nullable":true}},"additionalProperties":false,"description":"Represents the current user's personal-agent configuration."},"PersonalAgentConnectorConfigurationModel":{"required":["connectorId","defaultConnectionId"],"type":"object","properties":{"connectorId":{"type":"string","description":"The configured connector identifier.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"defaultConnectionId":{"type":"string","description":"The default connection identifier for the connector.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"Represents a connector and its explicit default connection for the personal agent."},"PersonalAgentSettingsModel":{"required":["instructions","triggerModel"],"type":"object","properties":{"instructions":{"maxLength":4000,"type":"string","description":"Personal instructions. Empty text clears the instructions."},"triggerModel":{"$ref":"#/components/schemas/PersonalAgentTriggerModel"}},"additionalProperties":false,"description":"Contains personal settings without changing chat or capability configuration."},"PersonalAgentSettingsResponseModel":{"type":"object","properties":{"instructions":{"type":"string","description":"The user's saved personal instructions.","nullable":true},"triggerModel":{"$ref":"#/components/schemas/PersonalAgentTriggerModel"},"canTrigger":{"type":"boolean","description":"Whether current authorization and the effective model permit triggered runs. Each run still validates its context and quota."}},"additionalProperties":false,"description":"Contains saved personal settings and current trigger eligibility."},"PersonalAgentTriggerModel":{"required":["modelName","modelProvider","reasoningLevel"],"type":"object","properties":{"modelProvider":{"maxLength":100,"minLength":1,"type":"string","description":"Provider of the selected model."},"modelName":{"maxLength":100,"minLength":1,"type":"string","description":"Name of the selected model."},"reasoningLevel":{"maxLength":100,"minLength":1,"type":"string","description":"Supported reasoning level for the selected model."}},"additionalProperties":false,"description":"Defines the explicit text model used for a user's triggered runs."},"PublishAgentPresetDefinitionRequestModel":{"required":["detailedDescription","language"],"type":"object","properties":{"language":{"minLength":1,"enum":["en","de"],"type":"string","description":"The published language."},"detailedDescription":{"maxLength":25000,"minLength":1,"type":"string","description":"The detailed catalog description."}},"additionalProperties":false,"description":"Sets the language and description for an agent preset."},"PublishSkillPresetDefinitionRequestModel":{"required":["detailedDescription","language"],"type":"object","properties":{"language":{"minLength":1,"enum":["en","de"],"type":"string","description":"The language to assign to the published content."},"detailedDescription":{"maxLength":25000,"minLength":1,"type":"string","description":"The detailed catalog description in Markdown."}},"additionalProperties":false,"description":"Defines the preset metadata for one source skill publication."},"RememberAgentSessionMessageRequestModel":{"type":"object","properties":{"scope":{"type":"string","description":"The memory scope. Defaults to agent.","nullable":true}},"additionalProperties":false,"description":"Represents a request to remember an existing session message."},"SetAgentArchivedRequestModel":{"required":["isArchived"],"type":"object","properties":{"isArchived":{"type":"boolean","description":"Whether the agent should be archived.","example":true}},"additionalProperties":false,"description":"Sets whether an agent is archived."},"SetAgentScheduleEnabledRequestModel":{"required":["isEnabled"],"type":"object","properties":{"isEnabled":{"type":"boolean","description":"Whether the schedule is enabled."}},"additionalProperties":false,"description":"Represents a request to enable or disable an agent schedule."},"SetModelAutoEnableRequestModel":{"required":["enabled"],"type":"object","properties":{"enabled":{"type":"boolean","description":"Whether new models in enabled vendors and regions are enabled automatically.","example":true}},"additionalProperties":false,"description":"Represents a workspace automatic-enablement change."},"SetModelPresetRequestModel":{"required":["isAuto"],"type":"object","properties":{"isAuto":{"type":"boolean","description":"Whether the preset uses the central Auto mapping.","example":false},"modelKey":{"type":"string","description":"The explicit model key when Auto is false.","nullable":true,"example":"openai:gpt-5.6-terra"},"reasoningLevel":{"type":"string","description":"The explicit reasoning level when Auto is false.","nullable":true,"example":"medium"}},"additionalProperties":false,"description":"Represents a workspace preset assignment."},"SetSkillSecretRequirementsRequestModel":{"required":["requirements"],"type":"object","properties":{"requirements":{"type":"array","items":{"$ref":"#/components/schemas/SkillSecretRequirementRequestModel"},"description":"The full set of secret requirements for the skill."}},"additionalProperties":false,"description":"Represents the request payload that replaces the secret declarations of a skill."},"SetSkillSecretValueRequestModel":{"required":["envVarName","scope","value"],"type":"object","properties":{"envVarName":{"maxLength":100,"minLength":1,"type":"string","description":"The environment variable name the value belongs to."},"scope":{"minLength":1,"type":"string","description":"The scope of the value (\"workspace\" or \"user\")."},"value":{"minLength":1,"type":"string","description":"The secret value. It is stored encrypted and never returned by the API."}},"additionalProperties":false,"description":"Represents the request payload that sets a skill secret value."},"SetThreadArchivedRequestModel":{"required":["isArchived"],"type":"object","properties":{"isArchived":{"type":"boolean","description":"Whether the thread should be archived."}},"additionalProperties":false,"description":"Represents a request to change one thread's archived state for the current user."},"SetThreadPinnedRequestModel":{"required":["isPinned"],"type":"object","properties":{"isPinned":{"type":"boolean","description":"Whether the thread should be pinned."}},"additionalProperties":false,"description":"Represents a request to change one thread's pinned state for the current user."},"SkillContributorRequestModel":{"type":"object","properties":{"userId":{"type":"string","description":"The user who receives access.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"enum":["read","manage"],"type":"string","description":"The granted access level."}},"additionalProperties":false,"description":"A requested direct user access grant for a skill."},"SkillContributorResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The access grant identifier.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"skillId":{"type":"string","description":"The shared skill identifier.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The user who receives access.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"enum":["read","manage"],"type":"string","description":"The granted access level."}},"additionalProperties":false,"description":"A direct user access grant for a skill."},"SkillFileResponseModel":{"type":"object","properties":{"relativePath":{"type":"string","description":"The path of the file relative to the skill root (for example \"scripts/sync.py\").","nullable":true},"sizeBytes":{"type":"integer","description":"The file size in bytes.","format":"int64"}},"additionalProperties":false,"description":"Represents a bundled skill file in API responses."},"SkillPresetCatalogResponseModel":{"type":"object","properties":{"sourceSkillId":{"type":"string","description":"The source skill ID that identifies the preset across releases.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"versionNumber":{"type":"integer","description":"The release number available for import.","format":"int32"},"language":{"type":"string","description":"The language of the published content.","nullable":true},"name":{"type":"string","description":"The skill name shown in the preset catalog.","nullable":true},"description":{"type":"string","description":"The short description shown in preset summaries.","nullable":true},"detailedDescription":{"type":"string","description":"The detailed catalog description in Markdown.","nullable":true}},"additionalProperties":false,"description":"Represents the customer-safe description of a published skill preset."},"SkillPresetDefinitionResponseModel":{"type":"object","properties":{"sourceSkillId":{"type":"string","description":"The source skill, which also identifies the preset.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"sourceSkillName":{"type":"string","description":"The source skill name from the published snapshot.","nullable":true},"language":{"type":"string","description":"The published language.","nullable":true},"detailedDescription":{"type":"string","description":"The detailed catalog description.","nullable":true},"isPublished":{"type":"boolean","description":"Whether the preset is currently visible to customers."},"latestPublishedVersionNumber":{"type":"integer","description":"The latest product-facing version number.","format":"int32"},"nextVersionNumber":{"type":"integer","description":"The version number assigned by the next publication.","format":"int32"},"versions":{"type":"array","items":{"$ref":"#/components/schemas/SkillPresetVersionSummaryResponseModel"},"description":"The bounded product-facing release history.","nullable":true}},"additionalProperties":false,"description":"Represents one preset in the internal authoring catalog."},"SkillPresetSourceSkillResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The ID of the skill used to publish this preset.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The current source skill name.","nullable":true},"key":{"type":"string","description":"The current source skill runtime key.","nullable":true},"description":{"type":"string","description":"The current source skill description.","nullable":true},"instructions":{"type":"string","description":"The current source skill instructions.","nullable":true}},"additionalProperties":false,"description":"Represents a reusable skill that is available for preset publication."},"SkillPresetVersionSummaryResponseModel":{"type":"object","properties":{"versionNumber":{"type":"integer","description":"The product-facing version number.","format":"int32"},"publishedOn":{"type":"string","description":"When this version was published.","format":"date-time"},"isPublished":{"type":"boolean","description":"Whether this version remains published."},"isActive":{"type":"boolean","description":"Whether this version is the active customer-facing version."}},"additionalProperties":false,"description":"Represents one product release marker in UIC."},"SkillResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The skill identifier.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdBy":{"type":"string","description":"The user who created the skill.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"When the skill was created.","format":"date-time"},"updatedOn":{"type":"string","description":"When the skill was last updated.","format":"date-time","nullable":true},"key":{"type":"string","description":"The stable key used to reference the skill.","nullable":true},"name":{"type":"string","description":"The name shown in the skill library.","nullable":true},"description":{"type":"string","description":"A short explanation of what the skill does.","nullable":true},"instructions":{"type":"string","description":"The Markdown instruction body from `SKILL.md`.","nullable":true},"instructionsSource":{"type":"string","description":"The source from which the instructions were created.","nullable":true},"type":{"enum":["user","agent"],"type":"string","description":"The ownership type."},"userId":{"type":"string","description":"The owning user for a user-owned skill.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"agentId":{"type":"string","description":"The owning agent for an agent-owned skill.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"enum":["read","manage"],"type":"string","description":"The requesting user's resolved access level."},"isOwner":{"type":"boolean","description":"Whether the requesting user owns the skill."},"workspaceAccessLevel":{"enum":["read","manage"],"type":"string","description":"The workspace-wide access level.","nullable":true},"linkedAgentCount":{"type":"integer","description":"The number of linked agents.","format":"int32"},"metadata":{"type":"string","description":"The skill frontmatter as a JSON object.","nullable":true},"hasFiles":{"type":"boolean","description":"Whether the skill includes bundled files."},"secretRequirements":{"type":"array","items":{"$ref":"#/components/schemas/SkillSecretRequirementResponseModel"},"description":"The secrets that the skill declares.","nullable":true}},"additionalProperties":false,"description":"Describes a reusable skill."},"SkillSecretRequirementRequestModel":{"required":["envVarName","scope"],"type":"object","properties":{"envVarName":{"maxLength":100,"minLength":1,"type":"string","description":"The environment variable name the secret is injected as."},"description":{"maxLength":500,"type":"string","description":"The description shown to users when providing the secret.","nullable":true},"scope":{"minLength":1,"enum":["workspace","user"],"type":"string","description":"Who must provide the secret value."},"isRequired":{"type":"boolean","description":"Whether the secret is required for the skill to work."}},"additionalProperties":false,"description":"Represents one secret requirement declaration in a set-requirements request."},"SkillSecretRequirementResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The secret requirement identifier.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"envVarName":{"type":"string","description":"The environment variable name the secret is injected as.","nullable":true},"description":{"type":"string","description":"The description shown to users when providing the secret.","nullable":true},"scope":{"enum":["workspace","user"],"type":"string","description":"Who must provide the secret value."},"isRequired":{"type":"boolean","description":"Whether the secret is required for the skill to work."},"hasValue":{"type":"boolean","description":"Whether a value is available for the requesting user."}},"additionalProperties":false,"description":"Represents a declared secret requirement of a skill."},"SkillSecretValueStatusResponseModel":{"type":"object","properties":{"envVarName":{"type":"string","description":"The environment variable name.","nullable":true},"scope":{"enum":["workspace","user"],"type":"string","description":"Who provided the stored value."},"updatedOn":{"type":"string","description":"When the value was last updated.","format":"date-time","nullable":true}},"additionalProperties":false,"description":"Represents the existence metadata of a stored skill secret value. The value itself is never exposed."},"SkillSharingResponseModel":{"type":"object","properties":{"workspaceAccessLevel":{"enum":["read","manage"],"type":"string","description":"The workspace-wide access level.","nullable":true},"contributors":{"type":"array","items":{"$ref":"#/components/schemas/SkillContributorResponseModel"},"description":"The direct user access grants.","nullable":true},"teams":{"type":"array","items":{"$ref":"#/components/schemas/SkillToTeamResponseModel"},"description":"The team access grants.","nullable":true}},"additionalProperties":false,"description":"The sharing configuration of a skill."},"SkillToTeamRequestModel":{"type":"object","properties":{"teamId":{"type":"string","description":"The team that receives access.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"enum":["read","manage"],"type":"string","description":"The granted access level."}},"additionalProperties":false,"description":"A requested team access grant for a skill."},"SkillToTeamResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The access grant identifier.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"skillId":{"type":"string","description":"The shared skill identifier.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"teamId":{"type":"string","description":"The team that receives access.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"enum":["read","manage"],"type":"string","description":"The granted access level."}},"additionalProperties":false,"description":"A team access grant for a skill."},"SystemPromptVersionResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The prompt version id.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"agentId":{"type":"string","description":"The agent id.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"versionNumber":{"type":"integer","description":"The version number, assigned in order of creation.","format":"int32"},"isCurrent":{"type":"boolean","description":"Whether this is the agent's current system prompt."},"systemPrompt":{"type":"string","description":"The system prompt.","nullable":true},"createdOn":{"type":"string","description":"The creation time of the system prompt version.","format":"date-time","nullable":true},"createdBy":{"type":"string","description":"The user who created the system prompt version.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"Describes a saved system prompt version."},"TableAuditEventModel":{"type":"object","properties":{"workspaceId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"correlationId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","format":"date-time"},"impersonatingUserId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"traceId":{"type":"string","nullable":true},"websocketConnectionId":{"type":"string","nullable":true},"eventType":{"type":"string","nullable":true},"entityType":{"type":"string","nullable":true},"entityId":{"type":"string","nullable":true},"clientId":{"type":"string","nullable":true},"property":{"type":"string","nullable":true},"old":{"type":"string","nullable":true},"new":{"type":"string","nullable":true},"callStack":{"type":"string","nullable":true}},"additionalProperties":false},"TemporaryFileReference":{"type":"object","properties":{"id":{"type":"string","description":"The resource id.","nullable":true,"example":"temp_01K4CLIENTBRIEF"},"name":{"type":"string","description":"The display name.","nullable":true,"example":"acme-client-brief.pdf"},"mimeType":{"type":"string","description":"The file media type.","nullable":true,"example":"application/pdf"},"sandboxPath":{"type":"string","description":"The canonical sandbox path assigned after file promotion.","nullable":true,"example":"context/uploads/awork-9ad6397243964b0b9e7d40b852cdebf8-acme-client-brief.pdf"},"downloadUrl":{"type":"string","description":"The relative file download URL.","nullable":true,"example":"/api/v1/agents/threads/6cbb219e-839d-4d23-b273-3a78bbd842ae/artifacts/download?path=client-status-report.pdf"}},"additionalProperties":false,"description":"Describes a temporary file attached to an agent message."},"ThreadListStateResponseModel":{"type":"object","properties":{"threadId":{"type":"string","description":"The thread whose list state changed.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"isArchived":{"type":"boolean","description":"Whether the thread is archived."},"archivedOn":{"type":"string","description":"When the thread was archived.","format":"date-time","nullable":true},"isPinned":{"type":"boolean","description":"Whether the thread is pinned."},"pinnedOrder":{"type":"number","description":"The thread's pinned order.","format":"double","nullable":true}},"additionalProperties":false,"description":"Represents one user's organization state for a thread."},"ThreadReorderingResultResponseModel":{"type":"object","properties":{"threadId":{"type":"string","description":"The reordered thread.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"order":{"type":"number","description":"The resulting pinned order.","format":"double","nullable":true}},"additionalProperties":false,"description":"Represents an affected pinned thread after a reorder operation."},"UpdateAgentDelegationRequestModel":{"type":"object","properties":{"delegatedAgentId":{"type":"string","description":"The agent that receives the delegated work.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The delegation name shown in workflow settings.","nullable":true},"description":{"type":"string","description":"A short explanation of the delegated work.","nullable":true},"executionMode":{"enum":["auto","handoff","orchestrated","orchestracted","parallel","sequential","tool"],"type":"string","description":"How the parent agent invokes the delegated agent.","nullable":true},"promptOverride":{"type":"string","description":"Additional instructions supplied to the delegated agent.","nullable":true},"sortOrder":{"type":"integer","description":"The delegation's display order.","format":"int32"}},"additionalProperties":false,"description":"Configures an existing delegation to another agent."},"UpdateAgentRequestModel":{"required":["aworkAccessEnabled","description","googleGenAiAccessEnabled","name","openAiImageGenerationAccessEnabled","reasoningLevel","systemPrompt","webSearchEnabled","workspaceAccessLevel"],"type":"object","properties":{"name":{"maxLength":255,"minLength":1,"type":"string","description":"The name shown to users.","example":"Client Status Reporter"},"description":{"maxLength":25000,"type":"string","description":"A short explanation of what the agent does.","example":"Prepares client-ready project status reports."},"workspaceAccessLevel":{"maxLength":25,"minLength":1,"enum":["none","read","manage"],"type":"string","description":"The access level granted to every member of the workspace.","example":"none"},"modelProvider":{"type":"string","description":"The model provider when no preset is selected.","nullable":true,"example":"openai"},"modelName":{"type":"string","description":"The model name when no preset is selected.","nullable":true,"example":"gpt-5.6-terra"},"presetKey":{"type":"string","description":"The workspace model preset to use.","nullable":true,"example":"balanced"},"reasoningLevel":{"minLength":1,"type":"string","description":"The amount of reasoning the model uses.","example":"medium"},"systemPrompt":{"maxLength":25000,"type":"string","description":"The instructions that control the agent's behavior.","example":"Prepare concise client-ready project updates from awork data."},"webSearchEnabled":{"type":"boolean","description":"Whether web search is enabled.","example":true},"aworkAccessEnabled":{"type":"boolean","description":"Whether awork access is enabled.","example":true},"googleGenAiAccessEnabled":{"type":"boolean","description":"Whether Google image generation is enabled.","example":false},"openAiImageGenerationAccessEnabled":{"type":"boolean","description":"Whether OpenAI image generation is enabled.","example":false}},"additionalProperties":false,"description":"Configures an existing custom agent."},"UpdateAgentScheduleRequestModel":{"required":["cronRule","name"],"type":"object","properties":{"name":{"maxLength":255,"minLength":1,"type":"string","description":"The schedule display name.","example":"Weekly client status report"},"prompt":{"maxLength":25000,"type":"string","description":"Optional custom instructions for the initial message. Omitted, null, or blank input clears custom instructions.","nullable":true,"example":"Summarize progress, risks, and next steps for the Acme website project."},"cronRule":{"maxLength":100,"minLength":1,"type":"string","description":"The cron rule used for recurring execution.","example":"0 9 * * 1"},"recurrenceInterval":{"maximum":99,"minimum":1,"type":"integer","description":"The number of matching cron occurrences between scheduled runs.","format":"int32","nullable":true,"example":2},"timezone":{"maxLength":100,"type":"string","description":"The timezone for the cron rule.","nullable":true,"example":"Europe/Berlin"},"projectId":{"type":"string","description":"The optional project context id.","format":"uuid","nullable":true,"example":"c907b29e-f640-4639-910d-722623fd5b4a"},"taskId":{"type":"string","description":"The optional task context id.","format":"uuid","nullable":true,"example":"d88ef8fa-e549-4ca6-96d8-83f5be9d37a2"},"isEnabled":{"type":"boolean","description":"Whether the schedule is enabled.","nullable":true,"example":true},"type":{"enum":["personal-agent","custom-agent"],"type":"string","description":"Target type used when reassigning the schedule. Omission preserves the current target.","nullable":true},"agentId":{"type":"string","description":"The optional target agent id.\nWhen omitted, the agent from the update route is kept.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"Represents the request payload for updating a scheduled agent run."},"UpdateAgentThreadSharingRequestModel":{"type":"object","properties":{"shares":{"type":"array","items":{"$ref":"#/components/schemas/AgentThreadShareRequestTargetModel"},"description":"The complete replacement shares.","nullable":true}},"additionalProperties":false,"description":"Replaces an agent thread without project or task context's sharing settings."},"UpdateAgentWorkflowStepRequestModel":{"type":"object","properties":{"name":{"type":"string","description":"The workflow step name.","nullable":true},"stepKind":{"enum":["task","verifier"],"type":"string","description":"The behavior of the workflow step.","nullable":true},"delegationId":{"type":"string","description":"The delegation executed by this step, if any.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"nextStepId":{"type":"string","description":"The step to run after this step succeeds.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"rejectStepId":{"type":"string","description":"The step to run when a verifier rejects the result.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"promptOverride":{"type":"string","description":"Additional instructions supplied to this step.","nullable":true},"outputName":{"type":"string","description":"The name used to store this step's output.","nullable":true},"failureMode":{"enum":["stop","continue"],"type":"string","description":"How the workflow handles a failed step.","nullable":true},"sortOrder":{"type":"integer","description":"The step's display order.","format":"int32"}},"additionalProperties":false,"description":"Configures an existing agent workflow step."},"UpdateAiQuotaConfigurationRequestModel":{"type":"object","properties":{"expectedCurrentVersionId":{"type":"string","description":"Identifier of the version the operator edited. The save is rejected as a conflict if another version has since become current.","format":"uuid","example":"7f46eb64-ae32-4ac7-af03-118c5599c684"},"options":{"$ref":"#/components/schemas/AiQuotaOptions"}},"additionalProperties":false,"description":"Replaces the current global AI quota policy by creating a new immutable configuration version."},"UpdateAiTrialHistoryInternalModel":{"type":"object","properties":{"aiTrialExpiredAt":{"type":"string","description":"Retained UTC end of the workspace's AI trial.","format":"date-time"}},"additionalProperties":false,"description":"Contains retained AI trial history for a workspace."},"UpdateSkillRequestModel":{"required":["instructions"],"type":"object","properties":{"key":{"maxLength":100,"type":"string","description":"The stable key used to reference the skill.","nullable":true},"name":{"maxLength":255,"type":"string","description":"The name shown in the skill library.","nullable":true},"description":{"type":"string","description":"A short explanation of what the skill does.","nullable":true},"instructions":{"minLength":1,"type":"string","description":"The Markdown instruction body from `SKILL.md`."},"instructionsSource":{"type":"string","description":"The source from which the instructions were created.","nullable":true},"metadata":{"type":"string","description":"The skill frontmatter as a JSON object.","nullable":true}},"additionalProperties":false,"description":"Configures an existing reusable skill."},"UpdateSkillSharingRequestModel":{"type":"object","properties":{"workspaceAccessLevel":{"enum":["none","read","manage"],"type":"string","description":"The workspace-wide access level.","nullable":true},"contributors":{"type":"array","items":{"$ref":"#/components/schemas/SkillContributorRequestModel"},"description":"The direct user access grants.","nullable":true},"teams":{"type":"array","items":{"$ref":"#/components/schemas/SkillToTeamRequestModel"},"description":"The team access grants.","nullable":true}},"additionalProperties":false,"description":"A replacement sharing configuration for a skill."},"UpdateThreadPinnedOrderRequestModel":{"required":["order"],"type":"object","properties":{"order":{"type":"number","description":"The target pinned order.","format":"double"}},"additionalProperties":false,"description":"Represents a request to change one pinned thread's order."},"UpdateWorkspaceContextRequestModel":{"required":["rawContentHtml"],"type":"object","properties":{"rawContentHtml":{"maxLength":25000,"type":"string","description":"The complete workspace context as rich-text HTML."}},"additionalProperties":false,"description":"Contains the workspace-authored rich text to save."},"UploadSkillFileByUploadIdRequestModel":{"required":["fileName","uploadId"],"type":"object","properties":{"uploadId":{"type":"string","description":"The temporary upload ID.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"fileName":{"maxLength":400,"minLength":1,"type":"string","description":"The uploaded file name. It is the target path unless AiService.Feature.AgentRuntime.Models.UploadSkillFileByUploadIdRequestModel.RelativePath is set."},"relativePath":{"maxLength":400,"type":"string","description":"The optional target path relative to the skill root. Defaults to the file name.","nullable":true}},"additionalProperties":false,"description":"Selects a temporary upload to store as a bundled skill file."},"UsedConnectorResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The connector identifier.","format":"uuid","example":"7e376777-7834-4af6-9eb8-da065f568d30"},"name":{"type":"string","description":"The connector name captured at its latest successful use.","nullable":true,"example":"Client CRM"},"logoPath":{"type":"string","description":"The predefined connector logo path, when available.","nullable":true,"example":"images/integrations/hubspot_icon.svg"}},"additionalProperties":false,"description":"Identifies a used thread connector."},"UserMemoryResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The memory id assigned by Mem0.","nullable":true},"fact":{"type":"string","description":"The validated governed memory fact.","nullable":true},"category":{"type":"string","description":"The governed memory category.","nullable":true},"status":{"type":"string","description":"The governed lifecycle status.","nullable":true},"candidateSource":{"type":"string","description":"Where the memory candidate originated.","nullable":true},"createdAt":{"type":"string","description":"The creation timestamp returned by Mem0.","format":"date-time","nullable":true},"updatedAt":{"type":"string","description":"The update timestamp returned by Mem0.","format":"date-time","nullable":true}},"additionalProperties":false,"description":"Represents a stored user memory returned by the assistant memory API."},"UserQuestionDetails":{"type":"object","properties":{"question":{"type":"string","description":"The user-facing question.","nullable":true,"example":"Should I send the client status report now?"},"options":{"type":"array","items":{"type":"string"},"description":"The bounded selectable answers.","nullable":true},"allowCustomText":{"type":"boolean","description":"Whether a custom text answer is accepted.","example":false},"interactionType":{"type":"string","description":"The structured interaction type.","nullable":true,"example":"mcp_connection"},"connectorId":{"type":"string","description":"The connector that requires user action.","format":"uuid","nullable":true,"example":"7e376777-7834-4af6-9eb8-da065f568d30"},"connectionId":{"type":"string","description":"The connection that requires reauthorization.","format":"uuid","nullable":true,"example":"af18602d-c8aa-4f63-a21e-5a7f59b2412c"},"connectorName":{"type":"string","description":"The safe connector display name.","nullable":true,"example":"Client CRM"},"connectionAction":{"type":"string","description":"The enable or reconnect action.","nullable":true,"example":"reconnect"}},"additionalProperties":false,"description":"Describes a user action that must complete before an agent run can resume."},"ValidationErrorResponse":{"type":"object","properties":{"property":{"type":"string","description":"The name of the property that failed validation.","nullable":true,"example":"FirstName"},"message":{"type":"string","description":"The reason why this property failed validation.","nullable":true,"example":"FirstName is required."}},"additionalProperties":false,"description":"The validation error response."},"WorkspaceContextCatalogStatus":{"enum":["Pending","Ready","Failed"],"type":"string","description":"Describes the state of the derived workspace-context catalog."},"WorkspaceContextResponseModel":{"type":"object","properties":{"rawContentHtml":{"type":"string","description":"The complete workspace context as rich-text HTML.","nullable":true},"catalogStatus":{"$ref":"#/components/schemas/WorkspaceContextCatalogStatus"},"updatedBy":{"type":"string","description":"The id of the user who last updated the context.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"When the context was last updated.","format":"date-time"},"sections":{"type":"array","items":{"$ref":"#/components/schemas/WorkspaceContextSectionResponseModel"},"description":"The available catalog section summaries.","nullable":true}},"additionalProperties":false,"description":"Represents saved workspace context and its derived catalog state."},"WorkspaceContextSectionResponseModel":{"type":"object","properties":{"id":{"type":"string","description":"The section id used for on-demand loading.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"heading":{"type":"string","description":"The section heading.","nullable":true},"whenToLoadHint":{"type":"string","description":"The short hint that describes when to load the section.","nullable":true},"order":{"type":"integer","description":"The section order.","format":"int32"}},"additionalProperties":false,"description":"Represents one derived workspace-context catalog entry."},"Account":{"type":"object","properties":{"email":{"type":"string","description":"The email of the account.","format":"email","nullable":true,"example":"carla.creative@ncnstn.com"},"firstName":{"type":"string","description":"The first name of the account.","nullable":true,"example":"Carla"},"lastName":{"type":"string","description":"The last name of the account.","nullable":true,"example":"Creative"},"language":{"type":"string","description":"The language of the account, as a Language Culture Name (de-DE).","nullable":true,"example":"en-GB"},"timezone":{"type":"string","description":"The timezone of the account.\nThe format of the timezone is the IANA standard.","nullable":true,"example":"Europe/London"},"mfaEnabled":{"type":"boolean","description":"Whether MFA is enabled for the account."},"id":{"type":"string","description":"The id of the account.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"passwordIsAutoGenerated":{"type":"boolean","description":"Whether the password is generated by awork.","example":false},"emailConfirmed":{"type":"boolean","description":"Whether the email has been confirmed by the user."},"externalAccounts":{"type":"array","items":{"$ref":"#/components/schemas/ExternalAccount"},"description":"The list of connected social providers.","nullable":true},"mfaProviders":{"type":"array","items":{"type":"string"},"description":"The enabled MFA providers for the account.\nCurrently we support \"Email\" and \"Authenticator\".","nullable":true,"example":["Email","Authenticator"]},"passwordlessEnabled":{"type":"boolean","description":"Whether the account has passwordless login enabled."}},"additionalProperties":false,"description":"The account represents a unique user account within awork."},"AccountForm":{"type":"object","properties":{"email":{"type":"string","description":"The email of the account.","format":"email","nullable":true,"example":"carla.creative@ncnstn.com"},"firstName":{"type":"string","description":"The first name of the account.","nullable":true,"example":"Carla"},"lastName":{"type":"string","description":"The last name of the account.","nullable":true,"example":"Creative"},"language":{"type":"string","description":"The language of the account, as a Language Culture Name (de-DE).","nullable":true,"example":"en-GB"},"timezone":{"type":"string","description":"The timezone of the account.\nThe format of the timezone is the IANA standard.","nullable":true,"example":"Europe/London"},"mfaEnabled":{"type":"boolean","description":"Whether MFA is enabled for the account."}},"additionalProperties":false,"description":"The POST/PUT model for an account."},"Algorithm":{"enum":[-65535,-259,-258,-257,-47,-39,-38,-37,-36,-35,-8,-7],"type":"integer","format":"int32"},"AssertionOptions":{"type":"object","properties":{"challenge":{"type":"string","format":"byte","nullable":true},"timeout":{"type":"integer","format":"int64"},"rpId":{"type":"string","nullable":true},"allowCredentials":{"type":"array","items":{"$ref":"#/components/schemas/PublicKeyCredentialDescriptor"},"nullable":true},"userVerification":{"$ref":"#/components/schemas/UserVerificationRequirement"},"hints":{"type":"array","items":{"$ref":"#/components/schemas/PublicKeyCredentialHint"},"nullable":true},"extensions":{"$ref":"#/components/schemas/AuthenticationExtensionsClientInputs"}},"additionalProperties":false},"AssertionResponse":{"required":["authenticatorData","clientDataJSON","signature"],"type":"object","properties":{"authenticatorData":{"type":"string","format":"byte","nullable":true},"signature":{"type":"string","format":"byte","nullable":true},"clientDataJSON":{"type":"string","format":"byte","nullable":true},"userHandle":{"type":"string","format":"byte","nullable":true}},"additionalProperties":false},"AttestationConveyancePreference":{"enum":["none","indirect","direct","enterprise"],"type":"string"},"AttestationResponse":{"required":["attestationObject","clientDataJSON","transports"],"type":"object","properties":{"attestationObject":{"type":"string","format":"byte","nullable":true},"clientDataJSON":{"type":"string","format":"byte","nullable":true},"transports":{"type":"array","items":{"$ref":"#/components/schemas/AuthenticatorTransport"}}},"additionalProperties":false},"AttestationStatementFormatIdentifier":{"enum":["packed","tpm","android-key","android-safetynet","fido-u2f","apple","none"],"type":"string"},"AuthenticationExtensionsClientInputs":{"type":"object","properties":{"example.extension.bool":{"type":"boolean","nullable":true},"exts":{"type":"boolean","nullable":true},"uvm":{"type":"boolean","nullable":true,"writeOnly":true},"credProps":{"type":"boolean","nullable":true},"prf":{"$ref":"#/components/schemas/AuthenticationExtensionsPRFInputs"},"largeBlob":{"$ref":"#/components/schemas/AuthenticationExtensionsLargeBlobInputs"},"credentialProtectionPolicy":{"$ref":"#/components/schemas/CredentialProtectionPolicy"},"enforceCredentialProtectionPolicy":{"type":"boolean","nullable":true}},"additionalProperties":false},"AuthenticationExtensionsClientOutputs":{"type":"object","properties":{"example.extension.bool":{"type":"boolean","nullable":true},"appid":{"type":"boolean"},"exts":{"type":"array","items":{"type":"string"},"nullable":true},"uvm":{"type":"array","items":{"type":"array","items":{"type":"integer","format":"int64"}},"nullable":true},"credProps":{"$ref":"#/components/schemas/CredentialPropertiesOutput"},"prf":{"$ref":"#/components/schemas/AuthenticationExtensionsPRFOutputs"},"largeBlob":{"$ref":"#/components/schemas/AuthenticationExtensionsLargeBlobOutputs"},"credProtect":{"$ref":"#/components/schemas/CredentialProtectionPolicy"}},"additionalProperties":false},"AuthenticationExtensionsLargeBlobInputs":{"type":"object","properties":{"support":{"$ref":"#/components/schemas/LargeBlobSupport"},"read":{"type":"boolean"},"write":{"type":"string","format":"byte","nullable":true}},"additionalProperties":false},"AuthenticationExtensionsLargeBlobOutputs":{"type":"object","properties":{"supported":{"type":"boolean"},"blob":{"type":"string","format":"byte","nullable":true},"written":{"type":"boolean"}},"additionalProperties":false},"AuthenticationExtensionsPRFInputs":{"type":"object","properties":{"eval":{"$ref":"#/components/schemas/AuthenticationExtensionsPRFValues"},"evalByCredential":{"$ref":"#/components/schemas/StringAuthenticationExtensionsPRFValuesKeyValuePair"}},"additionalProperties":false},"AuthenticationExtensionsPRFOutputs":{"type":"object","properties":{"enabled":{"type":"boolean"},"results":{"$ref":"#/components/schemas/AuthenticationExtensionsPRFValues"}},"additionalProperties":false},"AuthenticationExtensionsPRFValues":{"required":["first"],"type":"object","properties":{"first":{"type":"string","format":"byte","nullable":true},"second":{"type":"string","format":"byte","nullable":true}},"additionalProperties":false},"AuthenticatorAssertionRawResponse":{"required":["clientExtensionResults","id","rawId","type"],"type":"object","properties":{"id":{"minLength":1,"type":"string"},"rawId":{"type":"string","format":"byte"},"response":{"$ref":"#/components/schemas/AssertionResponse"},"type":{"$ref":"#/components/schemas/PublicKeyCredentialType"},"extensions":{"$ref":"#/components/schemas/AuthenticationExtensionsClientOutputs"},"clientExtensionResults":{"$ref":"#/components/schemas/AuthenticationExtensionsClientOutputs"}},"additionalProperties":false},"AuthenticatorAttachment":{"enum":["platform","cross-platform"],"type":"string"},"AuthenticatorAttestationRawResponse":{"required":["clientExtensionResults","id","rawId","response","type"],"type":"object","properties":{"id":{"minLength":1,"type":"string"},"rawId":{"type":"string","format":"byte"},"type":{"$ref":"#/components/schemas/PublicKeyCredentialType"},"response":{"$ref":"#/components/schemas/AttestationResponse"},"extensions":{"$ref":"#/components/schemas/AuthenticationExtensionsClientOutputs"},"clientExtensionResults":{"$ref":"#/components/schemas/AuthenticationExtensionsClientOutputs"}},"additionalProperties":false},"AuthenticatorSelection":{"type":"object","properties":{"authenticatorAttachment":{"$ref":"#/components/schemas/AuthenticatorAttachment"},"residentKey":{"$ref":"#/components/schemas/ResidentKeyRequirement"},"requireResidentKey":{"type":"boolean","deprecated":true},"userVerification":{"$ref":"#/components/schemas/UserVerificationRequirement"}},"additionalProperties":false},"AuthenticatorTransport":{"enum":["usb","nfc","ble","smart-card","hybrid","internal"],"type":"string"},"AuthorizedClientApplication":{"type":"object","properties":{"clientId":{"type":"string","description":"The client application's public identifier.","nullable":true},"displayName":{"type":"string","description":"The client application's display name.","nullable":true},"scopes":{"type":"array","items":{"type":"string"},"description":"The granted OAuth scopes.","nullable":true},"authorizedOn":{"type":"string","description":"The date when the client was first authorized.","format":"date-time","nullable":true}},"additionalProperties":false,"description":"An OAuth client application authorized by the current account."},"AuthorizedClientApplicationRevocationResponse":{"type":"object","properties":{"revokedClientCount":{"type":"integer","description":"The number of client applications whose grants were revoked.","format":"int32"},"revokedRefreshTokenCount":{"type":"integer","description":"The number of refresh tokens marked as revoked.","format":"int64"}},"additionalProperties":false,"description":"The result of revoking OAuth client application access."},"ChangePasswordForm":{"type":"object","properties":{"currentPassword":{"type":"string","description":"The user's current password.","nullable":true,"example":"ThisIsTheOldP@ssword"},"newPassword":{"type":"string","description":"The user's new password.","nullable":true,"example":"ABr@ndNewP@ssword!"}},"additionalProperties":false},"ClientApplication":{"type":"object","properties":{"clientId":{"type":"string","description":"The client application's identifier.","nullable":true,"example":"integration"},"displayName":{"type":"string","description":"The client application's display name.","nullable":true,"example":"Awork integration"},"redirectUris":{"type":"array","items":{"type":"string"},"description":"The redirect URIs.","nullable":true,"example":["https://awork.com/callback"]},"isConfidential":{"type":"boolean","description":"Indicates whether the client application is confidential.\nBackend integrations are considered confidential as the secret is never shipped to a user, while web apps or CLI integrations are not."},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-14T16:40:40.100Z"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-25T11:15:00.100Z"}},"additionalProperties":false,"description":"The client application is required for the OAuth flow."},"ClientApplicationApiKeyForm":{"type":"object","properties":{"apiUserId":{"type":"string","description":"The API user to generate the key for.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"The model to generate an API key for a client application."},"ClientApplicationCreateForm":{"type":"object","properties":{"clientId":{"type":"string","description":"The client application's identifier.","nullable":true,"example":"integration"},"displayName":{"type":"string","description":"The client application's display name.","nullable":true,"example":"Awork integration"},"redirectUris":{"type":"array","items":{"type":"string"},"description":"The redirect URIs.","nullable":true,"example":["https://awork.com/callback"]},"isConfidential":{"type":"boolean","description":"Indicates whether the client application is confidential.\nBackend integrations are considered confidential as the secret is never shipped to a user, while web apps or CLI integrations are not."}},"additionalProperties":false,"description":"The client application is required for the OAuth flow."},"ClientApplicationCreateResponse":{"type":"object","properties":{"clientId":{"type":"string","description":"The client application's identifier.","nullable":true,"example":"integration"},"displayName":{"type":"string","description":"The client application's display name.","nullable":true,"example":"Awork integration"},"redirectUris":{"type":"array","items":{"type":"string"},"description":"The redirect URIs.","nullable":true,"example":["https://awork.com/callback"]},"isConfidential":{"type":"boolean","description":"Indicates whether the client application is confidential.\nBackend integrations are considered confidential as the secret is never shipped to a user, while web apps or CLI integrations are not."},"clientSecret":{"type":"string","description":"The client application's secret.","nullable":true,"example":"$ecret"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-14T16:45:07.100Z"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-04-22T11:00:04.100Z"}},"additionalProperties":false,"description":"The client application is required for the OAuth flow."},"ClientApplicationGeneratePasswordResponse":{"type":"object","properties":{"clientSecret":{"type":"string","description":"The client application's new secret.","nullable":true,"example":"A$ecret!"}},"additionalProperties":false,"description":"The client application is required for the OAuth flow."},"ClientApplicationUpdateForm":{"type":"object","properties":{"displayName":{"type":"string","description":"The client application's display name.","nullable":true,"example":"Awork integration"},"redirectUris":{"type":"array","items":{"type":"string"},"description":"The redirect URIs.","nullable":true,"example":["https://awork.com/"]}},"additionalProperties":false,"description":"The model to update a client application."},"ConfigureMFAModel":{"type":"object","properties":{"enableMFA":{"type":"boolean","description":"Whether to enable MFA for the account."},"enableAuthenticator":{"type":"boolean","description":"Whether to enable an authenticator app as an MFA provider.\nIf true, the response returns a URI for a QR code to scan with an authenticator app."}},"additionalProperties":false,"description":"The model to configure MFA."},"ConfigureMFAResponse":{"type":"object","properties":{"mfaEnabled":{"type":"boolean","description":"Whether MFA is enabled."},"providers":{"type":"array","items":{"type":"string"},"description":"The configured MFA providers.","nullable":true,"example":["Email","Authenticator"]},"authenticatorUrl":{"type":"string","description":"The authenticator URL.\nThis URL can be used to generate a QR code that can be scanned by an authenticator app.","nullable":true,"example":"authenticator_url"}},"additionalProperties":false,"description":"The response when configuring MFA."},"CredentialCreateOptions":{"required":["challenge","pubKeyCredParams","rp","user"],"type":"object","properties":{"rp":{"$ref":"#/components/schemas/PublicKeyCredentialRpEntity"},"user":{"$ref":"#/components/schemas/Fido2User"},"challenge":{"type":"string","format":"byte","nullable":true},"pubKeyCredParams":{"type":"array","items":{"$ref":"#/components/schemas/PubKeyCredParam"},"nullable":true},"timeout":{"type":"integer","format":"int64"},"attestation":{"$ref":"#/components/schemas/AttestationConveyancePreference"},"attestationFormats":{"type":"array","items":{"$ref":"#/components/schemas/AttestationStatementFormatIdentifier"},"nullable":true},"authenticatorSelection":{"$ref":"#/components/schemas/AuthenticatorSelection"},"hints":{"type":"array","items":{"$ref":"#/components/schemas/PublicKeyCredentialHint"},"nullable":true},"excludeCredentials":{"type":"array","items":{"$ref":"#/components/schemas/PublicKeyCredentialDescriptor"},"nullable":true},"extensions":{"$ref":"#/components/schemas/AuthenticationExtensionsClientInputs"}},"additionalProperties":false},"CredentialPropertiesOutput":{"type":"object","properties":{"rk":{"type":"boolean"},"authenticatorDisplayName":{"type":"string","nullable":true}},"additionalProperties":false},"CredentialProtectionPolicy":{"enum":["userVerificationOptional","userVerificationOptionalWithCredentialIDList","userVerificationRequired"],"type":"string"},"DynamicClientRegistrationEndpointRequest":{"type":"object","properties":{"redirect_uris":{"type":"array","items":{"type":"string"},"nullable":true},"client_name":{"type":"string","nullable":true},"token_endpoint_auth_method":{"type":"string","nullable":true},"grant_types":{"type":"array","items":{"type":"string"},"nullable":true},"response_types":{"type":"array","items":{"type":"string"},"nullable":true},"scope":{"type":"string","nullable":true},"application_type":{"type":"string","nullable":true},"contacts":{"type":"array","items":{"type":"string"},"nullable":true},"logo_uri":{"type":"string","nullable":true},"client_uri":{"type":"string","nullable":true},"policy_uri":{"type":"string","nullable":true},"tos_uri":{"type":"string","nullable":true},"software_id":{"type":"string","nullable":true},"software_version":{"type":"string","nullable":true}},"additionalProperties":false},"DynamicClientRegistrationResponse":{"type":"object","properties":{"redirect_uris":{"type":"array","items":{"type":"string"},"description":"Array of redirection URI strings for use in redirect-based flows.","nullable":true,"example":["https://app.ncnstn.com/oauth/callback","https://app.ncnstn.com/oauth/callback-2"]},"client_name":{"type":"string","description":"Human-readable name of the client to be presented to the end-user.","nullable":true,"example":"NCNSTN Integration"},"token_endpoint_auth_method":{"type":"string","description":"Requested authentication method for the token endpoint.","nullable":true,"example":"client_secret_basic"},"grant_types":{"type":"array","items":{"type":"string"},"description":"Array of OAuth 2.0 grant types that the client will use.","nullable":true,"example":["authorization_code","refresh_token"]},"response_types":{"type":"array","items":{"type":"string"},"description":"Array of OAuth 2.0 response types that the client will use.","nullable":true,"example":["code"]},"scope":{"type":"string","description":"Space-delimited list of OAuth 2.0 scope values.","nullable":true,"example":"openid profile email offline_access"},"application_type":{"type":"string","description":"Kind of the application.","nullable":true,"example":"web"},"contacts":{"type":"array","items":{"type":"string"},"description":"Array of e-mail addresses of people responsible for this client.","nullable":true,"example":["carla@ncnstn.com","dev@ncnstn.com"]},"logo_uri":{"type":"string","description":"URL that references a logo for the client application.","nullable":true,"example":"https://app.ncnstn.com/logo.png"},"client_uri":{"type":"string","description":"URL of the home page of the client application.","nullable":true,"example":"https://app.ncnstn.com"},"policy_uri":{"type":"string","description":"URL that the client provides to the end-user with information about how the client uses their data.","nullable":true,"example":"https://app.ncnstn.com/privacy"},"tos_uri":{"type":"string","description":"URL that the client provides to the end-user to read about the client's terms of service.","nullable":true,"example":"https://app.ncnstn.com/terms"},"software_id":{"type":"string","description":"A unique identifier string (e.g., a Universally Unique Identifier (UUID)) assigned by the client developer.","nullable":true,"example":"a3f8c3a1-6f1b-4ac7-8cb3-9d4c2b2b8f9f"},"software_version":{"type":"string","description":"A version identifier string for the client software identified by software_id.","nullable":true,"example":"1.0.0"},"client_id":{"type":"string","description":"OAuth 2.0 client identifier string.","nullable":true,"example":"dcr_ncnstn_integration_123456"},"client_secret":{"type":"string","description":"OAuth 2.0 client secret string. Only provided for confidential clients.","nullable":true,"example":"G7g9jK8mP2nR4sT6vY8xZ0wQ"},"client_secret_expires_at":{"type":"integer","description":"Time at which the client secret will expire (0 if it doesn't expire).","format":"int64","example":0},"client_id_issued_at":{"type":"integer","description":"Time at which the client identifier was issued as seconds since Unix epoch.","format":"int64","example":1617187200}},"additionalProperties":false,"description":"OAuth 2.0 Dynamic Client Registration Response as defined in RFC 7591.\nInherits all request properties and adds response-specific fields."},"EmailVerificationForm":{"type":"object","properties":{"email":{"type":"string","description":"The email of the account.","nullable":true,"example":"carla.creative@ncnstn.com"},"urlParams":{"type":"string","description":"The URL params to add to the link for verification.\nUsed for user tracking.","nullable":true,"example":"utm=true&campaign=email"},"useTrialStartSetPasswordEmail":{"type":"boolean","description":"Whether auto-generated-password accounts should receive trial-start copy in the set-password email."}},"additionalProperties":false,"description":"The verification email form."},"ExternalAccount":{"type":"object","properties":{"provider":{"type":"string","description":"The name of the external provider.","nullable":true,"example":"google"},"externalUserId":{"type":"string","description":"The id of the user for the external account.","nullable":true,"example":"11112222333344445555"}},"additionalProperties":false},"Fido2User":{"type":"object","properties":{"name":{"type":"string","nullable":true},"id":{"type":"string","format":"byte","nullable":true},"displayName":{"type":"string","nullable":true}},"additionalProperties":false},"IsFreeMailModel":{"required":["email"],"type":"object","properties":{"email":{"minLength":1,"type":"string","description":"The email to validate."}},"additionalProperties":false},"LargeBlobSupport":{"enum":["required","preferred"],"type":"string"},"MFAResponse":{"type":"object","properties":{"mfaEnabled":{"type":"boolean","description":"Whether MFA is enabled."},"providers":{"type":"array","items":{"type":"string"},"description":"The configured MFA providers.","nullable":true,"example":["Email","Authenticator"]}},"additionalProperties":false,"description":"The response when configuring MFA."},"PasswordForgottenModel":{"type":"object","properties":{"email":{"type":"string","description":"The email address of the accounts that wants to reset the password.","nullable":true,"example":"carla.creative@ncnstn.com"}},"additionalProperties":false},"PasswordForm":{"type":"object","properties":{"password":{"type":"string","description":"The password to validate.","nullable":true,"example":"AC0mplexP@ssw0rd"}},"additionalProperties":false},"PasswordResetModel":{"type":"object","properties":{"email":{"type":"string","description":"The email of the account.","nullable":true,"example":"carla.creative@ncnstn.com"},"password":{"type":"string","description":"The new password.","nullable":true,"example":"NewP@ssw0rd"},"code":{"type":"string","description":"The password reset code.","nullable":true,"example":"123456"}},"additionalProperties":false,"description":"The model for a password reset request."},"PasswordlessLoginResult":{"type":"object","properties":{"credentialId":{"type":"string","format":"byte","nullable":true},"signCount":{"type":"integer","format":"int32"},"isBackedUp":{"type":"boolean"},"email":{"type":"string","description":"The email of the user.","nullable":true,"example":"carla@ncnstn.com"},"token":{"type":"string","description":"The token used to log the user in.","nullable":true,"example":"097654"}},"additionalProperties":false,"description":"The result of a passwordless login."},"PubKeyCredParam":{"type":"object","properties":{"type":{"$ref":"#/components/schemas/PublicKeyCredentialType"},"alg":{"$ref":"#/components/schemas/Algorithm"}},"additionalProperties":false},"PublicKeyCredentialDescriptor":{"type":"object","properties":{"type":{"$ref":"#/components/schemas/PublicKeyCredentialType"},"id":{"type":"string","format":"byte","nullable":true},"transports":{"type":"array","items":{"$ref":"#/components/schemas/AuthenticatorTransport"},"nullable":true}},"additionalProperties":false},"PublicKeyCredentialHint":{"enum":["security-key","client-device","hybrid"],"type":"string"},"PublicKeyCredentialRpEntity":{"type":"object","properties":{"id":{"type":"string","nullable":true},"name":{"type":"string","nullable":true},"icon":{"type":"string","nullable":true}},"additionalProperties":false},"PublicKeyCredentialType":{"enum":["public-key","invalid"],"type":"string"},"RegeneratePasswortResetTokenResponse":{"type":"object","properties":{"resetToken":{"type":"string","nullable":true}},"additionalProperties":false},"RegisterRequest":{"type":"object","properties":{"email":{"type":"string","description":"The email of the account.","nullable":true,"example":"carla.creative@ncnstn.com"},"firstName":{"type":"string","description":"The first name of the account.","nullable":true,"example":"Carla"},"lastName":{"type":"string","description":"The last name of the account.","nullable":true,"example":"Creative"},"password":{"type":"string","description":"The password to set.\nIf empty, we will generate one and return the password reset code.","nullable":true,"example":"AP@ssword!"},"language":{"type":"string","description":"The language of the account, as a Language Culture Name (de-DE).","nullable":true,"example":"en-GB"},"timezone":{"type":"string","description":"The timezone of the account.\nThe format of the timezone must be in the IANA standard.","nullable":true,"example":"Europe/London"},"externalLoginProvider":{"type":"string","description":"The provider of the external login.\nCan be 'google'.","nullable":true,"example":"google"},"externalUserId":{"type":"string","description":"The id of the user from the external login provider.","nullable":true,"example":"11112222333344445555"},"invitationFlow":{"type":"string","description":"The current invitation flow.\nUse 'invite' for an invitation from a system admin,\n'new_user_new_workspace' for an invitation when creating a workspace for a new user or\n'existing_user_new_workspace' when creating a workspace for an existing user.","nullable":true,"example":"invite"}},"additionalProperties":false},"RegisterResponse":{"type":"object","properties":{"accountId":{"type":"string","description":"The id of the created accounts.","nullable":true,"example":"55F42328-1D60-43F6-A249-9CE4BE69256C"},"passwordResetCode":{"type":"string","description":"The password reset code in case the password was not set.","nullable":true,"example":"12345"}},"additionalProperties":false,"description":"The registration response."},"RegisteredPublicKeyCredential":{"type":"object","properties":{"type":{"$ref":"#/components/schemas/PublicKeyCredentialType"},"id":{"type":"string","format":"byte","nullable":true},"publicKey":{"type":"string","format":"byte","nullable":true},"transports":{"type":"array","items":{"$ref":"#/components/schemas/AuthenticatorTransport"},"nullable":true},"signCount":{"type":"integer","format":"int32"},"isBackupEligible":{"type":"boolean"},"isBackedUp":{"type":"boolean"},"aaGuid":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"user":{"$ref":"#/components/schemas/Fido2User"},"attestationFormat":{"type":"string","nullable":true},"attestationObject":{"type":"string","format":"byte","nullable":true},"attestationClientDataJson":{"type":"string","format":"byte","nullable":true}},"additionalProperties":false},"ResidentKeyRequirement":{"enum":["required","preferred","discouraged"],"type":"string"},"SelectListGroup":{"type":"object","properties":{"disabled":{"type":"boolean"},"name":{"type":"string","nullable":true}},"additionalProperties":false},"SelectListItem":{"type":"object","properties":{"disabled":{"type":"boolean"},"group":{"$ref":"#/components/schemas/SelectListGroup"},"selected":{"type":"boolean"},"text":{"type":"string","nullable":true},"value":{"type":"string","nullable":true}},"additionalProperties":false},"SelectProjectViewModel":{"required":["projectId"],"type":"object","properties":{"applicationName":{"type":"string","nullable":true},"clientId":{"type":"string","nullable":true},"query":{"type":"string","nullable":true},"responseType":{"type":"string","nullable":true},"redirectUri":{"type":"string","nullable":true},"state":{"type":"string","nullable":true},"baseUrl":{"type":"string","nullable":true},"endpoint":{"type":"string","nullable":true},"projectId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"projects":{"type":"array","items":{"$ref":"#/components/schemas/SelectListItem"},"nullable":true},"workspaceId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"systemHostname":{"type":"string","nullable":true},"userName":{"type":"string","nullable":true}},"additionalProperties":false},"SendMFATokenModel":{"type":"object","properties":{"email":{"type":"string","description":"The email of the account.","nullable":true,"example":"carla.creative@ncnstn.com"},"provider":{"type":"string","description":"The provider to use to send the MFA token.","nullable":true,"example":"Email"}},"additionalProperties":false,"description":"The model to send an MFA token."},"SocialConnectForm":{"type":"object","properties":{"provider":{"type":"string","description":"The provider the awork account should connect to.\nFor example 'google'.","nullable":true,"example":"google"},"code":{"type":"string","description":"The authorization code from the provider.\nRequired if Id is not provided.","nullable":true,"example":"4/P7q7W91a-oMsCeLvIaQm6bTrgtp7"},"id":{"type":"string","description":"The unique identifier for the user.\nRequired if Code is not provided.","nullable":true,"example":"123456789"}},"additionalProperties":false},"SocialDisconnectForm":{"type":"object","properties":{"provider":{"type":"string","description":"The provider the awork account should connect to.\nFor example 'google'.","nullable":true,"example":"google"}},"additionalProperties":false},"StringAuthenticationExtensionsPRFValuesKeyValuePair":{"type":"object","properties":{"key":{"type":"string","nullable":true},"value":{"$ref":"#/components/schemas/AuthenticationExtensionsPRFValues"}},"additionalProperties":false},"SuccessViewModel":{"type":"object","properties":{"message":{"type":"string","nullable":true}},"additionalProperties":false},"TokenResponse":{"type":"object","properties":{"token_type":{"type":"string","description":"The type of the token, typically 'Bearer'.","nullable":true,"example":"Bearer"},"expires_in":{"type":"integer","description":"The expiration date of the access token, in seconds.","format":"int64","example":1647274587},"access_token":{"type":"string","description":"The access token.","nullable":true,"example":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."},"refresh_token":{"type":"string","description":"The refresh token to get a new access token.","nullable":true,"example":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."}},"additionalProperties":false,"description":"The token response contains the access and refresh tokens."},"UserVerificationRequirement":{"enum":["required","preferred","discouraged"],"type":"string"},"ValidateAccount":{"required":["value"],"type":"object","properties":{"value":{"minLength":1,"type":"string","description":"The value to validate.\nUsually the obfuscated account email.","example":"QWxhZGRpbjpvcGVuIHNlc2FtZQ=="}},"additionalProperties":false,"description":"The model to validate the account.\nThis is used to check if an account exists without revealing it to to unauthenticted users."},"ValidateMFATokenModel":{"type":"object","properties":{"email":{"type":"string","description":"The email of the account.","nullable":true,"example":"carla.creative@ncnstn.com"},"provider":{"type":"string","description":"The provider that was used to acquire the MFA token.","nullable":true,"example":"Email"},"token":{"type":"string","description":"The token that was acquired from the provider.","nullable":true,"example":"012345"}},"additionalProperties":false,"description":"The model to validate an MFA token."},"ValidatePasswordResetModel":{"type":"object","properties":{"email":{"type":"string","description":"The email of the account.","nullable":true,"example":"carla.creative@ncnstn.com"},"code":{"type":"string","description":"The password reset code.","nullable":true,"example":"123456"}},"additionalProperties":false,"description":"The model to validate a password reset request."},"VerifyEmailForm":{"type":"object","properties":{"email":{"type":"string","description":"The email of the account.","nullable":true,"example":"carla.creative@ncnstn.com"},"code":{"type":"string","description":"The code to verify the email.","nullable":true,"example":"097654"}},"additionalProperties":false,"description":"The verify email form."},"Absence":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The id of the user to create the absence for.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"startOn":{"type":"string","description":"The start time of the absence.","format":"date-time","example":"2022-03-01T00:00:00Z"},"endOn":{"type":"string","description":"The end time of the absence.","format":"date-time","example":"2022-03-03T00:00:00Z"},"description":{"type":"string","description":"The reason for the absence.","nullable":true,"example":"Workation by the beach"},"externalProvider":{"type":"string","description":"The external provider for the absence.\nIf this value is set, the absence is treated as externally managed and therefore read-only in awork.\nThis means users in awork can no longer edit or delete the absence.","nullable":true},"deletedOn":{"type":"string","description":"The date the absence was deleted.","format":"date-time","nullable":true},"deletedBy":{"type":"string","description":"The id of the user that deleted the absence.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"isReadOnly":{"type":"boolean","description":"If it's true it means that this Absence is read-only and cannot be edited/deleted by the user.","readOnly":true},"isHalfDayOnStart":{"type":"boolean","description":"If it's true and it's a single day absence means that the absence is for the first half of the workday.\nIf it's a multi day absence it started on the second half of the first day of the absence period.","readOnly":true},"isHalfDayOnEnd":{"type":"boolean","description":"If it's true and it's a single day absence means that the absence is for the second half of the workday.\nIf it's a multi day absence it ended on the first half of the last day of the absence period.","readOnly":true}},"additionalProperties":false},"AbsenceForm":{"required":["userId"],"type":"object","properties":{"userId":{"type":"string","description":"The id of the user to create the absence for.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"startOn":{"type":"string","description":"The start time of the absence.\nThe time of the date will be ignored.","format":"date-time","example":"2022-03-01T00:00:00Z"},"endOn":{"type":"string","description":"The end time of the absence.\nThe time of the date will be ignored.","format":"date-time","example":"2022-03-03T00:00:00Z"},"description":{"maxLength":1000,"minLength":0,"type":"string","description":"The reason for the absence.","nullable":true,"example":"Workation by the beach"},"externalProvider":{"maxLength":100,"minLength":0,"type":"string","description":"The external provider for the absence.\nIf this value is set, the absence is treated as externally managed and therefore read-only in awork.\nThis means users in awork can no longer edit or delete the absence.","nullable":true},"isHalfDayOnStart":{"type":"boolean","description":"If it's true and it's a single day absence means that the absence to create is for the first half of the workday.\nIf it's a multi day absence it started on the second half of the first day of the absence period."},"isHalfDayOnEnd":{"type":"boolean","description":"If it's true and it's a single day absence means that the absence to create is for the second half of the workday.\nIf it's a multi day absence it ended on the first half of the last day of the absence period."},"isSingleDayAbsence":{"type":"boolean","readOnly":true}},"additionalProperties":false},"AbsenceRegionCountry":{"type":"object","properties":{"code":{"type":"string","description":"The ISO-3166-1 alpha-2 country code.","nullable":true,"example":"DE"},"name":{"type":"string","description":"The name of the country.","nullable":true,"example":"Germany"}},"additionalProperties":false},"AbsenceRegionForm":{"required":["countryCode","name"],"type":"object","properties":{"name":{"maxLength":255,"minLength":1,"type":"string","description":"The name of the absence region. Must be unique.","example":"Hamburg"},"countryCode":{"maxLength":2,"minLength":1,"type":"string","description":"The ISO 3166-1 alpha-2 country code (e.g. 'DE' for Germany).","example":"DE"},"locationCode":{"maxLength":25,"type":"string","description":"The (optional) location code of the absence region in ISO 3166-2 format (e.g. 'DE-HH' for Hamburg, Germany).","nullable":true,"example":"DE-HH"},"isDefault":{"type":"boolean","description":"Indicates whether the absence region is the default absence region.\nA default absence region is automatically assigned to new employees.","example":true}},"additionalProperties":false},"AbsenceRegionLocation":{"type":"object","properties":{"code":{"type":"string","description":"The ISO-3166-2 location code.","nullable":true,"example":"DE-HH"},"name":{"type":"string","description":"The name of the location.","nullable":true,"example":"Hamburg"}},"additionalProperties":false},"AbsenceRegionModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the absence region, as specified by the user.\nIt must be unique within the workspace.","nullable":true,"example":"Hamburg"},"countryCode":{"type":"string","description":"The country code of the absence region.\nIt must be a valid ISO 3166-1 alpha-2 country code.","nullable":true,"example":"DE"},"country":{"type":"string","description":"The english name of the country.","nullable":true,"example":"Germany"},"locationCode":{"type":"string","description":"The location code of the absence region. It should be a valid ISO 3166-2 country subdivision code.","nullable":true,"example":"DE-HH"},"location":{"type":"string","description":"The name of the location.\nIt will always be in the related country's language.","nullable":true,"example":"Hamburg"},"isDefault":{"type":"boolean","description":"Indicates whether the absence region is the default absence region.\nAny new user will be assigned to the default absence region.","example":true},"numberOfPublicHolidays":{"type":"integer","description":"The number of public holidays in the absence region.","format":"int32","example":10},"assignedUsers":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The list of user ids assigned to the absence region.","nullable":true,"example":["7b356284-d22b-4f74-980d-0a548d3b6318","b37f07dd-6644-4271-9c8a-bb700cc21b63"]}},"additionalProperties":false},"AbsenceRegionModelWithHolidayDetails":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the absence region, as specified by the user.\nIt must be unique within the workspace.","nullable":true,"example":"Hamburg"},"countryCode":{"type":"string","description":"The country code of the absence region.\nIt must be a valid ISO 3166-1 alpha-2 country code.","nullable":true,"example":"DE"},"country":{"type":"string","description":"The english name of the country.","nullable":true,"example":"Germany"},"locationCode":{"type":"string","description":"The location code of the absence region. It should be a valid ISO 3166-2 country subdivision code.","nullable":true,"example":"DE-HH"},"location":{"type":"string","description":"The name of the location.\nIt will always be in the related country's language.","nullable":true,"example":"Hamburg"},"isDefault":{"type":"boolean","description":"Indicates whether the absence region is the default absence region.\nAny new user will be assigned to the default absence region.","example":true},"numberOfPublicHolidays":{"type":"integer","description":"The number of public holidays in the absence region.","format":"int32","example":10},"assignedUsers":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The list of user ids assigned to the absence region.","nullable":true,"example":["7b356284-d22b-4f74-980d-0a548d3b6318","b37f07dd-6644-4271-9c8a-bb700cc21b63"]},"publicHolidays":{"type":"array","items":{"$ref":"#/components/schemas/MinimalPublicHoliday"},"description":"The list of public holidays in the absence region.","nullable":true}},"additionalProperties":false},"AcceptInviteForm":{"required":["externalWorkspaceId","inviteCode"],"type":"object","properties":{"inviteCode":{"minLength":1,"type":"string","description":"The invite code that was sent to the user."},"externalWorkspaceId":{"type":"string","description":"The workspace id that the project will be shared to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"AddTaskBundleForm":{"type":"object","properties":{"taskBundleId":{"type":"string","description":"The id of the task bundle to add to the entity.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"defaultTaskListIdForEmails":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"referenceDateType":{"enum":["today","start","end","custom"],"type":"string","description":"(optional, default = TODAY) Defines the starting date from which the reference date is calculated.\nThe reference date is the date from which the Start/DueOn date of a task is calculated, based on the ReferenceDateAnchor.","nullable":true},"referenceDateAnchor":{"enum":["starts_on_reference_date","ends_on_reference_date"],"type":"string","description":"(optional, default = START) Defines what the reference date represents for the schedule (start of first task or end of last task).","nullable":true},"customReferenceDate":{"type":"string","description":"(optional) The custom reference date when ReferenceDateType is set to 'custom'.","format":"date","nullable":true}},"additionalProperties":false},"AdjustProjectDatesForm":{"type":"object","properties":{"daysOffset":{"type":"integer","description":"The number of days (positive or negative) to add/remove to the start/end dates of the project.","format":"int32"},"adjustTasks":{"type":"boolean","description":"If true, adjust the start/end dates of the tasks related to the project."},"adjustDatesOfDoneTasks":{"type":"boolean","description":"If true and Awork.Core.Service.Feature.Projects.Projects.Models.AdjustProjectDatesForm.AdjustTasks is true, include the done tasks in the adjustment.","nullable":true},"adjustBookings":{"type":"boolean","description":"If true, adjust the start/end dates of the timebookings related to the project."},"adjustMilestones":{"type":"boolean","description":"If true, adjust the start/end dates of the milestones related to the project."}},"additionalProperties":false,"description":"Form to specify the options for adjusting the start/end dates of a project and related entities."},"AggregatedBillableDuration":{"type":"object","properties":{"taskId":{"type":"string","description":"The id of the task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"billableDuration":{"type":"integer","description":"The total billable duration of time tracked on the task in seconds.","format":"int32"},"billedDuration":{"type":"integer","description":"The total billed duration of time tracked on the task in seconds.","format":"int32"}},"additionalProperties":false},"AggregatedTimes":{"type":"object","properties":{"date":{"type":"string","description":"The date of the aggregated times in UTC.\nIf the AggregatedBy is monthly, the day is set to 1.","format":"date-time","readOnly":true,"example":"2024-01-31T00:00:00Z"},"totalDuration":{"type":"integer","description":"Summed duration of all times that day/month.","format":"int32"},"typeOfWorkId":{"type":"string","description":"The type of work the times are split by. Only set if SplitProperty is 'typeOfWork'.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"isBillable":{"type":"boolean","description":"The billability the times are split by. Only set if SplitProperty is 'billability'.","nullable":true},"isBilled":{"type":"boolean","description":"The billability the times are split by. Only set if SplitProperty is 'billability'.","nullable":true},"projectId":{"type":"string","description":"The project the times are split by. Only set if SplitProperty is 'project'.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The user the times are split by. Only set if SplitProperty is 'user'.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"companyId":{"type":"string","description":"The company the times are split by. Only set if SplitProperty is 'company'.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ApiUser":{"required":["name"],"type":"object","properties":{"name":{"minLength":1,"type":"string","description":"The name of the API user.","example":"awork Connector"},"roleId":{"type":"string","description":"The role the user should be in.\nIf no role is specified, the user will become an admin.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"clientId":{"type":"string","description":"The client id this API user belongs to.","nullable":true,"example":"awork-connector"},"id":{"type":"string","description":"The id of the API user.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this user was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this user.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date when this user was last updated.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who updated the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ApiUserForm":{"required":["name"],"type":"object","properties":{"name":{"minLength":1,"type":"string","description":"The name of the API user.","example":"awork Connector"},"roleId":{"type":"string","description":"The role the user should be in.\nIf no role is specified, the user will become an admin.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ApiUserPostForm":{"required":["name"],"type":"object","properties":{"name":{"minLength":1,"type":"string","description":"The name of the API user.","example":"awork Connector"},"roleId":{"type":"string","description":"The role the user should be in.\nIf no role is specified, the user will become an admin.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"clientId":{"type":"string","description":"The client id this API user belongs to.","nullable":true,"example":"awork-connector"}},"additionalProperties":false},"ApplyFilterForm":{"required":["filterDefinition"],"type":"object","properties":{"filterDefinition":{"$ref":"#/components/schemas/FilterDefinition"}},"additionalProperties":false},"ArchivedForm":{"type":"object","properties":{"isArchived":{"type":"boolean","description":"Flags the entity as archived.","example":true}},"additionalProperties":false},"ArchivedTaskListForm":{"type":"object","properties":{"isArchived":{"type":"boolean","description":"Flags the entity as archived.","example":true},"taskOperation":{"type":"string","description":"The operation for tasks which are not yet done.\nThe operation is required if you set a list to archived.\nCan be:\ntask-to-done: Set tasks to 'Done' or the first status of type 'done'.\ntask-remove: Remove tasks from this task list.\ntask-move: Move tasks to another list.\ntask-delete: Deletes the non done tasks.","nullable":true,"example":"task-to-done"},"taskListId":{"type":"string","description":"The id of the task list where all non done tasks should moved to.\nOnly necessary if TaskOperation is set to 'task-move'.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"deleteTimeTrackings":{"type":"boolean","description":"Set to true to delete also the related time trackings\nof all non done tasks.\nOnly necessary if TaskOperation is set to 'task-delete'.","nullable":true}},"additionalProperties":false},"AssignByEmailForm":{"required":["email","roleId","taskId"],"type":"object","properties":{"taskId":{"type":"string","description":"The id of the task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"email":{"minLength":1,"type":"string","description":"The email of the new user.","format":"email","example":"carla.creative@ncnstn.com"},"roleId":{"type":"string","description":"The id of the role to which the new user should be added.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"firstName":{"type":"string","description":"The first name of the user to be invited.","nullable":true,"example":"Carla"},"lastName":{"type":"string","description":"The last name of the user to be invited.","nullable":true,"example":"Creative"},"gender":{"enum":["male","female","other"],"type":"string","description":"The gender of the user to be invited.\nCould be 'male', 'female', 'other'","example":"female"}},"additionalProperties":false},"AssignUserToAbsenceRegionForm":{"type":"object","properties":{"regionId":{"type":"string","description":"The id of the region to assign the users to.\nIf null, removes the user from any absence region.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"AssignUsersToAbsenceRegionForm":{"required":["regionId","userIds"],"type":"object","properties":{"userIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The list of userIds to assign to that region.\nProviding an empty list of user ids will remove all users from the absence region.","example":["7b356284-d22b-4f74-980d-0a548d3b6318","b37f07dd-6644-4271-9c8a-bb700cc21b63"]},"regionId":{"type":"string","description":"The id of the region to assign the users to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"AutofillUser":{"type":"object","properties":{"firstName":{"maxLength":1000,"minLength":0,"type":"string","description":"The firstname of the user.","nullable":true,"example":"Carla"},"lastName":{"maxLength":1000,"minLength":0,"type":"string","description":"The lastname of the user.","nullable":true,"example":"Creative"},"gender":{"maxLength":25,"minLength":0,"type":"string","description":"The gender of the user.","nullable":true,"example":"female"}},"additionalProperties":false,"description":"Autofill user data derived from an email address."},"AutofixForm":{"type":"object","properties":{"operationId":{"type":"string","description":"A unique id to track the AI operation, provided by the client.\nWill be returned in the websocket events related to this async process.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"bookingIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The ids of the bookings to fix.","nullable":true},"taskIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The ids of the tasks to fix.","nullable":true}},"additionalProperties":false},"BaseTagModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the tag.","nullable":true,"example":"Design"},"color":{"type":"string","description":"The color of the tag.","nullable":true,"example":"purple"}},"additionalProperties":false,"description":"The model used for the API."},"BaseTagModelWithCount":{"type":"object","properties":{"name":{"type":"string","description":"The name of the tag.","nullable":true,"example":"Design"},"color":{"type":"string","description":"The color of the tag.","nullable":true,"example":"purple"},"usageCount":{"type":"integer","description":"The count how often a specific tag was already used.","format":"int32"}},"additionalProperties":false,"description":"The model used for the API."},"BatchOperationForm":{"required":["taskIds"],"type":"object","properties":{"taskIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The list of task ids to perform the batch operation on."},"newTaskListId":{"type":"string","description":"The id of the new task list. Needed if operation is 'movetotasklist'. Optional if operation is 'movetoproject'.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"removeFromCurrentList":{"type":"boolean","description":"Whether to remove the task from all its current task lists. Optional for operation 'movetotasklist'.","nullable":true},"newProjectId":{"type":"string","description":"The id of the new project to move the tasks to. Needed if operation is 'movetoproject'.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"newParentTaskId":{"type":"string","description":"The id of the task that will be the new parent of the selected tasks. Needed if operation is 'moveundertask'.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"newTaskStatusId":{"type":"string","description":"Deprecated for 'movetoproject': use TaskStatusMapping instead.\nThe id of the new task status id to change the tasks to. Needed if operation is 'movetoproject' or 'changetaskstatus'.","format":"uuid","nullable":true,"deprecated":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"taskStatusMapping":{"type":"array","items":{"$ref":"#/components/schemas/TaskStatusMappingForm"},"description":"The task status mapping from old task status to new task status. Optional for operation 'movetoproject'.","nullable":true},"newDueDate":{"type":"string","description":"The new due date for the tasks. Optional for operation 'setdates'. If not set, due and start date will be removed.","format":"date-time","nullable":true},"newStartDate":{"type":"string","description":"The new start date for the tasks. Optional for operation 'setdates'. Only gets used when NewDueDate is set.","format":"date-time","nullable":true},"removeDueDate":{"type":"boolean","description":"Whether to remove the due date. Required for operation 'setdates'.","nullable":true},"removeStartDate":{"type":"boolean","description":"Whether to remove the start date. Required for operation 'setdates'.","nullable":true},"tags":{"type":"array","items":{"$ref":"#/components/schemas/TagForm"},"description":"List of tags to add to the tasks. If task already has tag, tag is skipped.","nullable":true},"deleteTimeTrackings":{"type":"boolean","description":"Whether to delete the timetrackings of each task when deleting tasks. Optional for operation 'delete'.","nullable":true},"newTypeOfWorkId":{"type":"string","description":"The new type of work id for the tasks. Required if operation is 'changetypeofwork'.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"changeTimeEntries":{"type":"boolean","description":"Whether to change the type of work of the timeentries for each task aswell. Optional for operation 'changetypeofwork'.","nullable":true},"userIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Depending on the batch operation, it can be either the ids of the user to assign ('assignusers', required) or the ids of the user to remove ('unassignusers', optional, if not provided unassigns all users).","nullable":true},"removeOldAssignments":{"type":"boolean","description":"Whether to replace or add user assignments to a task that has users already assigned. Optional for operation\n'assignusers'.","nullable":true},"isPrio":{"type":"boolean","description":"Whether to set the tasks to be prio or not. Required for operation 'setprio'.","nullable":true},"daysOffset":{"type":"number","description":"In case of an adjust date operation, define the number (positive or negative) of days that will be added/subtracted to the task dates.\nIt can be a decimal number (fraction of day)","format":"double","nullable":true},"adjustSuccessors":{"type":"boolean","description":"If set to true, it will adjust the dates of successor tasks as well.","nullable":true},"adjustSubtasks":{"type":"boolean","description":"If set to true, it will adjust the dates of subtasks of selected tasks.\nIf set to false, it will only adjust the dates of the selected tasks.","nullable":true},"plannerData":{"$ref":"#/components/schemas/PlannerOperationData"}},"additionalProperties":false},"BillingStatusAvatar":{"type":"object","properties":{"status":{"type":"string","nullable":true}},"additionalProperties":false,"description":"Avatar for the billability status of a task."},"Break":{"type":"object","properties":{"startDate":{"type":"string","description":"The start date and time of the break in UTC. Required.","format":"date-time","example":"2022-01-01T12:00:00Z"},"duration":{"type":"integer","description":"The duration of the break in seconds. Required when the end date is set.\nWhen a time tracking is paused, it has at least one break with a start date and no duration or end date.","format":"int32","nullable":true,"example":3600},"endDate":{"type":"string","description":"The end date and time of the break in UTC. Required when the duration is set and the break is finished.","format":"date-time","nullable":true,"example":"2022-01-01T13:00:00Z"}},"additionalProperties":false,"description":"The break model. Shows when a time tracking was paused."},"ChangeProjectForm":{"type":"object","properties":{"projectId":{"type":"string","description":"The id of the project the task is assigned to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"taskStatusId":{"type":"string","description":"Deprecated: use TaskStatusMapping instead.\nThe id of the new status the task is assigned to.","format":"uuid","nullable":true,"deprecated":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"taskStatusMapping":{"type":"array","items":{"$ref":"#/components/schemas/TaskStatusMappingForm"},"description":"The task status mapping from old task status to new task status.","nullable":true}},"additionalProperties":false},"ChangeProjectFormForTaskLists":{"required":["projectId","taskStatusMapping"],"type":"object","properties":{"projectId":{"type":"string","description":"The id of the project the list will be moved to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"taskStatusMapping":{"type":"array","items":{"$ref":"#/components/schemas/TaskStatusMappingForm"},"description":"The task status mapping from old task status to new task status."}},"additionalProperties":false},"ChangeProjectStatusForm":{"required":["projectStatusId"],"type":"object","properties":{"projectStatusId":{"type":"string","description":"The id of the project status to change to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ChangeProjectTypeForm":{"required":["projectTypeId"],"type":"object","properties":{"projectTypeId":{"type":"string","description":"The id of the project type to change to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ChangeStatusForm":{"required":["statusId","taskId"],"type":"object","properties":{"taskId":{"type":"string","description":"The id of the task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"statusId":{"type":"string","description":"The id of the task status.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"order":{"type":"number","description":"The order of the status int the new task status.\nThe task is appended to the end if the Order is not set.","format":"double","nullable":true,"example":2}},"additionalProperties":false},"ChangeSubtaskTemplatesPostForm":{"type":"object","properties":{"taskTemplateId":{"type":"string","description":"The id of the task template.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"parentId":{"type":"string","description":"The id of the parent task template.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"order":{"type":"number","description":"The order the subtask template related to its parent template.","format":"double","nullable":true}},"additionalProperties":false},"ChangeSubtaskTemplatesToParentPostForm":{"type":"object","properties":{"taskListTemplateId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"order":{"type":"number","format":"double","nullable":true},"taskTemplateId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ChangeSubtasksPostForm":{"required":["parentId","taskId"],"type":"object","properties":{"taskId":{"type":"string","description":"The id of the task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"parentId":{"type":"string","description":"The id of the parent task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"order":{"type":"number","description":"The order the subtask related to its parent.","format":"double","nullable":true}},"additionalProperties":false},"ChangeSubtasksToParentPostForm":{"type":"object","properties":{"listId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"order":{"type":"number","format":"double","nullable":true},"taskId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ChangeTaskListsForm":{"required":["taskId","taskLists"],"type":"object","properties":{"taskId":{"type":"string","description":"The id of the task to change.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"taskLists":{"type":"array","items":{"$ref":"#/components/schemas/TaskListToTaskForm"},"description":"The lists the task should be moved to."}},"additionalProperties":false},"ChecklistItem":{"required":["name"],"type":"object","properties":{"isDone":{"type":"boolean","description":"Whether the checklist item is done."},"name":{"maxLength":25000,"minLength":0,"type":"string","description":"The name of the checklist item.","example":"Create YouTube Ads"},"order":{"type":"number","description":"The order of the checklist item.","format":"double","nullable":true,"example":4},"id":{"type":"string","description":"The id of the checklist item.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this checklist item was created.","format":"date-time","example":"2021-03-12T11:00:00Z"},"createdBy":{"type":"string","description":"The id of the user who created this checklist item.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this checklist item was last modified.","format":"date-time","example":"2021-03-14T11:31:00Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this checklist item.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"taskId":{"type":"string","description":"The id of the task this checklist item belongs to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ChecklistItemForm":{"required":["name"],"type":"object","properties":{"isDone":{"type":"boolean","description":"Whether the checklist item is done."},"name":{"maxLength":25000,"minLength":0,"type":"string","description":"The name of the checklist item.","example":"Create YouTube Ads"},"order":{"type":"number","description":"The order of the checklist item.","format":"double","nullable":true,"example":4}},"additionalProperties":false},"ChecklistItemTemplate":{"required":["name"],"type":"object","properties":{"isDone":{"type":"boolean","description":"Whether the checklist item is done."},"name":{"maxLength":25000,"minLength":0,"type":"string","description":"The name of the checklist item.","example":"Create YouTube Ads"},"order":{"type":"number","description":"The order of the checklist item.","format":"double","nullable":true,"example":4},"id":{"type":"string","description":"The id of the checklist item.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this checklist item was created.","format":"date-time","example":"2021-03-20T14:00:00Z"},"createdBy":{"type":"string","description":"The id of the user who created this checklist item.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this checklist item was last modified.","format":"date-time","example":"2021-03-20T17:03:00Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this check list.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"taskTemplateId":{"type":"string","description":"The id of the task template this checklist item belongs to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ChecklistItemTemplateForm":{"type":"object","properties":{"name":{"type":"string","description":"The name of the checklist item.","nullable":true,"example":"Sample Checklist template"},"order":{"type":"number","description":"The order of the checklist item.","format":"double","nullable":true,"example":2}},"additionalProperties":false},"Comment":{"type":"object","properties":{"id":{"type":"string","description":"The id of the comment.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"entityId":{"type":"string","description":"The id of the entity of the comment.\nRequired.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"entityType":{"type":"string","description":"The type of the entity of the comment.\nCan be \"projects\", \"tasks\".\nRequired.","nullable":true,"example":"tasks"},"entity":{"$ref":"#/components/schemas/IDefaultNameModel"},"project":{"$ref":"#/components/schemas/IDefaultNameModel"},"task":{"$ref":"#/components/schemas/IDefaultNameModel"},"document":{"$ref":"#/components/schemas/IDefaultNameModel"},"createdOn":{"type":"string","description":"The date this object was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this object.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"user":{"$ref":"#/components/schemas/ConnectedUserModel"},"agentId":{"type":"string","description":"The agent that visibly authored this comment, when it was created by an agent run.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"agentNameSnapshot":{"type":"string","description":"The agent name captured when the comment was created.","nullable":true},"updatedOn":{"type":"string","description":"The date this object was last modified.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who last modified this object.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"mentions":{"$ref":"#/components/schemas/Mentions"},"reactions":{"type":"array","items":{"$ref":"#/components/schemas/Reaction"},"description":"The reactions on a comment.","nullable":true},"formattedMessage":{"type":"string","description":"The formatted and proccessed version of the comment message. E.g. mentions are in a human readable format.\nThe formatted comment message is styled with html.","nullable":true,"example":"Hey team, the customer loved the latest designs!"},"plainFormattedMessage":{"type":"string","description":"The formatted and proccessed version of the comment message. E.g. mentions are in a human readable format.\nThe formatted comment message is not styled.","nullable":true,"example":"Hey team, the customer loved the latest designs!"},"resourceVersion":{"type":"integer","description":"The version of the entity, updated on every modification, to the ticks in UTC.\nNot identical to UpdatedOn.","format":"int64","readOnly":true,"example":637825154598057900},"message":{"type":"string","description":"The message of the comment.","nullable":true,"example":"Hey team, the customer loved the latest designs!"},"userId":{"type":"string","description":"The id of the user who created the comment.\nOptional. If not set, defaults to the current user.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"previews":{"type":"array","items":{"type":"string"},"description":"The preview URLs to show a preview for.","nullable":true,"example":["https://www.awork.com/en/blog/automatic-project-management/"]},"isHiddenForConnectUsers":{"type":"boolean","description":"True if the comment should be hidden to connect users."},"isResolved":{"type":"boolean","description":"Whether the comment has been resolved.\nOnly available for comments on documents.","nullable":true},"inReplyToCommentId":{"type":"string","description":"The parent comment this comment is a reply to.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"The comment model."},"CommentEventModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the comment.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"entityId":{"type":"string","description":"The id of the entity of the comment.\nRequired.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"entityType":{"type":"string","description":"The type of the entity of the comment.\nCan be \"projects\", \"tasks\".\nRequired.","nullable":true,"example":"tasks"},"entity":{"$ref":"#/components/schemas/IDefaultNameModel"},"project":{"$ref":"#/components/schemas/NestedProjectEventModel"},"task":{"$ref":"#/components/schemas/NestedTaskEventModel"},"document":{"$ref":"#/components/schemas/NestedDocumentEventModel"},"createdOn":{"type":"string","description":"The date this object was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this object.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"user":{"$ref":"#/components/schemas/ConnectedUserModel"},"agentId":{"type":"string","description":"The agent that visibly authored this comment, when it was created by an agent run.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"agentNameSnapshot":{"type":"string","description":"The agent name captured when the comment was created.","nullable":true},"updatedOn":{"type":"string","description":"The date this object was last modified.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who last modified this object.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"mentions":{"$ref":"#/components/schemas/Mentions"},"reactions":{"type":"array","items":{"$ref":"#/components/schemas/Reaction"},"description":"The reactions on a comment.","nullable":true},"formattedMessage":{"type":"string","description":"The formatted and proccessed version of the comment message. E.g. mentions are in a human readable format.\nThe formatted comment message is styled with html.","nullable":true,"example":"Hey team, the customer loved the latest designs!"},"plainFormattedMessage":{"type":"string","description":"The formatted and proccessed version of the comment message. E.g. mentions are in a human readable format.\nThe formatted comment message is not styled.","nullable":true,"example":"Hey team, the customer loved the latest designs!"},"resourceVersion":{"type":"integer","description":"The version of the entity, updated on every modification, to the ticks in UTC.\nNot identical to UpdatedOn.","format":"int64","readOnly":true,"example":637825154598057900},"message":{"type":"string","description":"The message of the comment.","nullable":true,"example":"Hey team, the customer loved the latest designs!"},"userId":{"type":"string","description":"The id of the user who created the comment.\nOptional. If not set, defaults to the current user.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"previews":{"type":"array","items":{"type":"string"},"description":"The preview URLs to show a preview for.","nullable":true,"example":["https://www.awork.com/en/blog/automatic-project-management/"]},"isHiddenForConnectUsers":{"type":"boolean","description":"True if the comment should be hidden to connect users."},"isResolved":{"type":"boolean","description":"Whether the comment has been resolved.\nOnly available for comments on documents.","nullable":true},"inReplyToCommentId":{"type":"string","description":"The parent comment this comment is a reply to.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"isExternal":{"type":"boolean"}},"additionalProperties":false},"CommentForm":{"required":["message"],"type":"object","properties":{"message":{"maxLength":65000,"minLength":1,"type":"string","description":"The message of the comment.","example":"Hey team, the customer loved the latest designs!"},"userId":{"type":"string","description":"The id of the user who created the comment.\nOptional. If not set, defaults to the current user.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"previews":{"type":"array","items":{"type":"string"},"description":"The preview URLs to show a preview for.","nullable":true,"example":["https://www.awork.com/en/blog/automatic-project-management/"]},"isHiddenForConnectUsers":{"type":"boolean","description":"(optional) Whether the comment is hidden for connect users.\nProviding a null value will not change the current state.\nBy default, comments are not hidden for connect users.","nullable":true},"isResolved":{"type":"boolean","description":"Whether the comment has been resolved.\nOnly available for comments on documents.","nullable":true},"inReplyToCommentId":{"type":"string","description":"The parent comment this comment is a reply to.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"CommentPutForm":{"required":["message"],"type":"object","properties":{"message":{"maxLength":65000,"minLength":1,"type":"string","description":"The message of the comment.","example":"Hey team, the customer loved the latest designs!"},"userId":{"type":"string","description":"The id of the user who created the comment.\nOptional. If not set, defaults to the current user.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"previews":{"type":"array","items":{"type":"string"},"description":"The preview URLs to show a preview for.","nullable":true,"example":["https://www.awork.com/en/blog/automatic-project-management/"]},"isHiddenForConnectUsers":{"type":"boolean","description":"(optional) Whether the comment is hidden for connect users.\nProviding a null value will not change the current state.\nBy default, comments are not hidden for connect users.","nullable":true},"isResolved":{"type":"boolean","description":"Whether the comment has been resolved.\nOnly available for comments on documents.","nullable":true,"deprecated":true}},"additionalProperties":false},"Company":{"required":["name"],"type":"object","properties":{"name":{"maxLength":1000,"minLength":0,"type":"string","description":"The company name.","example":"NCNSTN Brand Design"},"description":{"maxLength":25000,"minLength":0,"type":"string","description":"The company description.","nullable":true,"example":"A small agency with a team of around 20 people, located in the heart of Berlin"},"industry":{"maxLength":1000,"minLength":0,"type":"string","description":"The company's industry.","nullable":true,"example":"Brand Agency"},"id":{"type":"string","description":"The id of the company.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"hasImage":{"type":"boolean","description":"Whether the company has an image.","example":true},"companyContactInfos":{"type":"array","items":{"$ref":"#/components/schemas/ContactInfoForCompanies"},"description":"The company infos assigned to this company.","nullable":true},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"resourceVersion":{"type":"integer","description":"The version of the entity, updated on every modification, to the ticks in UTC.\nNot identical to UpdatedOn.","format":"int64","readOnly":true,"example":637825154598057900},"tags":{"type":"array","items":{"$ref":"#/components/schemas/CompanyTagModel"},"description":"The tags for this company.","nullable":true},"projectsCount":{"type":"integer","description":"The number of all projects related to the company.","format":"int32","example":3},"projectsInProgressCount":{"type":"integer","description":"The number of all projects in status 'progress' related to the company.","format":"int32","example":2},"isExternal":{"type":"boolean","description":"True if this entity is coming from an external workspace (awork Connect).","example":true}},"additionalProperties":false,"description":"The GET company model."},"CompanyAvatar":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","nullable":true},"hasImage":{"type":"boolean"},"industry":{"type":"string","nullable":true}},"additionalProperties":false},"CompanyDeleteForm":{"type":"object","properties":{"moveToCompany":{"type":"string","description":"Moves all related objects to this company.\nRelated projects and tasks (including their time entries) will be connected to this company.\nHave to set if 'DeleteOperation' contains 'move'.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"deleteOperation":{"type":"string","description":"Defines the operation to delete a company.\nPossible operations are\n'move': Move related objects to another company.\n'delete-only-company': Delete only the company. Related objects loose the company information.\n'delete-all-without-timeentries': Delete all related objects apart from time entries.\n'delete-all': Delete all.","nullable":true,"example":"delete-all"}},"additionalProperties":false},"CompanyForm":{"required":["name"],"type":"object","properties":{"name":{"maxLength":1000,"minLength":0,"type":"string","description":"The company name.","example":"NCNSTN Brand Design"},"description":{"maxLength":25000,"minLength":0,"type":"string","description":"The company description.","nullable":true,"example":"A small agency with a team of around 20 people, located in the heart of Berlin"},"industry":{"maxLength":1000,"minLength":0,"type":"string","description":"The company's industry.","nullable":true,"example":"Brand Agency"}},"additionalProperties":false,"description":"The POST/PUT company model."},"CompanyModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Website Design and Implementation"},"hasImage":{"type":"boolean","description":"Whether the company has a profile image.","example":true},"tags":{"type":"array","items":{"$ref":"#/components/schemas/DefaultTagModel"},"description":"The tags of the company.","nullable":true}},"additionalProperties":false},"CompanyTagModel":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the tag.","nullable":true,"example":"Design"},"color":{"type":"string","description":"The color of the tag.","nullable":true,"example":"purple"}},"additionalProperties":false,"description":"A tag model used for the company.\nDo not delete, we need to create copies of the tag model for each entity to avoid issues with Automapper."},"ComputedValueKind":{"enum":["Me","Now","Today","EndOfWeek","EndOfMonth","StartOfWeek","StartOfMonth"],"type":"string","description":"The kind of computed value in the context of a Awork.Core.Models.Filters.FilterDefinition.Condition.Value.FilterValue.\nThese represent actual VALUES that can be used with operators (e.g., \"dueOn eq today\", \"dueOn ge sow\").\nNote: WithinThisWeek and WithinThisMonth are operators (Operator enum), not values."},"Condition":{"type":"object","properties":{"field":{"type":"string","description":"The field to filter on.\nFor collection fields, use the full path including the inner field (e.g., \"tags/id\", \"assignees/id\").","nullable":true},"type":{"$ref":"#/components/schemas/ConditionType"},"operator":{"$ref":"#/components/schemas/Operator"},"values":{"type":"array","items":{"$ref":"#/components/schemas/FilterValue"},"description":"The values for this condition. Usage depends on operator:\n- Single-value operators (Equal, NotEqual, etc.): Use Values[0]\n- Multi-value operators (In): Use all Values\n- Range operators (Between): Use Values[0] as start, Values[1] as end\n- No-value operators (IsSet, IsNotSet, WithinThisWeek, WithinThisMonth): Values is null or empty","nullable":true},"customFieldInformation":{"$ref":"#/components/schemas/CustomFieldInformation"}},"additionalProperties":false,"description":"A condition of a Awork.Core.Models.Filters.FilterDefinition.FilterDefinition, is always part of a Awork.Core.Models.Filters.FilterDefinition.ConditionGroup.\n            \nconditions can be either:\n- Comparison conditions (Type = ConditionType.Comparison): Simple field comparisons like \"name eq 'John'\"\n- Collection conditions (Type = ConditionType.Collection): Collection operations like \"tags/any(t: t/name eq 'urgent')\"\n            \nFor collection conditions:\n- Field contains the full path including inner field (e.g., \"tags/name\", \"assignees/firstName\")\n- The collection path is extracted from Field (everything before the last '/')"},"ConditionGroup":{"type":"object","properties":{"conditions":{"type":"array","items":{"$ref":"#/components/schemas/Condition"},"description":"A list of conditions within this condition group.","nullable":true},"connector":{"$ref":"#/components/schemas/Connector"}},"additionalProperties":false,"description":"A condition group within a Awork.Core.Models.Filters.FilterDefinition.FilterDefinition."},"ConditionType":{"enum":["Comparison","Collection","CustomField"],"type":"string","description":"The type of condition."},"ConnectedUserModel":{"type":"object","properties":{"id":{"type":"string","description":"The identifier of the nested model.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"firstName":{"type":"string","description":"The first name of the user.","nullable":true,"example":"Carla"},"lastName":{"type":"string","description":"The last name of the user.","nullable":true,"example":"Creative"},"hasImage":{"type":"boolean","description":"Whether this user has a profile image.","nullable":true,"example":true},"isExternal":{"type":"boolean","description":"True if the model is coming from an external workspace (awork Connect).\nFalse otherwise."}},"additionalProperties":false},"ConnectedWorkspaceModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the connected workspace.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the connected workspace.","nullable":true},"subdomains":{"type":"array","items":{"type":"string"},"description":"The subdomains of the connected workspace.","nullable":true},"role":{"type":"string","description":"The role of the current workspace in the connection.\n\"home\" means the current workspace is the home workspace (we shared a project with them).\n\"external\" means the current workspace is the external workspace (they shared a project with us).","nullable":true}},"additionalProperties":false,"description":"Represents a workspace that is connected to the current workspace via project connections."},"Connector":{"enum":["And","Or"],"type":"string","description":"The connector connecting condition groups or conditions within a Awork.Core.Models.Filters.FilterDefinition.FilterDefinition."},"ContactInfo":{"type":"object","properties":{"label":{"maxLength":1000,"minLength":0,"type":"string","description":"The label of the contact info.\nOnly necessary if type 'custom' is used.","nullable":true,"example":null},"value":{"maxLength":1000,"minLength":0,"type":"string","description":"The value of the contact info.","nullable":true,"example":null},"type":{"maxLength":25,"minLength":0,"type":"string","description":"The type of the contact info. Possible values are: phone, email, address, messenger, social, urls.","nullable":true,"example":"address"},"subType":{"maxLength":25,"minLength":0,"type":"string","description":"The subtype of the contact info, Possible values are: Phone: [ 'work', 'mobile', 'home', 'work Fax', 'fax', 'other' ]\nEmail: [ 'work', 'private', 'other' ] address: [ 'work', 'home', 'other' ] Messenger: [ 'skype', 'whatsapp', 'other' ]\nsocial: [ 'facebook', 'twitter', 'xing', 'linkedIn', 'instagram', 'pinterest', 'other' ] urls: [ 'work', 'private',\n'gitHub', 'other' ].","nullable":true,"example":"work"},"addressLine1":{"maxLength":1000,"minLength":0,"type":"string","description":"The first Address line of the address.","nullable":true,"example":"Torstrasse 140"},"addressLine2":{"maxLength":100,"minLength":0,"type":"string","description":"The second address line of the contact info.","nullable":true,"example":"Hof A"},"zipCode":{"maxLength":100,"minLength":0,"type":"string","description":"The Zipcode of the contact info.","nullable":true,"example":"10119"},"city":{"maxLength":100,"minLength":0,"type":"string","description":"The city of the contact info.","nullable":true,"example":"Berlin"},"state":{"maxLength":100,"minLength":0,"type":"string","description":"The state of the contact info.","nullable":true,"example":null},"country":{"maxLength":100,"minLength":0,"type":"string","description":"The 2 letter iso code of the country.","nullable":true,"example":"DE"},"isAddress":{"type":"boolean","description":"Flags whether this contactinfo is an address or not. If its an address, the address fields are required.","example":true},"id":{"type":"string","description":"The Id of the contact info.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The creation date.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created the entity.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date when the entity was updated.","format":"date-time"},"updatedBy":{"type":"string","description":"the id of the user who updated the entity.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"The contact info are different types of contact information for a user."},"ContactInfoForCompanies":{"required":["type"],"type":"object","properties":{"label":{"maxLength":1000,"minLength":0,"type":"string","description":"The label of the contact info.\nOnly necessary if type 'custom' is used.","nullable":true},"value":{"maxLength":1000,"minLength":0,"type":"string","description":"The value of the contact info.","nullable":true},"type":{"maxLength":25,"minLength":0,"type":"string","description":"The type of the contact info. Possible values are: 'phone', 'email', 'address', 'url', 'custom'.","example":"address"},"subType":{"maxLength":25,"minLength":0,"type":"string","description":"The subtype of the contact info. Required for all types except 'custom'. Possible values are:\nphone: [ 'central', 'other' ]\nemail: [ 'central', 'invoice', 'other' ]\naddress: [ 'central', 'invoice', 'other' ]\nurl: [ 'primary', 'other' ]","nullable":true,"example":"central"},"addressLine1":{"maxLength":1000,"minLength":0,"type":"string","description":"The first address line of the contact info.","nullable":true,"example":"Torstrasse 140"},"addressLine2":{"maxLength":100,"minLength":0,"type":"string","description":"The second address line of the contact info.","nullable":true,"example":"Hof A"},"zipCode":{"maxLength":100,"minLength":0,"type":"string","description":"The zipcode of the contact info.","nullable":true,"example":"10119"},"city":{"maxLength":100,"minLength":0,"type":"string","description":"The city of the contact info.","nullable":true,"example":"Berlin"},"state":{"maxLength":100,"minLength":0,"type":"string","description":"The state of the contact info.","nullable":true},"country":{"maxLength":100,"minLength":0,"type":"string","description":"The 2 letter iso code of the country.","nullable":true,"example":"DE"},"isAddress":{"type":"boolean","description":"Flags whether this contact info is an address. If it's an address, the address fields are required.","example":true},"id":{"type":"string","description":"The Id of the contact info.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"The contact info are different types of contact information for a company"},"ContactInfoForm":{"required":["type"],"type":"object","properties":{"label":{"maxLength":1000,"minLength":0,"type":"string","description":"The label of the contact info.\nOnly necessary if type 'custom' is used.","nullable":true},"value":{"maxLength":1000,"minLength":0,"type":"string","description":"The value of the contact info.","nullable":true},"type":{"maxLength":25,"minLength":0,"type":"string","description":"The type of the contact info. Possible values are: 'phone', 'email', 'address', 'url', 'custom'.","example":"address"},"subType":{"maxLength":25,"minLength":0,"type":"string","description":"The subtype of the contact info. Required for all types except 'custom'. Possible values are:\nphone: [ 'central', 'other' ]\nemail: [ 'central', 'invoice', 'other' ]\naddress: [ 'central', 'invoice', 'other' ]\nurl: [ 'primary', 'other' ]","nullable":true,"example":"central"},"addressLine1":{"maxLength":1000,"minLength":0,"type":"string","description":"The first address line of the contact info.","nullable":true,"example":"Torstrasse 140"},"addressLine2":{"maxLength":100,"minLength":0,"type":"string","description":"The second address line of the contact info.","nullable":true,"example":"Hof A"},"zipCode":{"maxLength":100,"minLength":0,"type":"string","description":"The zipcode of the contact info.","nullable":true,"example":"10119"},"city":{"maxLength":100,"minLength":0,"type":"string","description":"The city of the contact info.","nullable":true,"example":"Berlin"},"state":{"maxLength":100,"minLength":0,"type":"string","description":"The state of the contact info.","nullable":true},"country":{"maxLength":100,"minLength":0,"type":"string","description":"The 2 letter iso code of the country.","nullable":true,"example":"DE"},"isAddress":{"type":"boolean","description":"Flags whether this contact info is an address. If it's an address, the address fields are required.","example":true}},"additionalProperties":false,"description":"The contact info are different types of contact information for a company"},"ContactInfoFormForUsers":{"type":"object","properties":{"label":{"maxLength":1000,"minLength":0,"type":"string","description":"The label of the contact info.\nOnly necessary if type 'custom' is used.","nullable":true,"example":null},"value":{"maxLength":1000,"minLength":0,"type":"string","description":"The value of the contact info.","nullable":true,"example":null},"type":{"maxLength":25,"minLength":0,"type":"string","description":"The type of the contact info. Possible values are: phone, email, address, messenger, social, urls.","nullable":true,"example":"address"},"subType":{"maxLength":25,"minLength":0,"type":"string","description":"The subtype of the contact info, Possible values are: Phone: [ 'work', 'mobile', 'home', 'work Fax', 'fax', 'other' ]\nEmail: [ 'work', 'private', 'other' ] address: [ 'work', 'home', 'other' ] Messenger: [ 'skype', 'whatsapp', 'other' ]\nsocial: [ 'facebook', 'twitter', 'xing', 'linkedIn', 'instagram', 'pinterest', 'other' ] urls: [ 'work', 'private',\n'gitHub', 'other' ].","nullable":true,"example":"work"},"addressLine1":{"maxLength":1000,"minLength":0,"type":"string","description":"The first Address line of the address.","nullable":true,"example":"Torstrasse 140"},"addressLine2":{"maxLength":100,"minLength":0,"type":"string","description":"The second address line of the contact info.","nullable":true,"example":"Hof A"},"zipCode":{"maxLength":100,"minLength":0,"type":"string","description":"The Zipcode of the contact info.","nullable":true,"example":"10119"},"city":{"maxLength":100,"minLength":0,"type":"string","description":"The city of the contact info.","nullable":true,"example":"Berlin"},"state":{"maxLength":100,"minLength":0,"type":"string","description":"The state of the contact info.","nullable":true,"example":null},"country":{"maxLength":100,"minLength":0,"type":"string","description":"The 2 letter iso code of the country.","nullable":true,"example":"DE"},"isAddress":{"type":"boolean","description":"Flags whether this contactinfo is an address or not. If its an address, the address fields are required.","example":true}},"additionalProperties":false,"description":"The contact info are different types of contact information for a user."},"ContributorForm":{"required":["accessLevel"],"type":"object","properties":{"accessLevel":{"minLength":1,"enum":["read","manage"],"type":"string","description":"Determines the level of access granted to this contributor with respect to the referenced entity.\nCan be either set to `read` or `manage`."}},"additionalProperties":false},"ContributorModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the contributor.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The id of the user this contributor references.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"type":"string","description":"Determines the level of access granted to this contributor with respect to the specific entity.\nCan be either set to `read` or `manage`.","nullable":true},"firstName":{"type":"string","description":"The first name of the user.","nullable":true,"example":"Lisa"},"lastName":{"type":"string","description":"The last name of the user.","nullable":true,"example":"Smith"},"hasImage":{"type":"boolean","description":"Whether the user has an image.","nullable":true,"example":true},"isDeactivated":{"type":"boolean","description":"Whether the user is deactivated.","example":false}},"additionalProperties":false},"ContributorPostForm":{"required":["accessLevel","userId"],"type":"object","properties":{"accessLevel":{"minLength":1,"enum":["read","manage"],"type":"string","description":"Determines the level of access granted to this contributor with respect to the referenced entity.\nCan be either set to `read` or `manage`."},"userId":{"type":"string","description":"The id of the user this contributor references.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"CopyProjectForm":{"type":"object","properties":{"copyProjectFiles":{"type":"boolean"},"copyProjectDocuments":{"type":"boolean"},"copyProjectMembers":{"type":"boolean"},"copyTaskAssignees":{"type":"boolean"},"copyTaskStatuses":{"type":"boolean"},"copyWatchers":{"type":"boolean"},"resetCustomFieldValues":{"type":"boolean"},"nameOverride":{"maxLength":1000,"type":"string","nullable":true},"operationId":{"type":"string","description":"A unique id to track the copy operation, provided by the client.\nWill be returned in the websocket events related to this async process.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"CopyProjectResponse":{"type":"object","properties":{"projectId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"operationId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"CopyTaskBundleForm":{"type":"object","properties":{"projectTemplateId":{"type":"string","description":"The id of the project template to add to the entity.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"CreateTaskBundleFromProjectForm":{"type":"object","properties":{"name":{"type":"string","description":"The name of the task bundle. Required if its not related to a task bundle.","nullable":true,"example":"Project Kickoff"},"description":{"type":"string","description":"The description of the task bundle.","nullable":true,"example":"Includes all tasks related to getting this project off the ground successfully. For the joy of work!"},"icon":{"type":"string","description":"The icon of the task bundle.","nullable":true,"example":"arrow_forward"},"projectTemplateId":{"type":"string","description":"The project template id of the task bundle, only necessary for the creation of an empty bundle for a project template.","format":"uuid","nullable":true,"example":"f76a7b32-f279-ec11-94f6-dc984040d6c9"},"referenceDate":{"type":"string","description":"If provided, it will make the start/end dates of the tasks relative to this date.\nIn start or end dates of project/tasks are not available then no relative dates will be set.","format":"date-time","nullable":true}},"additionalProperties":false},"CreateTemplateFromProjectForm":{"type":"object","properties":{"name":{"type":"string","nullable":true},"importProjectDetails":{"type":"boolean","description":"Imports the project tags and project type of the project."},"importProjectSettings":{"type":"boolean","description":"Includes the billability, and the setting for default list for tasks from emails."},"importProjectStatuses":{"type":"boolean","description":"Imports the project statuses."},"importTimeBudget":{"type":"boolean","description":"Imports the project time budget.\nNote: not currently used in the frontend."},"importMilestones":{"type":"boolean","description":"Imports the project milestones.\nNote: not currently used in the frontend."},"importAutomations":{"type":"boolean","description":"Imports the project automations."},"importTaskStatuses":{"type":"boolean","description":"Imports the task statuses."},"importTaskAndLists":{"type":"boolean","description":"Imports the project tasks, task lists and task dependencies."},"importProjectCustomFieldValues":{"type":"boolean","description":"Imports the project custom field values."},"referenceDate":{"type":"string","description":"If provided, it will set the start/end dates of the project and tasks to be relative to this date.\nIf start or end dates of project/tasks are not available then no relative dates will be set.","format":"date-time","nullable":true}},"additionalProperties":false},"CreateWorkflowFromProjectForm":{"type":"object","properties":{"name":{"type":"string","description":"The name of the workflow. If not provided, generates localized name\n(\"Workflow from {project}\" or \"Workflow von {project}\").","nullable":true},"copyProjectStatuses":{"type":"boolean","description":"Whether to copy project statuses from the project to the workflow.\nDefault: true (pre-selected in UI)."},"copyTaskStatuses":{"type":"boolean","description":"Whether to copy task statuses from the project to the workflow.\nDefault: true (pre-selected in UI)."},"copyCustomFields":{"type":"boolean","description":"Whether to copy custom field definition links from the project to the workflow.\nDefault: true (pre-selected in UI)."},"copyAutomations":{"type":"boolean","description":"Whether to copy automations from the project to the workflow.\nDefault: true (pre-selected in UI)."},"linkProjectToWorkflow":{"type":"boolean","description":"Whether to link the project to the newly created workflow.\nIf false, the workflow is created but the project remains unlinked.\nDefault: false (requires explicit user confirmation in modal)."}},"additionalProperties":false,"description":"Form for creating a workflow from an existing project's configuration."},"CustomField":{"type":"object","properties":{"customFieldDefinitionId":{"type":"string","description":"The custom field definition id.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userIdValue":{"type":"string","description":"The the user id value.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"clientIdValue":{"type":"string","description":"The client id value.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"numberValue":{"type":"number","description":"The number value.","format":"double","nullable":true,"example":123.45},"selectionOptionIdValue":{"type":"string","description":"The selection option id value.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"selectionOption":{"$ref":"#/components/schemas/CustomFieldSelectionOption"},"textValue":{"type":"string","description":"The text value.","nullable":true,"example":"S1: Business Critical"},"dateValue":{"type":"string","description":"The date value.","format":"date-time","nullable":true},"booleanValue":{"type":"boolean","description":"The boolean value.","nullable":true,"example":true}},"additionalProperties":false,"description":"Represents the custom field value."},"CustomFieldDefinition":{"type":"object","properties":{"id":{"type":"string","description":"The id of the custom field definition.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the custom field definition.","nullable":true,"example":"Ticket-Number"},"entity":{"enum":["task","project"],"type":"string","description":"The entity the custom field definition can be linked to.","example":"task"},"type":{"enum":["text","number","date","datetime","select","coloredSelect","link","boolean","user","client"],"type":"string","description":"The type of the custom field definition.","example":"text"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-10T16:25:09.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-10T18:55:00.500Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"order":{"type":"number","description":"If it's a project custom field, it's the global order of the custom field definition.\nOtherwise, it's the order of the custom field definition within a project template or a project.","format":"double","nullable":true,"example":1},"isExternal":{"type":"boolean","description":"True if this entity is coming from an external workspace (awork Connect)."}},"additionalProperties":false},"CustomFieldDefinitionPostForm":{"required":["entity","name","type"],"type":"object","properties":{"name":{"maxLength":255,"minLength":1,"type":"string","description":"The name of the custom field definition.","example":"Ticket-Number"},"type":{"minLength":1,"enum":["text","number","date","datetime","select","coloredSelect","link","boolean","user","client"],"type":"string","description":"The type of the custom field definition.","example":"text"},"selectionOptions":{"type":"array","items":{"$ref":"#/components/schemas/CustomFieldSelectionOptionsForm"},"description":"The selection options for the custom field definition. Can only be used if the type is 'select'.","nullable":true},"order":{"type":"number","description":"The order of the custom field definition.\nThis value is only used (and required) if the entity is 'project', as the project custom field definitions are globally ordered.\nTo set the order for task custom field definitions, use the endpoint to update the order of a custom field definition for a project/project template.","format":"double","nullable":true},"entity":{"minLength":1,"enum":["task","project"],"type":"string","description":"The entity the custom field definition can be linked to.","example":"task"}},"additionalProperties":false},"CustomFieldDefinitionPutForm":{"required":["name","type"],"type":"object","properties":{"name":{"maxLength":255,"minLength":1,"type":"string","description":"The name of the custom field definition.","example":"Ticket-Number"},"type":{"minLength":1,"enum":["text","number","date","datetime","select","coloredSelect","link","boolean","user","client"],"type":"string","description":"The type of the custom field definition. When updating a custom field definition, only the following changes are allowed: 'date' ↔ 'datetime', 'select' ↔ 'coloredSelect'.","example":"text"},"order":{"type":"number","description":"The global (workspace-level) order of the custom field definition.\nOnly project custom field definitions have a global order.","format":"double","nullable":true}},"additionalProperties":false},"CustomFieldDefinitionWithSelectionOptions":{"type":"object","properties":{"id":{"type":"string","description":"The id of the custom field definition.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the custom field definition.","nullable":true,"example":"Ticket-Number"},"entity":{"enum":["task","project"],"type":"string","description":"The entity the custom field definition can be linked to.","example":"task"},"type":{"enum":["text","number","date","datetime","select","coloredSelect","link","boolean","user","client"],"type":"string","description":"The type of the custom field definition.","example":"text"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-10T16:25:09.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-10T18:55:00.500Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"order":{"type":"number","description":"If it's a project custom field, it's the global order of the custom field definition.\nOtherwise, it's the order of the custom field definition within a project template or a project.","format":"double","nullable":true,"example":1},"isExternal":{"type":"boolean","description":"True if this entity is coming from an external workspace (awork Connect)."},"selectionOptions":{"type":"array","items":{"$ref":"#/components/schemas/CustomFieldSelectionOption"},"description":"The selection options for this custom field definition.","nullable":true}},"additionalProperties":false},"CustomFieldDefinitionWithSelectionOptionsAndLinkedProjectIds":{"type":"object","properties":{"id":{"type":"string","description":"The id of the custom field definition.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the custom field definition.","nullable":true,"example":"Ticket-Number"},"entity":{"enum":["task","project"],"type":"string","description":"The entity the custom field definition can be linked to.","example":"task"},"type":{"enum":["text","number","date","datetime","select","coloredSelect","link","boolean","user","client"],"type":"string","description":"The type of the custom field definition.","example":"text"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-10T16:25:09.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-10T18:55:00.500Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"order":{"type":"number","description":"If it's a project custom field, it's the global order of the custom field definition.\nOtherwise, it's the order of the custom field definition within a project template or a project.","format":"double","nullable":true,"example":1},"isExternal":{"type":"boolean","description":"True if this entity is coming from an external workspace (awork Connect)."},"selectionOptions":{"type":"array","items":{"$ref":"#/components/schemas/CustomFieldSelectionOption"},"description":"The selection options for this custom field definition.","nullable":true},"linkedProjectIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The linked project ids for this custom field definition.","nullable":true,"example":["123e4567-e89b-12d3-a456-426614174000"]}},"additionalProperties":false},"CustomFieldInformation":{"type":"object","properties":{"customFieldDefinitionId":{"type":"string","description":"The custom field definition id.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"customFieldValueType":{"$ref":"#/components/schemas/CustomFieldValueType"}},"additionalProperties":false},"CustomFieldOrderForm":{"type":"object","properties":{"order":{"type":"number","description":"The order of the custom field definition within a project template or a project.","format":"double","example":1}},"additionalProperties":false},"CustomFieldOrderPutForm":{"required":["order"],"type":"object","properties":{"order":{"type":"number","description":"The order of the custom field definition within a project template or a project.","format":"double","example":1}},"additionalProperties":false},"CustomFieldPostForm":{"required":["customFieldDefinitionId"],"type":"object","properties":{"customFieldDefinitionId":{"type":"string","description":"The custom field definition id.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userIdValue":{"type":"string","description":"The user id. The user id can be set for custom field type 'user'.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"clientIdValue":{"type":"string","description":"The client id. The client id can be set for custom field type 'client'.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"numberValue":{"type":"number","description":"The number value. The number value can be set for custom field type 'number'.","format":"double","nullable":true,"example":123.45},"selectionOptionIdValue":{"type":"string","description":"The selection option id value. The id can be set for custom field types 'select' and 'coloredSelect'.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"textValue":{"maxLength":750,"type":"string","description":"The text value. The text value can be set for custom field types 'text' and 'link'.","nullable":true,"example":"A custom logo"},"dateValue":{"type":"string","description":"The date value. The date value can be set for custom field types 'date' and 'datetime'.","format":"date-time","nullable":true,"example":"2022-03-10T16:30:26.100Z"},"booleanValue":{"type":"boolean","description":"The boolean value. The boolean value can be set for custom field type 'boolean'.","nullable":true,"example":true}},"additionalProperties":false,"description":"Represents the form for posting custom field data."},"CustomFieldSelectionOption":{"required":["value"],"type":"object","properties":{"id":{"type":"string","description":"The id of the custom field selection option.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"value":{"minLength":1,"type":"string","description":"The selection value which can be later used in a select custom field.","example":"Website Design"},"color":{"enum":["red","orange","yellow","green","cyan","blue","indigo","purple","steel"],"type":"string","description":"The color of the selection option.","nullable":true,"example":"purple"},"order":{"type":"number","description":"The order of the custom field selection option.","format":"double","example":0}},"additionalProperties":false},"CustomFieldSelectionOptionsForm":{"required":["order","value"],"type":"object","properties":{"value":{"maxLength":255,"minLength":1,"type":"string","description":"The selection value which can be used in a select custom field.","example":"Website Design"},"color":{"enum":["red","orange","yellow","green","cyan","blue","indigo","purple","steel"],"type":"string","description":"The color of the selection option.","nullable":true,"example":"purple"},"order":{"type":"number","description":"The order of the custom field selection option.","format":"double"}},"additionalProperties":false},"CustomFieldValueType":{"enum":["UserId","Number","SelectionOptionId","Text","Date","Boolean","Client"],"type":"string","description":"The supported types of custom field values."},"Dashboard":{"type":"object","properties":{"id":{"type":"string","description":"The id of the dashboard.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The id of the user that the dashboard belongs to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The creation date.","format":"date-time"},"updatedOn":{"type":"string","description":"The date when the entity was last updated.","format":"date-time"},"widgets":{"type":"array","items":{"$ref":"#/components/schemas/Widget"},"description":"A list of all widgets of the dashboard.","nullable":true}},"additionalProperties":false},"DashboardWidgetCreateForm":{"required":["name","type"],"type":"object","properties":{"type":{"maxLength":25,"minLength":0,"type":"string","description":"The widget type."},"name":{"maxLength":255,"minLength":0,"type":"string","description":"The widget title."},"entityId":{"type":"string","description":"The optional entity referenced by the widget.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"filterId":{"type":"string","description":"The optional saved filter referenced by a task or project list widget.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"settings":{"maxLength":25000,"minLength":0,"type":"string","description":"The optional bounded JSON settings object.","nullable":true},"value":{"maxLength":25000,"minLength":0,"type":"string","description":"The optional bounded widget value or note content.","nullable":true}},"additionalProperties":false},"DateGrouping":{"type":"object","properties":{"year":{"type":"integer","format":"int32"},"quarter":{"type":"integer","format":"int32","nullable":true},"month":{"type":"integer","format":"int32","nullable":true},"week":{"type":"integer","format":"int32","nullable":true},"day":{"type":"integer","format":"int32","nullable":true}},"additionalProperties":false},"DayOff":{"type":"object","properties":{"id":{"type":"string","description":"The id of the absence entity, if available.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","nullable":true,"example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","nullable":true,"example":"2022-03-11T21:15:00.100Z"},"deletedBy":{"type":"string","description":"The id of the user that deleted the absence.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The id of the user that will have the day off.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"startOn":{"type":"string","description":"The start time of the day off.","format":"date-time","example":"2022-03-01T00:00:00Z"},"endOn":{"type":"string","description":"The end time of the day off.","format":"date-time","example":"2022-03-03T00:00:00Z"},"description":{"type":"string","description":"The description of the day off.\nIn case of public holidays, it will contain the name of the holiday in the local language.","nullable":true,"example":"Neujahr"},"englishDescription":{"type":"string","description":"In case of public holidays, it will contain the name of the holiday in English.\nNull if the day off is an absence.","nullable":true,"example":"New Year's Day"},"externalProvider":{"type":"string","description":"The external provider for the absence, if available.","nullable":true},"type":{"type":"string","description":"The type of the day off.\nPossible values are: absence, holiday, workspaceAbsence.","nullable":true},"isReadOnly":{"type":"boolean","description":"True means that this day off is read-only and cannot be edited/deleted by the user.","readOnly":true},"isHalfDayOnStart":{"type":"boolean","description":"A user can be off for a full day or half day (morning or afternoon).\nFor a single day off, a true value means the user is off in the morning.\nFor multiple days off, a true value means the absence period starts in the afternoon of the first day.","readOnly":true},"isHalfDayOnEnd":{"type":"boolean","description":"A user can be off for a full day or half day (morning or afternoon).\nFor a single day off, a true value means the user is off in the afternoon.\nFor multiple days off, a true value means the absence period ends on the morning of the last day.","readOnly":true}},"additionalProperties":false},"DaysOffQueryForm":{"type":"object","properties":{"userIds":{"type":"array","items":{"type":"string","format":"uuid"},"nullable":true},"from":{"type":"string","format":"date-time","nullable":true},"to":{"type":"string","format":"date-time","nullable":true}},"additionalProperties":false},"DefaultStatusModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Website Design and Implementation"},"type":{"type":"string","description":"The type of the status.","nullable":true,"example":"todo"},"isArchived":{"type":"boolean","description":"Whether the entity is archived.","example":false}},"additionalProperties":false},"DefaultTagModel":{"type":"object","properties":{"id":{"type":"string","description":"The Id of the tag.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the tag.","nullable":true,"example":"Design"},"color":{"type":"string","description":"The color of the tag.","nullable":true,"example":"purple"},"entityId":{"type":"string","description":"The id of the entity the tag is related to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"DefaultTaskList":{"type":"object","properties":{"defaultTasklistId":{"type":"string","description":"The default task list id.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"DefaultTypeModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Website Design and Implementation"},"description":{"type":"string","description":"The description of the type.","nullable":true,"example":"Work that needs to be done"},"icon":{"type":"string","description":"The icon of the type.","nullable":true,"example":"aw-circle"},"isArchived":{"type":"boolean","description":"Whether the type is archived.","example":false}},"additionalProperties":false},"DeleteProjectTypeForm":{"type":"object","properties":{"projectTypeId":{"type":"string","description":"The id of the new project type.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"The model to delete a project type."},"DeleteRoleForm":{"type":"object","properties":{"newRoleId":{"type":"string","description":"The id of the role to which all users of the old role will be moved.\nRequired if there are users assigned to the role being deleted.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"DeleteTagForm":{"required":["name"],"type":"object","properties":{"name":{"maxLength":255,"minLength":0,"type":"string","description":"The name of the tag to delete.","example":"Design"}},"additionalProperties":false},"DeleteTaskTypeForm":{"type":"object","properties":{"typeOfWorkId":{"type":"string","description":"The id of the new task type.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"The model to delete a task type."},"DeleteTimeEntriesForm":{"type":"object","properties":{"ids":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The ids of the time entries, which should be deleted.","nullable":true}},"additionalProperties":false},"DeleteWorkflowForm":{"type":"object","properties":{"deleteOperation":{"type":"string","description":"Defines how linked projects and project templates should be handled before deletion.\nSupported values are 'unlink' and 'migrate'.","nullable":true},"newWorkflowId":{"type":"string","description":"The workflow to migrate linked projects and project templates to.\nRequired when DeleteOperation is 'migrate'.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectStatusMapping":{"type":"array","items":{"$ref":"#/components/schemas/ProjectStatusMappingEntry"},"description":"Maps source workflow project statuses to target workflow project statuses during migration.","nullable":true},"taskStatusMapping":{"type":"array","items":{"$ref":"#/components/schemas/TaskStatusMappingEntry"},"description":"Maps source workflow task statuses to target workflow task statuses during migration.","nullable":true},"keepCustomFields":{"type":"boolean","description":"Whether to keep existing non-workflow custom fields when migrating.\nDefault: true.","nullable":true},"keepCustomAutomations":{"type":"boolean","description":"Whether to keep existing non-workflow automations when migrating.\nDefault: true.","nullable":true}},"additionalProperties":false,"description":"The form for deleting a workflow."},"DeleteWorkflowProjectStatusForm":{"type":"object","properties":{"newProjectStatusId":{"type":"string","description":"The Id of the project status to migrate projects to.\nRequired if any projects are currently using the status being deleted.\nMust be a different status within the same workflow.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"The form for deleting a workflow project status."},"DeleteWorkflowTaskStatusForm":{"type":"object","properties":{"newTaskStatusId":{"type":"string","description":"The Id of the task status to migrate tasks to.\nRequired if any tasks are currently using the status being deleted.\nMust be a different status within the same workflow.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"The model for deleting a workflow task status."},"DeletedEntityModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the deleted entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the deleted entity.","nullable":true,"example":"Website Design"},"deletedOn":{"type":"string","description":"The date the entity has been deleted.","format":"date-time","nullable":true}},"additionalProperties":false},"DemoDataStatus":{"type":"object","properties":{"exists":{"type":"boolean"},"projectIds":{"type":"array","items":{"type":"string","format":"uuid"},"nullable":true},"userIds":{"type":"array","items":{"type":"string","format":"uuid"},"nullable":true},"clientIds":{"type":"array","items":{"type":"string","format":"uuid"},"nullable":true}},"additionalProperties":false},"DocumentContentForm":{"required":["content"],"type":"object","properties":{"content":{"type":"string","description":"The UTF-8 document content. Use Awork.Core.Models.Documents.Documents.DocumentContentForm.ContentFormat to select HTML or Markdown input.","format":"binary"},"contentFormat":{"enum":["html","markdown"],"type":"string","description":"The input format of Awork.Core.Models.Documents.Documents.DocumentContentForm.Content. Defaults to `html`. Canonical awork Markdown supports lossless re-import of safe editor content.","nullable":true}},"additionalProperties":false},"DocumentContributorModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the contributor.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The id of the user this contributor references.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"type":"string","description":"Determines the level of access granted to this contributor with respect to the specific entity.\nCan be either set to `read` or `manage`.","nullable":true},"firstName":{"type":"string","description":"The first name of the user.","nullable":true,"example":"Lisa"},"lastName":{"type":"string","description":"The last name of the user.","nullable":true,"example":"Smith"},"hasImage":{"type":"boolean","description":"Whether the user has an image.","nullable":true,"example":true},"isDeactivated":{"type":"boolean","description":"Whether the user is deactivated.","example":false},"documentId":{"type":"string","description":"The id of the referenced document.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"inheritedFromDocumentContributorId":{"type":"string","description":"The id of the contributor the permission has been inherited from.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"inheritedDocumentContributor":{"$ref":"#/components/schemas/PermissionInheritedDocumentContributor"}},"additionalProperties":false},"DocumentForm":{"type":"object","properties":{"name":{"maxLength":1000,"minLength":0,"type":"string","description":"The name of the document.","nullable":true},"documentSpaceId":{"type":"string","description":"The id of the document space.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"parentId":{"type":"string","description":"The id of the document's parent document.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectId":{"type":"string","description":"The id of the project this document references.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"taskId":{"type":"string","description":"The id of the task this document references.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"emoji":{"maxLength":25,"minLength":0,"type":"string","description":"The emoji of the document.","nullable":true},"isPrivate":{"type":"boolean","description":"Whether the document is private."},"order":{"type":"number","description":"The order of the document in either the list of private docs,\nthe referenced document space or in the referenced project.","format":"double","nullable":true},"workspaceAccessLevel":{"maxLength":25,"minLength":0,"enum":["none","read","manage"],"type":"string","description":"Determines the level of access to this document granted to all workspace users.\nCan be either null (inherited), `none`, `read`, or `manage`.","nullable":true},"isHiddenForConnectUsers":{"type":"boolean","description":"Whether the document is hidden for connect users.","nullable":true}},"additionalProperties":false},"DocumentMentionForm":{"required":["userId"],"type":"object","properties":{"userId":{"type":"string","description":"The id of the user this mention references.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"DocumentModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the document.","nullable":true},"currentDocumentVersionId":{"type":"string","description":"The id of the current document version.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"documentSpaceId":{"type":"string","description":"The id of the document space.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"documentSpace":{"$ref":"#/components/schemas/DocumentSpaceModel"},"parentId":{"type":"string","description":"The id of the document's parent document.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectId":{"type":"string","description":"The id of the project this document references.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"project":{"$ref":"#/components/schemas/PermissionProject"},"taskId":{"type":"string","description":"The id of the task this document references.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"emoji":{"type":"string","description":"The emoji of the document.","nullable":true},"isPrivate":{"type":"boolean","description":"Whether the document is private."},"order":{"type":"number","description":"The order of the document in either the list of private docs,\nthe referenced document space or in the referenced project.","format":"double","nullable":true},"isExternal":{"type":"boolean","description":"Whether the document belongs to an external project."},"isHiddenForConnectUsers":{"type":"boolean","description":"Whether the document is hidden for connect users."},"contributors":{"type":"array","items":{"$ref":"#/components/schemas/DocumentContributorModel"},"description":"The contributors of this document.","nullable":true},"teams":{"type":"array","items":{"$ref":"#/components/schemas/DocumentToTeamModel"},"description":"The teams this document is connected to.","nullable":true},"workspaceAccessLevel":{"type":"string","description":"Determines the level of access to this document granted to all workspace users.\nCan be either not set (no access), `read`, or `manage`.","nullable":true},"inheritedWorkspaceAccessFromDocumentId":{"type":"string","description":"The id of the document the workspace access level permission has been inherited from.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"inheritedWorkspaceAccessFromDocument":{"$ref":"#/components/schemas/PermissionInheritedWorkspaceAccessFromDocument"},"movedToTrashOn":{"type":"string","description":"The date the document has been moved to the trash","format":"date-time","nullable":true},"movedToTrashBy":{"type":"string","description":"The id of the user that moved the document to the trash.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"rootDocumentCreatedBy":{"type":"string","description":"The user id of the creator of the root document of this document's document tree.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"DocumentPostForm":{"type":"object","properties":{"name":{"maxLength":1000,"minLength":0,"type":"string","description":"The name of the document.","nullable":true},"documentSpaceId":{"type":"string","description":"The id of the document space.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"parentId":{"type":"string","description":"The id of the document's parent document.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectId":{"type":"string","description":"The id of the project this document references.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"taskId":{"type":"string","description":"The id of the task this document references.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"emoji":{"maxLength":25,"minLength":0,"type":"string","description":"The emoji of the document.","nullable":true},"isPrivate":{"type":"boolean","description":"Whether the document is private."},"order":{"type":"number","description":"The order of the document in either the list of private docs,\nthe referenced document space or in the referenced project.","format":"double","nullable":true},"workspaceAccessLevel":{"maxLength":25,"minLength":0,"enum":["none","read","manage"],"type":"string","description":"Determines the level of access to this document granted to all workspace users.\nCan be either null (inherited), `none`, `read`, or `manage`.","nullable":true},"isHiddenForConnectUsers":{"type":"boolean","description":"Whether the document is hidden for connect users.","nullable":true},"content":{"type":"string","description":"The optional UTF-8 document content. Use Awork.Core.Models.Documents.Documents.DocumentPostForm.ContentFormat to select HTML or Markdown input.","format":"binary","nullable":true},"contentFormat":{"enum":["html","markdown"],"type":"string","description":"The input format of Awork.Core.Models.Documents.Documents.DocumentPostForm.Content. Defaults to `html`. Canonical awork Markdown supports lossless re-import of safe editor content.","nullable":true}},"additionalProperties":false},"DocumentSpaceForm":{"type":"object","properties":{"name":{"maxLength":1000,"minLength":0,"type":"string","description":"The name of the document space.","nullable":true},"emoji":{"maxLength":25,"minLength":0,"type":"string","description":"The emoji of the document space.","nullable":true},"color":{"maxLength":14,"minLength":0,"type":"string","description":"The color of the document space for display purposes in the app.\nCan be null when no color assigned.","nullable":true,"example":"purple"},"order":{"type":"number","description":"The order of the document space in the list of document spaces.","format":"double","nullable":true},"workspaceAccessLevel":{"maxLength":25,"minLength":0,"enum":["none","read","manage"],"type":"string","description":"Determines the level of access to this document space granted to all workspace users.\nCan be either `none`, `read`, or `manage`.","nullable":true}},"additionalProperties":false},"DocumentSpaceModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the document space.","nullable":true},"isExternal":{"type":"boolean","description":"Whether this document space is coming from an external workspace (awork Connect)."},"emoji":{"type":"string","description":"The emoji of the document space.","nullable":true},"color":{"type":"string","description":"The color of the document space for display purposes in the app.\nCan be null when no color assigned.","nullable":true,"example":"purple"},"order":{"type":"number","description":"The order of the document space in the list of document spaces.","format":"double","nullable":true},"workspaceAccessLevel":{"type":"string","description":"Determines the level of access to this document space granted to all workspace users.\nCan be either not set (no access), `read`, or `manage`.","nullable":true},"contributors":{"type":"array","items":{"$ref":"#/components/schemas/ContributorModel"},"description":"The contributors of this document space.","nullable":true},"teams":{"type":"array","items":{"$ref":"#/components/schemas/EntityToTeamModel"},"description":"The teams this document space is connected to.","nullable":true}},"additionalProperties":false},"DocumentToTeamModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity to team.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"teamId":{"type":"string","description":"The id of the team this entity to team references.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"type":"string","description":"Determines the level of access granted to this entity to team with respect to the specific entity.\nCan be either set to `read` or `manage`.","nullable":true},"name":{"type":"string","description":"The name of the team.","nullable":true,"example":"Designers"},"icon":{"type":"string","description":"The icon which is assigned to the team.","nullable":true,"example":"paintbrush"},"color":{"type":"string","description":"The color of the team.","nullable":true,"example":"purple"},"documentId":{"type":"string","description":"The id of the referenced document.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"inheritedFromDocumentToTeamId":{"type":"string","description":"The id of the document to team the permission has been inherited from.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"inheritedDocumentToTeam":{"$ref":"#/components/schemas/PermissionInheritedDocumentToTeam"}},"additionalProperties":false},"DocumentVersionModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the document version.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"documentId":{"type":"string","description":"The id of the referenced document.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this document version was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this document version.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this document version was last modified.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who last modified this document version.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"DocumentsContentPostForm":{"required":["ids"],"type":"object","properties":{"ids":{"maxItems":200,"minItems":1,"type":"array","items":{"type":"string","format":"uuid"},"description":"The document identifiers."},"format":{"type":"string","description":"The response format. Supported values are `html` and `markdown`.","nullable":true},"maximumContentBytes":{"maximum":104857600,"minimum":1,"type":"integer","description":"The optional maximum aggregate UTF-8 bytes returned for document content.","format":"int32","nullable":true}},"additionalProperties":false,"description":"Identifies the documents whose current content should be returned."},"DocumentsContentResultModel":{"type":"object","properties":{"id":{"type":"string","description":"The document identifier.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"content":{"type":"string","description":"The current document content, when available.","nullable":true},"error":{"type":"string","description":"The content read error, when the content is not available.","nullable":true}},"additionalProperties":false,"description":"Contains the current content result for one document."},"EntityTimeTrackingStats":{"type":"object","properties":{"totalTrackedDuration":{"type":"integer","description":"The total amount of time tracked on the entity.","format":"int32"},"totalBillableDuration":{"type":"integer","description":"The total amount of time tracked on the entity that is billable.","format":"int32"},"totalBilledDuration":{"type":"integer","description":"The total amount of time tracked on the entity that is billed.","format":"int32"}},"additionalProperties":false,"description":"Model to capture the time tracking statistics for an entity.\nIncludes the total tracked duration, total billable duration and total billed duration.\nThe total non-billable duration can be calculated by subtracting the total billable duration from the total tracked duration.\nThe total non-billed duration can be calculated by subtracting the total billed duration from the total billable duration."},"EntityToTeamForm":{"required":["accessLevel"],"type":"object","properties":{"accessLevel":{"minLength":1,"enum":["read","manage"],"type":"string","description":"Determines the level of access granted to this contributor or team with respect to the referenced entity.\nCan be either set to `read` or `manage` where `read` allows viewing the entity and `manage` allows full control over it (read, write and permission changes)."}},"additionalProperties":false},"EntityToTeamModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity to team.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"teamId":{"type":"string","description":"The id of the team this entity to team references.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"type":"string","description":"Determines the level of access granted to this entity to team with respect to the specific entity.\nCan be either set to `read` or `manage`.","nullable":true},"name":{"type":"string","description":"The name of the team.","nullable":true,"example":"Designers"},"icon":{"type":"string","description":"The icon which is assigned to the team.","nullable":true,"example":"paintbrush"},"color":{"type":"string","description":"The color of the team.","nullable":true,"example":"purple"}},"additionalProperties":false},"EntityToTeamPostForm":{"required":["accessLevel","teamId"],"type":"object","properties":{"accessLevel":{"minLength":1,"enum":["read","manage"],"type":"string","description":"Determines the level of access granted to this contributor or team with respect to the referenced entity.\nCan be either set to `read` or `manage` where `read` allows viewing the entity and `manage` allows full control over it (read, write and permission changes)."},"teamId":{"type":"string","description":"The id of the team to be added.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ExtendedProjectForm":{"required":["name"],"type":"object","properties":{"name":{"maxLength":1000,"minLength":0,"type":"string","description":"The name of the Project. Max allowed length: 1000 characters.","example":"Website Design"},"isPrivate":{"type":"boolean","description":"Whether this is a private project only visible to members and the creator.\nDefaults to false.\nCan only be changed from public to private if no times have been tracked on this project.\nCan always be made public.","example":false},"description":{"maxLength":25000,"minLength":0,"type":"string","description":"The project description. Max allowed length: 25000 characters.","nullable":true,"example":"Sitemap, design, assets and implementation of the new online presence."},"startDate":{"type":"string","description":"The start date of the project.","format":"date-time","nullable":true,"example":"2022-03-01T00:00:00Z"},"dueDate":{"type":"string","description":"The due date of the project.","format":"date-time","nullable":true,"example":"2022-05-01T00:00:00Z"},"companyId":{"type":"string","description":"The id of the company.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"timeBudget":{"type":"integer","description":"The time budget the project has, in seconds.","format":"int32","nullable":true,"example":576000},"isBillableByDefault":{"type":"boolean","description":"Whether project times should be billable by default.","nullable":true,"example":true},"projectTypeId":{"type":"string","description":"The id of the project type of this project.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"color":{"maxLength":14,"minLength":0,"type":"string","description":"The color of the project for display purposes in awork.\nThe supported colors are defined by the awork frontend.\nCan be null when no color assigned.","nullable":true,"example":"purple"},"deductNonBillableHours":{"type":"boolean","description":"Whether to deduct non-billable hours from project budgets."},"isProjectKeyVisible":{"type":"boolean","description":"Whether project key should be visible for this project.\nIf null, it will use the workspace default setting.","nullable":true},"projectKey":{"maxLength":32,"minLength":1,"type":"string","description":"The optional project key. It must be unique within the workspace and contain 1-32 letters, numbers,\ndashes, or underscores. Lowercase letters are normalized to uppercase.\nWhen omitted, a key is generated from the project name.","nullable":true},"projectStatusId":{"type":"string","description":"Optional existing status to use when creating from a workflow or template source.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectTemplateId":{"type":"string","description":"The id of the template which is used to create the project.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"publicProjectTemplateId":{"type":"string","description":"The id of the public template which is used to create the project.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"workflowId":{"type":"string","description":"The id of the workflow to link to the project.\nCannot be specified if ProjectTemplateId is set.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"referenceDateType":{"enum":["today","start","end","custom"],"type":"string","description":"(optional, default = TODAY) Defines the starting date from which the reference date is calculated.\nThe reference date is the date from which the Start/DueOn date of a task is calculated, based on the ReferenceDateAnchor.","nullable":true},"referenceDateAnchor":{"enum":["starts_on_reference_date","ends_on_reference_date"],"type":"string","description":"(optional, default = START) Defines what the reference date represents for the schedule (start of first task or end of last task).","nullable":true},"customReferenceDate":{"type":"string","description":"(optional) The custom reference date when ReferenceDateType is set to 'custom'.","format":"date","nullable":true}},"additionalProperties":false},"ExtendedProjectStatusModel":{"type":"object","properties":{"id":{"type":"string","description":"The identifier of the nested model.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Design"},"description":{"type":"string","description":"The description of the type.","nullable":true,"example":"Work in progress"},"type":{"type":"string","description":"The type of the status.","nullable":true,"example":"todo"},"isArchived":{"type":"boolean","description":"Whether the type is archived.","example":false},"typeOrder":{"type":"integer","description":"The order of the status type.","format":"int32","example":1},"isExternal":{"type":"boolean","description":"True if this entity is coming from an external workspace (awork Connect).","example":true}},"additionalProperties":false},"ExtendedUser":{"type":"object","properties":{"firstName":{"maxLength":1000,"minLength":0,"type":"string","description":"The firstname of the user.","nullable":true,"example":"Carla"},"lastName":{"maxLength":1000,"minLength":0,"type":"string","description":"The lastname of the user.","nullable":true,"example":"Creative"},"birthDate":{"type":"string","description":"The birthdate of the user.","format":"date-time","nullable":true,"example":"1998-04-19T00:00:000Z"},"gender":{"maxLength":25,"minLength":0,"type":"string","description":"The gender of the user.","nullable":true,"example":"female"},"title":{"maxLength":100,"minLength":0,"type":"string","description":"The title of the user.","nullable":true,"example":"Miss"},"position":{"maxLength":1000,"minLength":0,"type":"string","description":"The position of the user.","nullable":true},"language":{"maxLength":25,"minLength":0,"type":"string","description":"The language preference of the user in ISO 639-1 format.","nullable":true,"example":"en-GB"},"id":{"type":"string","description":"The id of the user.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"status":{"$ref":"#/components/schemas/UserStatus"},"createdOn":{"type":"string","description":"The date this user was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this user.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date when this user was last updated.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who updated the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"isArchived":{"type":"boolean","description":"Whether this user is archived.\nArchived users are automatically inactive and only exist for reference purposes.","example":false},"isDeactivated":{"type":"boolean","description":"Whether the user has been deactivated.","example":false},"deactivatedOn":{"type":"string","description":"The date the user was deactivated.","format":"date-time","nullable":true},"deletedOn":{"type":"string","description":"The date the user was deleted (soft delete).","format":"date-time","nullable":true},"hasImage":{"type":"boolean","description":"Whether the user has uploaded a profile image.","example":true},"shouldMigrateToConnect":{"type":"boolean","description":"Whether the user should be migrated to Connect."},"userContactInfos":{"type":"array","items":{"$ref":"#/components/schemas/ContactInfo"},"description":"The contact information assigned to this user.","nullable":true},"resourceVersion":{"type":"integer","description":"The version of the entity, updated on every modification, to the ticks in UTC.\nNot identical to UpdatedOn.","format":"int64","readOnly":true,"example":637825154598057900},"tags":{"type":"array","items":{"$ref":"#/components/schemas/UserTagModel"},"description":"The tags of this user.","nullable":true},"teams":{"type":"array","items":{"$ref":"#/components/schemas/TeamModel"},"description":"The teams the user is associated to.","nullable":true},"isExternal":{"type":"boolean","description":"True if this entity is coming from an external workspace (awork Connect).","example":true},"accountId":{"type":"string","description":"The account id of the user.\nOnly used internally.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"The extended user model."},"ExternalTypeOfWork":{"type":"object","properties":{"id":{"type":"string","description":"The id of the task type.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the task type.","nullable":true,"example":"Sales Work"},"description":{"type":"string","description":"A short (max. 140 characters) description of the task type.","nullable":true,"example":"Tasks related to sales dept."},"icon":{"type":"string","description":"The icon associated with this task type.","nullable":true,"example":"attach_money"},"isArchived":{"type":"boolean","description":"Whether the type of work has been archived."},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-10T16:25:09.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-10T18:55:00.500Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"externalProjectIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The ids of the connected (external) projects that have this type of work.","nullable":true}},"additionalProperties":false,"description":"A Type of work enriched with the list of external project ids in which this TypeOfWork exists."},"ExternalWorkflow":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Website Design and Implementation"},"icon":{"type":"string","description":"The icon associated with this workflow.","nullable":true,"example":"workflow"},"isArchived":{"type":"boolean","description":"Whether the workflow has been archived."},"isExternal":{"type":"boolean","description":"True if the workflow is coming from an external workspace (awork Connect).\nFalse otherwise."},"externalProjectIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The ids of the connected (external) projects that use this workflow.","nullable":true}},"additionalProperties":false,"description":"A workflow enriched with the list of external project ids in which this workflow exists."},"Filter":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the filter.","nullable":true},"filterDefinition":{"$ref":"#/components/schemas/FilterDefinition"},"isExternal":{"type":"boolean","description":"Whether this filter is coming from an external workspace (awork Connect)."},"entityType":{"type":"string","description":"The entity type this filter targets. Can be 'projects', 'tasks', 'companies', 'users'.","nullable":true},"userId":{"type":"string","description":"The id of the user this filter was created for.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"filterQuery":{"type":"string","description":"The OData- query string that will be applied for querying this filter's underlying data type.","nullable":true},"workspaceAccessLevel":{"type":"string","description":"Determines the level of access to this filter granted to all workspace users.\nCan be either not set (no access), `read`, or `manage`.","nullable":true},"contributors":{"type":"array","items":{"$ref":"#/components/schemas/ContributorModel"},"description":"The users explicitly connected to this filter.","nullable":true},"teams":{"type":"array","items":{"$ref":"#/components/schemas/EntityToTeamModel"},"description":"The teams explicitly connected to this filter.","nullable":true}},"additionalProperties":false,"description":"Represents a saved filter including explicit sharing settings."},"FilterDefinition":{"type":"object","properties":{"conditionGroups":{"type":"array","items":{"$ref":"#/components/schemas/ConditionGroup"},"description":"The condition groups within the filter definition.","nullable":true},"rootConnector":{"$ref":"#/components/schemas/Connector"},"entityType":{"type":"string","description":"The entity type to filter on (e.g. \"tasks\", \"projects\", \"companies\", \"users\").","nullable":true}},"additionalProperties":false,"description":"The structured filter representation of a filter query."},"FilterDraft":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"entityType":{"type":"string","description":"The entity type this draft targets. Can be 'projects', 'tasks', 'companies', 'users'.","nullable":true},"filterDefinition":{"$ref":"#/components/schemas/FilterDefinition"},"filterId":{"type":"string","description":"The optional id of the saved filter this draft is based on.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The id of the user this draft belongs to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"FilterDraftForm":{"required":["filterDefinition"],"type":"object","properties":{"filterDefinition":{"$ref":"#/components/schemas/FilterDefinition"},"filterId":{"type":"string","description":"The optional id of the saved filter this draft is based on.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"FilterForm":{"required":["filterDefinition","name"],"type":"object","properties":{"name":{"maxLength":1000,"minLength":0,"type":"string","description":"The name of the filter."},"workspaceAccessLevel":{"maxLength":25,"minLength":0,"enum":["none","read","manage"],"type":"string","description":"Determines the level of access to this filter granted to all workspace users.\nCan be either not set (no access), `read`, or `manage`.","nullable":true},"filterDefinition":{"$ref":"#/components/schemas/FilterDefinition"}},"additionalProperties":false},"FilterFromPromptForm":{"required":["prompt"],"type":"object","properties":{"prompt":{"minLength":1,"type":"string","description":"The natural language prompt describing the desired filter.","example":"Show all my tasks that are overdue"},"existingFilterDefinition":{"$ref":"#/components/schemas/FilterDefinition"}},"additionalProperties":false,"description":"Form for generating a filter from a natural language prompt."},"FilterFromQueryForm":{"required":["filterQuery","name"],"type":"object","properties":{"name":{"maxLength":1000,"minLength":0,"type":"string","description":"The name of the filter."},"workspaceAccessLevel":{"maxLength":25,"minLength":0,"enum":["read","manage"],"type":"string","description":"Determines the level of access to this filter granted to all workspace users.\nCan be either not set (no access), `read`, or `manage`.","nullable":true},"filterQuery":{"minLength":1,"type":"string","description":"The filter query string in Awork OData format (e.g., \"taskStatus/type eq 'todo' and dueOn lt today+7d\")."}},"additionalProperties":false},"FilterSuggestion":{"type":"object","properties":{"id":{"type":"string","description":"Stable suggestion identifier for UI tracking.","nullable":true},"title":{"type":"string","description":"Short label shown to the user.","nullable":true},"prompt":{"type":"string","description":"Natural-language prompt represented by the suggestion.","nullable":true},"filterQuery":{"type":"string","description":"OData query fragment represented by the suggestion.","nullable":true},"filterDefinition":{"$ref":"#/components/schemas/FilterDefinition"}},"additionalProperties":false,"description":"A suggested filter extension that can be applied to a filter definition."},"FilterSuggestionsForm":{"type":"object","properties":{"filterDefinition":{"$ref":"#/components/schemas/FilterDefinition"}},"additionalProperties":false,"description":"Form for generating filter suggestions around an optional existing filter."},"FilterValue":{"type":"object","properties":{"constantValue":{"description":"The constant value.","nullable":true},"filterValueKind":{"$ref":"#/components/schemas/FilterValueKind"},"computedValueKind":{"$ref":"#/components/schemas/ComputedValueKind"},"daysOffset":{"type":"integer","description":"The offset for the computed value, if the value is computed and is of kind 'Today'.\nOnly need for Today computations for now.","format":"int32","nullable":true}},"additionalProperties":false,"description":"Represents the value of a Awork.Core.Models.Filters.FilterDefinition.Condition.Condition."},"FilterValueKind":{"enum":["Constant","Computed"],"type":"string","description":"The kind of the value in the context of a Awork.Core.Models.Filters.FilterDefinition.Condition.Value.FilterValue, either 'Constant' or 'Computed'."},"GeneralTaskForm":{"required":["name"],"type":"object","properties":{"name":{"maxLength":1000,"minLength":0,"type":"string","description":"The name of the task. Max allowed length: 1000 characters.","example":"Create logo concept"},"description":{"type":"string","description":"The description of the task. Max allowed length: 25000 characters.","nullable":true,"example":"We need to create a new impactful concept for the customer logo"},"isPrio":{"type":"boolean","description":"Whether this task is marked as priority.","nullable":true,"example":true},"startOn":{"type":"string","description":"The expected start date and time of the task.","format":"date-time","nullable":true,"example":"2023-03-03T17:00:00Z"},"dueOn":{"type":"string","description":"The expected due date and time of the task.","format":"date-time","nullable":true,"example":"2023-03-18T17:00:00Z"},"laneOrder":{"type":"integer","description":"The lane order defines the vertical position in the task board.","format":"int32","nullable":true},"plannedDuration":{"type":"integer","description":"The expected planned workload of the task, in seconds.","format":"int32","nullable":true,"example":21600},"deriveDatesFromSubtasks":{"type":"boolean","description":"When true, if the task is a parent task, the StartOn and DueOn will be\nautomatically adjusted to the start and due date of the subtasks.","nullable":true}},"additionalProperties":false},"GeneralTaskPostForm":{"required":["baseType","name"],"type":"object","properties":{"name":{"maxLength":1000,"minLength":0,"type":"string","description":"The name of the task. Max allowed length: 1000 characters.","example":"Create logo concept"},"description":{"type":"string","description":"The description of the task. Max allowed length: 25000 characters.","nullable":true,"example":"We need to create a new impactful concept for the customer logo"},"isPrio":{"type":"boolean","description":"Whether this task is marked as priority.","nullable":true,"example":true},"startOn":{"type":"string","description":"The expected start date and time of the task.","format":"date-time","nullable":true,"example":"2023-03-03T17:00:00Z"},"dueOn":{"type":"string","description":"The expected due date and time of the task.","format":"date-time","nullable":true,"example":"2023-03-18T17:00:00Z"},"laneOrder":{"type":"integer","description":"The lane order defines the vertical position in the task board.","format":"int32","nullable":true},"plannedDuration":{"type":"integer","description":"The expected planned workload of the task, in seconds.","format":"int32","nullable":true,"example":21600},"deriveDatesFromSubtasks":{"type":"boolean","description":"When true, if the task is a parent task, the StartOn and DueOn will be\nautomatically adjusted to the start and due date of the subtasks.","nullable":true},"typeOfWorkId":{"type":"string","description":"The id of the type of work for this task.\nIf not provided, defaults to the first type of work in the workspace.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"taskStatusId":{"type":"string","description":"The id of the status for this task.\nIf not provided, defaults to the first status of type 'todo'.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"order":{"type":"number","description":"The order of the task in a task status column.","format":"double","nullable":true,"example":3},"subtaskOrder":{"type":"number","description":"The order of the subtask relative to its parent task.","format":"double","nullable":true,"example":1},"entityId":{"type":"string","description":"The id of the entity the task is related to.\nFor private tasks, this is optional and will default to the current user's ID if not provided.\nFor project tasks, this is required and must be the project ID.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"baseType":{"minLength":1,"enum":["private","projecttask"],"type":"string","description":"The base type of the task. Can be 'private' for a private task or 'projecttask' for a project task.","example":"projecttask"},"parentId":{"type":"string","description":"The id of the parent task. Setting this value means this is a subtask.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"lists":{"type":"array","items":{"$ref":"#/components/schemas/ListAssignment"},"description":"The list(s) the new task should be added to.","nullable":true}},"additionalProperties":false},"GetNextOccurrenceForm":{"required":["recurrencyRule"],"type":"object","properties":{"recurrencyRule":{"minLength":1,"type":"string","description":"The recurrence rule as cron expression. We support all expressions which cronos supports\n(https://github.com/HangfireIO/Cronos).\nThe number of occurrences is limited to 24 a day.","example":"\"0 0 1 * * ?\""},"recurrencyInterval":{"type":"integer","description":"The interval of the executed expression. If the value is 3, only the third time of the expression the recurrence is\nactually executed.","format":"int32","nullable":true,"example":1},"relativeDueOn":{"type":"integer","description":"The relative due date and time of the task created from this recurrence rule, in seconds,\nfrom the moment of creating the task by a recurrence rule.","format":"int64","nullable":true,"example":3600},"recurrencyStartOn":{"type":"string","description":"DateTime when recurring task creation will start, considering the set Recurrency Rule and Recurrency Interval.","format":"date-time","nullable":true,"example":"2021-03-12T11:00:00Z"},"recurrencyTimezone":{"type":"string","description":"The timezone of the Recurrency Rule. If not set, will use the requesting user's timezone.","nullable":true,"example":"Europe/Berlin"}},"additionalProperties":false},"GetSubtasksDatesResult":{"type":"object","properties":{"earliestStartOn":{"type":"string","format":"date-time","nullable":true},"latestDueOn":{"type":"string","format":"date-time","nullable":true}},"additionalProperties":false},"GetTimeBookingForUsersResult":{"type":"object","properties":{"userId":{"type":"string","description":"The user id to which the time bookings belong.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"timeBookings":{"type":"array","items":{"$ref":"#/components/schemas/TimeBooking"},"description":"The list of time bookings of the user.","nullable":true}},"additionalProperties":false},"GetUsersAvailabilityResult":{"type":"object","properties":{"userId":{"type":"string","description":"The id of the user.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"totalCapacity":{"type":"integer","description":"The total capacity of the user (expressed in seconds) in the provided timeframe.","format":"int32"},"usedCapacity":{"type":"integer","description":"The used capacity of the user (expressed in seconds) in the provided timeframe.","format":"int32"}},"additionalProperties":false},"GetWorkloadForUsersResult":{"type":"object","properties":{"userId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"workloads":{"type":"array","items":{"$ref":"#/components/schemas/WorkloadModel"},"nullable":true}},"additionalProperties":false},"IDefaultNameModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the entity.","nullable":true}},"additionalProperties":false},"ImportDefaultModel":{"type":"object","properties":{"id":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","nullable":true}},"additionalProperties":false},"ImportStatusModel":{"type":"object","properties":{"id":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","nullable":true},"type":{"type":"string","nullable":true}},"additionalProperties":false},"ImportTaskBundleForm":{"required":["sourceTaskBundleIds","targetTaskBundleId"],"type":"object","properties":{"sourceTaskBundleIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The list of task bundle ids to import into the target task bundle."},"targetTaskBundleId":{"type":"string","description":"The task bundle to import the other task bundles into.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"InitialDashboardModel":{"type":"object","properties":{"roleId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"InviteData":{"type":"object","properties":{"projectId":{"type":"string","description":"The id of the project that will be connected.","nullable":true},"homeProjectName":{"type":"string","description":"The name of the project that will be connected.","nullable":true},"homeWorkspaceId":{"type":"string","description":"The id of the workspace where the project is.","nullable":true},"homeWorkspaceSubdomains":{"type":"array","items":{"type":"string"},"description":"The list of subdomains of the workspace where the project is.","nullable":true},"homeWorkspacePublicImageToken":{"type":"string","description":"The token that can be used to request the home workspace's public image.","nullable":true},"homeWorkspaceName":{"type":"string","description":"The name of the workspace where the project is.","nullable":true},"homeUserFullName":{"type":"string","description":"The full name of the user that is sharing the project.","nullable":true},"homeUserPublicImageToken":{"type":"string","description":"The token that can be used to request the inviter user's public image.","nullable":true}},"additionalProperties":false},"LinkCustomFieldDefinitionForm":{"required":["customFieldDefinitionId","order"],"type":"object","properties":{"customFieldDefinitionId":{"type":"string","description":"The id of the custom field definition.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"order":{"type":"number","description":"The order of the custom field definition.","format":"double","example":1}},"additionalProperties":false,"description":"Represents a form for linking a custom field definition."},"LinkWorkflowForm":{"required":["workflowId"],"type":"object","properties":{"workflowId":{"type":"string","description":"The Id of the workflow to link.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"projectStatusMapping":{"type":"array","items":{"$ref":"#/components/schemas/ProjectStatusMappingEntry"},"description":"Maps existing project status Ids to workflow project status Ids.\nRequired if the project/template has existing project statuses.","nullable":true},"taskStatusMapping":{"type":"array","items":{"$ref":"#/components/schemas/TaskStatusMappingEntry"},"description":"Maps existing task status Ids to workflow task status Ids.\nRequired if the project/template has existing task statuses.","nullable":true},"keepCustomFields":{"type":"boolean","description":"Whether to keep existing non-workflow custom fields when linking the workflow.\nIf false, existing non-workflow task custom fields will be deleted.\nDefault: true (keep custom fields).","nullable":true},"keepCustomAutomations":{"type":"boolean","description":"Whether to keep existing non-workflow automations when linking the workflow.\nIf false, custom automations will be deleted.\nDefault: true (keep custom automations).","nullable":true}},"additionalProperties":false,"description":"The form for linking a workflow to a project or project template."},"ListAssignment":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The id of the list, the task should be assigned to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"order":{"type":"number","description":"The order of the task in the list.","format":"double","example":3}},"additionalProperties":false},"LiveEditingUpdateRequest":{"required":["content"],"type":"object","properties":{"content":{"minLength":1,"type":"string","description":"The content to update. For tasks and projects, this is the description. For documents, this is the content."}},"additionalProperties":false},"Mentions":{"type":"object","properties":{"isMentioningPersonalAgent":{"type":"boolean","description":"Gets or sets whether the comment mentions the awork Agent."},"users":{"type":"array","items":{"$ref":"#/components/schemas/ConnectedUserModel"},"description":"All users which have been mentioned in the comment.","nullable":true},"agentIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Stable ids of agents mentioned directly in the comment.","nullable":true},"everyUserHadPermissions":{"type":"boolean","description":"If every user was able to receive the mention notification. If not, one of the users had no permissions to.","example":true}},"additionalProperties":false,"description":"A mention is the tag of a user on a specific comment, so the user is notified."},"MigrateBundlesForm":{"type":"object","properties":{"taskbundleIds":{"type":"array","items":{"type":"string","format":"uuid"},"nullable":true},"projectTemplateId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"MigrateGuestForm":{"type":"object","properties":{"targetWorkspaceId":{"type":"string","description":"The workspace id to migrate the guest to.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"MinimalChecklistProjectMember":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"MinimalChecklistProjectWithMembers":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Website Design and Implementation"},"startDate":{"type":"string","description":"The start date of the project.","format":"date-time","nullable":true},"dueDate":{"type":"string","description":"The due date of the project.","format":"date-time","nullable":true},"color":{"type":"string","description":"The color of the project for display purposes in awork.\nCan be null when no color assigned.","nullable":true,"example":"purple"},"isPrivate":{"type":"boolean","description":"True if the project is private."},"hasImage":{"type":"boolean","description":"Whether the project has an image."},"projectStatus":{"$ref":"#/components/schemas/DefaultStatusModel"},"members":{"type":"array","items":{"$ref":"#/components/schemas/MinimalChecklistProjectMember"},"description":"The members of the project.","nullable":true}},"additionalProperties":false},"MinimalChecklistUser":{"type":"object","properties":{"firstName":{"type":"string","description":"The firstname of the user.","nullable":true},"lastName":{"type":"string","description":"The lastname of the user.","nullable":true},"hasImage":{"type":"boolean","description":"Whether the user has an image."}},"additionalProperties":false},"MinimalContributorModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the contributor.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The id of the user this contributor references.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"type":"string","description":"Determines the level of access granted to this contributor with respect to the specific entity.\nCan be either set to `read` or `manage`.","nullable":true}},"additionalProperties":false},"MinimalEntityToTeamModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity to team.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"teamId":{"type":"string","description":"The id of the team this entity to team references.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"type":"string","description":"Determines the level of access granted to this entity to team with respect to the specific entity.\nCan be either set to `read` or `manage`.","nullable":true}},"additionalProperties":false},"MinimalPublicHoliday":{"type":"object","properties":{"date":{"type":"string","description":"The date of the public holiday.","format":"date-time","example":"2024-12-25T00:00:00Z"},"name":{"type":"string","description":"The English name of the public holiday.","nullable":true,"example":"Christmas Day"},"localName":{"type":"string","description":"The local (native) name of the public holiday.","nullable":true,"example":"Erster Weihnachtstag"}},"additionalProperties":false},"MinimalUserWithAbsenceRegionId":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"firstName":{"type":"string","nullable":true},"lastName":{"type":"string","nullable":true},"hasImage":{"type":"boolean","nullable":true},"isDeactivated":{"type":"boolean"},"language":{"type":"string","nullable":true},"isExternal":{"type":"boolean"},"absenceRegionId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"MoveUserInRole":{"type":"object","properties":{"userId":{"type":"string","description":"The id of the user to be moved to another role.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"toRoleId":{"type":"string","description":"The id of the role the user should be moved to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"MultiStatusResult":{"type":"object","properties":{"ok":{"$ref":"#/components/schemas/StatusResult"},"notFound":{"$ref":"#/components/schemas/StatusResult"},"unauthorized":{"$ref":"#/components/schemas/StatusResult"},"badRequest":{"$ref":"#/components/schemas/StatusResult"}},"additionalProperties":false},"NestedBaseTypeModel":{"type":"object","properties":{"id":{"type":"string","description":"The identifier of the nested model.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Design"},"icon":{"type":"string","description":"The icon of the type.","nullable":true,"example":"thumb_up"}},"additionalProperties":false},"NestedCompanyModel":{"type":"object","properties":{"id":{"type":"string","description":"The identifier of the nested model.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Design"},"hasImage":{"type":"boolean","description":"Whether the company has a profile image.","example":true},"description":{"type":"string","description":"The description of the company.","nullable":true,"example":"One of our customers"}},"additionalProperties":false},"NestedCompanyModelForProjects":{"type":"object","properties":{"id":{"type":"string","description":"The identifier of the nested model.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Design"},"hasImage":{"type":"boolean","description":"Whether the company has a profile image.","example":true},"description":{"type":"string","description":"The description of the company.","nullable":true,"example":"A brand strategy and design agency"},"tags":{"type":"array","items":{"$ref":"#/components/schemas/DefaultTagModel"},"description":"The tags of the company.","nullable":true}},"additionalProperties":false},"NestedCompanyModelForTasks":{"type":"object","properties":{"id":{"type":"string","description":"The identifier of the nested model.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Design"},"hasImage":{"type":"boolean","description":"Whether the company has a profile image.","example":true},"description":{"type":"string","description":"The description of the company.","nullable":true,"example":"NCNSTN Brand Design Company"}},"additionalProperties":false},"NestedDocumentEventModel":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","nullable":true},"rootDocumentCreatedBy":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"documentSpaceId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"documentSpace":{"$ref":"#/components/schemas/PermissionDocumentSpace"},"projectId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"project":{"$ref":"#/components/schemas/NestedProjectEventModel"},"isPrivate":{"type":"boolean"},"isExternal":{"type":"boolean"},"isHiddenForConnectUsers":{"type":"boolean"},"workspaceAccessLevel":{"type":"string","nullable":true},"contributors":{"type":"array","items":{"$ref":"#/components/schemas/PermissionDocumentContributor"},"nullable":true},"teams":{"type":"array","items":{"$ref":"#/components/schemas/PermissionDocumentToTeam"},"nullable":true},"inheritedWorkspaceAccessFromDocumentId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"inheritedWorkspaceAccessFromDocument":{"$ref":"#/components/schemas/PermissionInheritedWorkspaceAccessFromDocument"}},"additionalProperties":false},"NestedModel":{"type":"object","properties":{"id":{"type":"string","description":"The identifier of the nested model.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Design"}},"additionalProperties":false},"NestedParentTaskModel":{"type":"object","properties":{"id":{"type":"string","description":"The identifier of the nested model.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Design"},"createdBy":{"type":"string","description":"The id of the user who created this task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The id of the user of the private task. Null for project tasks.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"assigneeIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"List of assignee user ids of this task.","nullable":true}},"additionalProperties":false},"NestedProjectEventModel":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","nullable":true},"createdBy":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"teams":{"type":"array","items":{"$ref":"#/components/schemas/PermissionTeam"},"nullable":true},"members":{"type":"array","items":{"$ref":"#/components/schemas/PermissionProjectMember"},"nullable":true},"isPrivate":{"type":"boolean"},"isExternal":{"type":"boolean"}},"additionalProperties":false},"NestedProjectModelForTasks":{"type":"object","properties":{"id":{"type":"string","description":"The identifier of the nested model.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Design"},"projectKey":{"type":"string","description":"The unique project key within the workspace (e.g., \"NIKE\").\nMaximum 32 characters, uppercase letters, numbers, and dashes only.","nullable":true},"projectStatus":{"$ref":"#/components/schemas/NestedStatusModel"},"company":{"$ref":"#/components/schemas/NestedCompanyModelForTasks"},"companyId":{"type":"string","description":"The companyId of the project.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectType":{"$ref":"#/components/schemas/NestedTypeModel"},"hasImage":{"type":"boolean","description":"Whether the project has an image.","example":true},"isPrivate":{"type":"boolean","description":"Whether the project is private."},"isBillableByDefault":{"type":"boolean","description":"Whether the project is billable by default.","nullable":true},"members":{"type":"array","items":{"$ref":"#/components/schemas/ProjectMemberModel"},"description":"The list of all members of the project.","nullable":true},"color":{"type":"string","description":"The color of the project for display purposes in awork.\nCan be null when no color assigned.","nullable":true,"example":"purple"},"createdBy":{"type":"string","description":"The created by of the project.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"teams":{"type":"array","items":{"$ref":"#/components/schemas/NestedTeamModel"},"description":"The ids of the team the project is associated to.","nullable":true},"customFields":{"type":"array","items":{"$ref":"#/components/schemas/ProjectCustomField"},"description":"Custom fields of the project.","nullable":true},"isExternal":{"type":"boolean","description":"True if the model is coming from an external workspace (awork Connect).\nFalse otherwise."}},"additionalProperties":false},"NestedStatusModel":{"type":"object","properties":{"id":{"type":"string","description":"The identifier of the nested model.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Design"},"description":{"type":"string","description":"The description of the type.","nullable":true,"example":"Work in progress"},"type":{"type":"string","description":"The type of the status.","nullable":true,"example":"todo"},"isArchived":{"type":"boolean","description":"Whether the type is archived.","example":false}},"additionalProperties":false},"NestedTaskEventModel":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","nullable":true},"baseType":{"type":"string","nullable":true},"project":{"$ref":"#/components/schemas/NestedProjectEventModel"},"parentTask":{"$ref":"#/components/schemas/PermissionParentTask"},"assignees":{"type":"array","items":{"$ref":"#/components/schemas/PermissionAssignee"},"nullable":true},"projectId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"createdBy":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"parentId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"isExternal":{"type":"boolean"},"isHiddenForConnectUsers":{"type":"boolean"},"taskStatus":{"$ref":"#/components/schemas/NestedStatusModel"}},"additionalProperties":false},"NestedTaskList":{"type":"object","properties":{"id":{"type":"string","description":"The id of the task list.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this task list was created.","format":"date-time","example":"2021-03-22T15:00:00Z"},"createdBy":{"type":"string","description":"The id of the user who created this task list.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this task list was last modified.","format":"date-time","example":"2021-03-22T16:30:00Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this task list.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the list.","nullable":true,"example":"Product and Marketing To-Dos"},"order":{"type":"number","description":"The order of the list.","format":"double","nullable":true,"example":2},"plannedDuration":{"type":"integer","description":"The planned duration for this task list, in seconds.","format":"int32","nullable":true},"totalPlannedDuration":{"type":"integer","description":"The total planned duration for this task list, including all primary tasks (parent tasks which have this tacklist as PrimaryTaskListId), in seconds.\nCalculated: sum PlannedDuration of primary tasks in list\nArchived task lists are not included in the calculation.","format":"int64","nullable":true},"totalPlannedDurationWithHierarchy":{"type":"integer","description":"The total planned duration for this task list, including all primary tasks (parent tasks which have this task list as PrimaryTaskListId), in seconds.\nCalculated: max(PlannedDuration, sum TotalPlannedDurationWithHierarchy of primary tasks in list)\nArchived task lists are not included in the calculation.","format":"int64","nullable":true},"isArchived":{"type":"boolean","description":"Whether the task list has been archived.","example":false},"isHiddenForConnectUsers":{"type":"boolean","description":"True if the task in this list will be not visible for external workspace users. \nFalse otherwise."}},"additionalProperties":false},"NestedTaskStatusModel":{"type":"object","properties":{"id":{"type":"string","description":"The identifier of the nested model.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Design"},"description":{"type":"string","description":"The description of the type.","nullable":true,"example":"Work in progress"},"type":{"type":"string","description":"The type of the status.","nullable":true,"example":"todo"},"order":{"type":"number","description":"The order of the task status in a task.","format":"double","nullable":true,"example":1},"icon":{"type":"string","description":"The icon of the task status in a task.","nullable":true,"example":"arrow_forward"}},"additionalProperties":false},"NestedTaskTypeModel":{"type":"object","properties":{"id":{"type":"string","description":"The identifier of the nested model.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Design"},"icon":{"type":"string","description":"The icon of the type.","nullable":true,"example":"thumb_up"},"isArchived":{"type":"boolean","description":"Whether the type is archived.","example":false}},"additionalProperties":false},"NestedTeamModel":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"NestedTypeModel":{"type":"object","properties":{"id":{"type":"string","description":"The identifier of the nested model.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Design"},"icon":{"type":"string","description":"The icon of the type.","nullable":true,"example":"thumb_up"},"isArchived":{"type":"boolean","description":"Whether the type is archived.","example":false}},"additionalProperties":false},"NestedUserModelForTasks":{"type":"object","properties":{"id":{"type":"string","description":"The identifier of the nested model.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"firstName":{"type":"string","description":"The first name of the user.","nullable":true,"example":"Carla"},"lastName":{"type":"string","description":"The last name of the user.","nullable":true,"example":"Creative"},"hasImage":{"type":"boolean","description":"Whether this user has a profile image.","nullable":true,"example":true},"plannedEffort":{"type":"integer","description":"The planned effort of the user assigned to the task, in seconds.","format":"int32"},"isDistributedPlannedEffort":{"type":"boolean","description":"If the PlannedEffort was calculated as distributed effort."},"updatedOn":{"type":"string","description":"The date this task assignee was last modified.","format":"date-time","example":"2020-02-30T18:52:54.945Z"},"isExternal":{"type":"boolean","description":"True if the model is coming from an external workspace (awork Connect).\nFalse otherwise."}},"additionalProperties":false},"NestedUserTeamModel":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"This repeated model (copy of NestedTeamModel) is required to avoid a bug\nof the Automapper.Extensions.EspressionMapping library that throws an error if in the same expression\nwe apply a filter to 2 different models containing the same submodel (e.g: Teams contained in both Project, User and\nTasks))\nPlease do not remove it."},"ObjectPagedResult":{"type":"object","properties":{"items":{"type":"array","items":{},"nullable":true},"totalCount":{"type":"integer","format":"int32"},"pageNumber":{"type":"integer","format":"int32"},"pageSize":{"type":"integer","format":"int32"},"sortPropertyName":{"type":"string","nullable":true},"sortOrder":{"$ref":"#/components/schemas/SortOrder"},"nextCursor":{"type":"string","nullable":true},"itemCount":{"type":"integer","format":"int32","readOnly":true}},"additionalProperties":false},"ObjectSyncResponse":{"type":"object","properties":{"updated":{"type":"array","items":{},"description":"The list of updated items. This includes newly created or modified entities since the last sync.","nullable":true},"deleted":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The list of deleted entity Ids. These are the entities that have been removed since the last sync.","nullable":true},"unfilteredUpdated":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The list of entity Ids that were updated since the last sync but do NOT match the current filter criteria.\nThese are entities that are not included in Updated or Deleted lists but may need to be removed from the frontend's filtered store.\nThe frontend should check if any of these exist in its local filtered store and remove them if present.","nullable":true},"inaccessible":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The list of entity Ids that changed since the last sync but the user no longer has access to.\nThese are entities that the user previously had access to (and may exist in the frontend store from previous syncs)\nbut can no longer access due to permission changes (e.g., removed as project member, role downgraded).\nThe frontend should remove these entities from the store.","nullable":true},"reconciliationRequired":{"type":"boolean","description":"Indicates that a permission-triggered full sync omitted cleanup IDs and the client must reconcile its tracked IDs."},"lastSync":{"type":"string","description":"The timestamp of the last sync operation. This indicates the point in time when the data was last synchronized.","format":"date-time"}},"additionalProperties":false},"OnboardingLeaderboardModel":{"type":"object","properties":{"userId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"completionRate":{"type":"integer","format":"int32"}},"additionalProperties":false},"OnboardingTaskProgress":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"key":{"type":"string","nullable":true},"isDone":{"type":"boolean"},"completedOn":{"type":"string","format":"date-time","nullable":true},"createdOn":{"type":"string","format":"date-time"},"createdBy":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","format":"date-time"},"updatedBy":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"OnboardingTaskProgressMigrationResult":{"type":"object","properties":{"scope":{"type":"string","description":"Gets or sets the migration scope.","nullable":true},"workspaceId":{"type":"string","description":"Gets or sets the migrated workspace, if the request targeted one workspace.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"Gets or sets the migrated user, if the request targeted one user.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"runsInBackground":{"type":"boolean","description":"Gets or sets whether the request uses background processing."}},"additionalProperties":false,"description":"Describes the onboarding progress migration started by an internal request."},"OnboardingTaskProgressUpdateForm":{"required":["isDone"],"type":"object","properties":{"isDone":{"type":"boolean"}},"additionalProperties":false},"Operator":{"enum":["Equal","NotEqual","GreaterThan","GreaterThanOrEqual","LessThan","LessThanOrEqual","Contains","DoesNotContain","Between","IsSet","IsNotSet","WithinThisWeek","WithinThisMonth"],"type":"string","description":"The supported operators for a filter condition.\nThese operators map directly to UI filter options."},"Permission":{"type":"object","properties":{"f":{"type":"string","nullable":true},"al":{"type":"array","items":{"type":"string"},"nullable":true}},"additionalProperties":false},"PermissionAssignee":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"PermissionContributor":{"type":"object","properties":{"userId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"type":"string","nullable":true}},"additionalProperties":false},"PermissionDocumentContributor":{"type":"object","properties":{"documentId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"inheritedFromDocumentContributorId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"inheritedDocumentContributor":{"$ref":"#/components/schemas/PermissionInheritedDocumentContributor"},"accessLevel":{"type":"string","nullable":true}},"additionalProperties":false},"PermissionDocumentSpace":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"isExternal":{"type":"boolean"},"workspaceAccessLevel":{"type":"string","nullable":true},"contributors":{"type":"array","items":{"$ref":"#/components/schemas/PermissionContributor"},"nullable":true},"teams":{"type":"array","items":{"$ref":"#/components/schemas/PermissionEntityToTeam"},"nullable":true}},"additionalProperties":false},"PermissionDocumentToTeam":{"type":"object","properties":{"documentId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"teamId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"inheritedFromDocumentToTeamId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"inheritedDocumentToTeam":{"$ref":"#/components/schemas/PermissionInheritedDocumentToTeam"},"accessLevel":{"type":"string","nullable":true}},"additionalProperties":false},"PermissionEntityToTeam":{"type":"object","properties":{"teamId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"type":"string","nullable":true}},"additionalProperties":false},"PermissionFullModel":{"type":"object","properties":{"feature":{"type":"string","description":"The identifying key of the feature.","nullable":true,"example":"pmd"},"accessLevels":{"type":"array","items":{"type":"string"},"description":"The list of access levels assigned to the feature.","nullable":true,"example":["read"]}},"additionalProperties":false},"PermissionInheritedDocumentContributor":{"type":"object","properties":{"documentId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"type":"string","nullable":true}},"additionalProperties":false},"PermissionInheritedDocumentToTeam":{"type":"object","properties":{"documentId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"type":"string","nullable":true}},"additionalProperties":false},"PermissionInheritedWorkspaceAccessFromDocument":{"type":"object","properties":{"workspaceAccessLevel":{"type":"string","nullable":true}},"additionalProperties":false},"PermissionOfGlobalRole":{"type":"object","properties":{"feature":{"type":"string","description":"The feature these permissions belong to.","nullable":true,"example":"pmd"},"accessLevels":{"type":"array","items":{"type":"string"},"description":"The access levels applied to this feature.","nullable":true,"example":["read"]},"id":{"type":"string","description":"The id of the permission.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time"},"subdomains":{"type":"array","items":{"type":"string"},"description":"The workspace's subdomains. Read-only.","nullable":true,"example":["ncnstn"]},"identityIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The ids of identities assigned to this workspace. Read-only.","nullable":true}},"additionalProperties":false},"PermissionOfProjectRole":{"type":"object","properties":{"feature":{"type":"string","description":"The feature these permissions belong to.","nullable":true,"example":"pmd"},"accessLevels":{"type":"array","items":{"type":"string"},"description":"The access levels applied to this feature.","nullable":true,"example":["read"]},"id":{"type":"string","description":"The id of the permission.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time"}},"additionalProperties":false},"PermissionOfProjectRoleForm":{"type":"object","properties":{"feature":{"type":"string","description":"The feature these permissions belong to.","nullable":true,"example":"project-master-data"},"accessLevels":{"type":"array","items":{"type":"string"},"description":"The access levels applied to this feature.","nullable":true,"example":["read"]}},"additionalProperties":false},"PermissionOfRoleForm":{"type":"object","properties":{"feature":{"type":"string","description":"The feature these permissions belong to.","nullable":true,"example":"pmd"},"accessLevels":{"type":"array","items":{"type":"string"},"description":"The access levels applied to this feature.","nullable":true,"example":["read"]}},"additionalProperties":false},"PermissionParentTask":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"createdBy":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"assigneeIds":{"type":"array","items":{"type":"string","format":"uuid"},"nullable":true}},"additionalProperties":false},"PermissionProject":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","nullable":true},"createdBy":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"teams":{"type":"array","items":{"$ref":"#/components/schemas/PermissionTeam"},"nullable":true},"members":{"type":"array","items":{"$ref":"#/components/schemas/PermissionProjectMember"},"nullable":true},"isPrivate":{"type":"boolean"},"isExternal":{"type":"boolean"}},"additionalProperties":false},"PermissionProjectMember":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"projectRoleId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"PermissionTeam":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","nullable":true}},"additionalProperties":false},"PlannedEffortForm":{"required":["userId"],"type":"object","properties":{"userId":{"type":"string","description":"The id of the user that is assigned to the task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"plannedEffort":{"type":"integer","description":"The planned effort of the user assigned to the task, in seconds.","format":"int32","nullable":true}},"additionalProperties":false},"PlannerAnalyzerOptionalParameters":{"type":"object","properties":{"userFilter":{"type":"string","nullable":true},"projectFilter":{"type":"string","nullable":true},"taskFilterIds":{"type":"array","items":{"type":"string","format":"uuid"},"nullable":true}},"additionalProperties":false},"PlannerChecklist":{"type":"object","properties":{"id":{"type":"string","description":"The id of the checklist.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The id of the user that the checklist belongs to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"timeRangeInDays":{"type":"integer","description":"The time range in days that the checklist is for.","format":"int32"},"fromDate":{"type":"string","description":"The day that the checklist analysis starts from.","format":"date"},"toDate":{"type":"string","description":"The day that the checklist analysis ends on.","format":"date"},"parameters":{"$ref":"#/components/schemas/PlannerAnalyzerOptionalParameters"},"checklistItems":{"type":"array","items":{"$ref":"#/components/schemas/PlannerChecklistItem"},"description":"The list of items for the checklist.","nullable":true}},"additionalProperties":false},"PlannerChecklistItem":{"type":"object","properties":{"id":{"type":"string","description":"The id of the checklist item.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"plannerChecklistId":{"type":"string","description":"The id of the checklist that the item belongs to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"type":{"type":"string","description":"The type of the checklist item.\nIt depends on the analyzer that created the item.\nE.g. \"upcoming-project-deadlines-milestones\", \"upcoming-tasks-deadlines\", etc.","nullable":true},"isChecked":{"type":"boolean","description":"Whether the item is checked or not."},"values":{"type":"string","description":"This represents the json serialized values of the item.\nThe specific properties of the values depend on the type of the item.","nullable":true},"userId":{"type":"string","description":"(optional) The id of the user this checklistItem refers to.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"user":{"$ref":"#/components/schemas/MinimalChecklistUser"},"projectId":{"type":"string","description":"(optional) The id of the project this checklistItem refers to.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"project":{"$ref":"#/components/schemas/MinimalChecklistProjectWithMembers"},"taskViewId":{"type":"string","description":"(optional) The id of the task view this checklistItem refers to.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"PlannerMoveType":{"enum":["DateOnly","LaneOnly","DateAndLane","AssigneeChange","AssigneeAndLane","AssigneeAndDate"],"type":"string","description":"Defines the type of move operation in the planner."},"PlannerOperationData":{"required":["referenceTaskId"],"type":"object","properties":{"referenceTaskId":{"type":"string","description":"The reference task that was dragged (determines delta calculation).","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"targetStartDate":{"type":"string","description":"Target start date for the reference task (used to calculate start date delta).\nNull if no start date change.","format":"date-time","nullable":true},"targetEndDate":{"type":"string","description":"Target end date for the reference task (used to calculate end date delta).\nNull if no end date change. Allows extending or shortening task duration.","format":"date-time","nullable":true},"targetLaneOrder":{"type":"integer","description":"Target lane order for vertical moves in planner.\nNull if no lane change.","format":"int32","nullable":true},"setDates":{"type":"boolean","description":"Whether to set absolute dates for the task (not delta-based).\nWhen true, only a single task can be modified.\nOnly applies when TargetStartDate or TargetEndDate is provided."},"moveType":{"$ref":"#/components/schemas/PlannerMoveType"}},"additionalProperties":false,"description":"Data specific to planner batch operations for handling drag and drop in the planner UI."},"PlannerProjectMemberModel":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"projectRoleId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"firstName":{"type":"string","description":"The first name of the user.","nullable":true,"example":"Lisa"},"lastName":{"type":"string","description":"The last name of the user.","nullable":true,"example":"Smith"},"hasImage":{"type":"boolean","description":"Whether the user has an image.","nullable":true,"example":true}},"additionalProperties":false},"PlanningSession":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The id of the user the planning session is for.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"planningSessionType":{"type":"string","description":"The type of planning session. Can be 'private' or 'team'.","nullable":true},"forecastFrom":{"type":"integer","description":"The number of days from which the more coarse forecast starts.","format":"int32","example":7},"usersToPlan":{"$ref":"#/components/schemas/UsersToPlan"},"tasksToPlan":{"$ref":"#/components/schemas/TasksToPlan"},"projectsToPlan":{"$ref":"#/components/schemas/ProjectsToPlan"}},"additionalProperties":false},"PlanningSessionForm":{"type":"object","properties":{"forecastFrom":{"type":"integer","description":"The number of days from which the more coarse forecast starts.","format":"int32","example":7},"usersToPlan":{"$ref":"#/components/schemas/UsersToPlanForm"},"tasksToPlan":{"$ref":"#/components/schemas/TasksToPlanForm"},"projectsToPlan":{"$ref":"#/components/schemas/ProjectsToPlanForm"}},"additionalProperties":false},"PostPlannerChecklistParameters":{"required":["timeRangeInDays"],"type":"object","properties":{"timeRangeInDays":{"maximum":2147483647,"minimum":1,"type":"integer","description":"The number of days that we will consider (from today) for the planner analysis.\nAt least 1 day is required.","format":"int32"},"projectFilter":{"type":"string","description":"(optional) The query filter for the project. The checklist will take into account only results relevant to those projects.","nullable":true},"userFilter":{"type":"string","description":"(optional) The query filter for the user. The checklist will take into account only results relevant to those users.","nullable":true},"taskFilterIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"(optional) Create, for each task filter, a checklist item.","nullable":true}},"additionalProperties":false},"PostUserDeactivateByUserIdResponse":{"type":"object","properties":{"privateProjectManagersReassignedCount":{"type":"integer","format":"int32"},"privateProjectsDeletedCount":{"type":"integer","format":"int32"}},"additionalProperties":false},"PreviewResult":{"type":"object","properties":{"url":{"type":"string","nullable":true},"imageUrl":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"description":{"type":"string","nullable":true},"imageBytes":{"type":"string","format":"byte","nullable":true},"imageHeight":{"type":"integer","format":"int32","nullable":true},"imageWidth":{"type":"integer","format":"int32","nullable":true},"imageFormat":{"type":"string","nullable":true},"error":{"type":"string","nullable":true}},"additionalProperties":false},"Project":{"required":["name"],"type":"object","properties":{"name":{"maxLength":1000,"minLength":0,"type":"string","description":"The name of the Project. Max allowed length: 1000 characters.","example":"Website Design"},"isPrivate":{"type":"boolean","description":"Whether this is a private project only visible to members and the creator.\nDefaults to false.\nCan only be changed from public to private if no times have been tracked on this project.\nCan always be made public.","example":false},"description":{"maxLength":25000,"minLength":0,"type":"string","description":"The project description. Max allowed length: 25000 characters.","nullable":true,"example":"Sitemap, design, assets and implementation of the new online presence."},"startDate":{"type":"string","description":"The start date of the project.","format":"date-time","nullable":true,"example":"2022-03-01T00:00:00Z"},"dueDate":{"type":"string","description":"The due date of the project.","format":"date-time","nullable":true,"example":"2022-05-01T00:00:00Z"},"companyId":{"type":"string","description":"The id of the company.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"timeBudget":{"type":"integer","description":"The time budget the project has, in seconds.","format":"int32","nullable":true,"example":576000},"isBillableByDefault":{"type":"boolean","description":"Whether project times should be billable by default.","nullable":true,"example":true},"projectTypeId":{"type":"string","description":"The id of the project type of this project.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"color":{"maxLength":14,"minLength":0,"type":"string","description":"The color of the project for display purposes in awork.\nThe supported colors are defined by the awork frontend.\nCan be null when no color assigned.","nullable":true,"example":"purple"},"deductNonBillableHours":{"type":"boolean","description":"Whether to deduct non-billable hours from project budgets."},"isProjectKeyVisible":{"type":"boolean","description":"Whether project key should be visible for this project.\nIf null, it will use the workspace default setting.","nullable":true},"projectStatusId":{"type":"string","description":"The id of the project status.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"projectTemplateId":{"type":"string","description":"The id of the template which is used to create the project.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"publicProjectTemplateId":{"type":"string","description":"The id of the public template which is used to create the project.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"workflowId":{"type":"string","description":"The id of the workflow to link to the project.\nCannot be specified if ProjectTemplateId is set.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"id":{"type":"string","description":"Id of the project.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"projectKey":{"type":"string","description":"The unique project key within the workspace (e.g., \"NIKE\").\nMaximum 32 characters, uppercase letters, numbers, and dashes only.","nullable":true},"hasImage":{"type":"boolean","description":"Whether the project has an image.","example":true},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"closedOn":{"type":"string","description":"The date the project was set to closed.","format":"date-time","nullable":true,"example":null},"closedBy":{"type":"string","description":"The user who closed the project.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"createdByProjectTemplateId":{"type":"string","description":"The id of the template the project was created from.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectType":{"$ref":"#/components/schemas/NestedTypeModel"},"projectStatus":{"$ref":"#/components/schemas/ExtendedProjectStatusModel"},"company":{"$ref":"#/components/schemas/NestedCompanyModelForProjects"},"tags":{"type":"array","items":{"$ref":"#/components/schemas/ProjectTagModel"},"description":"The tags for this project.","nullable":true},"plannedDuration":{"type":"integer","description":"The total planned time of the project, in seconds.\nThe time is calculated as te sum of the planned duration by all project tasks.","format":"int64","nullable":true,"example":432000,"deprecated":true},"totalPlannedDurationWithHierarchy":{"type":"integer","description":"The total planned duration of the project with hierarchy, in seconds.\nCalculated based on the planned durations of tasks and task lists of the project.\nSum of Sum(TotalPlannedDurationWithHierarchy of all task lists) and\nSum(TotalPlannedDurationWithHierarchy of all parent tasks without list)","format":"int64","nullable":true,"example":432000},"tasksCount":{"type":"integer","description":"The number of all tasks related to the project.","format":"int32","nullable":true,"example":12},"tasksDoneCount":{"type":"integer","description":"The number of all tasks in status 'done' related to the project.","format":"int32","nullable":true,"example":3},"members":{"type":"array","items":{"$ref":"#/components/schemas/ProjectMember"},"description":"The members of this project.","nullable":true},"trackedDuration":{"type":"integer","description":"The summed up duration of all time trackings for this project.","format":"int32","nullable":true,"example":72000},"customFields":{"type":"array","items":{"$ref":"#/components/schemas/CustomField"},"description":"Custom fields of the project.","nullable":true},"resourceVersion":{"type":"integer","description":"The version of the entity, updated on every modification, to the ticks in UTC.\nNot identical to UpdatedOn.","format":"int64","readOnly":true,"example":637825154598057900},"teams":{"type":"array","items":{"$ref":"#/components/schemas/TeamModel"},"description":"The teams the project is associated to.","nullable":true},"isExternal":{"type":"boolean","description":"True if this entity is coming from an external workspace (awork Connect).","example":true},"isRetainer":{"type":"boolean","description":"Whether the project is a retainer project.\nRetainer projects have at least one retainer with budgets."},"isMultiAssignmentAllowed":{"type":"boolean","description":"Indicates whether multi-assignment is allowed for tasks in this project's workspace.","example":true}},"additionalProperties":false,"description":"/// This class contains all information to handle projects."},"ProjectAvatar":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","nullable":true},"hasImage":{"type":"boolean"},"isPrivate":{"type":"boolean"},"isExternal":{"type":"boolean","nullable":true},"company":{"$ref":"#/components/schemas/CompanyAvatar"}},"additionalProperties":false},"ProjectBatchOperationForm":{"required":["projectIds"],"type":"object","properties":{"projectIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Project ids affected by the batch operation."},"projectStatusId":{"type":"string","description":"Target project status for `changeprojectstatus`.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectTypeId":{"type":"string","description":"Target project type for `changeprojecttype`.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"workflowId":{"type":"string","description":"Workflow to link for `linkworkflow`.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectStatusMapping":{"type":"array","items":{"$ref":"#/components/schemas/ProjectStatusMappingEntry"},"description":"Project status mappings used when linking a workflow.","nullable":true},"taskStatusMapping":{"type":"array","items":{"$ref":"#/components/schemas/TaskStatusMappingEntry"},"description":"Task status mappings used when linking a workflow.","nullable":true},"keepCustomFields":{"type":"boolean","description":"Whether custom fields should be kept when linking a workflow.","nullable":true},"keepCustomAutomations":{"type":"boolean","description":"Whether custom automations should be kept when linking a workflow.","nullable":true},"companyId":{"type":"string","description":"Company to assign for `setclient`.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"responsibleUserId":{"type":"string","description":"Responsible user to assign for `setprojectlead`.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"teamIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Team ids to add or remove for team batch operations.","nullable":true},"newStartDate":{"type":"string","description":"New start date for `setdates`.","format":"date-time","nullable":true},"newDueDate":{"type":"string","description":"New due date for `setdates`.","format":"date-time","nullable":true},"removeStartDate":{"type":"boolean","description":"Whether the start date should be removed for `setdates`.","nullable":true},"removeDueDate":{"type":"boolean","description":"Whether the due date should be removed for `setdates`.","nullable":true},"daysOffset":{"type":"number","description":"Day offset for `adjustdates`.","format":"double","nullable":true},"tags":{"type":"array","items":{"$ref":"#/components/schemas/TagForm"},"description":"Tags to add for `addtags`.","nullable":true},"tagsToRemove":{"type":"array","items":{"$ref":"#/components/schemas/DeleteTagForm"},"description":"Tags to remove for `removetags`.","nullable":true},"deleteTimeTrackings":{"type":"boolean","description":"Whether related time trackings should be deleted for `delete`.","nullable":true}},"additionalProperties":false,"description":"Request body for project batch operations."},"ProjectConnection":{"type":"object","properties":{"id":{"type":"string","description":"The id of the project connection.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"inviteCode":{"type":"string","description":"The invite code that can be used to accept the project connection.","nullable":true},"projectId":{"type":"string","description":"The id of the project that is connected.","nullable":true},"projectRoleId":{"type":"string","description":"The id of the project role of the invited user.","nullable":true},"isAccepted":{"type":"boolean","description":"True if the invitation to the project is accepted."},"isAutoAccepted":{"type":"boolean","description":"True if the invitation was auto-accepted (trusted) by the external workspace."},"externalWorkspaceId":{"type":"string","description":"The id of the workspace of the external user.\nIt will be null until the invitation is accepted.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"externalUserId":{"type":"string","description":"The id of the external user.\nIt will be null until the invitation is accepted.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"externalUserEmail":{"type":"string","description":"The email of the user that will be connected to the project.\nThis email will be used to send the invitation.","nullable":true},"externalUserFullName":{"type":"string","description":"The full name of the user that will be connected to the project.","nullable":true}},"additionalProperties":false},"ProjectConnectionForm":{"required":["externalUserEmail","projectId","projectRoleId"],"type":"object","properties":{"externalUserEmail":{"minLength":1,"type":"string","description":"The email of the user that the project will be connected to."},"projectId":{"type":"string","description":"The id of the project that will be connected.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"projectRoleId":{"type":"string","description":"The role of the invited user in the project.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ProjectConnectionStatus":{"type":"object","properties":{"isConnected":{"type":"boolean","description":"True if the workspace is connected to the project. False otherwise."},"isReadOnly":{"type":"boolean","description":"If the workspace is connected to the project, this value indicates if the connection is read-only.\nA connection is read-only if the subscription of the home workspace is expired.","nullable":true}},"additionalProperties":false},"ProjectConnectionsData":{"type":"object","properties":{"ewid":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"pcnid":{"type":"array","items":{"type":"string","format":"uuid"},"nullable":true}},"additionalProperties":false},"ProjectCustomField":{"type":"object","properties":{"customFieldDefinitionId":{"type":"string","description":"The custom field definition id.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userIdValue":{"type":"string","description":"The the user id value.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"clientIdValue":{"type":"string","description":"The client id value.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"numberValue":{"type":"number","description":"The number value.","format":"double","nullable":true,"example":123.45},"selectionOptionIdValue":{"type":"string","description":"The selection option id value.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"selectionOption":{"$ref":"#/components/schemas/CustomFieldSelectionOption"},"textValue":{"type":"string","description":"The text value.","nullable":true,"example":"S1: Business Critical"},"dateValue":{"type":"string","description":"The date value.","format":"date-time","nullable":true},"booleanValue":{"type":"boolean","description":"The boolean value.","nullable":true,"example":true}},"additionalProperties":false,"description":"Represents the custom field value."},"ProjectDeleteForm":{"type":"object","properties":{"deleteTimeTrackings":{"type":"boolean","description":"Set to true to delete also the related time trackings.\nIf it is set to false the related time trackings are still there, but\nthe project and task reference will be cleared.\nThat will also happen if no request body is present.","example":true}},"additionalProperties":false},"ProjectFormForTasks":{"type":"object","properties":{"id":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","nullable":true},"projectTypeId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectStatusId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ProjectInTeam":{"type":"object","properties":{"projectId":{"type":"string","description":"The id of the project.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"teamId":{"type":"string","description":"The id of the team.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"The user in team model assigns accounts to teams."},"ProjectMember":{"type":"object","properties":{"id":{"type":"string","description":"The id of the project member entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The id of the user who is this project member.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"firstName":{"type":"string","description":"The first name of the user.","nullable":true,"example":"Lisa"},"lastName":{"type":"string","description":"The last name of the user.","nullable":true,"example":"Smith"},"hasImage":{"type":"boolean","description":"Whether the user has an image.","nullable":true,"example":true},"projectRoleId":{"type":"string","description":"The project role of the project member.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"projectRoleName":{"type":"string","description":"The project role name of the project member.","nullable":true,"example":"Project Manager"},"isResponsible":{"type":"boolean","description":"Whether the user is responsible for this project.","example":true},"isDeactivated":{"type":"boolean","description":"Whether the user is deactivated.","example":false},"isExternal":{"type":"boolean","description":"True if this entity is coming from an external workspace (awork Connect).","example":true}},"additionalProperties":false},"ProjectMemberForm":{"required":["projectRoleId","userId"],"type":"object","properties":{"userId":{"type":"string","description":"The id of the member.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"projectRoleId":{"type":"string","description":"The id of the project role for this member.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"isResponsible":{"type":"boolean","description":"Whether the user should be marked as responsible.","example":false}},"additionalProperties":false},"ProjectMemberModel":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"projectRoleId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"projectRoleName":{"type":"string","nullable":true},"isResponsible":{"type":"boolean"},"isExternal":{"type":"boolean","description":"True if the model is coming from an external workspace (awork Connect).\nFalse otherwise."}},"additionalProperties":false},"ProjectMemberRemoveForm":{"required":["userId"],"type":"object","properties":{"userId":{"type":"string","description":"The id of the user to remove from the project.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ProjectMilestone":{"required":["color","name","projectId"],"type":"object","properties":{"name":{"maxLength":255,"minLength":0,"type":"string","description":"The name of the milestone.","example":"Internal Review"},"color":{"maxLength":14,"minLength":0,"enum":["blue","purple","red","yellow","green","asphalt"],"type":"string","description":"The color of the milestone.","example":"green"},"dueDate":{"type":"string","description":"The date the milestone is due.","format":"date-time","example":"2022-03-01T15:00:00Z"},"projectId":{"type":"string","description":"The id of the project the milestone is related to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"project":{"$ref":"#/components/schemas/Project"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ProjectMilestonePostForm":{"required":["color","name","projectId"],"type":"object","properties":{"name":{"maxLength":255,"minLength":0,"type":"string","description":"The name of the milestone.","example":"Internal Review"},"color":{"maxLength":14,"minLength":0,"enum":["blue","purple","red","yellow","green","asphalt"],"type":"string","description":"The color of the milestone.","example":"green"},"dueDate":{"type":"string","description":"The date the milestone is due.","format":"date-time","example":"2022-03-01T15:00:00Z"},"projectId":{"type":"string","description":"The id of the project the milestone is related to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ProjectMilestonePutForm":{"required":["color","name"],"type":"object","properties":{"name":{"maxLength":255,"minLength":0,"type":"string","description":"The name of the milestone.","example":"Internal Review"},"color":{"maxLength":14,"minLength":0,"enum":["blue","purple","red","yellow","green","asphalt"],"type":"string","description":"The color of the milestone.","example":"green"},"dueDate":{"type":"string","description":"The date the milestone is due.","format":"date-time","example":"2022-03-01T15:00:00Z"}},"additionalProperties":false},"ProjectMilestoneTemplate":{"type":"object","properties":{"name":{"maxLength":255,"minLength":0,"type":"string","description":"The name of the milestone.","nullable":true,"example":"Internal Review"},"color":{"maxLength":14,"minLength":0,"type":"string","description":"The color of the milestone.","nullable":true,"example":"green"},"relativeDueDate":{"type":"integer","description":"Relative amount of days the milestone is due after the project creation date\nwhen a project gets created with the corresponding project template.","format":"int64","example":7},"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"projectTemplateId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ProjectMilestoneTemplateForm":{"type":"object","properties":{"name":{"maxLength":255,"minLength":0,"type":"string","description":"The name of the milestone.","nullable":true,"example":"Internal Review"},"color":{"maxLength":14,"minLength":0,"type":"string","description":"The color of the milestone.","nullable":true,"example":"green"},"relativeDueDate":{"type":"integer","description":"Relative amount of days the milestone is due after the project creation date\nwhen a project gets created with the corresponding project template.","format":"int64","example":7}},"additionalProperties":false},"ProjectModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Website Design and Implementation"},"isExternal":{"type":"boolean","description":"True if the model is coming from an external workspace (awork Connect).\nFalse otherwise."},"startDate":{"type":"string","description":"The start date of the project.","format":"date-time","nullable":true},"dueDate":{"type":"string","description":"The due date of the project.","format":"date-time","nullable":true},"members":{"type":"array","items":{"$ref":"#/components/schemas/PlannerProjectMemberModel"},"nullable":true},"teams":{"type":"array","items":{"$ref":"#/components/schemas/ProjectTeamModel"},"nullable":true},"projectStatus":{"$ref":"#/components/schemas/DefaultStatusModel"},"company":{"$ref":"#/components/schemas/CompanyModel"},"tags":{"type":"array","items":{"$ref":"#/components/schemas/DefaultTagModel"},"description":"The tags for this project.","nullable":true},"projectType":{"$ref":"#/components/schemas/DefaultTypeModel"},"color":{"type":"string","description":"The color of the project for display purposes in awork.\nCan be null when no color assigned.","nullable":true,"example":"purple"},"isPrivate":{"type":"boolean"},"hasImage":{"type":"boolean","description":"Whether the project has an image."}},"additionalProperties":false},"ProjectModelForTimeTrackings":{"type":"object","properties":{"id":{"type":"string","description":"The identifier of the nested model.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Design"},"projectStatus":{"$ref":"#/components/schemas/NestedStatusModel"},"company":{"$ref":"#/components/schemas/NestedCompanyModel"},"projectType":{"$ref":"#/components/schemas/NestedTypeModel"},"projectKey":{"type":"string","description":"The unique project key within the workspace (e.g., \"NIKE\").\nMaximum 32 characters, uppercase letters, numbers, and dashes only.","nullable":true},"isPrivate":{"type":"boolean","description":"Whether the project is private.","example":false},"hasImage":{"type":"boolean","description":"Whether the project has an image.","example":true},"isExternal":{"type":"boolean","description":"Whether the project is external."},"isBillableByDefault":{"type":"boolean","description":"Whether project times should be billable by default.","nullable":true},"createdBy":{"type":"string","description":"The id of the user who created the project.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ProjectPutForm":{"required":["name"],"type":"object","properties":{"name":{"maxLength":1000,"minLength":0,"type":"string","description":"The name of the Project. Max allowed length: 1000 characters.","example":"Website Design"},"isPrivate":{"type":"boolean","description":"Whether this is a private project only visible to members and the creator.\nDefaults to false.\nCan only be changed from public to private if no times have been tracked on this project.\nCan always be made public.","example":false},"description":{"maxLength":25000,"minLength":0,"type":"string","description":"The project description. Max allowed length: 25000 characters.","nullable":true,"example":"Sitemap, design, assets and implementation of the new online presence."},"startDate":{"type":"string","description":"The start date of the project.","format":"date-time","nullable":true,"example":"2022-03-01T00:00:00Z"},"dueDate":{"type":"string","description":"The due date of the project.","format":"date-time","nullable":true,"example":"2022-05-01T00:00:00Z"},"companyId":{"type":"string","description":"The id of the company.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"timeBudget":{"type":"integer","description":"The time budget the project has, in seconds.","format":"int32","nullable":true,"example":576000},"isBillableByDefault":{"type":"boolean","description":"Whether project times should be billable by default.","nullable":true,"example":true},"projectTypeId":{"type":"string","description":"The id of the project type of this project.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"color":{"maxLength":14,"minLength":0,"type":"string","description":"The color of the project for display purposes in awork.\nThe supported colors are defined by the awork frontend.\nCan be null when no color assigned.","nullable":true,"example":"purple"},"deductNonBillableHours":{"type":"boolean","description":"Whether to deduct non-billable hours from project budgets."},"isProjectKeyVisible":{"type":"boolean","description":"Whether project key should be visible for this project.\nIf null, it will use the workspace default setting.","nullable":true}},"additionalProperties":false,"description":"PUT Model of projects."},"ProjectRole":{"required":["name"],"type":"object","properties":{"name":{"maxLength":255,"minLength":0,"type":"string","description":"The name of the project role. Required.","example":"Project Manager"},"isDefault":{"type":"boolean","description":"Whether to use this role as default when adding new project members.","nullable":true,"example":true},"defaultProjectRoleId":{"type":"string","description":"The id of the new default project role.\nRequired if the updated project role is the current default role.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"allowOnlyProjectMasterDataRead":{"type":"boolean","description":"Whether this role is allowed to have only read permissions for project-master-data."},"id":{"type":"string","description":"The id of the project role.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"memberCount":{"type":"integer","description":"The count of members which are linked to this role.","format":"int32","example":5},"members":{"type":"array","items":{"$ref":"#/components/schemas/ProjectMember"},"description":"The members which are linked to this role.","nullable":true},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ProjectRoleDeleteForm":{"type":"object","properties":{"newProjectRoleId":{"type":"string","description":"The id of the new project role.\nNeeds to be set when there are still users in projects with the old project role.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ProjectRoleForm":{"required":["name"],"type":"object","properties":{"name":{"maxLength":255,"minLength":0,"type":"string","description":"The name of the project role. Required.","example":"Project Manager"},"isDefault":{"type":"boolean","description":"Whether to use this role as default when adding new project members.","nullable":true,"example":true},"defaultProjectRoleId":{"type":"string","description":"The id of the new default project role.\nRequired if the updated project role is the current default role.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"allowOnlyProjectMasterDataRead":{"type":"boolean","description":"Whether this role is allowed to have only read permissions for project-master-data."}},"additionalProperties":false},"ProjectRolesPermission":{"type":"object","properties":{"prid":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"p":{"type":"array","items":{"$ref":"#/components/schemas/Permission"},"nullable":true}},"additionalProperties":false},"ProjectRolesPermissionFullModel":{"type":"object","properties":{"projectRoleId":{"type":"string","description":"The id of the project role.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"permissions":{"type":"array","items":{"$ref":"#/components/schemas/PermissionFullModel"},"description":"The list of permissions of the project role.","nullable":true}},"additionalProperties":false},"ProjectStatus":{"type":"object","properties":{"id":{"type":"string","description":"The primary identifier of this project status.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the project status.","nullable":true,"example":"In Progress"},"type":{"type":"string","description":"The general type of this project status.","nullable":true,"example":"progress"},"order":{"type":"integer","description":"The order of this status.","format":"int32","nullable":true,"example":2},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time"},"projectTemplateId":{"type":"string","description":"The id of the project template of the status.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectId":{"type":"string","description":"The id of the project the status belongs to.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"workflowId":{"type":"string","description":"The id of the workflow linked to this project status.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"isExternal":{"type":"boolean","description":"True if the project status is coming from an external workspace (awork Connect)."}},"additionalProperties":false},"ProjectStatusDeleteForm":{"type":"object","properties":{"projectStatusId":{"type":"string","description":"The id of the new project status to assign.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ProjectStatusForm":{"required":["name","type"],"type":"object","properties":{"name":{"maxLength":255,"minLength":0,"type":"string","description":"The name of the project status.","example":"In Progress"},"type":{"maxLength":25,"minLength":0,"type":"string","description":"Specifies the general type of this project status.\nAccepted values: 'progress', 'not-started', 'closed', 'stuck","example":"progress"}},"additionalProperties":false},"ProjectStatusMappingEntry":{"required":["newProjectStatusId","oldProjectStatusId"],"type":"object","properties":{"oldProjectStatusId":{"type":"string","description":"The Id of the existing project status to replace.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"newProjectStatusId":{"type":"string","description":"The Id of the workflow project status to use instead.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"Maps an existing project status to a workflow project status."},"ProjectTagModel":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the tag.","nullable":true,"example":"Design"},"color":{"type":"string","description":"The color of the tag.","nullable":true,"example":"purple"}},"additionalProperties":false,"description":"A tag model used for the project.\nDo not delete, we need to create copies of the tag model for each entity to avoid issues with Automapper."},"ProjectTagModelForTimeTrackings":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the tag.","nullable":true,"example":"Design"},"color":{"type":"string","description":"The color of the tag.","nullable":true,"example":"purple"}},"additionalProperties":false,"description":"A tag model used for the timetrackings ProjectModelForTimeTrackings.\nDo not delete, we need to create copies of the tag model for each entity to avoid issues with Automapper."},"ProjectTeamModel":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ProjectTeamModelForTimeTrackings":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ProjectTemplate":{"type":"object","properties":{"id":{"type":"string","description":"The id of the template.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the template.","nullable":true,"example":"Website Design Project"},"description":{"type":"string","description":"The description that will be used for the project created from this template.\nIt will be appended to the project description provided by the user.","nullable":true,"example":"A website design project created from a template"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"isBillableByDefault":{"type":"string","description":"Whether project times should be billable by default, if the project was created by this template.\nCan be 'on', 'off', or 'auto'.","nullable":true,"example":"auto"},"defaultTaskListIdForEmails":{"type":"string","description":"The id references the task list, which is used to assign tasks created by email to.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectStatuses":{"type":"array","items":{"$ref":"#/components/schemas/ProjectStatus"},"description":"Deprecated. Use `GET /projectTemplates/{projectTemplateId}/projectStatuses` instead.\nThe list of project statuses associated with the template. This can be either workflow statuses or template-specific statuses depending on whether the template is linked to a workflow or not.","nullable":true,"deprecated":true},"hasImage":{"type":"boolean","description":"Whether the project template has an image in the files service."},"copyImageToProjectOnCreation":{"type":"boolean","description":"Whether the template image should be copied to the project during project creation.\nIf the template has no image, no image is copied.\nNo image is copied from the client."},"projectTypeId":{"type":"string","description":"The id of the project type.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"workflowId":{"type":"string","description":"The id of the workflow linked to this template.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"timeBudget":{"type":"integer","description":"The amount of time budgeted for the project in seconds.","format":"int32"},"hasRelativeTasks":{"type":"boolean","description":"True if any of the tasks of the template has relative dates."}},"additionalProperties":false,"description":"The project type model."},"ProjectTemplateForm":{"type":"object","properties":{"name":{"maxLength":255,"minLength":0,"type":"string","description":"Name of the project template.","nullable":true,"example":"Website Design Project"},"description":{"maxLength":25000,"minLength":0,"type":"string","description":"Description of the project template.","nullable":true,"example":"A template used for all website design projects"},"isBillableByDefault":{"type":"string","description":"Whether the project should be billable by default. Can be 'on', 'off', or 'auto'.\nDefault is `auto`.","nullable":true,"example":"auto"},"defaultTaskListIdForEmails":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"copyImageToProjectOnCreation":{"type":"boolean","description":"Whether the template image should be copied to the project during project creation.\nIf the template has no image, no image is copied.\nNo image is copied from the client."},"projectTypeId":{"type":"string","description":"Project type id of the project template.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"timeBudget":{"type":"integer","description":"The amount of time budgeted for the project in seconds.\nIf null, the time budget will be unchanged.\nSet to 0 to remove the time budget.","format":"int32","nullable":true}},"additionalProperties":false,"description":"The POST / PUT project template model."},"ProjectType":{"type":"object","properties":{"id":{"type":"string","description":"The id of the type.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the project type.","nullable":true,"example":"Brand Strategy"},"description":{"type":"string","description":"A short (max. 140 characters) description of the project type.","nullable":true,"example":"A project to research and define a brand strategy"},"icon":{"type":"string","description":"The identifier of the project type icon.","nullable":true,"example":"award"},"isArchived":{"type":"boolean","description":"Whether this type is archived.\nIt can no longer be used to create projects, but existing\nprojects will continue using it.","example":false},"isPreset":{"type":"boolean","description":"Whether this type is one of the preset types.\nPreset types cannot be edited.","example":false},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"The project type model."},"ProjectTypeForm":{"required":["name"],"type":"object","properties":{"name":{"maxLength":255,"minLength":0,"type":"string","description":"The names of the project type.","example":"Brand Strategy"},"description":{"maxLength":1000,"minLength":0,"type":"string","description":"A short description of the project type.","nullable":true,"example":"A project to research and define a brand strategy"},"icon":{"maxLength":25,"minLength":0,"type":"string","description":"The identifier of the project type icon.","nullable":true,"example":"award"}},"additionalProperties":false,"description":"The POST / PUT project type model."},"ProjectsToPlan":{"type":"object","properties":{"selectedTeamIds":{"type":"array","items":{"type":"string","format":"uuid"},"nullable":true},"selectedProjectIds":{"type":"array","items":{"type":"string","format":"uuid"},"nullable":true},"selectedProjectFilterNames":{"type":"array","items":{"type":"string"},"nullable":true}},"additionalProperties":false},"ProjectsToPlanForm":{"type":"object","properties":{"selectedProjectFilterNames":{"type":"array","items":{"type":"string"},"nullable":true},"selectedTeamIds":{"type":"array","items":{"type":"string","format":"uuid"},"nullable":true},"selectedProjectIds":{"type":"array","items":{"type":"string","format":"uuid"},"nullable":true}},"additionalProperties":false},"PublicProjectTemplateAutomation":{"type":"object","properties":{"enabled":{"type":"boolean","description":"Whether the automation should be enabled."},"trigger":{"$ref":"#/components/schemas/PublicProjectTemplateAutomationTrigger"},"actions":{"type":"array","items":{"$ref":"#/components/schemas/PublicProjectTemplateAutomationAction"},"description":"The actions of this automation.","nullable":true}},"additionalProperties":false},"PublicProjectTemplateAutomationAction":{"type":"object","properties":{"type":{"type":"string","description":"The type of this automation action.","nullable":true,"example":"tag-add-task"},"order":{"type":"integer","description":"The order of this action in the automation.","format":"int32"},"values":{"type":"array","items":{"$ref":"#/components/schemas/PublicProjectTemplateAutomationValue"},"description":"The additional values of this automation action.","nullable":true}},"additionalProperties":false},"PublicProjectTemplateAutomationTrigger":{"type":"object","properties":{"type":{"type":"string","description":"The type of this automation trigger.","nullable":true,"example":"task-created"},"values":{"type":"array","items":{"$ref":"#/components/schemas/PublicProjectTemplateAutomationValue"},"description":"The additional values of this automation trigger.","nullable":true}},"additionalProperties":false},"PublicProjectTemplateAutomationValue":{"type":"object","properties":{"name":{"type":"string","description":"The name of the action value.","nullable":true,"example":"tag"},"value":{"type":"string","description":"The value of the action value.","nullable":true,"example":"Design"}},"additionalProperties":false},"PublicProjectTemplateChecklistItem":{"type":"object","properties":{"name":{"type":"string","description":"The name of the checklist item template.","nullable":true,"example":"PO explains the sprint goal"},"order":{"type":"number","description":"The order of the checklist item template.","format":"double","nullable":true,"example":0}},"additionalProperties":false},"PublicProjectTemplateFile":{"type":"object","properties":{"url":{"type":"string","description":"The URL of the file to download and save in the entity.","nullable":true,"example":"https://cdn.awork.com/content/project-report.pdf"}},"additionalProperties":false},"PublicProjectTemplateForm":{"type":"object","properties":{"name":{"type":"string","description":"The name of the public project template.","nullable":true,"example":"awork in 15 Minutes"},"slug":{"type":"string","description":"The slug of the public project template.\nAn unique identifier for each public project template independent of language.","nullable":true,"example":"awork-in-15-minutes"},"icon":{"type":"string","description":"The icon of the public project template.","nullable":true,"example":"📐"},"language":{"type":"string","description":"The language of the public project template.","nullable":true,"example":"en"},"tags":{"type":"array","items":{"type":"string"},"description":"The tags of the public project template which can be used to filter the\ntemplates shown in the UI.","nullable":true},"project":{"$ref":"#/components/schemas/PublicProjectTemplateProject"},"originalProjectTemplateId":{"type":"string","description":"The project template id of the original project template in the configuration workspace.\nUsed to identify the public project template to update.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"PublicProjectTemplateModel":{"type":"object","properties":{"name":{"type":"string","description":"The name of the public project template.","nullable":true,"example":"awork in 15 Minutes"},"slug":{"type":"string","description":"The slug of the public project template.\nAn unique identifier for each public project template independent of language.","nullable":true,"example":"awork-in-15-minutes"},"icon":{"type":"string","description":"The icon of the public project template.","nullable":true,"example":"📐"},"language":{"type":"string","description":"The language of the public project template.","nullable":true,"example":"en"},"tags":{"type":"array","items":{"type":"string"},"description":"The tags of the public project template which can be used to filter the\ntemplates shown in the UI.","nullable":true},"project":{"$ref":"#/components/schemas/PublicProjectTemplateProject"},"originalProjectTemplateId":{"type":"string","description":"The project template id of the original project template in the configuration workspace.\nUsed to identify the public project template to update.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"id":{"type":"string","description":"The id of the public project template.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date and time when the public project template was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created the public project template.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date and time when the public project template was last updated.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who last updated the public project template.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"deletedOn":{"type":"string","description":"The date and time when the public project template was deleted.","format":"date-time","nullable":true},"deletedBy":{"type":"string","description":"The id of the user who deleted the public project template.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"hasRelativeTasks":{"type":"boolean","description":"True if any of the tasks of the public template has a relative date.","readOnly":true}},"additionalProperties":false},"PublicProjectTemplateProject":{"type":"object","properties":{"description":{"type":"string","description":"The description of the template.","nullable":true,"example":"Basic flow of our Scrum process."},"isBillableByDefault":{"type":"string","description":"The billability setting of the template","nullable":true},"defaultTaskListNameForEmails":{"type":"string","description":"The Name of the Task List to be used for email to task","nullable":true},"tags":{"type":"array","items":{"$ref":"#/components/schemas/PublicProjectTemplateTag"},"description":"The tags of the template","nullable":true},"projectStatuses":{"type":"array","items":{"$ref":"#/components/schemas/PublicProjectTemplateStatus"},"description":"The project statuses of the template","nullable":true},"taskStatuses":{"type":"array","items":{"$ref":"#/components/schemas/PublicProjectTemplateTaskStatus"},"description":"The task statuses of the template","nullable":true},"taskLists":{"type":"array","items":{"$ref":"#/components/schemas/PublicProjectTemplateTaskList"},"description":"The task lists of the template","nullable":true},"tasksWithoutList":{"type":"array","items":{"$ref":"#/components/schemas/PublicProjectTemplateTask"},"description":"The tasks without list of the template","nullable":true},"automations":{"type":"array","items":{"$ref":"#/components/schemas/PublicProjectTemplateAutomation"},"description":"The automations of the template.","nullable":true}},"additionalProperties":false},"PublicProjectTemplateStatus":{"type":"object","properties":{"name":{"type":"string","description":"The name of the status.","nullable":true,"example":"In Progress"},"type":{"type":"string","description":"The general type of the status.","nullable":true,"example":"progress"},"order":{"type":"integer","description":"The order of the status.","format":"int32","nullable":true,"example":2}},"additionalProperties":false},"PublicProjectTemplateTag":{"type":"object","properties":{"name":{"type":"string","description":"The name of the Tag.","nullable":true,"example":"Tag 1"}},"additionalProperties":false},"PublicProjectTemplateTask":{"type":"object","properties":{"name":{"type":"string","description":"The name of the task template.","nullable":true,"example":"Sprint tasks"},"description":{"type":"string","description":"The description of the task template.","nullable":true,"example":"Define content of the sprint."},"order":{"type":"number","description":"The order of the task template in a task status column.","format":"double","nullable":true,"example":0},"isPrio":{"type":"boolean","description":"WWhether this task template is marked as priority."},"plannedDuration":{"type":"integer","description":"The planned duration of the task template.","format":"int32","nullable":true,"example":3600},"relativeDueOn":{"type":"integer","description":"The relative due on of the task template.","format":"int32","nullable":true,"example":86400},"relativeStartOn":{"type":"integer","description":"The relative start on of the task template.","format":"int32","nullable":true,"example":86400},"typeOfWorkName":{"type":"string","description":"The name of the type of work of the task template.","nullable":true,"example":"Planning"},"checklistItems":{"type":"array","items":{"$ref":"#/components/schemas/PublicProjectTemplateChecklistItem"},"description":"The checklist template of the task template.","nullable":true},"files":{"type":"array","items":{"$ref":"#/components/schemas/PublicProjectTemplateFile"},"description":"The files to add to the task created from this template.","nullable":true}},"additionalProperties":false},"PublicProjectTemplateTaskList":{"type":"object","properties":{"name":{"type":"string","description":"The name of the list template.","nullable":true,"example":"Scrum planning"},"order":{"type":"number","description":"The order of the list template.","format":"double","nullable":true,"example":1},"tasks":{"type":"array","items":{"$ref":"#/components/schemas/PublicProjectTemplateTask"},"description":"The task templates of the list template.","nullable":true}},"additionalProperties":false},"PublicProjectTemplateTaskStatus":{"type":"object","properties":{"name":{"type":"string","description":"The name of the status.","nullable":true,"example":"In Progress"},"type":{"type":"string","description":"The general type of the status.","nullable":true,"example":"progress"},"icon":{"type":"string","description":"The icon of the status.","nullable":true,"example":"In Progress"},"order":{"type":"number","description":"The order of the status.","format":"double","nullable":true,"example":2}},"additionalProperties":false},"PutCheckPlannerChecklistItemParameters":{"type":"object","properties":{"isChecked":{"type":"boolean","description":"The checked value to set."}},"additionalProperties":false},"Reaction":{"type":"object","properties":{"userId":{"type":"string","description":"All users ids that reacted with the emoji.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"emoji":{"type":"string","description":"The emoji used as a reaction.","nullable":true,"example":"👍"}},"additionalProperties":false,"description":"The users reactions to a comment."},"ReactionForm":{"required":["emoji","operation"],"type":"object","properties":{"emoji":{"minLength":1,"type":"string","description":"The reaction (emoji).","example":"👍"},"operation":{"minLength":1,"type":"string","description":"The operation. Can be 'add' or 'remove'.","example":"add"}},"additionalProperties":false},"RecurrencyModel":{"type":"object","properties":{"recurrencyRule":{"type":"string","description":"The recurrence rule as cron expression. We support all expressions which cronos supports\n(https://github.com/HangfireIO/Cronos).\nThe number of occurrences is limited to 24 a day.","nullable":true,"example":"\"0 0 1 * * ?\""},"recurrencyInterval":{"type":"integer","description":"The interval of the executed expression. If the value is 3, only the third time of the expression the recurrence is\nactually executed.","format":"int32","nullable":true,"example":1},"relativeDueOn":{"type":"integer","description":"The relative due date and time of the task created from this recurrence rule, in seconds,\nfrom the moment of creating the task by a recurrence rule.","format":"int64","nullable":true,"example":3600},"recurrencyStartOn":{"type":"string","description":"DateTime when recurring task creation will start, considering the set Recurrency Rule and Recurrency Interval.","format":"date-time","nullable":true,"example":"2021-03-15T11:00:00Z"},"recurrencyTimezone":{"type":"string","description":"The timezone of the Recurrency Rule.","nullable":true,"example":"Europe/Berlin"}},"additionalProperties":false},"RefineForm":{"type":"object","properties":{"operationId":{"type":"string","description":"A unique id to track the AI operation, provided by the client.\nWill be returned in the websocket events related to this async process.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"bookingIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The ids of the bookings to fix.","nullable":true},"taskIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The ids of the tasks to fix.","nullable":true},"prompt":{"type":"string","description":"User-provided prompt for the AI operation to modify the bookings and tasks.","nullable":true}},"additionalProperties":false},"ReorderingResult":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The id of the list to move the task to or to change the order for.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"order":{"type":"number","description":"The order of the task in the list.\nIf null, the task is moved to the end of the list.","format":"double","nullable":true,"example":3}},"additionalProperties":false},"ResolveKeyResponse":{"type":"object","properties":{"results":{"type":"array","items":{"$ref":"#/components/schemas/ResolveKeyResult"},"nullable":true},"totalCount":{"type":"integer","format":"int32"}},"additionalProperties":false},"ResolveKeyResult":{"type":"object","properties":{"entityType":{"type":"string","nullable":true},"entityId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"workspaceId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"resolvedUrl":{"type":"string","nullable":true},"entityName":{"type":"string","nullable":true}},"additionalProperties":false},"Retainer":{"type":"object","properties":{"timeBudget":{"type":"integer","description":"The time budget per retainer period in seconds. The default budget amount for new budgets in this retainer.","format":"int32"},"timezone":{"type":"string","description":"The timezone for when new budgets are created.","nullable":true},"rollOverUnderspentBudget":{"type":"boolean","description":"Whether underspent budgets should be rolled over to the next period."},"rollOverOverspentBudget":{"type":"boolean","description":"Whether overspent budgets should be rolled over to the next period."},"startDate":{"type":"string","description":"The start of the retainer contract.","format":"date-time"},"endDate":{"type":"string","description":"The end of the retainer contract until new budgets will be created. Optional.","format":"date-time","nullable":true},"syncProjectDates":{"type":"boolean","description":"Whether the project start and due dates should be synced to the retainer start and end dates."},"id":{"type":"string","description":"The id of the retainer.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"retainerPeriod":{"type":"string","description":"The period for new budgets in this retainer.\nCurrently only 'monthly' is supported.","nullable":true},"projectId":{"type":"string","description":"The project this retainer is associated with.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"isExternal":{"type":"boolean","description":"Whether the retainer belongs to an external project."},"retainerBudgets":{"type":"array","items":{"$ref":"#/components/schemas/RetainerBudget"},"description":"The budgets for this retainer. Each budget period (month) gets its own budget.","nullable":true},"createdOn":{"type":"string","description":"The date this retainer was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this retainer.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this retainer was last modified.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who last modified this retainer.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"RetainerBudget":{"type":"object","properties":{"id":{"type":"string","description":"The id of the retainer budget.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"timeBudget":{"type":"integer","description":"The budget for this retainer period in seconds.\nBased on the carry over option selected in the retainer settings, the timebudget is adjusted by the carry over from the previous period.","format":"int32"},"trackedDuration":{"type":"integer","description":"The sum of tracked time in this retainer period.\nContains billable and non-billable hours if the DeductNonBillableHours flag is set to true.\nContains only billable hours if the DeductNonBillableHours flag is set to false.\nTime entries belong to the retainer period if their StartDate is between the StartDate and EndDate of the retainer period.","format":"int32"},"startDate":{"type":"string","description":"The start of the retainer period in UTC.","format":"date-time"},"endDate":{"type":"string","description":"The end of the retainer period in UTC.","format":"date-time"}},"additionalProperties":false},"RetainerForm":{"type":"object","properties":{"timeBudget":{"type":"integer","description":"The time budget per retainer period in seconds. The default budget amount for new budgets in this retainer.","format":"int32"},"timezone":{"type":"string","description":"The timezone for when new budgets are created.","nullable":true},"rollOverUnderspentBudget":{"type":"boolean","description":"Whether underspent budgets should be rolled over to the next period."},"rollOverOverspentBudget":{"type":"boolean","description":"Whether overspent budgets should be rolled over to the next period."},"startDate":{"type":"string","description":"The start of the retainer contract.","format":"date-time"},"endDate":{"type":"string","description":"The end of the retainer contract until new budgets will be created. Optional.","format":"date-time","nullable":true},"syncProjectDates":{"type":"boolean","description":"Whether the project start and due dates should be synced to the retainer start and end dates."}},"additionalProperties":false,"description":"Creates or updates a monthly retainer contract. When `SyncProjectDates` is false, `StartDate` must be\nthe first day of a month and `EndDate`, when set, must be the last day of a month and later than `StartDate`."},"Role":{"required":["name"],"type":"object","properties":{"name":{"minLength":1,"type":"string","description":"The name of the role. Must be unique.","example":"Designer"},"isAdminRole":{"type":"boolean","description":"Whether this is the admin role.\nOnly one role can be the admin role.","example":false},"isGuestRole":{"type":"boolean","description":"Whether this is the guest role.\nOnly one role can be the guest role.","example":false},"id":{"type":"string","description":"The id of the role.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"isAgentRole":{"type":"boolean","description":"Whether this is a retained role from the legacy agent-as-user model.\nThe role cannot be modified.","example":false},"isPreset":{"type":"boolean","description":"Whether this role is one of the preset roles.\nPreset roles can be edited, archived and deleted.","example":false},"isArchived":{"type":"boolean","description":"Whether the role has been archived.","example":false},"createdBy":{"type":"string","description":"The id of the user who created this role.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this role was created.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who updated this role.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this role was last modified.","format":"date-time"}},"additionalProperties":false,"description":"The role model."},"RoleForm":{"required":["name"],"type":"object","properties":{"name":{"minLength":1,"type":"string","description":"The name of the role. Must be unique.","example":"Designer"},"isAdminRole":{"type":"boolean","description":"Whether this is the admin role.\nOnly one role can be the admin role.","example":false},"isGuestRole":{"type":"boolean","description":"Whether this is the guest role.\nOnly one role can be the guest role.","example":false}},"additionalProperties":false,"description":"The POST/PUT model of the role."},"SetResolvedForm":{"required":["isResolved"],"type":"object","properties":{"isResolved":{"type":"boolean","description":"Whether the comment should be marked as resolved.","example":true}},"additionalProperties":false},"SetTimeEntryBillableForm":{"type":"object","properties":{"ids":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The ids of the time entries, which should be set to billable.","nullable":true}},"additionalProperties":false},"SetTimeEntryBilledForm":{"type":"object","properties":{"ids":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The ids of the time entries, which should be set to billed.","nullable":true}},"additionalProperties":false},"SetTimeEntryTypeOfWork":{"required":["typeOfWorkId"],"type":"object","properties":{"ids":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The ids of the time entries, for which the type of work should be set.","nullable":true},"typeOfWorkId":{"type":"string","description":"The type of work id, to which the time entries should be set to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ShouldMigrateToConnectForm":{"type":"object","properties":{"shouldMigrateToConnect":{"type":"boolean","description":"Whether the user should be migrated to Connect."}},"additionalProperties":false},"SimplifiedCompanyModel":{"type":"object","properties":{"id":{"type":"string","description":"The identifier of the nested model.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"hasImage":{"type":"boolean"}},"additionalProperties":false},"SimplifiedProjectModel":{"type":"object","properties":{"id":{"type":"string","description":"The identifier of the nested model.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Design"},"hasImage":{"type":"boolean"},"company":{"$ref":"#/components/schemas/SimplifiedCompanyModel"}},"additionalProperties":false},"SimplifiedTaskModel":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","nullable":true},"baseType":{"type":"string","nullable":true},"createdBy":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"entityId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"projectId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"correlationId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"parentId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"taskStatusId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"taskStatus":{"$ref":"#/components/schemas/NestedTaskStatusModel"},"primaryTaskListId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"primaryTaskList":{"$ref":"#/components/schemas/NestedModel"}},"additionalProperties":false},"SimplifiedTimeTracking":{"type":"object","properties":{"id":{"type":"string","description":"The id of the time tracking.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"duration":{"type":"integer","description":"The duration of the time tracking in seconds.\nRequired when the time tracking has already been completed and EndTime has not been set.","format":"int32","nullable":true,"example":8635},"startDateUtc":{"type":"string","description":"The date (in UTC) when the time tracking was started.\nRequired.","format":"date-time","nullable":true,"example":"2022-03-01T00:00:00Z"},"startDateLocal":{"type":"string","description":"The date (in Local) when the time tracking was started.\nRequired.","format":"date-time","nullable":true,"example":"2022-03-01T00:00:00"},"isBillable":{"type":"boolean","description":"Whether the time tracking is billable or not.","example":true},"isBilled":{"type":"boolean","description":"Whether the time tracking is billed or not.","example":false},"createdBy":{"type":"string","description":"The id of the user who created this time tracking.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date of the creation of this time tracking.","format":"date-time"},"task":{"$ref":"#/components/schemas/SimplifiedTaskModel"},"taskId":{"type":"string","description":"The id of the task.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"project":{"$ref":"#/components/schemas/SimplifiedProjectModel"},"projectId":{"type":"string","description":"The id of the project.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"user":{"$ref":"#/components/schemas/NestedUserModel"},"userId":{"type":"string","description":"The id of the user.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"typeOfWork":{"$ref":"#/components/schemas/NestedBaseTypeModel"},"typeOfWorkId":{"type":"string","description":"The id of the type of work.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"startTimeLocal":{"type":"string","description":"The time (in Local) when the time tracking was started.","nullable":true,"example":"10:21:00"}},"additionalProperties":false,"description":"The simplified time tracking model."},"SortOrder":{"enum":[0,1],"type":"integer","format":"int32"},"StartTimeTrackingForm":{"required":["timezone","typeOfWorkId"],"type":"object","properties":{"isBillable":{"type":"boolean","description":"Whether the time tracking is billable or not.","example":true},"isBilled":{"type":"boolean","description":"Whether the time tracking is billed or not.","example":false},"taskId":{"type":"string","description":"The id of the task.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectId":{"type":"string","description":"The id of the project.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"note":{"type":"string","description":"The note of the time tracking.","nullable":true,"example":"I created a first draft for the new sitemap"},"typeOfWorkId":{"type":"string","description":"The id of the type of work of the time tracking.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"timezone":{"minLength":1,"type":"string","description":"The original timezone of the time tracking.\nThe format of the timezone is the IANA standard.","example":"Europe/London"}},"additionalProperties":false},"StatusResult":{"type":"object","properties":{"ids":{"type":"array","items":{"type":"string","format":"uuid"},"nullable":true}},"additionalProperties":false},"StopTimeTrackingForm":{"type":"object","additionalProperties":false,"description":"Form for stopping a time tracking."},"SubdomainModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Website Design and Implementation"},"isDefault":{"type":"boolean","description":"Whether this is the workspace's default subdomain.","example":true}},"additionalProperties":false,"description":"The commonly used subdomain API model."},"TagBatchMultiStatusResult":{"type":"object","properties":{"ok":{"$ref":"#/components/schemas/TagBatchStatusResult"},"notFound":{"$ref":"#/components/schemas/TagBatchStatusResult"},"badRequest":{"$ref":"#/components/schemas/TagBatchStatusResult"}},"additionalProperties":false,"description":"The multi-status result for a batch tag operation."},"TagBatchOperationForm":{"type":"object","properties":{"tagNames":{"type":"array","items":{"type":"string"},"description":"The tag names used by delete and update-color operations.","nullable":true},"sourceTagNames":{"type":"array","items":{"type":"string"},"description":"The source tag names used by merge operations.","nullable":true},"targetTag":{"$ref":"#/components/schemas/TagForm"},"color":{"type":"string","description":"The color used by update-color operations.","nullable":true}},"additionalProperties":false,"description":"The generic request body for workspace-wide batch tag operations."},"TagBatchStatusResult":{"type":"object","properties":{"tagNames":{"type":"array","items":{"type":"string"},"description":"The requested tag names that belong to this status bucket.","nullable":true}},"additionalProperties":false,"description":"A collection of requested tag names that share the same batch-operation status."},"TagForm":{"required":["name"],"type":"object","properties":{"name":{"maxLength":255,"minLength":0,"type":"string","description":"The name of the tag to delete.","example":"Design"},"color":{"type":"string","description":"The color of the tag. Use one of 'red', 'coral', 'yellow', 'green', 'teal', 'arctic', 'blue', 'azure', 'purple',\n'violet'.","nullable":true,"example":"purple"}},"additionalProperties":false},"TagUpdateForm":{"required":["newTag","oldTagName"],"type":"object","properties":{"oldTagName":{"minLength":1,"type":"string","description":"The old name of the tag.","example":"Design"},"newTag":{"$ref":"#/components/schemas/TagForm"},"shouldMerge":{"type":"boolean","description":"If true, merge the tags if they already exist.\nIf false, throw an error if the tag already exists.","nullable":true}},"additionalProperties":false},"TaskAvatar":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","nullable":true},"taskStatus":{"$ref":"#/components/schemas/TaskStatusAvatar"},"project":{"$ref":"#/components/schemas/ProjectAvatar"}},"additionalProperties":false},"TaskBundle":{"type":"object","properties":{"name":{"type":"string","description":"The name of the task bundle. Required if its not related to a task bundle.","nullable":true,"example":"Project Kickoff"},"description":{"type":"string","description":"The description of the task bundle.","nullable":true,"example":"Includes all tasks related to getting this project off the ground successfully. For the joy of work!"},"icon":{"type":"string","description":"The icon of the task bundle.","nullable":true,"example":"arrow_forward"},"projectTemplateId":{"type":"string","description":"The project template id of the task bundle, only necessary for the creation of an empty bundle for a project template.","format":"uuid","nullable":true,"example":"f76a7b32-f279-ec11-94f6-dc984040d6c9"},"id":{"type":"string","description":"The id of the task bundle.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this task bundle was created.","format":"date-time","example":"2022-03-11T17:53:46.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this task bundle.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this task bundle was last modified.","format":"date-time","example":"2022-03-13T11:20:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this task bundle.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"taskLists":{"type":"array","items":{"$ref":"#/components/schemas/TaskListTemplate"},"description":"The list templates within this task bundle.","nullable":true},"tasks":{"type":"array","items":{"$ref":"#/components/schemas/TaskTemplate"},"description":"The task templates within this task bundle.","nullable":true},"hasRelativeTasks":{"type":"boolean","description":"True if any of the tasks in the bundle has relative dates.","readOnly":true}},"additionalProperties":false},"TaskBundleForm":{"type":"object","properties":{"name":{"type":"string","description":"The name of the task bundle. Required if its not related to a task bundle.","nullable":true,"example":"Project Kickoff"},"description":{"type":"string","description":"The description of the task bundle.","nullable":true,"example":"Includes all tasks related to getting this project off the ground successfully. For the joy of work!"},"icon":{"type":"string","description":"The icon of the task bundle.","nullable":true,"example":"arrow_forward"},"projectTemplateId":{"type":"string","description":"The project template id of the task bundle, only necessary for the creation of an empty bundle for a project template.","format":"uuid","nullable":true,"example":"f76a7b32-f279-ec11-94f6-dc984040d6c9"}},"additionalProperties":false},"TaskBundleFromTaskListForm":{"type":"object","properties":{"name":{"type":"string","description":"The name of the task bundle. Required if its not related to a task bundle.","nullable":true,"example":"Project Kickoff"},"description":{"type":"string","description":"The description of the task bundle.","nullable":true,"example":"Includes all tasks related to getting this project off the ground successfully. For the joy of work!"},"icon":{"type":"string","description":"The icon of the task bundle.","nullable":true,"example":"arrow_forward"},"projectTemplateId":{"type":"string","description":"The project template id of the task bundle, only necessary for the creation of an empty bundle for a project template.","format":"uuid","nullable":true,"example":"f76a7b32-f279-ec11-94f6-dc984040d6c9"},"referenceDate":{"type":"string","description":"If provided, it will make the start/end dates of the tasks relative to this date.\nIn start or end dates of project/tasks are not available then no relative dates will be set.","format":"date-time","nullable":true}},"additionalProperties":false},"TaskBundleRecurrencyForm":{"type":"object","properties":{"recurrencyRule":{"type":"string","description":"The recurrence rule as cron expression. We support all expressions which cronos supports\n(https://github.com/HangfireIO/Cronos).\nThe number of occurrences is limited to 24 a day.","nullable":true,"example":"\"0 0 1 * * ?\""},"recurrencyInterval":{"type":"integer","description":"The interval of the executed expression. If the value is 3, only the third time of the expression the recurrence is\nactually executed.","format":"int32","nullable":true,"example":2},"relativeDueOn":{"type":"integer","description":"The relative due date and time of the task created from this recurrence rule, in seconds,\nfrom the moment of creating the task by a recurrence rule.\nMax value is 31540000 (1 year).","format":"int64","nullable":true,"example":3600}},"additionalProperties":false},"TaskBundleResult":{"type":"object","properties":{"taskBundleId":{"type":"string","description":"The id of the task bundle.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"TaskDependency":{"type":"object","properties":{"predecessorId":{"type":"string","description":"The Id of the predecessor. A task can have multiple predecessors through multiple dependency relationships.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"successorId":{"type":"string","description":"The Id of the successor. A task can have multiple successors through multiple dependency relationships.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"id":{"type":"string","description":"The id of the task dependency.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this task dependency was created.","format":"date-time","example":"2021-03-22T13:00:00Z"},"createdBy":{"type":"string","description":"The id of the user who created this task dependency.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this task dependenc was last modified.","format":"date-time","example":"2021-03-22T18:00:00Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this task dependency.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"Describes the dependency between two tasks. One Task is the predecessor and one task is the successor."},"TaskDependencyForm":{"type":"object","properties":{"predecessorId":{"type":"string","description":"The Id of the predecessor. A task can have multiple predecessors through multiple dependency relationships.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"successorId":{"type":"string","description":"The Id of the successor. A task can have multiple successors through multiple dependency relationships.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"Describes the dependency between two tasks. One Task is the predecessor and one task is the successor."},"TaskDependencyTemplate":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"predecessorTemplateId":{"type":"string","description":"The id of the predecessor task template.","format":"uuid","example":"f76a7b32-f279-ec11-94f6-dc984040d6c9"},"successorTemplateId":{"type":"string","description":"The id of the successor task template.","format":"uuid","example":"fc8e5a55-e96f-ec11-94f6-dc984040d6c7"}},"additionalProperties":false},"TaskDependencyTemplateForm":{"type":"object","properties":{"predecessorTemplateId":{"type":"string","description":"The id of the predecessor task template.","format":"uuid","example":"f76a7b32-f279-ec11-94f6-dc984040d6c9"},"successorTemplateId":{"type":"string","description":"The id of the successor task template.","format":"uuid","example":"fc8e5a55-e96f-ec11-94f6-dc984040d6c7"}},"additionalProperties":false},"TaskFromRecurrency":{"type":"object","properties":{"createdOn":{"type":"string","format":"date-time"},"baseTaskId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","nullable":true},"baseType":{"type":"string","nullable":true},"entityId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"plannedDuration":{"type":"integer","format":"int32","nullable":true},"lists":{"type":"array","items":{"$ref":"#/components/schemas/TaskOrderList"},"nullable":true},"assignees":{"type":"array","items":{"$ref":"#/components/schemas/NestedUserModelForTasks"},"nullable":true},"occurrences":{"type":"array","items":{"$ref":"#/components/schemas/TimeFrameModel"},"nullable":true},"isAProjectTask":{"type":"boolean","readOnly":true}},"additionalProperties":false},"TaskImportForm":{"type":"object","properties":{"taskName":{"type":"string","nullable":true},"startOn":{"type":"string","format":"date-time","nullable":true},"dueOn":{"type":"string","format":"date-time","nullable":true},"plannedDuration":{"type":"integer","format":"int32","nullable":true},"description":{"type":"string","nullable":true},"assigneeId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"company":{"$ref":"#/components/schemas/ImportDefaultModel"},"typeOfWorkId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"taskStatus":{"$ref":"#/components/schemas/ImportStatusModel"},"taskList":{"$ref":"#/components/schemas/ImportDefaultModel"},"project":{"$ref":"#/components/schemas/ProjectFormForTasks"}},"additionalProperties":false},"TaskInTaskListUpdateOrderForm":{"type":"object","properties":{"order":{"type":"number","description":"The order of the task in the list.","format":"double","nullable":true,"example":4}},"additionalProperties":false},"TaskList":{"type":"object","properties":{"id":{"type":"string","description":"The id of the task list.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this task list was created.","format":"date-time","example":"2021-03-22T15:00:00Z"},"createdBy":{"type":"string","description":"The id of the user who created this task list.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this task list was last modified.","format":"date-time","example":"2021-03-22T16:30:00Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this task list.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the list.","nullable":true,"example":"Product and Marketing To-Dos"},"order":{"type":"number","description":"The order of the list.","format":"double","nullable":true,"example":2},"plannedDuration":{"type":"integer","description":"The planned duration for this task list, in seconds.","format":"int32","nullable":true},"totalPlannedDuration":{"type":"integer","description":"The total planned duration for this task list, including all primary tasks (parent tasks which have this tacklist as PrimaryTaskListId), in seconds.\nCalculated: sum PlannedDuration of primary tasks in list\nArchived task lists are not included in the calculation.","format":"int64","nullable":true},"totalPlannedDurationWithHierarchy":{"type":"integer","description":"The total planned duration for this task list, including all primary tasks (parent tasks which have this task list as PrimaryTaskListId), in seconds.\nCalculated: max(PlannedDuration, sum TotalPlannedDurationWithHierarchy of primary tasks in list)\nArchived task lists are not included in the calculation.","format":"int64","nullable":true},"isArchived":{"type":"boolean","description":"Whether the task list has been archived.","example":false},"isHiddenForConnectUsers":{"type":"boolean","description":"True if the task in this list will be not visible for external workspace users. \nFalse otherwise."},"trackedDuration":{"type":"integer","description":"The total duration of time trackings for tasks in this task list, in seconds.\nIncludes both billable and non-billable time trackings.\nBackend-calculated property.\nWhen hierarchy feature flag is enabled: only tasks with PrimaryTaskListId == this list.\nWhen hierarchy feature flag is disabled: all tasks associated with this list.","format":"int32"}},"additionalProperties":false,"description":"Represents a full task list with calculated duration properties.\nExtends TaskList with additional computed fields."},"TaskListAvatar":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","nullable":true}},"additionalProperties":false},"TaskListBundlePutForm":{"required":["name"],"type":"object","properties":{"name":{"maxLength":1000,"minLength":1,"type":"string","description":"The name of the list.","example":"Product and Marketing To-Dos"},"isHiddenForConnectUsers":{"type":"boolean","description":"True if the task in this list will be not visible for external workspace users. \nFalse otherwise.\nIf null, no change will be made.","nullable":true},"order":{"type":"number","description":"The order of the list.","format":"double","nullable":true,"example":1}},"additionalProperties":false},"TaskListDeleteForm":{"type":"object","properties":{"deleteTasks":{"type":"boolean","description":"Whether all tasks in this list should be deleted.\nIf false or not set, the tasks will just be removed from the list.","nullable":true},"deleteTimes":{"type":"boolean","description":"Whether all times related to tasks in this list should be deleted.\nFalse by default.","nullable":true,"example":true}},"additionalProperties":false},"TaskListForm":{"required":["name"],"type":"object","properties":{"name":{"maxLength":1000,"minLength":1,"type":"string","description":"The name of the list.","example":"Product and Marketing To-Dos"},"isHiddenForConnectUsers":{"type":"boolean","description":"True if the task in this list will be not visible for external workspace users. \nFalse otherwise.\nIf null, no change will be made.","nullable":true},"order":{"type":"number","description":"The order of the list.","format":"double","nullable":true,"example":2}},"additionalProperties":false},"TaskListPutForm":{"required":["name"],"type":"object","properties":{"name":{"maxLength":1000,"minLength":1,"type":"string","description":"The name of the list.","example":"Product and Marketing To-Dos"},"isHiddenForConnectUsers":{"type":"boolean","description":"True if the task in this list will be not visible for external workspace users. \nFalse otherwise.\nIf null, no change will be made.","nullable":true}},"additionalProperties":false},"TaskListTemplate":{"type":"object","properties":{"id":{"type":"string","description":"The id of the task list template.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the task list template.","nullable":true,"example":"Concept Desing"},"orderOfTask":{"type":"number","description":"The order of the task template in the task list template.","format":"double","example":2},"order":{"type":"number","description":"The order of the task list template, unique within the task bundle.","format":"double","example":1},"isHiddenForConnectUsers":{"type":"boolean","description":"True if the task in this list is not visible for external workspace users."}},"additionalProperties":false},"TaskListToTaskForm":{"required":["id"],"type":"object","properties":{"id":{"type":"string","description":"The id of the task list.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"order":{"type":"number","description":"The order of the task in the list.\nIf null, the task is moved to the end of the list.","format":"double","nullable":true,"example":3},"isPrimary":{"type":"boolean","description":"Whether the TaskList should be the primary list for the task.\nIf not specified for any list of the task, the first list by order will be the primary list.","nullable":true}},"additionalProperties":false},"TaskModel":{"required":["name"],"type":"object","properties":{"name":{"maxLength":1000,"minLength":0,"type":"string","description":"The name of the task. Max allowed length: 1000 characters.","example":"Create logo concept"},"description":{"maxLength":25000,"minLength":0,"type":"string","description":"The description of the task. Max allowed length: 25000 characters.","nullable":true,"example":"We need to create a new impactful concept for the customer logo"},"isPrio":{"type":"boolean","description":"Whether this task is marked as priority.","example":true},"startOn":{"type":"string","description":"The expected start date and time of the task.","format":"date-time","nullable":true,"example":"2023-03-03T17:00:00Z"},"dueOn":{"type":"string","description":"The expected due date and time of the task.","format":"date-time","nullable":true,"example":"2023-03-18T17:00:00Z"},"laneOrder":{"type":"integer","description":"The lane order defines the vertical position in the task board.","format":"int32"},"plannedDuration":{"type":"integer","description":"The expected planned workload of the task, in seconds.","format":"int32","example":21600},"id":{"type":"string","description":"The Id of the task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"taskNumber":{"type":"integer","description":"The sequential task number within the project.\nUnique within the project, never reused even after deletion.","format":"int32","nullable":true},"taskIdentifier":{"maxLength":40,"type":"string","description":"The full task identifier combining project key and task number (e.g., \"NIKE-42\").\nMaintained by the service layer, updated when project key changes.","nullable":true},"isExternal":{"type":"boolean","description":"True if the model is coming from an external workspace (awork Connect).\nFalse otherwise."},"createdVia":{"type":"string","description":"The origin of the task. From which 'flow' the task was created.\nAutomatically set by the backend.","nullable":true},"isHiddenForConnectUsers":{"type":"boolean","description":"True if the task is hidden for external workspace users. \nFalse otherwise."},"baseType":{"enum":["private","projecttask"],"type":"string","description":"The base type of the task.\nCan be 'private' for a private task or\n'projecttask' for a project task.","example":"projecttask"},"taskStatusId":{"type":"string","description":"The id of the status for this task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"taskStatus":{"$ref":"#/components/schemas/TaskStatus"},"typeOfWorkId":{"type":"string","description":"The id of the type of work of this task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"typeOfWork":{"$ref":"#/components/schemas/NestedTaskTypeModel"},"assignees":{"type":"array","items":{"$ref":"#/components/schemas/NestedUserModelForTasks"},"description":"The list assigned users of this task, or empty if not user was assigned.","nullable":true},"projectId":{"type":"string","description":"The id of the project this task is assigned to.\nOnly set if this is a project task.\nIn this case, it is equal to the EntityId.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"project":{"$ref":"#/components/schemas/NestedProjectModelForTasks"},"correlationId":{"type":"string","description":"The correlation id between parent and subtasks, meaning it's either the ParentId or its own Id.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"parentId":{"type":"string","description":"The id of the parent task this of this subtask.\nOnly set if this is a subtask.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"parentTask":{"$ref":"#/components/schemas/NestedParentTaskModel"},"isSubtask":{"type":"boolean","description":"True if the task is a subtask.","readOnly":true},"numberOfSubtasks":{"type":"integer","description":"The number of subtasks of this task.\nNull if it's not a parent task.","format":"int32","nullable":true},"hasAttachment":{"type":"boolean","description":"Whether this task has an attachment.","example":false},"lists":{"type":"array","items":{"$ref":"#/components/schemas/TaskOrderList"},"description":"The lists to which the task is assigned to.","nullable":true},"entityId":{"type":"string","description":"The id of the entity this task is assigned to.\nThis is the id of the project if this is a project task,\nor the id of a user if this is a private task.\nSee 'BaseType' for supported types.","format":"uuid","nullable":true,"deprecated":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The id of the user of the private task.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"tags":{"type":"array","items":{"$ref":"#/components/schemas/TaskTagModel"},"description":"The list of tags.","nullable":true},"createdOn":{"type":"string","description":"The date this task was created.","format":"date-time","example":"2022-02-29T18:52:54.945Z"},"createdBy":{"type":"string","description":"The id of the user who created this task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this task was last modified.","format":"date-time","example":"2020-02-30T18:52:54.945Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"closedOn":{"type":"string","description":"The date the task was set to closed.","format":"date-time","nullable":true},"closedBy":{"type":"string","description":"The user who closed the task.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"order":{"type":"number","description":"The order of the task in a task status column.","format":"double","example":2},"subtaskOrder":{"type":"number","description":"The order of the subtask relative to its parent task.","format":"double","nullable":true,"example":1},"createdFromTaskId":{"type":"string","description":"When the task was created by a recurrency rule, the id is the link to the template of which the task was created.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"isRecurring":{"type":"boolean","description":"If the task is a recurrency template (used to create new tasks by a recurrency rule), the flag is true."},"customFields":{"type":"array","items":{"$ref":"#/components/schemas/CustomField"},"description":"Custom fields of the task.","nullable":true},"trackedDuration":{"type":"integer","description":"The summed up duration of all time trackings directly on this task (excluding subtasks).","format":"int32","nullable":true,"example":1200},"totalTrackedDuration":{"type":"integer","description":"The summed up duration of all time trackings for this task, including subtasks.","format":"int32","nullable":true,"example":1200},"totalPlannedDuration":{"type":"integer","description":"The total planned workload of the task, in seconds, including subtasks.","format":"int32","nullable":true,"example":21600},"resourceVersion":{"type":"integer","description":"The version of the entity, updated on every modification, to the ticks in UTC.\nNot identical to UpdatedOn.","format":"int64","readOnly":true,"example":637825154598030700},"checklistItemsDoneCount":{"type":"integer","description":"The number of checklist items marked as done.","format":"int32","example":2},"checklistItemsCount":{"type":"integer","description":"The total number of checklist items.","format":"int32","example":5},"taskSchedulesCount":{"type":"integer","description":"The number of task schedules for this task.","format":"int32","example":1},"isCompletelyScheduled":{"type":"boolean","description":"Whether this task is completed scheduled."},"commentCount":{"type":"integer","description":"The number of comments on this task.","format":"int32"}},"additionalProperties":false},"TaskModelForTimeTrackings":{"type":"object","properties":{"id":{"type":"string","description":"The identifier of the nested model.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Design"},"baseType":{"type":"string","description":"The base type of the task.\nCan be 'private' for a private task or\n'projecttask' for a project task.","nullable":true,"example":"projecttask"},"taskIdentifier":{"type":"string","description":"The full task identifier combining project key and task number (e.g., \"NIKE-42\").\nMaintained by the service layer, updated when project key changes.","nullable":true},"taskStatusId":{"type":"string","description":"The id of the status for this task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"typeOfWorkId":{"type":"string","description":"The id of the type of work of this task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"project":{"$ref":"#/components/schemas/ProjectModelForTimeTrackings"},"projectId":{"type":"string","description":"The id of the project this task is assigned to.\nOnly set if this is a project task.\nIn this case, it is equal to the EntityId.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"plannedDuration":{"type":"integer","description":"The expected planned workload of the task, in seconds.","format":"int32","nullable":true,"example":21600},"closedOn":{"type":"string","description":"The date the task was set to closed.","format":"date-time","nullable":true},"taskStatus":{"$ref":"#/components/schemas/NestedTaskStatusModel"},"createdBy":{"type":"string","description":"The id of the user who created this task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"correlationId":{"type":"string","description":"The correlation id between parent and subtasks, meaning it's either the ParentId or its own Id.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"parentId":{"type":"string","description":"The id of the parent task this of this subtask.\nOnly set if this is a subtask.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"parentTask":{"$ref":"#/components/schemas/NestedModel"}},"additionalProperties":false},"TaskOrderList":{"type":"object","properties":{"id":{"type":"string","description":"The id of the task list.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this task list was created.","format":"date-time","example":"2021-03-22T15:00:00Z"},"createdBy":{"type":"string","description":"The id of the user who created this task list.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this task list was last modified.","format":"date-time","example":"2021-03-22T16:30:00Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this task list.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the list.","nullable":true,"example":"Product and Marketing To-Dos"},"order":{"type":"number","description":"The order of the list.","format":"double","nullable":true,"example":2},"plannedDuration":{"type":"integer","description":"The planned duration for this task list, in seconds.","format":"int32","nullable":true},"totalPlannedDuration":{"type":"integer","description":"The total planned duration for this task list, including all primary tasks (parent tasks which have this tacklist as PrimaryTaskListId), in seconds.\nCalculated: sum PlannedDuration of primary tasks in list\nArchived task lists are not included in the calculation.","format":"int64","nullable":true},"totalPlannedDurationWithHierarchy":{"type":"integer","description":"The total planned duration for this task list, including all primary tasks (parent tasks which have this task list as PrimaryTaskListId), in seconds.\nCalculated: max(PlannedDuration, sum TotalPlannedDurationWithHierarchy of primary tasks in list)\nArchived task lists are not included in the calculation.","format":"int64","nullable":true},"isArchived":{"type":"boolean","description":"Whether the task list has been archived.","example":false},"isHiddenForConnectUsers":{"type":"boolean","description":"True if the task in this list will be not visible for external workspace users. \nFalse otherwise."},"orderOfTask":{"type":"number","description":"The order of the task in the list.","format":"double","nullable":true,"example":5}},"additionalProperties":false},"TaskRecurrencyForm":{"required":["recurrencyRule"],"type":"object","properties":{"recurrencyRule":{"minLength":1,"type":"string","description":"The recurrence rule as cron expression. We support all expressions which cronos supports\n(https://github.com/HangfireIO/Cronos).\nThe number of occurrences is limited to 24 a day.","example":"\"0 0 1 * * ?\""},"recurrencyInterval":{"type":"integer","description":"The interval of the executed expression. If the value is 3, only the third time of the expression the recurrence is\nactually executed.","format":"int32","nullable":true,"example":1},"relativeDueOn":{"type":"integer","description":"The relative due date and time of the task created from this recurrence rule, in seconds,\nfrom the moment of creating the task by a recurrence rule.","format":"int64","nullable":true,"example":3600},"recurrencyStartOn":{"type":"string","description":"DateTime when recurring task creation will start, considering the set Recurrency Rule and Recurrency Interval.","format":"date-time","nullable":true,"example":"2021-03-12T11:00:00Z"},"recurrencyTimezone":{"type":"string","description":"The timezone of the Recurrency Rule. If not set, will use the requesting user's timezone.","nullable":true,"example":"Europe/Berlin"}},"additionalProperties":false},"TaskSchedule":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The id of the user this task schedule is for.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"taskId":{"type":"string","description":"The id of the task this task schedule is for.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"startDate":{"type":"string","description":"The start date and time of this task schedule.","format":"date-time","example":"2022-03-01T09:00:00Z"},"endDate":{"type":"string","description":"The end date and time of this task schedule.","format":"date-time","example":"2022-03-01T10:00:00Z"},"plannedDuration":{"type":"integer","description":"The number of seconds of planned work.","format":"int32","example":3600}},"additionalProperties":false},"TaskScheduleForm":{"type":"object","properties":{"taskId":{"type":"string","description":"The id of the task this task schedule is for.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"startDate":{"type":"string","description":"The start date and time of this task schedule.","format":"date-time","example":"2022-03-01T09:00:00Z"},"endDate":{"type":"string","description":"The end date and time of this task schedule.","format":"date-time","example":"2022-03-01T10:00:00Z"},"userId":{"type":"string","description":"The id of the user this task schedule is for.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"TaskSchedulePutForm":{"type":"object","properties":{"taskId":{"type":"string","description":"The id of the task this task schedule is for.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"startDate":{"type":"string","description":"The start date and time of this task schedule.","format":"date-time","example":"2022-03-01T09:00:00Z"},"endDate":{"type":"string","description":"The end date and time of this task schedule.","format":"date-time","example":"2022-03-01T10:00:00Z"}},"additionalProperties":false},"TaskSetPrioForm":{"required":["taskId"],"type":"object","properties":{"taskId":{"type":"string","description":"The id of the task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"isPrio":{"type":"boolean","description":"Priority flag of the task.","example":true}},"additionalProperties":false},"TaskSetting":{"type":"object","properties":{"type":{"type":"string","description":"The type of the setting.","nullable":true,"example":"prevent-on-done-projects"},"enabled":{"type":"boolean","description":"Whether the setting is enabled.","example":true},"workspaceId":{"type":"string","description":"The id of the workspace the setting belongs to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"TaskSettingForm":{"type":"object","properties":{"type":{"type":"string","description":"The type of the setting.","nullable":true,"example":"allow-multi-user-assignment"},"enabled":{"type":"boolean","description":"Whether the setting is enabled.","example":true}},"additionalProperties":false},"TaskStatistic":{"type":"object","properties":{"count":{"type":"integer","description":"Number of tasks","format":"int32","example":15},"statusType":{"type":"string","description":"The state of task","nullable":true,"example":"todo"},"plannedDuration":{"type":"integer","description":"The sum of the planned duration of the tasks (in seconds)","format":"int64","nullable":true,"example":2000},"trackedDuration":{"type":"integer","description":"The sum of the tracked duration of the tasks (in seconds)","format":"int64","nullable":true,"example":1600}},"additionalProperties":false},"TaskStatus":{"type":"object","properties":{"id":{"type":"string","description":"The primary identifier of this task status.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the task status.","nullable":true,"example":"Conceptualize"},"type":{"type":"string","description":"Of what general type is this task status?.","nullable":true,"example":"progress"},"order":{"type":"number","description":"The order of the task status in a project.","format":"double","nullable":true,"example":2},"icon":{"type":"string","description":"The icon of the task status.","nullable":true,"example":"arrow_forward"},"projectId":{"type":"string","description":"Is set if the task status is related to a project.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectTypeId":{"type":"string","description":"Is set if the task status is related to a project type.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"workflowId":{"type":"string","description":"Is set if the task status is related to a workflow.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-{10}T15:51:58.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-10T16:15:26.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"isExternal":{"type":"boolean","description":"True if the task status is coming from an external workspace (awork Connect)."}},"additionalProperties":false},"TaskStatusAvatar":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","nullable":true},"type":{"type":"string","nullable":true},"icon":{"type":"string","nullable":true}},"additionalProperties":false},"TaskStatusDeleteForm":{"type":"object","properties":{"taskStatusId":{"type":"string","description":"The id of the task status all related tasks will be changed to.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"TaskStatusForm":{"required":["name","type"],"type":"object","properties":{"name":{"maxLength":30,"minLength":1,"type":"string","description":"The name of the task status.","example":"Conceptualization"},"type":{"minLength":1,"type":"string","description":"Specifies the general type of this task status.\nAccepted values: 'todo', 'progress', 'review', 'stuck', 'done'.","example":"progress"},"order":{"type":"number","description":"The order of the task status.\nIf it is null, the task status will be appended after the last task status.","format":"double","nullable":true,"example":2},"icon":{"type":"string","description":"The icon of the task status.","nullable":true,"example":"search"}},"additionalProperties":false},"TaskStatusMappingEntry":{"required":["newTaskStatusId","oldTaskStatusId"],"type":"object","properties":{"oldTaskStatusId":{"type":"string","description":"The Id of the existing task status to replace.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"newTaskStatusId":{"type":"string","description":"The Id of the workflow task status to use instead.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"Maps an existing task status to a workflow task status."},"TaskStatusMappingForm":{"required":["newStatusId","oldStatusId"],"type":"object","properties":{"oldStatusId":{"type":"string","description":"The old task status id.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"newStatusId":{"type":"string","description":"The new task status id.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"TaskSyncReconciliationForm":{"required":["entityIds"],"type":"object","properties":{"entityIds":{"maxItems":500,"minItems":1,"type":"array","items":{"type":"string","format":"uuid"},"description":"Gets or sets the locally tracked task IDs to check for current accessibility."}},"additionalProperties":false},"TaskSyncReconciliationResponse":{"type":"object","properties":{"accessibleEntityIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The tracked task IDs that are still active and accessible to the requesting user.","nullable":true}},"additionalProperties":false},"TaskTagModel":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the tag.","nullable":true,"example":"Design"},"color":{"type":"string","description":"The color of the tag.","nullable":true,"example":"purple"}},"additionalProperties":false,"description":"A tag model used for the task.\nDo not delete, we need to create copies of the tag model for each entity to avoid issues with Automapper."},"TaskTagModelForTimeTrackings":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the tag.","nullable":true,"example":"Design"},"color":{"type":"string","description":"The color of the tag.","nullable":true,"example":"purple"}},"additionalProperties":false,"description":"A tag model used for the timetrackings TaskModelForTimeTrackings.\nDo not delete, we need to create copies of the tag model for each entity to avoid issues with Automapper."},"TaskTemplate":{"type":"object","properties":{"name":{"type":"string","description":"The name of the task created from this template.","nullable":true,"example":"Wireframe layout"},"description":{"type":"string","description":"The description of the task created from this template.","nullable":true,"example":"Create the wireframe layout ready to be discussed with the stakeholders"},"isPrio":{"type":"boolean","description":"Whether the task created from this template will be marked as priority.","example":false},"plannedDuration":{"type":"integer","description":"The expected planned workload of the task created from this template, in seconds.","format":"int32","example":1400},"relativeStartOn":{"type":"integer","description":"The relative start date and time of the task created from this template, in seconds,\nfrom the moment of creating the task.","format":"int64","nullable":true},"relativeDueOn":{"type":"integer","description":"The relative due date and time of the task created from this template, in seconds,\nfrom the moment of creating the task.","format":"int64","nullable":true},"typeOfWorkId":{"type":"string","description":"The id of the type of work of this task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"assignedRoleId":{"type":"string","description":"The id of the assigned role of this task.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"parentId":{"type":"string","description":"The id of the parent task template if the task template is a subtask.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"subtaskOrder":{"type":"number","description":"The order of the subtask template relative to its parent task template.","format":"double","nullable":true,"example":1},"laneOrder":{"type":"integer","description":"The lane order defines the vertical position in the planner.","format":"int32","nullable":true,"example":2},"id":{"type":"string","description":"The Id of the task template.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"taskType":{"$ref":"#/components/schemas/TypeOfWork"},"taskListTemplate":{"type":"array","items":{"$ref":"#/components/schemas/TaskListTemplate"},"description":"The task list templates of the task template.","nullable":true},"taskDependencyTemplates":{"type":"array","items":{"$ref":"#/components/schemas/TaskDependencyTemplate"},"description":"The list of task dependency templates for that task template.","nullable":true},"assigneeIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The list of assigned users to that task template.","nullable":true},"createdOn":{"type":"string","description":"The date this task was created.","format":"date-time","example":"2022-03-14T10:12:02.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this task was last modified.","format":"date-time","example":"2022-03-25T14:55:30.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"order":{"type":"number","description":"For internal purposes.","format":"double","nullable":true,"example":4},"hasAttachments":{"type":"boolean","description":"If the task template has attachments."},"isRecurring":{"type":"boolean","description":"If the task is a recurrency template, the flag is true.","example":false},"customFields":{"type":"array","items":{"$ref":"#/components/schemas/CustomField"},"description":"The Custom fields of the task template.","nullable":true},"tags":{"type":"array","items":{"$ref":"#/components/schemas/TaskTemplateTagModel"},"description":"The list of tags that will be applied to the task when it is created.","nullable":true}},"additionalProperties":false},"TaskTemplateForm":{"type":"object","properties":{"name":{"type":"string","description":"The name of the task created from this template.","nullable":true,"example":"Wireframe layout"},"description":{"type":"string","description":"The description of the task created from this template.","nullable":true,"example":"Create the wireframe layout ready to be discussed with the stakeholders"},"isPrio":{"type":"boolean","description":"Whether the task created from this template will be marked as priority.","example":false},"plannedDuration":{"type":"integer","description":"The expected planned workload of the task created from this template, in seconds.","format":"int32","example":1400},"relativeStartOn":{"type":"integer","description":"The relative start date and time of the task created from this template, in seconds,\nfrom the moment of creating the task.","format":"int64","nullable":true},"relativeDueOn":{"type":"integer","description":"The relative due date and time of the task created from this template, in seconds,\nfrom the moment of creating the task.","format":"int64","nullable":true},"typeOfWorkId":{"type":"string","description":"The id of the type of work of this task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"assignedRoleId":{"type":"string","description":"The id of the assigned role of this task.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"parentId":{"type":"string","description":"The id of the parent task template if the task template is a subtask.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"subtaskOrder":{"type":"number","description":"The order of the subtask template relative to its parent task template.","format":"double","nullable":true,"example":1},"laneOrder":{"type":"integer","description":"The lane order defines the vertical position in the planner.","format":"int32","nullable":true,"example":2}},"additionalProperties":false},"TaskTemplateTagModel":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the tag.","nullable":true,"example":"Design"},"color":{"type":"string","description":"The color of the tag.","nullable":true,"example":"purple"}},"additionalProperties":false,"description":"A tag model used for the task template.\nDo not delete, we need to create copies of the tag model for each entity to avoid issues with Automapper."},"TaskTemplateToTaskListTemplate":{"type":"object","properties":{"taskTemplateId":{"type":"string","description":"The id of the task template.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"order":{"type":"number","description":"The order of the task template, unique within the task list template.","format":"double","nullable":true,"example":5}},"additionalProperties":false},"TaskToTaskList":{"required":["taskId"],"type":"object","properties":{"taskId":{"type":"string","description":"The task id added to the list.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"order":{"type":"number","description":"The order of the task in the list.","format":"double","nullable":true,"example":5}},"additionalProperties":false},"TasksChangeBaseTypesForm":{"required":["baseType","entityId","taskIds"],"type":"object","properties":{"baseType":{"minLength":1,"enum":["private","projecttask"],"type":"string","description":"The type the tasks should be migrated to.\nPossible values are 'private' or 'projecttask'.","example":"private"},"entityId":{"type":"string","description":"The id of the entity.\nThe id of the project if the base type is 'projecttask'\nor the id of the user if the base type is 'private'.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"taskIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The list of task ids."}},"additionalProperties":false},"TasksChangeTypesForm":{"required":["taskIds","typeOfWorkId"],"type":"object","properties":{"typeOfWorkId":{"type":"string","description":"The id of the task type.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"changeTimeEntries":{"type":"boolean","description":"Whether the related time entries should be moved to the same type of work."},"taskIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The list of task ids.","example":["123e4567-e89b-12d3-a456-426614174000"]}},"additionalProperties":false},"TasksDeleteForm":{"required":["taskIds"],"type":"object","properties":{"taskIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"List of tasks to be deleted.","example":["123e4567-e89b-12d3-a456-426614174000"]},"deleteTimeTrackings":{"type":"boolean","description":"Set to true to also delete the related time trackings.\nIf it is set to false, the related time trackings will still be there, but\nthe project and task reference will be cleared.\nThis will also happen if no request body is present.","example":true}},"additionalProperties":false},"TasksGetByIdsForm":{"required":["ids"],"type":"object","properties":{"ids":{"minItems":1,"type":"array","items":{"type":"string","format":"uuid"},"description":"The task ids to resolve."}},"additionalProperties":false},"TasksToPlan":{"type":"object","properties":{"taskViewId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"presetFilter":{"type":"string","nullable":true}},"additionalProperties":false},"TasksToPlanForm":{"type":"object","properties":{"taskViewId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"presetFilter":{"type":"string","nullable":true}},"additionalProperties":false},"Team":{"required":["name"],"type":"object","properties":{"name":{"maxLength":255,"minLength":0,"type":"string","description":"The team name.","example":"Designers"},"icon":{"maxLength":25,"minLength":0,"type":"string","description":"The icon of the team. Optional. Possible values: 'attach_money', 'poll', 'golf_course', 'all_inclusive', 'portrait',\n'timeline', 'transform', 'description', 'folder', 'computer', 'web', 'phone_iphone', 'cloud', 'local_movies',\n'shopping_cart', 'brush', 'image', 'camera_alt', 'movie_creation', 'public', 'whatshot', 'extension', 'explore',\n'lock', 'settings', 'stars', 'store', 'school', 'local_bar', 'question_answer', 'favorite', 'work', 'flight_takeoff',\n'map', 'local_dining'.","nullable":true,"example":"image"},"color":{"maxLength":14,"minLength":0,"type":"string","description":"The color of the team. Optional. Possible values: 'red', 'coral', 'yellow', 'green', 'teal', 'arctic', 'blue', 'azure',\n'purple', 'violet'.","nullable":true,"example":"purple"},"id":{"type":"string","description":"The id of the team.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this team was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this team.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this team was last modified.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who last updated this team.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"userIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The ids of the users in the team.","nullable":true},"projectIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The ids of the projects in the team.","nullable":true}},"additionalProperties":false,"description":"The team GET model."},"TeamForm":{"required":["name"],"type":"object","properties":{"name":{"maxLength":255,"minLength":0,"type":"string","description":"The team name.","example":"Designers"},"icon":{"maxLength":25,"minLength":0,"type":"string","description":"The icon of the team. Optional. Possible values: 'attach_money', 'poll', 'golf_course', 'all_inclusive', 'portrait',\n'timeline', 'transform', 'description', 'folder', 'computer', 'web', 'phone_iphone', 'cloud', 'local_movies',\n'shopping_cart', 'brush', 'image', 'camera_alt', 'movie_creation', 'public', 'whatshot', 'extension', 'explore',\n'lock', 'settings', 'stars', 'store', 'school', 'local_bar', 'question_answer', 'favorite', 'work', 'flight_takeoff',\n'map', 'local_dining'.","nullable":true,"example":"image"},"color":{"maxLength":14,"minLength":0,"type":"string","description":"The color of the team. Optional. Possible values: 'red', 'coral', 'yellow', 'green', 'teal', 'arctic', 'blue', 'azure',\n'purple', 'violet'.","nullable":true,"example":"purple"}},"additionalProperties":false,"description":"The team POST/PUT model."},"TeamModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the team.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the team.","nullable":true,"example":"Designers"},"icon":{"type":"string","description":"The icon which is assigned to the team.","nullable":true,"example":"paintbrush"},"color":{"type":"string","description":"The color of the team.","nullable":true,"example":"purple"}},"additionalProperties":false},"TimeBooking":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The id of the user this time booking is for.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"projectId":{"type":"string","description":"(optional) The id of the project this time booking is for.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"startDate":{"type":"string","description":"The start date of the time booking.","format":"date","example":"2024-05-15"},"endDate":{"type":"string","description":"The end date of the time booking.","format":"date","example":"2024-05-18"},"duration":{"type":"integer","description":"The planned duration, expressed in seconds, of this time booking.","format":"int32"},"description":{"type":"string","description":"The optional description for this time booking.","nullable":true,"example":"Blocker for a new project"},"laneOrder":{"type":"integer","description":"The order in which this object should be shown in the timeline (row number).\nUsed by the awork web app.","format":"int32"},"isAnonymized":{"type":"boolean","description":"This will be true if the user doesn't have access to the project.\nIn that case the description will be shadowed.","nullable":true}},"additionalProperties":false},"TimeBookingForm":{"type":"object","properties":{"userId":{"type":"string","description":"The id of the user this time booking is for.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"projectId":{"type":"string","description":"(optional) The id of the project this time booking is for.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"startDate":{"type":"string","description":"The start date of this time booking.","format":"date","example":"2022-03-01"},"endDate":{"type":"string","description":"The end date and time of this time booking.","format":"date","example":"2022-03-02"},"duration":{"type":"integer","description":"The duration (in seconds) of this time booking.","format":"int32"},"description":{"type":"string","description":"The optional name/description for this time booking.","nullable":true},"laneOrder":{"type":"integer","description":"The order in which this object should be shown in the timeline (row number).\nThis value is used by the awork web app.","format":"int32"}},"additionalProperties":false},"TimeEntryBatchOperationForm":{"required":["timeEntryIds"],"type":"object","properties":{"timeEntryIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The list of time entry ids to perform the batch operation on."},"newTypeOfWorkId":{"type":"string","description":"The id of the new type of work. Required for operation 'setTypeOfWork'.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"isBillable":{"type":"boolean","description":"Set the billable flag for time entries. Required for operation 'setIsBillable'.","nullable":true},"isBilled":{"type":"boolean","description":"Set the billed flag for time entries. Required for operation 'setIsBilled'.","nullable":true},"requireAllTimeEntries":{"type":"boolean","description":"Whether the operation must leave every requested time entry unchanged when any entry cannot be updated."},"newUserId":{"type":"string","description":"The id of the new user to assign the time entries to. Required for operation 'setUser'.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"newProjectId":{"type":"string","description":"The id of the new project to assign the time entries to. Required for operation 'setProject'.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"newTaskId":{"type":"string","description":"The id of the new task to assign the time entries to. Required for operation 'setTask'.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"TimeEntryPostForm":{"required":["timezone","typeOfWorkId","userId"],"type":"object","properties":{"isBillable":{"type":"boolean","description":"Whether the time tracking is billable or not.","example":true},"isBilled":{"type":"boolean","description":"Whether the time tracking is billed or not.","example":false},"taskId":{"type":"string","description":"The id of the task.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectId":{"type":"string","description":"The id of the project.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"note":{"type":"string","description":"The note of the time tracking.","nullable":true,"example":"I created a first draft for the new sitemap"},"startDateUtc":{"type":"string","description":"The date (in UTC) when the time tracking was started.","format":"date-time","nullable":true,"example":"2022-03-01T00:00:00Z"},"startTimeUtc":{"type":"string","description":"The time (in UTC) when the time tracking was started.","nullable":true,"example":"09:21:00"},"endDateUtc":{"type":"string","description":"The date (in UTC) when the time tracking was stopped.","format":"date-time","nullable":true,"example":"2022-03-01T18:21:05Z"},"endTimeUtc":{"type":"string","description":"The time (in UTC) when the time tracking was stopped.\nRequired when the time tracking has already been completed and Duration has not been set.","nullable":true,"example":"11:45:00"},"startDateLocal":{"type":"string","description":"The date (in Local) when the time tracking was started.","format":"date-time","nullable":true,"example":"2022-03-01T00:00:00"},"startTimeLocal":{"type":"string","description":"The time (in Local) when the time tracking was started.","nullable":true,"example":"10:21:00"},"endDateLocal":{"type":"string","description":"The date (in Local) when the time tracking was stopped.","format":"date-time","nullable":true,"example":"2022-03-01T17:21:05"},"endTimeLocal":{"type":"string","description":"The time (in Local) when the time tracking was stopped.\nRequired when the time tracking has already been completed and Duration has not been set.","nullable":true,"example":"12:45:00"},"timezone":{"minLength":1,"type":"string","description":"The original timezone of the time tracking.\nThe format of the timezone is the IANA standard.","example":"Europe/Berlin"},"duration":{"type":"integer","description":"The duration of the time tracking in seconds.\nRequired when the time tracking has already been completed and EndTime has not been set.","format":"int32","nullable":true,"example":8635},"breakDuration":{"type":"integer","description":"The duration of the break in seconds.\nCannot be set via API.","format":"int32","nullable":true},"typeOfWorkId":{"type":"string","description":"The id of the type of work.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The id of the user.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"Creates a time entry from either UTC date/time fields or local date/time fields.\nDo not mix the UTC and local field groups in one request. Set either `StartDateUtc` with the other UTC fields,\nor `StartDateLocal` with the other local fields."},"TimeFrameModel":{"type":"object","properties":{"startOn":{"type":"string","format":"date-time"},"dueOn":{"type":"string","format":"date-time"}},"additionalProperties":false},"TimeReport":{"type":"object","properties":{"shared":{"type":"boolean","description":"Whether the time report is shared.","example":true},"dateMode":{"type":"string","description":"The date mode of the time report.\nCan be: \"today\", \"yesterday\", \"selectDate\",\n\"selectWeek\", \"currentWeek\", \"lastWeek\",\n\"selectMonth\", \"currentMonth\", \"lastMonth\",\n\"selectQuarter\", \"currentQuarter\", \"lastQuarter\",\n\"selectYear\", \"currentYear\", \"lastYear\",\n\"customRange\", \"noFilter\".","nullable":true,"example":"lastMonth"},"startOn":{"type":"string","description":"The start date time of the report\nwhen DateMode is \"customRange\".","format":"date-time","nullable":true,"example":null},"endOn":{"type":"string","description":"The end date time of the time report.\nwhen DateMode is \"customRange\".\nCurrently the start of the end day.","format":"date-time","nullable":true,"example":null},"filter":{"type":"string","description":"The generated filter query of the time report.","nullable":true,"example":"projectId eq guid'b870a84e-c7fa-e711-80c2-00155d3163ca'"},"chartType":{"type":"string","description":"The actual chart type of the time report.\nCan be: \"group\" or \"time\".","nullable":true,"example":"group"},"projectId":{"type":"string","description":"The id of the project of the time report.\nUsed for the pdf reports.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"companyId":{"type":"string","description":"The id of the company of the time report.\nUsed for the pdf reports.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"sumBy":{"type":"string","description":"Summarises the values by the sum of this property.","nullable":true,"example":"UserId"},"sortBy":{"type":"string","description":"Sorts the values by this property.","nullable":true,"example":"CreatedOn"},"sortByOrder":{"type":"string","description":"The way how to sort the data.\nCan be: \"asc\", desc\".","nullable":true,"example":"asc"},"roundBy":{"type":"string","description":"Rounding method of the time report.\nCan be:\n\"nearQuarter\", \"nearHalf\", \"nearHour\",\n\"upQuarter\", \"upHalf\", \"upHour\".","nullable":true,"example":"upHour"},"groupBy":{"type":"string","description":"Group the values by property.","nullable":true,"example":null},"sortColumn":{"type":"string","description":"Sort the values of the time report by a column.","nullable":true,"example":null},"sortGroupsEnabled":{"type":"boolean","description":"Whether sorting of groups is enabled.","nullable":true,"example":true},"availableColumns":{"type":"array","items":{"type":"string"},"description":"List of shown Columns in the time report.\nCan be: \"status\", \"duration\", \"task\", \"timeTrackingNote\", \"typeOfWork\",\n\"project\", \"date\", \"time\", \"user\", \"client\", \"projectType\", \"projectRole\",\n\"plannedDuration\", \"taskList\", \"key\".","nullable":true,"example":["duration","user"]},"billingStatuses":{"type":"array","items":{"type":"string"},"description":"Filter of bill satuses of the time report.\nCan be: \"billed\", \"notBilled\", \"notBillable\".","nullable":true,"example":["notBilled"]},"note":{"type":"string","description":"Filter time entries by note.","nullable":true,"example":null},"usersFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Filter time entries by users.","nullable":true},"projectsFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Filter time entries by projects.","nullable":true},"noProjectFilter":{"type":"boolean","description":"Filter to show also time entries without a project.","nullable":true,"example":null},"projectCompaniesFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Filter time entries by projects of the companies.","nullable":true},"projectTypesFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Filter time entries by projects of the type.","nullable":true},"projectStatusesNameFilter":{"type":"array","items":{"type":"string"},"description":"Filter time entries by projects with status name.","nullable":true},"projectStatusTypesFilter":{"type":"array","items":{"type":"string"},"description":"Filter time entries by projects with status of type.","nullable":true},"projectTeamsFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"List of teams, to the filter the projects for.","nullable":true},"userTeamsFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Filter for the teams to filter the users.","nullable":true},"taskTagsModelFilter":{"type":"array","items":{"$ref":"#/components/schemas/DefaultTagModel"},"description":"Filter time entries by the tags of the task.","nullable":true},"projectTagsModelFilter":{"type":"array","items":{"$ref":"#/components/schemas/DefaultTagModel"},"description":"Filter time entries by the tags of the project.","nullable":true},"userTagsModelFilter":{"type":"array","items":{"$ref":"#/components/schemas/DefaultTagModel"},"description":"Filter time entries by the tags of the users.","nullable":true},"typesOfWorkFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Group the time report by the type of works.","nullable":true},"name":{"type":"string","description":"The name of the time report.","nullable":true,"example":"Project report for March 2022"},"id":{"type":"string","description":"The id of the time report.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"user":{"$ref":"#/components/schemas/NestedUserModel"},"updatedOn":{"type":"string","description":"The date this time report was updated.","format":"date-time"},"resourceVersion":{"type":"integer","description":"The version of the entity, updated on every modification, to the ticks in UTC.\nNot identical to UpdatedOn.","format":"int64","readOnly":true,"example":637825154598057900}},"additionalProperties":false},"TimeReportBaseForm":{"type":"object","properties":{"shared":{"type":"boolean","description":"Whether the time report is shared.","example":true},"dateMode":{"type":"string","description":"The date mode of the time report.\nCan be: \"today\", \"yesterday\", \"selectDate\",\n\"selectWeek\", \"currentWeek\", \"lastWeek\",\n\"selectMonth\", \"currentMonth\", \"lastMonth\",\n\"selectQuarter\", \"currentQuarter\", \"lastQuarter\",\n\"selectYear\", \"currentYear\", \"lastYear\",\n\"customRange\", \"noFilter\".","nullable":true,"example":"lastMonth"},"startOn":{"type":"string","description":"The start date time of the report\nwhen DateMode is \"customRange\".","format":"date-time","nullable":true,"example":null},"endOn":{"type":"string","description":"The end date time of the time report.\nwhen DateMode is \"customRange\".\nCurrently the start of the end day.","format":"date-time","nullable":true,"example":null},"filter":{"type":"string","description":"The generated filter query of the time report.","nullable":true,"example":"projectId eq guid'b870a84e-c7fa-e711-80c2-00155d3163ca'"},"chartType":{"type":"string","description":"The actual chart type of the time report.\nCan be: \"group\" or \"time\".","nullable":true,"example":"group"},"projectId":{"type":"string","description":"The id of the project of the time report.\nUsed for the pdf reports.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"companyId":{"type":"string","description":"The id of the company of the time report.\nUsed for the pdf reports.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"sumBy":{"type":"string","description":"Summarises the values by the sum of this property.","nullable":true,"example":"UserId"},"sortBy":{"type":"string","description":"Sorts the values by this property.","nullable":true,"example":"CreatedOn"},"sortByOrder":{"type":"string","description":"The way how to sort the data.\nCan be: \"asc\", desc\".","nullable":true,"example":"asc"},"roundBy":{"type":"string","description":"Rounding method of the time report.\nCan be:\n\"nearQuarter\", \"nearHalf\", \"nearHour\",\n\"upQuarter\", \"upHalf\", \"upHour\".","nullable":true,"example":"upHour"},"groupBy":{"type":"string","description":"Group the values by property.","nullable":true,"example":null},"sortColumn":{"type":"string","description":"Sort the values of the time report by a column.","nullable":true,"example":null},"sortGroupsEnabled":{"type":"boolean","description":"Whether sorting of groups is enabled.","nullable":true,"example":true},"availableColumns":{"type":"array","items":{"type":"string"},"description":"List of shown Columns in the time report.\nCan be: \"status\", \"duration\", \"task\", \"timeTrackingNote\", \"typeOfWork\",\n\"project\", \"date\", \"time\", \"user\", \"client\", \"projectType\", \"projectRole\",\n\"plannedDuration\", \"taskList\", \"key\".","nullable":true,"example":["duration","user"]},"billingStatuses":{"type":"array","items":{"type":"string"},"description":"Filter of bill satuses of the time report.\nCan be: \"billed\", \"notBilled\", \"notBillable\".","nullable":true,"example":["notBilled"]},"note":{"type":"string","description":"Filter time entries by note.","nullable":true,"example":null},"usersFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Filter time entries by users.","nullable":true},"projectsFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Filter time entries by projects.","nullable":true},"noProjectFilter":{"type":"boolean","description":"Filter to show also time entries without a project.","nullable":true,"example":null},"projectCompaniesFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Filter time entries by projects of the companies.","nullable":true},"projectTypesFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Filter time entries by projects of the type.","nullable":true},"projectStatusesNameFilter":{"type":"array","items":{"type":"string"},"description":"Filter time entries by projects with status name.","nullable":true},"projectStatusTypesFilter":{"type":"array","items":{"type":"string"},"description":"Filter time entries by projects with status of type.","nullable":true},"projectTeamsFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"List of teams, to the filter the projects for.","nullable":true},"userTeamsFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Filter for the teams to filter the users.","nullable":true},"taskTagsModelFilter":{"type":"array","items":{"$ref":"#/components/schemas/DefaultTagModel"},"description":"Filter time entries by the tags of the task.","nullable":true},"projectTagsModelFilter":{"type":"array","items":{"$ref":"#/components/schemas/DefaultTagModel"},"description":"Filter time entries by the tags of the project.","nullable":true},"userTagsModelFilter":{"type":"array","items":{"$ref":"#/components/schemas/DefaultTagModel"},"description":"Filter time entries by the tags of the users.","nullable":true},"typesOfWorkFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Group the time report by the type of works.","nullable":true}},"additionalProperties":false},"TimeReportForm":{"type":"object","properties":{"shared":{"type":"boolean","description":"Whether the time report is shared.","example":true},"dateMode":{"type":"string","description":"The date mode of the time report.\nCan be: \"today\", \"yesterday\", \"selectDate\",\n\"selectWeek\", \"currentWeek\", \"lastWeek\",\n\"selectMonth\", \"currentMonth\", \"lastMonth\",\n\"selectQuarter\", \"currentQuarter\", \"lastQuarter\",\n\"selectYear\", \"currentYear\", \"lastYear\",\n\"customRange\", \"noFilter\".","nullable":true,"example":"lastMonth"},"startOn":{"type":"string","description":"The start date time of the report\nwhen DateMode is \"customRange\".","format":"date-time","nullable":true,"example":null},"endOn":{"type":"string","description":"The end date time of the time report.\nwhen DateMode is \"customRange\".\nCurrently the start of the end day.","format":"date-time","nullable":true,"example":null},"filter":{"type":"string","description":"The generated filter query of the time report.","nullable":true,"example":"projectId eq guid'b870a84e-c7fa-e711-80c2-00155d3163ca'"},"chartType":{"type":"string","description":"The actual chart type of the time report.\nCan be: \"group\" or \"time\".","nullable":true,"example":"group"},"projectId":{"type":"string","description":"The id of the project of the time report.\nUsed for the pdf reports.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"companyId":{"type":"string","description":"The id of the company of the time report.\nUsed for the pdf reports.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"sumBy":{"type":"string","description":"Summarises the values by the sum of this property.","nullable":true,"example":"UserId"},"sortBy":{"type":"string","description":"Sorts the values by this property.","nullable":true,"example":"CreatedOn"},"sortByOrder":{"type":"string","description":"The way how to sort the data.\nCan be: \"asc\", desc\".","nullable":true,"example":"asc"},"roundBy":{"type":"string","description":"Rounding method of the time report.\nCan be:\n\"nearQuarter\", \"nearHalf\", \"nearHour\",\n\"upQuarter\", \"upHalf\", \"upHour\".","nullable":true,"example":"upHour"},"groupBy":{"type":"string","description":"Group the values by property.","nullable":true,"example":null},"sortColumn":{"type":"string","description":"Sort the values of the time report by a column.","nullable":true,"example":null},"sortGroupsEnabled":{"type":"boolean","description":"Whether sorting of groups is enabled.","nullable":true,"example":true},"availableColumns":{"type":"array","items":{"type":"string"},"description":"List of shown Columns in the time report.\nCan be: \"status\", \"duration\", \"task\", \"timeTrackingNote\", \"typeOfWork\",\n\"project\", \"date\", \"time\", \"user\", \"client\", \"projectType\", \"projectRole\",\n\"plannedDuration\", \"taskList\", \"key\".","nullable":true,"example":["duration","user"]},"billingStatuses":{"type":"array","items":{"type":"string"},"description":"Filter of bill satuses of the time report.\nCan be: \"billed\", \"notBilled\", \"notBillable\".","nullable":true,"example":["notBilled"]},"note":{"type":"string","description":"Filter time entries by note.","nullable":true,"example":null},"usersFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Filter time entries by users.","nullable":true},"projectsFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Filter time entries by projects.","nullable":true},"noProjectFilter":{"type":"boolean","description":"Filter to show also time entries without a project.","nullable":true,"example":null},"projectCompaniesFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Filter time entries by projects of the companies.","nullable":true},"projectTypesFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Filter time entries by projects of the type.","nullable":true},"projectStatusesNameFilter":{"type":"array","items":{"type":"string"},"description":"Filter time entries by projects with status name.","nullable":true},"projectStatusTypesFilter":{"type":"array","items":{"type":"string"},"description":"Filter time entries by projects with status of type.","nullable":true},"projectTeamsFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"List of teams, to the filter the projects for.","nullable":true},"userTeamsFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Filter for the teams to filter the users.","nullable":true},"taskTagsModelFilter":{"type":"array","items":{"$ref":"#/components/schemas/DefaultTagModel"},"description":"Filter time entries by the tags of the task.","nullable":true},"projectTagsModelFilter":{"type":"array","items":{"$ref":"#/components/schemas/DefaultTagModel"},"description":"Filter time entries by the tags of the project.","nullable":true},"userTagsModelFilter":{"type":"array","items":{"$ref":"#/components/schemas/DefaultTagModel"},"description":"Filter time entries by the tags of the users.","nullable":true},"typesOfWorkFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Group the time report by the type of works.","nullable":true},"name":{"type":"string","description":"The name of the time report.","nullable":true,"example":"Project report for March 2022"}},"additionalProperties":false},"TimeReportGroups":{"type":"object","properties":{"id":{"type":"string","nullable":true},"durationSum":{"type":"integer","format":"int32"},"date":{"$ref":"#/components/schemas/DateGrouping"},"billingStatus":{"$ref":"#/components/schemas/BillingStatusAvatar"},"typeOfWork":{"$ref":"#/components/schemas/TypeOfWorkAvatar"},"project":{"$ref":"#/components/schemas/ProjectAvatar"},"company":{"$ref":"#/components/schemas/CompanyAvatar"},"user":{"$ref":"#/components/schemas/UserAvatar"},"task":{"$ref":"#/components/schemas/TaskAvatar"},"taskList":{"$ref":"#/components/schemas/TaskListAvatar"}},"additionalProperties":false},"TimeReportStatistics":{"type":"object","properties":{"groupBy":{"type":"string","description":"The groupBy of the time report. Optional.","nullable":true},"aggregatedBy":{"type":"string","description":"The time aggregation.","nullable":true},"timezone":{"type":"string","description":"The timezone of the user.","nullable":true},"stats":{"$ref":"#/components/schemas/TimeReportStats"},"groups":{"type":"array","items":{"$ref":"#/components/schemas/TimeReportGroups"},"description":"The aggregated groups of the time report.\nAlways aggregated by time, and optionally by the groupBy parameter.","nullable":true}},"additionalProperties":false},"TimeReportStats":{"type":"object","properties":{"totalDuration":{"type":"integer","description":"The total duration of all time entries matching the filter, in seconds.","format":"int32"},"billableDuration":{"type":"integer","description":"The total billable duration of all time entries matching the filter, in seconds.\nThis is excluding the already billed time entries.","format":"int32"},"billedDuration":{"type":"integer","description":"The total billed duration of all time entries matching the filter, in seconds.","format":"int32"},"notBillableDuration":{"type":"integer","description":"The total non-billable duration of all time entries matching the filter, in seconds.","format":"int32"}},"additionalProperties":false},"TimeTracking":{"required":["timezone","typeOfWorkId"],"type":"object","properties":{"isBillable":{"type":"boolean","description":"Whether the time tracking is billable or not.","example":true},"isBilled":{"type":"boolean","description":"Whether the time tracking is billed or not.","example":false},"taskId":{"type":"string","description":"The id of the task.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectId":{"type":"string","description":"The id of the project.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"note":{"type":"string","description":"The note of the time tracking.","nullable":true,"example":"I created a first draft for the new sitemap"},"startDateUtc":{"type":"string","description":"The date (in UTC) when the time tracking was started.","format":"date-time","nullable":true,"example":"2022-03-01T00:00:00Z"},"startTimeUtc":{"type":"string","description":"The time (in UTC) when the time tracking was started.","nullable":true,"example":"09:21:00"},"endDateUtc":{"type":"string","description":"The date (in UTC) when the time tracking was stopped.","format":"date-time","nullable":true,"example":"2022-03-01T18:21:05Z"},"endTimeUtc":{"type":"string","description":"The time (in UTC) when the time tracking was stopped.\nRequired when the time tracking has already been completed and Duration has not been set.","nullable":true,"example":"11:45:00"},"startDateLocal":{"type":"string","description":"The date (in Local) when the time tracking was started.","format":"date-time","nullable":true,"example":"2022-03-01T00:00:00"},"startTimeLocal":{"type":"string","description":"The time (in Local) when the time tracking was started.","nullable":true,"example":"10:21:00"},"endDateLocal":{"type":"string","description":"The date (in Local) when the time tracking was stopped.","format":"date-time","nullable":true,"example":"2022-03-01T17:21:05"},"endTimeLocal":{"type":"string","description":"The time (in Local) when the time tracking was stopped.\nRequired when the time tracking has already been completed and Duration has not been set.","nullable":true,"example":"12:45:00"},"timezone":{"minLength":1,"type":"string","description":"The original timezone of the time tracking.\nThe format of the timezone is the IANA standard.","example":"Europe/Berlin"},"duration":{"type":"integer","description":"The duration of the time tracking in seconds.\nRequired when the time tracking has already been completed and EndTime has not been set.","format":"int32","nullable":true,"example":8635},"breakDuration":{"type":"integer","description":"The duration of the break in seconds.\nCannot be set via API.","format":"int32","nullable":true},"typeOfWorkId":{"type":"string","description":"The id of the type of work.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The id of the user.\nCan be null if the user was deleted.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"id":{"type":"string","description":"The id of the time tracking.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdBy":{"type":"string","description":"The id of the user who created this time tracking.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this time tracking was created.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who last updated this time tracking.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this time tracking was last modified.","format":"date-time"},"typeOfWork":{"$ref":"#/components/schemas/NestedTypeModel"},"user":{"$ref":"#/components/schemas/UserModelForTimeTrackings"},"task":{"$ref":"#/components/schemas/TaskModelForTimeTrackings"},"project":{"$ref":"#/components/schemas/ProjectModelForTimeTrackings"},"breaks":{"type":"array","items":{"$ref":"#/components/schemas/Break"},"description":"The breaks of the time tracking.","nullable":true},"resourceVersion":{"type":"integer","description":"The version of the entity, updated on every modification, to the ticks in UTC.\nNot identical to UpdatedOn.","format":"int64","readOnly":true,"example":637825154598057900},"isExternal":{"type":"boolean","description":"True if this entity is coming from an external workspace (awork Connect).","example":true}},"additionalProperties":false,"description":"The time tracking model."},"TimeTrackingPutForm":{"required":["timezone","typeOfWorkId"],"type":"object","properties":{"isBillable":{"type":"boolean","description":"Whether the time tracking is billable or not.","example":true},"isBilled":{"type":"boolean","description":"Whether the time tracking is billed or not.","example":false},"taskId":{"type":"string","description":"The id of the task.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectId":{"type":"string","description":"The id of the project.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"note":{"type":"string","description":"The note of the time tracking.","nullable":true,"example":"I created a first draft for the new sitemap"},"startDateUtc":{"type":"string","description":"The date (in UTC) when the time tracking was started.","format":"date-time","nullable":true,"example":"2022-03-01T00:00:00Z"},"startTimeUtc":{"type":"string","description":"The time (in UTC) when the time tracking was started.","nullable":true,"example":"09:21:00"},"endDateUtc":{"type":"string","description":"The date (in UTC) when the time tracking was stopped.","format":"date-time","nullable":true,"example":"2022-03-01T18:21:05Z"},"endTimeUtc":{"type":"string","description":"The time (in UTC) when the time tracking was stopped.\nRequired when the time tracking has already been completed and Duration has not been set.","nullable":true,"example":"11:45:00"},"startDateLocal":{"type":"string","description":"The date (in Local) when the time tracking was started.","format":"date-time","nullable":true,"example":"2022-03-01T00:00:00"},"startTimeLocal":{"type":"string","description":"The time (in Local) when the time tracking was started.","nullable":true,"example":"10:21:00"},"endDateLocal":{"type":"string","description":"The date (in Local) when the time tracking was stopped.","format":"date-time","nullable":true,"example":"2022-03-01T17:21:05"},"endTimeLocal":{"type":"string","description":"The time (in Local) when the time tracking was stopped.\nRequired when the time tracking has already been completed and Duration has not been set.","nullable":true,"example":"12:45:00"},"timezone":{"minLength":1,"type":"string","description":"The original timezone of the time tracking.\nThe format of the timezone is the IANA standard.","example":"Europe/Berlin"},"duration":{"type":"integer","description":"The duration of the time tracking in seconds.\nRequired when the time tracking has already been completed and EndTime has not been set.","format":"int32","nullable":true,"example":8635},"breakDuration":{"type":"integer","description":"The duration of the break in seconds.\nCannot be set via API.","format":"int32","nullable":true},"typeOfWorkId":{"type":"string","description":"The id of the type of work.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The id of the user.\nCan be null if the user was deleted.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"TimeTrackingSetting":{"required":["type"],"type":"object","properties":{"type":{"minLength":1,"type":"string","description":"The type of the setting.","example":"prevent-on-done-projects"},"enabled":{"type":"boolean","description":"Whether the setting is enabled.","example":true},"dayCount":{"type":"integer","description":"The day count required for the setting 'allow-on-past-days'.","format":"int32","nullable":true,"example":null}},"additionalProperties":false},"TimeTrackingSettingForm":{"required":["type"],"type":"object","properties":{"type":{"minLength":1,"type":"string","description":"The type of the setting.","example":"prevent-on-done-projects"},"enabled":{"type":"boolean","description":"Whether the setting is enabled.","example":true},"dayCount":{"type":"integer","description":"The day count required for the setting 'allow-on-past-days'.","format":"int32","nullable":true,"example":null}},"additionalProperties":false},"TimeTrackingSuggestion":{"type":"object","properties":{"name":{"type":"string","description":"The suggested name for the time entry.","nullable":true,"example":"Website Design"},"type":{"type":"string","description":"The type of the suggestion.\nContains the reason why awork suggests this time entry.","nullable":true,"example":"worked_on_project"},"score":{"type":"number","description":"The score of the suggestion.\nThe higher it is, the more likely the suggestion is.\n1 is the highest.","format":"float","example":1},"start":{"type":"string","description":"The suggested start of the time entry, in UTC.","format":"date-time","example":"2022-03-01T11:34:05Z"},"end":{"type":"string","description":"The suggested end of the time entry, in UTC.","format":"date-time","example":"2022-03-01T14:03:00Z"},"isBillable":{"type":"boolean","description":"Whether the task of this suggested time entry is billable.\nTypically true when the task belongs to a project that is assigned to a company.","example":true},"duration":{"type":"integer","description":"The suggested duration of the time entry, in seconds.","format":"int32","nullable":true,"example":8935},"taskId":{"type":"string","description":"The id of the suggested task for the time entry.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectId":{"type":"string","description":"The id of the suggested project for the time entry.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"typeOfWorkId":{"type":"string","description":"The id of the suggested type of work for the time entry.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"TrustedProjectConnection":{"type":"object","properties":{"id":{"type":"string","description":"The id of the trusted project connection.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"trustedWorkspaceId":{"type":"string","description":"The workspace id of the trusted workspace.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"trustedWorkspaceName":{"type":"string","description":"The name of the trusted workspace.","nullable":true},"trustedWorkspaceSubdomain":{"type":"string","description":"The subdomain of the trusted workspace.","nullable":true}},"additionalProperties":false},"TrustedProjectConnectionForm":{"type":"object","properties":{"workspaceId":{"type":"string","description":"The id of the workspace to set as trusted.\nRequired if Subdomain is not provided.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"subdomain":{"type":"string","description":"The subdomain URL of the workspace to set as trusted.\nRequired if WorkspaceId is not provided.","nullable":true}},"additionalProperties":false},"TypeOfWork":{"type":"object","properties":{"id":{"type":"string","description":"The id of the task type.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the task type.","nullable":true,"example":"Sales Work"},"description":{"type":"string","description":"A short (max. 140 characters) description of the task type.","nullable":true,"example":"Tasks related to sales dept."},"icon":{"type":"string","description":"The icon associated with this task type.","nullable":true,"example":"attach_money"},"isArchived":{"type":"boolean","description":"Whether the type of work has been archived."},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-10T16:25:09.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-10T18:55:00.500Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"The task type model."},"TypeOfWorkAvatar":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","nullable":true},"icon":{"type":"string","nullable":true},"description":{"type":"string","nullable":true},"isArchived":{"type":"boolean"}},"additionalProperties":false},"TypeOfWorkForm":{"required":["name"],"type":"object","properties":{"name":{"minLength":1,"type":"string","description":"The names of the type of work.","example":"Website Design"},"description":{"type":"string","description":"A short description of the type of work.","nullable":true,"example":"Creative Website Design"},"icon":{"type":"string","description":"The icon associated with this task type.","nullable":true,"example":"attach_money"}},"additionalProperties":false,"description":"The PUT task type model."},"UnlinkCustomFieldDefinitionForm":{"required":["customFieldDefinitionId"],"type":"object","properties":{"customFieldDefinitionId":{"type":"string","description":"The id of the custom field definition.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"Represents a form for unlinking a custom field definition."},"UnlinkWorkflowCustomFieldDefinitionForm":{"required":["customFieldDefinitionId"],"type":"object","properties":{"customFieldDefinitionId":{"type":"string","description":"The id of the custom field definition.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"unlinkCustomFieldFromLinkedProjects":{"type":"boolean","description":"Gets or sets a value indicating whether the custom field should also be unlinked\nfrom workflow-linked projects, including deleting task custom field values."}},"additionalProperties":false,"description":"Represents a form for unlinking a custom field definition from a workflow."},"UpdateCalculatedSQLValuesForm":{"type":"object","properties":{"updateUsers":{"type":"boolean"},"updateCompanies":{"type":"boolean"},"updateProjects":{"type":"boolean"},"updateTasks":{"type":"boolean"},"updateTaskLists":{"type":"boolean"}},"additionalProperties":false},"UpdateOrderForm":{"type":"object","properties":{"order":{"type":"number","description":"The order of the list.","format":"double","nullable":true,"example":5}},"additionalProperties":false},"UpdateProjectKeyForm":{"required":["projectKey"],"type":"object","properties":{"projectKey":{"maxLength":32,"minLength":1,"type":"string","description":"The new project key. Must be uppercase letters (A-Z), numbers (0-9), and dashes (-), between 1-32 characters.","example":"PROJ-123"}},"additionalProperties":false,"description":"Form for updating a project's key."},"UpdateProjectRoleForm":{"required":["projectRoleId"],"type":"object","properties":{"projectRoleId":{"type":"string","description":"The role of the invited user in the project.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"UpdateProjectStatusOrderForm":{"required":["projectStatusId"],"type":"object","properties":{"projectStatusId":{"type":"string","description":"The id of the project status.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"order":{"type":"integer","description":"The order value which determines the position of the project status\nin the flow of the project type.\nOnly accepts 0 and positive values.\nFor independent statuses without successor and predecessor\nthis value is set to null.","format":"int32","nullable":true,"example":2}},"additionalProperties":false},"User":{"type":"object","properties":{"firstName":{"maxLength":1000,"minLength":0,"type":"string","description":"The firstname of the user.","nullable":true,"example":"Carla"},"lastName":{"maxLength":1000,"minLength":0,"type":"string","description":"The lastname of the user.","nullable":true,"example":"Creative"},"birthDate":{"type":"string","description":"The birthdate of the user.","format":"date-time","nullable":true,"example":"1998-04-19T00:00:000Z"},"gender":{"maxLength":25,"minLength":0,"type":"string","description":"The gender of the user.","nullable":true,"example":"female"},"title":{"maxLength":100,"minLength":0,"type":"string","description":"The title of the user.","nullable":true,"example":"Miss"},"position":{"maxLength":1000,"minLength":0,"type":"string","description":"The position of the user.","nullable":true},"language":{"maxLength":25,"minLength":0,"type":"string","description":"The language preference of the user in ISO 639-1 format.","nullable":true,"example":"en-GB"},"id":{"type":"string","description":"The id of the user.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"status":{"$ref":"#/components/schemas/UserStatus"},"createdOn":{"type":"string","description":"The date this user was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this user.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date when this user was last updated.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who updated the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"isArchived":{"type":"boolean","description":"Whether this user is archived.\nArchived users are automatically inactive and only exist for reference purposes.","example":false},"isDeactivated":{"type":"boolean","description":"Whether the user has been deactivated.","example":false},"deactivatedOn":{"type":"string","description":"The date the user was deactivated.","format":"date-time","nullable":true},"deletedOn":{"type":"string","description":"The date the user was deleted (soft delete).","format":"date-time","nullable":true},"hasImage":{"type":"boolean","description":"Whether the user has uploaded a profile image.","example":true},"shouldMigrateToConnect":{"type":"boolean","description":"Whether the user should be migrated to Connect."},"userContactInfos":{"type":"array","items":{"$ref":"#/components/schemas/ContactInfo"},"description":"The contact information assigned to this user.","nullable":true},"resourceVersion":{"type":"integer","description":"The version of the entity, updated on every modification, to the ticks in UTC.\nNot identical to UpdatedOn.","format":"int64","readOnly":true,"example":637825154598057900},"tags":{"type":"array","items":{"$ref":"#/components/schemas/UserTagModel"},"description":"The tags of this user.","nullable":true},"teams":{"type":"array","items":{"$ref":"#/components/schemas/TeamModel"},"description":"The teams the user is associated to.","nullable":true},"isExternal":{"type":"boolean","description":"True if this entity is coming from an external workspace (awork Connect).","example":true}},"additionalProperties":false,"description":"The user model."},"UserAndWorkspace":{"type":"object","properties":{"firstName":{"maxLength":1000,"minLength":0,"type":"string","description":"The firstname of the user.","nullable":true,"example":"Carla"},"lastName":{"maxLength":1000,"minLength":0,"type":"string","description":"The lastname of the user.","nullable":true,"example":"Creative"},"birthDate":{"type":"string","description":"The birthdate of the user.","format":"date-time","nullable":true,"example":"1998-04-19T00:00:000Z"},"gender":{"maxLength":25,"minLength":0,"type":"string","description":"The gender of the user.","nullable":true,"example":"female"},"title":{"maxLength":100,"minLength":0,"type":"string","description":"The title of the user.","nullable":true,"example":"Miss"},"position":{"maxLength":1000,"minLength":0,"type":"string","description":"The position of the user.","nullable":true},"language":{"maxLength":25,"minLength":0,"type":"string","description":"The language preference of the user in ISO 639-1 format.","nullable":true,"example":"en-GB"},"id":{"type":"string","description":"The id of the user.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"status":{"$ref":"#/components/schemas/UserStatus"},"createdOn":{"type":"string","description":"The date this user was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this user.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date when this user was last updated.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who updated the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"isArchived":{"type":"boolean","description":"Whether this user is archived.\nArchived users are automatically inactive and only exist for reference purposes.","example":false},"isDeactivated":{"type":"boolean","description":"Whether the user has been deactivated.","example":false},"deactivatedOn":{"type":"string","description":"The date the user was deactivated.","format":"date-time","nullable":true},"deletedOn":{"type":"string","description":"The date the user was deleted (soft delete).","format":"date-time","nullable":true},"hasImage":{"type":"boolean","description":"Whether the user has uploaded a profile image.","example":true},"shouldMigrateToConnect":{"type":"boolean","description":"Whether the user should be migrated to Connect."},"userContactInfos":{"type":"array","items":{"$ref":"#/components/schemas/ContactInfo"},"description":"The contact information assigned to this user.","nullable":true},"resourceVersion":{"type":"integer","description":"The version of the entity, updated on every modification, to the ticks in UTC.\nNot identical to UpdatedOn.","format":"int64","readOnly":true,"example":637825154598057900},"tags":{"type":"array","items":{"$ref":"#/components/schemas/UserTagModel"},"description":"The tags of this user.","nullable":true},"teams":{"type":"array","items":{"$ref":"#/components/schemas/TeamModel"},"description":"The teams the user is associated to.","nullable":true},"isExternal":{"type":"boolean","description":"True if this entity is coming from an external workspace (awork Connect).","example":true},"accountId":{"type":"string","description":"The account id of the user.\nOnly used internally.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"workspace":{"$ref":"#/components/schemas/WorkspaceOfUser"}},"additionalProperties":false,"description":"The user and workspace model."},"UserAvatar":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"firstName":{"type":"string","nullable":true},"lastName":{"type":"string","nullable":true},"hasImage":{"type":"boolean"},"isExternal":{"type":"boolean","nullable":true}},"additionalProperties":false},"UserCapacity":{"type":"object","properties":{"userId":{"type":"string","description":"The id of the user this capacity belongs to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"weeklyCapacity":{"$ref":"#/components/schemas/UserWeeklyCapacity"},"createdOn":{"type":"string","description":"The date this user capacity was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this user capacity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date when this user capacity was last updated.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who updated the user capacity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"capacityPerWeek":{"type":"integer","description":"The capacity of the user per week, in seconds.","format":"int32","readOnly":true,"example":126000,"deprecated":true}},"additionalProperties":false,"description":"The user capacity model."},"UserCapacityForm":{"type":"object","properties":{"capacityPerWeek":{"type":"integer","description":"Backward compatibility property.\nThe capacity of the user per week, in seconds.\nIf this value is null, and all the daily values are null as well, then the default value will be set to the default\nvalue.","format":"int32","nullable":true,"example":126000,"deprecated":true},"mon":{"type":"integer","description":"The user's capacity on Monday, in seconds.","format":"int32","nullable":true,"example":28800},"tue":{"type":"integer","description":"The user's capacity on Tuesday, in seconds.","format":"int32","nullable":true,"example":28800},"wed":{"type":"integer","description":"The user's capacity on Wednesday, in seconds.","format":"int32","nullable":true,"example":28800},"thu":{"type":"integer","description":"The user's capacity on Thursday, in seconds.","format":"int32","nullable":true,"example":28800},"fri":{"type":"integer","description":"The user's capacity on Friday, in seconds.","format":"int32","nullable":true,"example":28800},"sat":{"type":"integer","description":"The user's capacity on Saturday, in seconds.","format":"int32","nullable":true,"example":0},"sun":{"type":"integer","description":"The user's capacity on Sunday, in seconds.","format":"int32","nullable":true,"example":0}},"additionalProperties":false,"description":"The user capacity form."},"UserForm":{"type":"object","properties":{"firstName":{"maxLength":1000,"minLength":0,"type":"string","description":"The firstname of the user.","nullable":true,"example":"Carla"},"lastName":{"maxLength":1000,"minLength":0,"type":"string","description":"The lastname of the user.","nullable":true,"example":"Creative"},"birthDate":{"type":"string","description":"The birthdate of the user.","format":"date-time","nullable":true,"example":"1998-04-19T00:00:000Z"},"gender":{"maxLength":25,"minLength":0,"type":"string","description":"The gender of the user.","nullable":true,"example":"female"},"title":{"maxLength":100,"minLength":0,"type":"string","description":"The title of the user.","nullable":true,"example":"Miss"},"position":{"maxLength":1000,"minLength":0,"type":"string","description":"The position of the user.","nullable":true},"language":{"maxLength":25,"minLength":0,"type":"string","description":"The language preference of the user in ISO 639-1 format.","nullable":true,"example":"en-GB"}},"additionalProperties":false,"description":"The model to create a new user."},"UserInRole":{"required":["userId"],"type":"object","properties":{"userId":{"type":"string","description":"The id of the user to add to the role.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"isDeactivated":{"type":"boolean","description":"Whether the user is deactivated in this role.","example":false},"roleId":{"type":"string","description":"The id of the role the user is assigned to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"UserInRoleForm":{"required":["userId"],"type":"object","properties":{"userId":{"type":"string","description":"The id of the user to add to the role.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"UserInTeam":{"type":"object","properties":{"userId":{"type":"string","description":"The id of the user.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"teamId":{"type":"string","description":"The id of the team.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"The user in team model assigns accounts to teams."},"UserModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the user.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"firstName":{"type":"string","description":"The first name of the user.","nullable":true,"example":"Carla"},"lastName":{"type":"string","description":"The last name of the user.","nullable":true,"example":"Brown"},"hasImage":{"type":"boolean","description":"Whether this user has a profile image.","nullable":true,"example":true},"language":{"type":"string","description":"The language of the user.","nullable":true,"example":"en-GB"},"tags":{"type":"array","items":{"$ref":"#/components/schemas/DefaultTagModel"},"description":"The tags of the user.","nullable":true},"isDeactivated":{"type":"boolean","description":"Whether the user is deactivated.","example":false},"birthDate":{"type":"string","description":"The birth date of the user.","format":"date-time","nullable":true,"example":"1998-04-19T00:00:000Z"},"status":{"$ref":"#/components/schemas/UserStatusModel"},"isApiKeyUser":{"type":"boolean","description":"Whether this user is an API key user.\nAPI key users should always be archived."},"isExternal":{"type":"boolean","description":"True if this entity is coming from an external workspace (awork Connect)."}},"additionalProperties":false,"description":"The commonly used user API model."},"UserModelForTimeTrackings":{"type":"object","properties":{"id":{"type":"string","description":"The identifier of the nested model.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"firstName":{"type":"string","description":"The first name of the user.","nullable":true,"example":"Carla"},"lastName":{"type":"string","description":"The last name of the user.","nullable":true,"example":"Creative"},"hasImage":{"type":"boolean","description":"Whether this user has a profile image.","nullable":true,"example":true},"isExternal":{"type":"boolean","description":"Whether the user is external."}},"additionalProperties":false},"UserPermission":{"type":"object","properties":{"aku":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"uid":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"ia":{"type":"boolean"},"rid":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"ib":{"type":"boolean"},"pid":{"type":"string","nullable":true},"pa":{"type":"boolean"},"it":{"type":"boolean"},"p":{"type":"array","items":{"$ref":"#/components/schemas/Permission"},"nullable":true},"prp":{"type":"array","items":{"$ref":"#/components/schemas/ProjectRolesPermission"},"nullable":true},"t":{"type":"array","items":{"type":"string","format":"uuid"},"nullable":true},"pcs":{"type":"array","items":{"$ref":"#/components/schemas/ProjectConnectionsData"},"nullable":true},"iuid":{"type":"array","items":{"type":"string","format":"uuid"},"nullable":true},"iwid":{"type":"array","items":{"type":"string","format":"uuid"},"nullable":true}},"additionalProperties":false},"UserPermissionFullModel":{"type":"object","properties":{"isAiPlanActive":{"type":"boolean","description":"Whether the workspace has an active AI plan."},"userId":{"type":"string","description":"The id of the user.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"isAdmin":{"type":"boolean","description":"Whether the user is an admin user.","example":false},"isGuest":{"type":"boolean","description":"Whether the user is a guest user.","example":false},"roleId":{"type":"string","description":"The role id of the user.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"isBlocked":{"type":"boolean","description":"Whether the user is blocked.","example":false},"permissions":{"type":"array","items":{"$ref":"#/components/schemas/PermissionFullModel"},"description":"A list of permissions assigned to the user.","nullable":true},"projectRolesPermissions":{"type":"array","items":{"$ref":"#/components/schemas/ProjectRolesPermissionFullModel"},"description":"A list of project role permissions assigned to the user.","nullable":true}},"additionalProperties":false},"UserPermissionInfo":{"type":"object","properties":{"up":{"$ref":"#/components/schemas/UserPermission"},"s":{"type":"string","nullable":true}},"additionalProperties":false},"UserPermissionInfoExternal":{"type":"object","properties":{"signature":{"type":"string","description":"The signature of the user permissions. Can be verified with the HMACSHA1 algorithm and the secret.","nullable":true,"example":"c2lnbmF0dXJl"},"userPermission":{"$ref":"#/components/schemas/UserPermissionFullModel"}},"additionalProperties":false},"UserPostForm":{"required":["accountId"],"type":"object","properties":{"firstName":{"maxLength":1000,"minLength":0,"type":"string","description":"The firstname of the user.","nullable":true,"example":"Carla"},"lastName":{"maxLength":1000,"minLength":0,"type":"string","description":"The lastname of the user.","nullable":true,"example":"Creative"},"birthDate":{"type":"string","description":"The birthdate of the user.","format":"date-time","nullable":true,"example":"1998-04-19T00:00:000Z"},"gender":{"maxLength":25,"minLength":0,"type":"string","description":"The gender of the user.","nullable":true,"example":"female"},"title":{"maxLength":100,"minLength":0,"type":"string","description":"The title of the user.","nullable":true,"example":"Miss"},"position":{"maxLength":1000,"minLength":0,"type":"string","description":"The position of the user.","nullable":true},"language":{"maxLength":25,"minLength":0,"type":"string","description":"The language preference of the user in ISO 639-1 format.","nullable":true,"example":"en-GB"},"accountId":{"type":"string","description":"The account id of the user.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"The user model with the account id to create a new user."},"UserProjectAccessStaleDirtyStateResult":{"type":"object","properties":{"totalIndexedDirtyUsers":{"type":"integer","format":"int64"},"staleDirtyUsersCount":{"type":"integer","format":"int64"},"oldestDirtyAgeMinutes":{"type":"integer","format":"int32"},"samples":{"type":"array","items":{"$ref":"#/components/schemas/UserProjectAccessStaleDirtyStateSample"},"nullable":true}},"additionalProperties":false},"UserProjectAccessStaleDirtyStateSample":{"type":"object","properties":{"workspaceId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"reason":{"type":"string","nullable":true},"createdOn":{"type":"string","format":"date-time"},"updatedOn":{"type":"string","format":"date-time"},"createdTraceId":{"type":"string","nullable":true},"updatedTraceId":{"type":"string","nullable":true}},"additionalProperties":false},"UserProjectAccessValidationResult":{"type":"object","properties":{"workspaceId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"expectedCount":{"type":"integer","format":"int32"},"actualCount":{"type":"integer","format":"int32"},"missingCount":{"type":"integer","format":"int32"},"extraCount":{"type":"integer","format":"int32"},"mismatchedCount":{"type":"integer","format":"int32"},"isValid":{"type":"boolean"},"samples":{"type":"array","items":{"$ref":"#/components/schemas/UserProjectAccessValidationSample"},"nullable":true}},"additionalProperties":false},"UserProjectAccessValidationSample":{"type":"object","properties":{"workspaceId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"type":{"type":"string","nullable":true},"userId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"projectId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"hasPpdRead":{"type":"boolean","nullable":true},"hasPmdRead":{"type":"boolean","nullable":true},"expectedHasPpdRead":{"type":"boolean","nullable":true},"expectedHasPmdRead":{"type":"boolean","nullable":true}},"additionalProperties":false},"UserSetting":{"required":["key","value"],"type":"object","properties":{"entityId":{"type":"string","description":"The id of the related entity. Required when EntityName is set.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"entityName":{"maxLength":25,"minLength":0,"type":"string","description":"The name of the related entity. Required when EntityId is set.","nullable":true,"example":"users"},"key":{"maxLength":50,"minLength":0,"type":"string","description":"The unique key.","example":"onboarding-complete"},"value":{"minLength":1,"type":"string","description":"The value of the setting.","example":"true"},"createdOn":{"type":"string","description":"The creation date.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created the entity.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date when the entity was last updated.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who last updated the entity.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"The user setting model."},"UserSettingForm":{"required":["key","value"],"type":"object","properties":{"entityId":{"type":"string","description":"The id of the related entity. Required when EntityName is set.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"entityName":{"maxLength":25,"minLength":0,"type":"string","description":"The name of the related entity. Required when EntityId is set.","nullable":true,"example":"users"},"key":{"maxLength":50,"minLength":0,"type":"string","description":"The unique key.","example":"onboarding-complete"},"value":{"minLength":1,"type":"string","description":"The value of the setting.","example":"true"}},"additionalProperties":false,"description":"The user setting model."},"UserStatus":{"type":"object","properties":{"invitationAccepted":{"type":"boolean","description":"Flag if the user in this workspace accepted the invitation."},"isDeactivated":{"type":"boolean","description":"Whether the user is deactivated."}},"additionalProperties":false,"description":"The status of the user."},"UserStatusModel":{"type":"object","properties":{"isDeactivated":{"type":"boolean","description":"Whether the user is deactivated.","example":false},"invitationAccepted":{"type":"boolean","description":"Whether the user has accepted the invitation.","example":true}},"additionalProperties":false,"description":"The commonly used user status API model."},"UserTagModel":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the tag.","nullable":true,"example":"Design"},"color":{"type":"string","description":"The color of the tag.","nullable":true,"example":"purple"}},"additionalProperties":false,"description":"A tag model used for the user.\nDo not delete, we need to create copies of the tag model for each entity to avoid issues with Automapper."},"UserTagModelForTimeTrackings":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the tag.","nullable":true,"example":"Design"},"color":{"type":"string","description":"The color of the tag.","nullable":true,"example":"purple"}},"additionalProperties":false,"description":"A tag model used for the timetrackings UserModelForTimeTrackings.\nDo not delete, we need to create copies of the tag model for each entity to avoid issues with Automapper."},"UserTaskAccessValidationResult":{"type":"object","properties":{"workspaceId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"expectedCount":{"type":"integer","format":"int32"},"actualCount":{"type":"integer","format":"int32"},"missingCount":{"type":"integer","format":"int32"},"extraCount":{"type":"integer","format":"int32"},"mismatchedCount":{"type":"integer","format":"int32"},"isValid":{"type":"boolean"},"samples":{"type":"array","items":{"$ref":"#/components/schemas/UserTaskAccessValidationSample"},"nullable":true}},"additionalProperties":false},"UserTaskAccessValidationSample":{"type":"object","properties":{"workspaceId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"type":{"type":"string","nullable":true},"userId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"taskId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"sourceMask":{"type":"integer","format":"int64","nullable":true},"expectedSourceMask":{"type":"integer","format":"int64","nullable":true}},"additionalProperties":false},"UserTeamModelForTimeTrackings":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"UserWeeklyCapacity":{"type":"object","properties":{"mon":{"type":"integer","description":"The user's capacity on Monday, in seconds.","format":"int32","example":28800},"tue":{"type":"integer","description":"The user's capacity on Tuesday, in seconds.","format":"int32","example":28800},"wed":{"type":"integer","description":"The user's capacity on Wednesday, in seconds.","format":"int32","example":28800},"thu":{"type":"integer","description":"The user's capacity on Thursday, in seconds.","format":"int32","example":28800},"fri":{"type":"integer","description":"The user's capacity on Friday, in seconds.","format":"int32","example":28800},"sat":{"type":"integer","description":"The user's capacity on Saturday, in seconds.","format":"int32","example":0},"sun":{"type":"integer","description":"The user's capacity on Sunday, in seconds.","format":"int32","example":0}},"additionalProperties":false},"UsersToPlan":{"type":"object","properties":{"selectedUserIds":{"type":"array","items":{"type":"string","format":"uuid"},"nullable":true},"selectedTeamIds":{"type":"array","items":{"type":"string","format":"uuid"},"nullable":true},"selectedProjectIds":{"type":"array","items":{"type":"string","format":"uuid"},"nullable":true}},"additionalProperties":false},"UsersToPlanForm":{"type":"object","properties":{"selectedUserIds":{"type":"array","items":{"type":"string","format":"uuid"},"nullable":true},"selectedTeamIds":{"type":"array","items":{"type":"string","format":"uuid"},"nullable":true},"selectedProjectIds":{"type":"array","items":{"type":"string","format":"uuid"},"nullable":true}},"additionalProperties":false},"ValidateInvitationForm":{"required":["inviteCode"],"type":"object","properties":{"inviteCode":{"minLength":1,"type":"string","description":"The invite code to validate."}},"additionalProperties":false},"ValidateProjectKeyForm":{"required":["projectKey"],"type":"object","properties":{"projectKey":{"minLength":1,"type":"string","description":"The project key to validate. Must be uppercase letters (A-Z), numbers (0-9), and dashes (-), between 1-32 characters.","example":"PROJ-123"}},"additionalProperties":false,"description":"Form for validating a potential project key."},"Widget":{"type":"object","properties":{"id":{"type":"string","description":"The id of the widget.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"type":{"type":"string","description":"The type of the widget.","nullable":true,"example":"task-views"},"name":{"type":"string","description":"The name of the widget.","nullable":true,"example":"Unassigned Tasks"},"entityId":{"type":"string","description":"The id of the entity that the widget is referencing.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"filterId":{"type":"string","description":"The id of the filter that the widget is referencing.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The creation date.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created the entity.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date when the entity was last updated.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who last updated the entity.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"column":{"type":"integer","description":"The column of the widget within the dashboard.","format":"int32","example":0},"order":{"type":"integer","description":"The order of the widget within the column.","format":"int32","example":0},"settings":{"type":"string","description":"The settings of the widget.","nullable":true,"example":"{ \"showPrivate\": true }"},"value":{"type":"string","description":"The value of a widget.","nullable":true,"example":null}},"additionalProperties":false},"WidgetForm":{"type":"object","properties":{"id":{"type":"string","description":"The id of the widget.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"type":{"maxLength":25,"minLength":0,"type":"string","description":"The type of the widget.","nullable":true},"name":{"maxLength":255,"minLength":0,"type":"string","description":"The name of the widget.","nullable":true},"entityId":{"type":"string","description":"The id of the entity that the widget is referencing.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"filterId":{"type":"string","description":"The id of the filter that the widget is referencing.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"column":{"type":"integer","description":"The column of the widget within the dashboard.","format":"int32"},"order":{"type":"integer","description":"The order of the widget within the column.","format":"int32"},"settings":{"type":"string","description":"The settings of the widget.","nullable":true},"value":{"type":"string","description":"The value of a widget.","nullable":true}},"additionalProperties":false},"WidgetPostForm":{"required":["widgets"],"type":"object","properties":{"widgets":{"type":"array","items":{"$ref":"#/components/schemas/WidgetForm"},"description":"A list of all widgets of the dashboard."}},"additionalProperties":false},"Workflow":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Website Design and Implementation"},"icon":{"type":"string","description":"The icon associated with this workflow.","nullable":true,"example":"workflow"},"isArchived":{"type":"boolean","description":"Whether the workflow has been archived."},"isExternal":{"type":"boolean","description":"True if the workflow is coming from an external workspace (awork Connect).\nFalse otherwise."}},"additionalProperties":false,"description":"The workflow model."},"WorkflowForm":{"required":["name"],"type":"object","properties":{"name":{"maxLength":255,"minLength":1,"type":"string","description":"The name of the workflow.","example":"Default Workflow"},"icon":{"maxLength":100,"type":"string","description":"The icon associated with this workflow.","nullable":true,"example":"workflow"}},"additionalProperties":false,"description":"The form for creating or updating a workflow."},"WorkloadAppointments":{"type":"object","properties":{"providerName":{"type":"string","nullable":true},"calendarName":{"type":"string","nullable":true},"duration":{"type":"integer","format":"int32"}},"additionalProperties":false},"WorkloadCompany":{"type":"object","properties":{"id":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","nullable":true},"hasImage":{"type":"boolean"}},"additionalProperties":false},"WorkloadModel":{"type":"object","properties":{"date":{"type":"string","description":"The date of the calculated utilisation.","format":"date-time"},"duration":{"type":"number","description":"The total duration (in seconds) of all the items included in the user's workload calculation:\nCalendar events + Scheduled Tasks + Assigned Tasks + Time Bookings + Recurring Tasks.","format":"float","readOnly":true},"userCapacity":{"type":"integer","description":"The total capacity of the user on this day.","format":"int32","nullable":true},"remainingUserCapacity":{"type":"integer","description":"The remaining capacity of the user on this day.","format":"int32","nullable":true},"projects":{"type":"array","items":{"$ref":"#/components/schemas/WorkloadProjectInfo"},"nullable":true},"tasks":{"type":"array","items":{"$ref":"#/components/schemas/WorkloadTaskInfo"},"nullable":true},"appointments":{"type":"array","items":{"$ref":"#/components/schemas/WorkloadAppointments"},"nullable":true},"calendarAbsences":{"type":"array","items":{"$ref":"#/components/schemas/WorkloadAppointments"},"description":"Calendar out-of-office entries grouped by calendar that reduce capacity for this day.\nOnly returned when fetchDetails is enabled.","nullable":true}},"additionalProperties":false},"WorkloadProjectInfo":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","nullable":true},"company":{"$ref":"#/components/schemas/WorkloadCompany"},"tasks":{"type":"array","items":{"$ref":"#/components/schemas/WorkloadTaskInfo"},"nullable":true},"timeBookings":{"type":"array","items":{"$ref":"#/components/schemas/WorkloadTimeBookingInfo"},"nullable":true},"isAnonymized":{"type":"boolean","description":"This will be true if the user doesn't have access to the project.\nIn that case the Name and the ClientName will be shadowed.","nullable":true},"hasImage":{"type":"boolean"}},"additionalProperties":false},"WorkloadStatusModel":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Website Design and Implementation"},"type":{"type":"string","description":"The type of the status.","nullable":true}},"additionalProperties":false},"WorkloadTaskInfo":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","nullable":true},"duration":{"type":"integer","description":"The duration of the planned effort of the user for this task.\nIncludes the duration of recurring tasks if the IsRecurring flag is set to true.","format":"int32"},"taskStatus":{"$ref":"#/components/schemas/WorkloadStatusModel"},"taskSchedules":{"type":"array","items":{"$ref":"#/components/schemas/WorkloadTaskScheduleInfo"},"nullable":true},"isAnonymized":{"type":"boolean","description":"This will be true if the user doesn't have access to the task.\nIn that case the Name and the Status will be shadowed.","nullable":true},"isRecurring":{"type":"boolean","description":"Whether the task has a recurrency rule."}},"additionalProperties":false},"WorkloadTaskScheduleInfo":{"type":"object","properties":{"duration":{"type":"integer","format":"int32","readOnly":true},"from":{"type":"string","format":"date-time"},"to":{"type":"string","format":"date-time"}},"additionalProperties":false},"WorkloadTimeBookingInfo":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"description":{"type":"string","nullable":true},"duration":{"type":"integer","format":"int32"},"isAnonymized":{"type":"boolean","description":"This will be true if the user doesn't have access to the project of time booking (if related to a project).\nIn that case the Description will be shadowed.","nullable":true}},"additionalProperties":false},"WorkspaceAbsenceForm":{"required":["description","endOn","startOn"],"type":"object","properties":{"startOn":{"type":"string","description":"The start time of the workspace absence.","format":"date-time","example":"2022-03-01T00:00:00Z"},"endOn":{"type":"string","description":"The end time of the workspace absence.","format":"date-time","example":"2022-03-03T00:00:00Z"},"description":{"maxLength":1000,"minLength":0,"type":"string","description":"The description of the workspace absence.","example":"Company offsite"},"regionId":{"type":"string","description":"(optional) The id of the absence region to limit the workspace absence to.\nIf not set, the workspace absence will apply to all users in the workspace.\nOtherwise, it will only apply to users in the specified absence region.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"isHalfDayOnStart":{"type":"boolean","description":"If it's true, and it's a single day absence means that the absence is for the first half of the workday.\nIf it's a multi day absence, it will start on the second half of the first day of the absence period.","example":false},"isHalfDayOnEnd":{"type":"boolean","description":"If it's true, and it's a single day absence means that the absence is for the second half of the workday.\nIf it's a multi day absence it will end on the first half of the last day of the absence period.","example":false}},"additionalProperties":false},"WorkspaceAbsenceModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"startOn":{"type":"string","description":"The start time of the workspace absence.","format":"date-time","example":"2022-03-01T00:00:00Z"},"endOn":{"type":"string","description":"The end time of the workspace absence.","format":"date-time","example":"2022-03-03T00:00:00Z"},"description":{"type":"string","description":"The description of the absence.","nullable":true,"example":"Company offsite"},"regionId":{"type":"string","description":"The (optional) regionId of the workspace absence.\nIf null, the absence is global for the entire workspace.\nOtherwise, it will be applied only to the users of the region.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"region":{"type":"string","description":"The name of the region of the workspace absence.\nNull if the absence is global for the entire workspace.","nullable":true,"example":"Hamburg"},"isReadOnly":{"type":"boolean","description":"If it's true it means that this Absence is read-only and cannot be edited/deleted by the user.","readOnly":true},"isHalfDayOnStart":{"type":"boolean","description":"If it's true and it's a single day absence means that the absence is for the first half of the workday.\nIf it's a multi day absence it started on the second half of the first day of the absence period.","readOnly":true,"example":false},"isHalfDayOnEnd":{"type":"boolean","description":"If it's true and it's a single day absence means that the absence is for the second half of the workday.\nIf it's a multi day absence it ended on the first half of the last day of the absence period.","readOnly":true,"example":false}},"additionalProperties":false},"WorkspaceIdModel":{"type":"object","properties":{"workspaceId":{"type":"string","description":"The id of the workspace.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"WorkspaceModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the workspace.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the workspace.","nullable":true,"example":"NCNSTN Brand Design"},"hasImage":{"type":"boolean","description":"Whether this workspace has a profile image.","example":true},"language":{"type":"string","description":"The language of the workspace.","nullable":true,"example":"en-GB"},"subdomains":{"type":"array","items":{"$ref":"#/components/schemas/SubdomainModel"},"description":"The subdomains of the workspace.","nullable":true},"isTestWorkspace":{"type":"boolean","description":"Whether this workspace is a test workspace.","example":false}},"additionalProperties":false,"description":"The commonly used workspaces API model."},"WorkspaceOfUser":{"type":"object","properties":{"id":{"type":"string","description":"The id of the current workspace.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the current workspace.","nullable":true,"example":"NCNSTN"},"url":{"type":"string","description":"The default URL of the current workspace.","nullable":true,"example":"https://ncnstn.awork.com"}},"additionalProperties":false,"description":"The user's current workspace model."},"WorkspaceUsageStatsModel":{"type":"object","properties":{"taskCustomFieldCount":{"type":"integer","description":"The number of custom fields defined for tasks.","format":"int32"},"projectCustomFieldCount":{"type":"integer","description":"The number of custom fields defined for projects.","format":"int32"},"projectTemplateCount":{"type":"integer","description":"The number of project templates.","format":"int32"},"privateProjectCount":{"type":"integer","description":"The number of private projects.","format":"int32"},"globalTimeReportsCount":{"type":"integer","description":"The number of global time reports.","format":"int32"},"documentSpacesCount":{"type":"integer","description":"The number of user-generated document spaces.","format":"int32"},"activeProjectConnectionsCount":{"type":"integer","description":"The number of active (accepted) project connections.","format":"int32"}},"additionalProperties":false,"description":"Statistics about workspace usage for plan validation.\nUsed to determine if a workspace can downgrade to a specific plan\nbased on their current usage of limited features."},"AttachmentFileMetadataModel":{"type":"object","properties":{"fileName":{"type":"string","description":"Gets or sets the stored file name.","nullable":true},"mimeType":{"type":"string","description":"Gets or sets the stored media type.","nullable":true},"size":{"type":"integer","description":"Gets or sets the latest file version's size in bytes.","format":"int64"}},"additionalProperties":false,"description":"Contains the display metadata needed to attach an existing file to an agent message."},"BulkDownloadForm":{"required":["fileIds"],"type":"object","properties":{"fileIds":{"maxItems":500,"minItems":1,"type":"array","items":{"type":"string","format":"uuid"},"description":"Gets or sets the file IDs in the order in which archive entries must be emitted."}},"additionalProperties":false,"description":"The request form for an ordered bulk file download."},"DefaultModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ExternalFileForm":{"required":["externalFileUrl","externalProvider","name"],"type":"object","properties":{"name":{"minLength":1,"type":"string","description":"The name of the file."},"description":{"type":"string","description":"The description of the file.","nullable":true},"externalProvider":{"minLength":1,"type":"string","description":"The external provider for the file. Like 'google' or 'onedrive'."},"externalFileUrl":{"minLength":1,"type":"string","description":"The file url of the external provider."},"mimeType":{"type":"string","description":"The mime type if the external file.","nullable":true}},"additionalProperties":false},"FileCopyForm":{"required":["entityId","entityType"],"type":"object","properties":{"entityId":{"type":"string","description":"The id of the entity the file should be linked to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"entityType":{"minLength":1,"type":"string","description":"The type of the linked entity.","example":"projects"}},"additionalProperties":false},"FileEntityForm":{"type":"object","properties":{"entityId":{"type":"string","description":"The id of the entity the file should be linked to.\nSet to null to change the file to a global file.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"entityType":{"type":"string","description":"The type of the linked entity.\nNecessary if EntityId is set.","nullable":true}},"additionalProperties":false},"FileInfo":{"type":"object","properties":{"name":{"type":"string","description":"The user-specified name of the file.","nullable":true,"example":"Final project report"},"description":{"type":"string","description":"The description of the file.","nullable":true,"example":"The client requested a cost overview and timeline"},"id":{"type":"string","description":"The id of the file info.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"entityId":{"type":"string","description":"Deprecated. The id of the linked entity derived from entity specific owner ids.","format":"uuid","nullable":true,"deprecated":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectTemplateId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"companyId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"taskId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"taskTemplateId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"documentId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"fileName":{"type":"string","description":"The name of the file.","nullable":true,"example":"Final project report.xlsx"},"entityType":{"type":"string","description":"The name of the linked entity type.","nullable":true,"example":"project"},"mimeType":{"type":"string","description":"The MIME type of the file.","nullable":true,"example":"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"},"createdOn":{"type":"string","description":"The date this file was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this file.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this file was last modified.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who last modified this file.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"fileVersions":{"type":"array","items":{"$ref":"#/components/schemas/FileVersion"},"description":"List of all versions.","nullable":true},"isCommentFile":{"type":"boolean","description":"Whether the file is related to a comment.","example":false},"externalProvider":{"type":"string","description":"The external provider for the file. Like 'google' or 'onedrive'.","nullable":true,"example":null},"externalFileUrl":{"type":"string","description":"The file url of the external provider.","nullable":true,"example":null},"isHiddenForConnectUsers":{"type":"boolean","description":"Whether the file is hidden for connect users."}},"additionalProperties":false,"description":"The file model."},"FileInfoJson":{"type":"object","properties":{"id":{"type":"string","description":"The id of the file info.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"content":{"description":"Content in JSON format.","nullable":true,"example":"(JSON formatted response)"}},"additionalProperties":false},"FileInfoUpdateForm":{"type":"object","properties":{"name":{"type":"string","description":"The user-specified name of the file.","nullable":true,"example":"Final project report"},"description":{"type":"string","description":"The description of the file.","nullable":true,"example":"The client requested a cost overview and timeline"}},"additionalProperties":false,"description":"The model to update the file metadata."},"FilePostForm":{"type":"object","properties":{"url":{"type":"string","description":"The public url to the file.","nullable":true},"name":{"type":"string","description":"The name of the file.","nullable":true},"description":{"type":"string","description":"The description of the file.","nullable":true}},"additionalProperties":false},"FileUploadModel":{"required":["file"],"type":"object","properties":{"file":{"type":"string","format":"binary"}},"additionalProperties":false},"FileVersion":{"type":"object","properties":{"id":{"type":"string","description":"The id of the file version.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"fileInfoId":{"type":"string","description":"The id of the file this version belongs to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"version":{"type":"number","description":"The version of the file.","format":"double","example":13},"size":{"type":"integer","description":"The size of the file, in bytes.","format":"int64","example":13590},"width":{"type":"number","description":"The width if this is an image file.","format":"double","nullable":true,"example":1920},"height":{"type":"number","description":"The height if this is an image file.","format":"double","nullable":true,"example":1200},"createdOn":{"type":"string","description":"The date this file version was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this file version.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this file version was last modified.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who last modified this file version.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"GenerateExportForm":{"type":"object","properties":{"filterUrl":{"type":"string","description":"The relative API URL with the option to append a filter.","nullable":true,"example":"projects/123e4567-e89b-12d3-a456-426614174000/projecttasks"},"showDoneTasks":{"type":"boolean","description":"Whether done tasks should be included in task exports.","nullable":true}},"additionalProperties":false,"description":"Form with the details to generate an export."},"GenerateUploadUrlResponseModel":{"required":["uploadId","uploadURL"],"type":"object","properties":{"uploadId":{"minLength":1,"type":"string","description":"The id of the temporary container that the file will be uploaded to.","example":"1a2b3c4d5e6f7g8h9i0j"},"uploadURL":{"minLength":1,"type":"string","description":"The URL that the client should upload the file to.","example":"https://blob.awork.com/upload"}},"additionalProperties":false},"PostMigrateGuestFilesForm":{"type":"object","properties":{"taskIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The task ids to migrate the user private files from.","nullable":true},"workspaceId":{"type":"string","description":"The new workspace id to migrate the user private files to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"PublicFileUploadResult":{"type":"object","properties":{"fileName":{"type":"string","nullable":true},"publicUrl":{"type":"string","nullable":true},"mimeType":{"type":"string","nullable":true},"validUpTo":{"type":"string","format":"date-time"}},"additionalProperties":false},"SupportFileUploadForm":{"required":["conversationId","file"],"type":"object","properties":{"file":{"type":"string","format":"binary"},"conversationId":{"maxLength":100,"minLength":1,"type":"string"}},"additionalProperties":false},"TimeReportExportForm":{"required":["exportMode"],"type":"object","properties":{"exportMode":{"minLength":1,"type":"string","description":"The mode how the time report should export.\nCan be:\n\"raw\": Generates an excel file with all time entries including all fields\n\"original\": Generates an excel file with the options of the report,\nfor example same grouping, rounding, etc.","example":"raw"},"timeReport":{"$ref":"#/components/schemas/TimeReportModel"}},"additionalProperties":false},"TimeReportModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Website Design and Implementation"},"shared":{"type":"boolean","description":"Whether the time report is shared.","example":false},"dateMode":{"type":"string","description":"The date mode of the time report.\nCan be: \"selectWeek\", \"currentWeek\", \"lastWeek\",\n\"selectMonth\", \"currentMonth\", \"lastMonth\",\n\"selectQuarter\", \"currentQuarter\", \"lastQuarter\",\n\"selectYear\", \"currentYear\", \"lastYear\",\n\"customRange\"","nullable":true,"example":"customRange"},"startOn":{"type":"string","description":"The start date time of the report\nwhen DateMode is \"customRange\".","format":"date-time","nullable":true,"example":"2022-03-01T00:00Z"},"endOn":{"type":"string","description":"The end date time of the time report.\nwhen DateMode is \"customRange\".","format":"date-time","nullable":true,"example":"2022-04-01T00:00Z"},"filter":{"type":"string","description":"The generated filter query of the time report.","nullable":true,"example":"filterby=userId eq guid'72200108-7ab9-e711-80c2-0017fa10039b'"},"chartType":{"type":"string","description":"The actual chart type of the time report.\nCan be: \"group\" or \"time\"","nullable":true,"example":"group"},"projectId":{"type":"string","description":"The id of the project of the time report.\nUsed for the pdf reports.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"companyId":{"type":"string","description":"The id of the company of the time report.\nUsed for the pdf reports.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"sumBy":{"type":"string","description":"Summarizes the values by this property.","nullable":true,"example":"task"},"sortBy":{"type":"string","description":"Sorts the values by this property or these properties.","nullable":true,"example":"date"},"sortByOrder":{"type":"string","description":"The way how to sort the data.\nCan be: \"asc\", desc\"","nullable":true,"example":"asc"},"roundBy":{"type":"string","description":"Rounding method of the time report.\nCan be:\n\"nearQuarter\", \"nearHalf\", \"nearHour\",\n\"upQuarter\", \"upHalf\", \"upHour\"","nullable":true},"groupBy":{"type":"string","description":"Group the values by property.","nullable":true,"example":"task"},"sortColumn":{"type":"string","description":"Sort the values of the time report by a column.","nullable":true,"example":"Date"},"availableColumns":{"type":"array","items":{"type":"string"},"description":"List of shown Columns in the time report.","nullable":true,"example":["Name","Assignee"]},"billingStatuses":{"type":"array","items":{"type":"string"},"description":"Filter of bill statuses of the time report.\nCan be: \"billed\", \"notBilled\", \"notBillable\"","nullable":true,"example":["notBilled"]},"note":{"type":"string","description":"Filter time entries by note.","nullable":true,"example":"planning"},"usersFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Filter time entries by users.","nullable":true,"example":["a2200108-7ab9-e711-80c2-0017fa10039b"]},"projectsFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Filter time entries by projects.","nullable":true,"example":["a2200108-7ab9-e711-80c2-0017fa10039b"]},"projectCompaniesFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Filter time entries by projects of the companies.","nullable":true,"example":["a2200108-7ab9-e711-80c2-0017fa10039b"]},"projectTypesFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Filter time entries by projects of the type.","nullable":true,"example":["a2200108-7ab9-e711-80c2-0017fa10039b"]},"projectStatusesFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Filter time entries by projects with status.","nullable":true,"example":["a2200108-7ab9-e711-80c2-0017fa10039b"]},"projectStatusTypesFilter":{"type":"array","items":{"type":"string"},"description":"Filter time entries by projects with status of type.","nullable":true,"example":["a2200108-7ab9-e711-80c2-0017fa10039b"]},"taskTagsFilter":{"type":"array","items":{"type":"string"},"description":"Filter time entries by the tags of the task.","nullable":true,"deprecated":true},"taskTagsModelFilter":{"type":"array","items":{"$ref":"#/components/schemas/DefaultTagModel"},"description":"Filter time entries by the tags of the task.","nullable":true},"projectTagsFilter":{"type":"array","items":{"type":"string"},"description":"Filter time entries by the tags of the project.","nullable":true,"deprecated":true},"projectTagsModelFilter":{"type":"array","items":{"$ref":"#/components/schemas/DefaultTagModel"},"description":"Filter time entries by the tags of the project.","nullable":true},"userTagsFilter":{"type":"array","items":{"type":"string"},"description":"Filter time entries by the tags of the users.","nullable":true,"deprecated":true},"userTagsModelFilter":{"type":"array","items":{"$ref":"#/components/schemas/DefaultTagModel"},"description":"Filter time entries by the tags of the users.","nullable":true},"typesOfWorkFilter":{"type":"array","items":{"type":"string","format":"uuid"},"description":"Group the time report by the type of works.","nullable":true,"example":["a2200108-7ab9-e711-80c2-0017fa10039b"]},"user":{"$ref":"#/components/schemas/DefaultModel"}},"additionalProperties":false},"UploadByUploadIdForm":{"required":["fileName","uploadId"],"type":"object","properties":{"uploadId":{"minLength":1,"type":"string","description":"The id of the temporary container that the file will be uploaded to.","example":"1a2b3c4d5e6f7g8h9i0j"},"fileName":{"minLength":1,"type":"string","description":"The name of the file that will be uploaded.","example":"Pitch.ppt"},"description":{"type":"string","description":"The description of the file.","nullable":true}},"additionalProperties":false},"Action":{"type":"object","properties":{"id":{"type":"string","description":"The id of the action.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdBy":{"type":"string","description":"The id of the user who created the action.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date the action was created.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who updated the action.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date the action was updated.","format":"date-time"},"type":{"type":"string","description":"The type of the action.","nullable":true,"example":"tag-add-task"},"order":{"type":"number","description":"The order of the action.","format":"double","nullable":true,"example":2},"values":{"type":"array","items":{"$ref":"#/components/schemas/ActionValue"},"description":"The values of the action.","nullable":true}},"additionalProperties":false},"ActionForm":{"required":["type","values"],"type":"object","properties":{"type":{"minLength":1,"type":"string","description":"The type of the action.","example":"tag-add-task"},"order":{"type":"number","description":"The order of the action.","format":"double","nullable":true,"example":1},"values":{"type":"array","items":{"$ref":"#/components/schemas/ActionValuePostForm"},"description":"The values of the action."}},"additionalProperties":false},"ActionValue":{"type":"object","properties":{"name":{"type":"string","description":"The name of the action value.","nullable":true,"example":"tag"},"value":{"type":"string","description":"The value of the action value.","nullable":true,"example":"Design"}},"additionalProperties":false},"ActionValuePostForm":{"required":["name","value"],"type":"object","properties":{"name":{"minLength":1,"type":"string","description":"The name of the action value.","example":"user"},"value":{"description":"The value of the action value.","example":{"id":"DD0AEEB4-5CF4-44CA-A8EA-ED70EDE016A4","name":"Carla","type":"user"}}},"additionalProperties":false},"Automation":{"type":"object","properties":{"id":{"type":"string","description":"The id of the automation.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdBy":{"type":"string","description":"The id of the user who created the automation.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date the automation was created.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who updated the automation.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date the automation was updated.","format":"date-time"},"triggerId":{"type":"string","description":"The id of the trigger which is related to the automation.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"trigger":{"$ref":"#/components/schemas/Trigger"},"enabled":{"type":"boolean","description":"Whether the automation is enabled.","readOnly":true,"example":true},"state":{"type":"string","description":"The state of the automation.\nSee AutomationsService.DAL.Models.AutomationState for the possible values.","nullable":true},"createdByProjectTemplate":{"type":"boolean","description":"Whether the automation was created from an automation template of a project template.","example":false},"projectId":{"type":"string","description":"The id of the project which is related to the automation.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectTemplateId":{"type":"string","description":"The id of the project template which is related to the automation.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"actions":{"type":"array","items":{"$ref":"#/components/schemas/Action"},"description":"The actions which is related to the automation.","nullable":true},"workflowId":{"type":"string","description":"The workflow this automation belongs to, if any.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"createdByAutomationIdFromWorkflow":{"type":"string","description":"The id of the workflow automation that served as the template for this automation.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"failed":{"$ref":"#/components/schemas/ErrorResponse"}},"additionalProperties":false},"AutomationCatalogModel":{"type":"object","properties":{"triggerTypes":{"type":"array","items":{"type":"string"},"nullable":true},"actionTypes":{"type":"array","items":{"type":"string"},"nullable":true}},"additionalProperties":false},"AutomationExecuteForm":{"required":["taskId"],"type":"object","properties":{"taskId":{"type":"string","description":"The id of the task to execute the automation for.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"AutomationPutForm":{"required":["enabled","trigger"],"type":"object","properties":{"enabled":{"type":"boolean","description":"Whether the automation is enabled."},"trigger":{"$ref":"#/components/schemas/AutomationTriggerForm"}},"additionalProperties":false},"AutomationTriggerForm":{"required":["type"],"type":"object","properties":{"type":{"minLength":1,"type":"string","description":"The type of the trigger.","example":"task-created"},"values":{"type":"array","items":{"$ref":"#/components/schemas/AutomationTriggerValueForm"},"description":"The values of the trigger.","nullable":true}},"additionalProperties":false},"AutomationTriggerValueForm":{"required":["name","value"],"type":"object","properties":{"name":{"minLength":1,"type":"string","description":"The name of the trigger value.","example":"type"},"value":{"description":"The value of the trigger value.","example":{"id":"E9DA77CF-1DF8-42EB-99C5-C2D0F5C357E5","name":"Internal Work"}}},"additionalProperties":false},"CopyAutomationsForm":{"required":["sourceProjectTemplateId","targetProjectTemplateId"],"type":"object","properties":{"sourceProjectTemplateId":{"type":"string","description":"This is the project template which the automations will be copied from.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"targetProjectTemplateId":{"type":"string","description":"This is the project template the automations will be copied to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"CopyProjectAutomationsToWorkflowForm":{"type":"object","properties":{"convertSourceProjectAutomationsToWorkflowLinks":{"type":"boolean","description":"Whether the source project automations should be marked as workflow-linked to the copied workflow automations."}},"additionalProperties":false},"CopyWorkflowAutomationsForm":{"required":["sourceWorkflowId","targetWorkflowId"],"type":"object","properties":{"sourceWorkflowId":{"type":"string","description":"The workflow the automations will be copied from.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"targetWorkflowId":{"type":"string","description":"The workflow the automations will be copied to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ProjectJobRecreationResult":{"type":"object","properties":{"projectId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"projectName":{"type":"string","nullable":true},"success":{"type":"boolean"},"error":{"type":"string","nullable":true},"automationsCount":{"type":"integer","format":"int32"}},"additionalProperties":false},"RecreateProjectAutomationJobsResponse":{"type":"object","properties":{"message":{"type":"string","nullable":true},"workspaceId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"processedProjects":{"type":"array","items":{"$ref":"#/components/schemas/ProjectJobRecreationResult"},"nullable":true},"successCount":{"type":"integer","format":"int32"},"failureCount":{"type":"integer","format":"int32"},"error":{"type":"string","nullable":true}},"additionalProperties":false},"Trigger":{"type":"object","properties":{"updatedOn":{"type":"string","description":"The date the trigger was updated.","format":"date-time"},"type":{"type":"string","description":"The type of the trigger.","nullable":true,"example":"task-created"},"values":{"type":"array","items":{"$ref":"#/components/schemas/TriggerValue"},"description":"The values of the trigger.","nullable":true}},"additionalProperties":false},"TriggerValue":{"type":"object","properties":{"name":{"type":"string","description":"The name of the trigger value.","nullable":true,"example":"name"},"value":{"type":"string","description":"The value of the trigger value.","nullable":true,"example":"Design"}},"additionalProperties":false},"WebhookConfig":{"required":["authenticationType","events","isActive","name","uri"],"type":"object","properties":{"name":{"minLength":1,"type":"string","description":"The name of this webhook event.","example":"Post to Slack"},"uri":{"minLength":1,"type":"string","description":"The URI to call.","example":"https://hooks.slack.com/services/T578C/EY8979"},"language":{"type":"string","description":"The language of the web hook message that will be sent to the receiver.\nNot required for custom web hooks.","nullable":true,"example":"en-GB"},"events":{"minLength":1,"type":"string","description":"The event(s) that trigger the web hook.\nA comma-separated list of events that trigger the webhook.\nThe allowed events depend on the webhook type.\nFor type 'custom': retrieve the list of allowed events from '/webhooks/eventTypes'\nFor type 'slack': retrieve the list of allowed events from '/webhooks/eventTypes/slack'","example":"task_comment_added"},"isActive":{"type":"boolean","description":"Whether the web hook is currently active.","example":true},"onlyTriggerForMainEntityChanges":{"type":"boolean","description":"Whether to only send events for main entity changes and not for nested entities if the webhook is for a model."},"authenticationType":{"minLength":1,"type":"string","description":"The authentication type to use when calling the URI.\nCan be 'none', 'header'.","example":"none"},"authentication":{"type":"string","description":"The authentication value to use when calling the URI.\nShould be 'key=value'.\nIn case of header authentication, this should be 'headername=headervalue'.\nOnly required when the AuthenticationType is anything other than 'none'.","nullable":true,"example":null},"id":{"type":"string","description":"The id of the webhook config.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"receiverType":{"type":"string","description":"The type of the web hook.\nCan be 'custom', 'slack'.","nullable":true,"example":"slack"},"lastFailureReason":{"type":"string","description":"The most recent failure reason.","nullable":true,"example":null},"createdOn":{"type":"string","description":"The date this webhook config was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this webhook config.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this webhook config was last modified.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who last modified this webhook config.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"The webhook config model."},"WebhookConfigForm":{"required":["authenticationType","events","isActive","name","uri"],"type":"object","properties":{"name":{"minLength":1,"type":"string","description":"The name of this webhook event.","example":"Post to Slack"},"uri":{"minLength":1,"type":"string","description":"The URI to call.","example":"https://hooks.slack.com/services/T578C/EY8979"},"language":{"type":"string","description":"The language of the web hook message that will be sent to the receiver.\nNot required for custom web hooks.","nullable":true,"example":"en-GB"},"events":{"minLength":1,"type":"string","description":"The event(s) that trigger the web hook.\nA comma-separated list of events that trigger the webhook.\nThe allowed events depend on the webhook type.\nFor type 'custom': retrieve the list of allowed events from '/webhooks/eventTypes'\nFor type 'slack': retrieve the list of allowed events from '/webhooks/eventTypes/slack'","example":"task_comment_added"},"isActive":{"type":"boolean","description":"Whether the web hook is currently active.","example":true},"onlyTriggerForMainEntityChanges":{"type":"boolean","description":"Whether to only send events for main entity changes and not for nested entities if the webhook is for a model."},"authenticationType":{"minLength":1,"type":"string","description":"The authentication type to use when calling the URI.\nCan be 'none', 'header'.","example":"none"},"authentication":{"type":"string","description":"The authentication value to use when calling the URI.\nShould be 'key=value'.\nIn case of header authentication, this should be 'headername=headervalue'.\nOnly required when the AuthenticationType is anything other than 'none'.","nullable":true,"example":null}},"additionalProperties":false,"description":"The model to create or update a webhook config."},"WebhookLog":{"type":"object","properties":{"message":{"type":"string","description":"The message which has been sent to the webhook receiver.","nullable":true,"example":"{ \"event\": \"task_comment_added: }"},"webhookId":{"type":"string","description":"The id of the webhook.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"responseCode":{"type":"integer","description":"The HTTP response code of the request.","format":"int32","example":200},"createdOn":{"type":"string","description":"The date the log was created.","format":"date-time"},"reason":{"type":"string","description":"The failure reason if the request failed.","nullable":true,"example":null},"isSuccessful":{"type":"boolean","description":"Whether the request was successful.","example":true}},"additionalProperties":false},"WebhookSlackConfigForm":{"type":"object","properties":{"code":{"type":"string","description":"The Slack webhook code.","nullable":true,"example":"44271543281.317837595255.b0952db"}},"additionalProperties":false,"description":"The Slack webhook config model."},"WebhookTestResult":{"type":"object","properties":{"responseCode":{"type":"integer","description":"The HTTP response code of the test request.","format":"int32","example":200},"reason":{"type":"string","description":"The failure reason if the test request failed.","nullable":true,"example":null},"isSuccessful":{"type":"boolean","description":"Whether the test request was successful.","example":true}},"additionalProperties":false},"AlertForm":{"required":["alert","channel","enabled","id"],"type":"object","properties":{"id":{"type":"string","description":"The id of the alert.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"alert":{"minLength":1,"type":"string","description":"The alert indicator.","example":"due_soon"},"enabled":{"type":"boolean","description":"Whether the alert is enabled.","example":true},"channel":{"minLength":1,"type":"string","description":"The channel of the alert.","example":"email"}},"additionalProperties":false},"AlertPostForm":{"required":["alert","channel","enabled"],"type":"object","properties":{"alert":{"minLength":1,"type":"string","description":"The alert indicator.","example":"due_soon"},"enabled":{"type":"boolean","description":"Whether the alert is enabled.","example":true},"channel":{"minLength":1,"type":"string","description":"The channel of the alert.","example":"email"}},"additionalProperties":false},"Autopilot":{"required":["alerts","enabled","type"],"type":"object","properties":{"type":{"minLength":1,"type":"string","description":"The type of the autopilot.","example":"agile"},"enabled":{"type":"boolean","description":"Whether the autopilot is enabled.","example":true},"alerts":{"type":"array","items":{"$ref":"#/components/schemas/AlertForm"},"description":"The alerts of the autopilot. The collection must contain every alert type returned by\nGET /autopilot/availablealerts, including alerts that should be disabled."},"id":{"type":"string","description":"The id of the autopilot.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this object was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this object.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this object was last modified.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who last modified this object.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"AutopilotPostForm":{"required":["type"],"type":"object","properties":{"type":{"minLength":1,"type":"string","description":"The type of the autopilot.","example":"agile"},"alerts":{"type":"array","items":{"$ref":"#/components/schemas/AlertPostForm"},"description":"The alerts of the autopilot. Omit this collection or provide an empty collection to enable every available alert\nwith its default settings. A non-empty collection must contain every alert type returned by GET /autopilot/availablealerts.","nullable":true}},"additionalProperties":false},"AutopilotPutForm":{"required":["alerts","enabled","type"],"type":"object","properties":{"type":{"minLength":1,"type":"string","description":"The type of the autopilot.","example":"agile"},"enabled":{"type":"boolean","description":"Whether the autopilot is enabled.","example":true},"alerts":{"type":"array","items":{"$ref":"#/components/schemas/AlertForm"},"description":"The alerts of the autopilot. The collection must contain every alert type returned by\nGET /autopilot/availablealerts, including alerts that should be disabled."}},"additionalProperties":false},"BriefingPostForm":{"required":["enabled","type"],"type":"object","properties":{"enabled":{"type":"boolean","description":"If the briefing should be enabled or disabled.","example":true},"type":{"minLength":1,"type":"string","description":"The type of the weekly mail: briefing or summary.","example":"summary"}},"additionalProperties":false},"DefaultOrderedTaskListModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Website Design and Implementation"},"orderOfTask":{"type":"number","description":"The order of the task in the list.","format":"double","example":1},"order":{"type":"number","description":"The order of the list.","format":"double","example":0}},"additionalProperties":false},"DefaultTaskStatusModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","description":"The date this entity was created.","format":"date-time","example":"2022-03-11T15:33:47.100Z"},"createdBy":{"type":"string","description":"The id of the user who created this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this entity was last modified.","format":"date-time","example":"2022-03-11T21:15:00.100Z"},"updatedBy":{"type":"string","description":"The id of the user who last modified this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Website Design and Implementation"},"type":{"type":"string","description":"The type of the status.","nullable":true,"example":"todo"},"order":{"type":"number","description":"The order of the task status in a project.","format":"double","nullable":true,"example":1},"icon":{"type":"string","description":"The icon of the task status.","nullable":true,"example":"arrow_forward"}},"additionalProperties":false},"DynamicDurationFormatSetting":{"enum":[0,1],"type":"integer","description":"Duration setting for formatting time. Can be DecimalDays or HoursMinutes. Defaults to DecimalDays","format":"int32"},"EmailEvent":{"type":"object","properties":{"date":{"type":"string","format":"date-time"},"mails":{"type":"array","items":{"$ref":"#/components/schemas/EmailInformation"},"nullable":true}},"additionalProperties":false},"EmailInformation":{"type":"object","properties":{"mailType":{"type":"string","description":"The type of the email","nullable":true,"example":"project-due-soon"},"receivers":{"type":"array","items":{"$ref":"#/components/schemas/LimitedMemberModel"},"nullable":true}},"additionalProperties":false},"ExtendedProjectMemberModel":{"type":"object","properties":{"accountId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"projectRoleId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"projectId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"projectRoleName":{"type":"string","description":"The role name of the user","nullable":true,"example":"Lead Designer"},"isResponsible":{"type":"boolean"},"firstName":{"type":"string","description":"The first name of the user","nullable":true,"example":"Carla"},"lastName":{"type":"string","description":"The last name of the user","nullable":true,"example":"Creative"}},"additionalProperties":false},"LimitedMemberModel":{"type":"object","properties":{"name":{"type":"string","description":"The name of the mail receiver","nullable":true,"example":"Philip Founder"},"isResponisble":{"type":"boolean"}},"additionalProperties":false},"MemberEmail":{"type":"object","properties":{"email":{"type":"string","description":"The user's email address","nullable":true,"example":"carla.creative@ncnstn.com"},"language":{"type":"string","description":"The language of the email sent to this member","nullable":true,"example":"en-GB"},"sendEmail":{"type":"boolean"}},"additionalProperties":false},"SimulationEvent":{"type":"object","properties":{"day":{"type":"string","format":"date-time"},"type":{"type":"string","description":"The type of the event to simulate","nullable":true,"example":"SetDueDateEvent"},"value":{"description":"The event value as serialized JSON object","nullable":true,"example":"(JSON serialized data)"}},"additionalProperties":false},"SimulationPostForm":{"type":"object","properties":{"member":{"$ref":"#/components/schemas/MemberEmail"},"lead":{"$ref":"#/components/schemas/MemberEmail"},"autopilotType":{"type":"string","description":"The type of autopilot to simulate","nullable":true,"example":"agile"},"project":{"$ref":"#/components/schemas/SimulationProjectModel"},"tasks":{"type":"array","items":{"$ref":"#/components/schemas/SimulationTaskModel"},"description":"The list of the tasks for this simulation","nullable":true},"format":{"$ref":"#/components/schemas/DynamicDurationFormatSetting"}},"additionalProperties":false},"SimulationProjectModel":{"type":"object","properties":{"id":{"type":"string","description":"The identifier of the nested model.","format":"uuid","example":"80a2b26b-9fb3-42b5-b6dc-126c437cad5d"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Design"},"dueDate":{"type":"string","description":"The due date of the project.","format":"date-time","nullable":true},"description":{"type":"string","description":"The description of the project","nullable":true,"example":"Gathering ideas for the brand design"},"members":{"type":"array","items":{"$ref":"#/components/schemas/ExtendedProjectMemberModel"},"nullable":true},"plannedDuration":{"type":"integer","description":"The planned duration of this project in seconds","format":"int64","nullable":true,"example":28800},"timeBudget":{"type":"integer","description":"The remaining time budget for this project","format":"int64","nullable":true,"example":14400},"trackedDuration":{"type":"integer","description":"The total time tracked for this project (in seconds)","format":"int64","nullable":true,"example":14400},"projectStatus":{"$ref":"#/components/schemas/NestedStatusModel"},"createdOn":{"type":"string","format":"date-time"},"startedOn":{"type":"string","description":"The date the project was set into progress.","format":"date-time","nullable":true},"events":{"type":"array","items":{"$ref":"#/components/schemas/SimulationEvent"},"nullable":true}},"additionalProperties":false},"SimulationResult":{"type":"object","properties":{"start":{"type":"string","format":"date-time"},"end":{"type":"string","format":"date-time"},"timeline":{"type":"array","items":{"$ref":"#/components/schemas/EmailEvent"},"nullable":true}},"additionalProperties":false},"SimulationTaskModel":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"entityId":{"type":"string","description":"The id of the entity of the entity task.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the entity.","nullable":true},"projectId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","format":"date-time"},"taskStatus":{"$ref":"#/components/schemas/DefaultTaskStatusModel"},"closedOn":{"type":"string","format":"date-time","nullable":true},"dueOn":{"type":"string","format":"date-time","nullable":true},"format":{"$ref":"#/components/schemas/DynamicDurationFormatSetting"},"trackedDuration":{"type":"integer","format":"int64","nullable":true},"plannedDuration":{"type":"integer","format":"int64","nullable":true},"startOn":{"type":"string","format":"date-time","nullable":true},"assignees":{"type":"array","items":{"$ref":"#/components/schemas/UserModel"},"description":"The assigned users of this task.","nullable":true},"lists":{"type":"array","items":{"$ref":"#/components/schemas/DefaultOrderedTaskListModel"},"description":"The lists to which the task is assigned to.","nullable":true},"dueDateTable":{"type":"string","nullable":true,"readOnly":true},"dueDateTableColor":{"type":"string","nullable":true,"readOnly":true},"trackedTimeString":{"type":"string","nullable":true,"readOnly":true},"assigneeNames":{"type":"string","nullable":true,"readOnly":true},"progress":{"type":"string","nullable":true,"readOnly":true},"progressColor":{"type":"string","nullable":true,"readOnly":true},"list":{"type":"string","nullable":true,"readOnly":true},"events":{"type":"array","items":{"$ref":"#/components/schemas/SimulationEvent"},"nullable":true}},"additionalProperties":false},"ActivityModel":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"originType":{"type":"string","description":"Gets or sets whether the activity originated from a human or an agent.","nullable":true},"threadId":{"type":"string","description":"Gets or sets the originating agent thread.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"threadAvailable":{"type":"boolean","description":"Gets or sets whether the originating thread can still be opened."},"agentId":{"type":"string","description":"Gets or sets the agent that produced the activity.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"agentNameSnapshot":{"type":"string","description":"Gets or sets the agent name captured when the run was accepted.","nullable":true},"executingUserId":{"type":"string","description":"Gets or sets the user whose permissions and ownership applied to the run.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"triggeredByUserId":{"type":"string","description":"Gets or sets the user who triggered the run when different from the executing user.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"entityType":{"type":"string","description":"The type of the entity","nullable":true,"example":"timetracking"},"entityId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"entity":{"$ref":"#/components/schemas/NestedModel"},"createdBy":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"updatedBy":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"createdOn":{"type":"string","format":"date-time"},"updatedOn":{"type":"string","format":"date-time"},"eventType":{"type":"string","description":"The type of the event of this activity log (e.g: added, updated, deleted)","nullable":true,"example":"updated"},"eventDate":{"type":"string","format":"date-time"},"changedProperty":{"type":"string","description":"The name of the property that has changed.","nullable":true,"example":"StartOn"},"oldPropertyValue":{"type":"string","description":"The previous value of the updated property (as string).","nullable":true,"example":"2022-03-11T14:00:05.100Z"},"newPropertyValue":{"type":"string","description":"The new value for the property (as string).","nullable":true,"example":"2022-03-15T11:30:00.100Z"},"oldProperty":{"description":"The old property value, if the property is a complex object.\nThis is used to store the old value of the property when it is an object, like a user or a task.","nullable":true,"example":{"name":"To do","type":"todo","id":"12345678-1234-1234-1234-123456789012"}},"newProperty":{"description":"The new property value, if the property is a complex object.\nThis is used to store the new value of the property when it is an object, like a user or a task.","nullable":true,"example":{"name":"In progress","type":"progress","id":"12345678-1234-1234-1234-123456789013"}},"userId":{"type":"string","description":"The id of the user that performed the action that created this activity log entry.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"user":{"$ref":"#/components/schemas/NestedUserModel"},"parentId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"project":{"$ref":"#/components/schemas/BasicNameModel"},"taskId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"task":{"$ref":"#/components/schemas/NameModel"},"assignedUserId":{"type":"string","format":"uuid","nullable":true,"readOnly":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"assignedUser":{"$ref":"#/components/schemas/NestedUserModel"},"unassignedUserId":{"type":"string","format":"uuid","nullable":true,"readOnly":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"unassignedUser":{"$ref":"#/components/schemas/NestedUserModel"},"dueDate":{"type":"string","format":"date-time","nullable":true},"duration":{"type":"integer","format":"int32","nullable":true},"memberId":{"type":"string","format":"uuid","nullable":true,"readOnly":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"member":{"$ref":"#/components/schemas/NestedUserModel"}},"additionalProperties":false,"description":"The model to retrieve activities for main entities.\nIncludes additional/aggregated properties for easier access to the most important information."},"BasicNameModel":{"type":"object","properties":{"id":{"type":"string","description":"The unique identifier of the entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the entity.","nullable":true,"example":"Website design"},"projectTypeIcon":{"type":"string","nullable":true},"projectCompanyProfileImageUrl":{"type":"string","nullable":true}},"additionalProperties":false},"ITimeline":{"type":"object","properties":{"aggregation":{"type":"string","nullable":true},"aggregationDate":{"type":"string","nullable":true},"activities":{"type":"array","items":{"$ref":"#/components/schemas/ActivityModel"},"nullable":true}},"additionalProperties":false},"ITimelineTimelineResponse":{"type":"object","properties":{"timelines":{"type":"array","items":{"$ref":"#/components/schemas/ITimeline"},"description":"The list of all time lines in the time span.","nullable":true}},"additionalProperties":false},"MinimalActivityModel":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"eventDate":{"type":"string","format":"date-time"},"projectId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"NameModel":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","nullable":true}},"additionalProperties":false},"BaseTaskEntity":{"type":"object","properties":{"name":{"type":"string","description":"The name of the task. Max allowed length: 25000 characters.\nRequired.","nullable":true,"example":"Create logo concept"},"id":{"type":"string","description":"The id of the parent task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The user id this task belongs to in case this is a private task.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"createdBy":{"type":"string","description":"The id of the user that created this task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"projectId":{"type":"string","description":"The id of the project this task is part of.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"project":{"$ref":"#/components/schemas/ProjectEntity"},"parentId":{"type":"string","description":"The id of the parent task of this task, if this task is a subtask.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"parentTask":{"$ref":"#/components/schemas/ParentTaskEntity"},"assignees":{"type":"array","items":{"$ref":"#/components/schemas/TaskAssignmentEntity"},"description":"The assignees of the task.","nullable":true},"baseType":{"type":"string","description":"The base type of the task.","nullable":true,"example":"projecttask"},"taskStatus":{"$ref":"#/components/schemas/TaskStatusEntity"},"isExternal":{"type":"boolean","description":"Whether this task is external."},"isHiddenForConnectUsers":{"type":"boolean"}},"additionalProperties":false},"CommentSearchModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"workspaceId":{"type":"string","description":"The workspace id of this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userStats":{"type":"array","items":{"$ref":"#/components/schemas/UserAccessStatistic"},"description":"The current user's access stats for this entity.","nullable":true},"indexTime":{"type":"string","description":"The last time this entity has been indexed.","format":"date-time"},"message":{"type":"string","description":"The message of this comment.","nullable":true,"example":"The new design proposals are ready!"},"entityType":{"enum":["tasks","projects","documents"],"type":"string","description":"The type of the entity that this comment is attached to."},"entityId":{"type":"string","description":"The id of the entity that this comment is attached to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"project":{"$ref":"#/components/schemas/ProjectEntity"},"task":{"$ref":"#/components/schemas/BaseTaskEntity"},"document":{"$ref":"#/components/schemas/DocumentEntity"},"isExternal":{"type":"boolean","description":"Whether this comment is external."},"userId":{"type":"string","description":"The id of the user who created this comment.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"isHiddenForConnectUsers":{"type":"boolean","description":"Whether this comment is hidden for connect users."},"isResolved":{"type":"boolean","description":"Whether the comment has been resolved.\nOnly available for comments on documents.","nullable":true}},"additionalProperties":false},"CommentSearchModelHit":{"type":"object","properties":{"type":{"type":"string","description":"The name of the type for this search hit.","nullable":true,"readOnly":true,"example":"task"},"score":{"type":"number","description":"The score of this search hit.","format":"double","example":2.9},"entity":{"$ref":"#/components/schemas/CommentSearchModel"},"highlights":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"},"nullable":true},"description":"The highlights of this search hit, by property.","nullable":true,"example":{"description":["in this creative project"]}}},"additionalProperties":false},"CommentSearchModelTypeSearchResult":{"type":"object","properties":{"totalCount":{"type":"integer","description":"The count of search hits for this type.","format":"int64","readOnly":true,"example":7},"maxScore":{"type":"number","description":"The score of the best search hit for this type.","format":"double","readOnly":true,"example":1.9},"hits":{"type":"array","items":{"$ref":"#/components/schemas/CommentSearchModelHit"},"description":"The results found by this search operation for this type.","nullable":true,"readOnly":true},"hasHits":{"type":"boolean","description":"Whether there are any hits at all, computed property.","readOnly":true}},"additionalProperties":false},"CompanySearchModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"workspaceId":{"type":"string","description":"The workspace id of this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userStats":{"type":"array","items":{"$ref":"#/components/schemas/UserAccessStatistic"},"description":"The current user's access stats for this entity.","nullable":true},"indexTime":{"type":"string","description":"The last time this entity has been indexed.","format":"date-time"},"name":{"type":"string","description":"The company name.","nullable":true,"example":"NCNSTN Brand Design"},"industry":{"type":"string","description":"The company's industry. Optional.","nullable":true,"example":"Brand Agency"},"tags":{"type":"array","items":{"type":"string"},"description":"The tags of the company.","nullable":true,"example":["Brand Agency"]},"companyContactInfos":{"type":"array","items":{"$ref":"#/components/schemas/ContactInfoEntity"},"description":"The contact infos of this company.","nullable":true},"hasImage":{"type":"boolean","description":"Whether the user has an image.","nullable":true,"example":true}},"additionalProperties":false},"CompanySearchModelHit":{"type":"object","properties":{"type":{"type":"string","description":"The name of the type for this search hit.","nullable":true,"readOnly":true,"example":"task"},"score":{"type":"number","description":"The score of this search hit.","format":"double","example":2.9},"entity":{"$ref":"#/components/schemas/CompanySearchModel"},"highlights":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"},"nullable":true},"description":"The highlights of this search hit, by property.","nullable":true,"example":{"description":["in this creative project"]}}},"additionalProperties":false},"CompanySearchModelTypeSearchResult":{"type":"object","properties":{"totalCount":{"type":"integer","description":"The count of search hits for this type.","format":"int64","readOnly":true,"example":7},"maxScore":{"type":"number","description":"The score of the best search hit for this type.","format":"double","readOnly":true,"example":1.9},"hits":{"type":"array","items":{"$ref":"#/components/schemas/CompanySearchModelHit"},"description":"The results found by this search operation for this type.","nullable":true,"readOnly":true},"hasHits":{"type":"boolean","description":"Whether there are any hits at all, computed property.","readOnly":true}},"additionalProperties":false},"ContactInfoEntity":{"type":"object","properties":{"id":{"type":"string","description":"The id of this contact info.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"value":{"type":"string","description":"The value of the contact info.","nullable":true,"example":null},"type":{"type":"string","description":"The type of the contact info. Possible values are: 'phone', 'email', 'address', 'custom'.","nullable":true,"example":"address"},"subType":{"type":"string","description":"The subtype of the contact info, Possible values are:\nphone: [ 'central', 'other' ]\nemail: [ 'central', 'invoice', 'other' ]\naddress: [ 'central', 'invoice', 'other' ] url: [ 'primary', 'other']","nullable":true,"example":"central"},"isAddress":{"type":"boolean","description":"Flags whether this contact info is an address. If it's an address, the address fields are required.","example":true},"addressLine1":{"type":"string","description":"The first address line of the contact info.","nullable":true,"example":"Torstrasse 140"},"addressLine2":{"type":"string","description":"The second address line of the contact info.","nullable":true,"example":"Hof A"},"zipCode":{"type":"string","description":"The zipcode of the contact info.","nullable":true,"example":"10119"},"city":{"type":"string","description":"The city of the contact info.","nullable":true,"example":"Berlin"},"state":{"type":"string","description":"The state of the contact info.","nullable":true,"example":null},"country":{"type":"string","description":"The 2 letter iso code of the country.","nullable":true,"example":"DE"}},"additionalProperties":false},"ContributorEntity":{"type":"object","properties":{"userId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"type":"string","nullable":true}},"additionalProperties":false},"DashboardNoteSearchModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"workspaceId":{"type":"string","description":"The workspace id of this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userStats":{"type":"array","items":{"$ref":"#/components/schemas/UserAccessStatistic"},"description":"The current user's access stats for this entity.","nullable":true},"indexTime":{"type":"string","description":"The last time this entity has been indexed.","format":"date-time"},"name":{"type":"string","description":"The name of the dashboard widget note.","nullable":true,"example":"Reminders for today"},"note":{"type":"string","description":"The note of the dashboard widget note.","nullable":true,"example":"Ask the client about the new logo."},"userId":{"type":"string","description":"The id of the user the dashboard note belongs to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"DashboardNoteSearchModelHit":{"type":"object","properties":{"type":{"type":"string","description":"The name of the type for this search hit.","nullable":true,"readOnly":true,"example":"task"},"score":{"type":"number","description":"The score of this search hit.","format":"double","example":2.9},"entity":{"$ref":"#/components/schemas/DashboardNoteSearchModel"},"highlights":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"},"nullable":true},"description":"The highlights of this search hit, by property.","nullable":true,"example":{"description":["in this creative project"]}}},"additionalProperties":false},"DashboardNoteSearchModelTypeSearchResult":{"type":"object","properties":{"totalCount":{"type":"integer","description":"The count of search hits for this type.","format":"int64","readOnly":true,"example":7},"maxScore":{"type":"number","description":"The score of the best search hit for this type.","format":"double","readOnly":true,"example":1.9},"hits":{"type":"array","items":{"$ref":"#/components/schemas/DashboardNoteSearchModelHit"},"description":"The results found by this search operation for this type.","nullable":true,"readOnly":true},"hasHits":{"type":"boolean","description":"Whether there are any hits at all, computed property.","readOnly":true}},"additionalProperties":false},"DocumentContributorEntity":{"type":"object","properties":{"userId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"type":"string","nullable":true},"documentId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"inheritedFromDocumentContributorId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"inheritedDocumentContributor":{"$ref":"#/components/schemas/InheritedDocumentContributorEntity"}},"additionalProperties":false},"DocumentEntity":{"type":"object","properties":{"name":{"type":"string","description":"The name of the document.","nullable":true},"content":{"type":"string","description":"The content of the document. This is indexed for search and highlighting but not returned in search results.","nullable":true},"documentSpaceId":{"type":"string","description":"The id of the document space.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"documentSpace":{"$ref":"#/components/schemas/DocumentSpaceEntity"},"parentId":{"type":"string","description":"The id of the document's parent document.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"emoji":{"type":"string","description":"The emoji of the document.","nullable":true},"projectId":{"type":"string","description":"The id of the project this document references.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"project":{"$ref":"#/components/schemas/ProjectEntity"},"isPrivate":{"type":"boolean","description":"Whether the document is private."},"isExternal":{"type":"boolean","description":"Whether the document belongs to an external project."},"isHiddenForConnectUsers":{"type":"boolean","description":"Whether the document is hidden for connect users."},"contributors":{"type":"array","items":{"$ref":"#/components/schemas/DocumentContributorEntity"},"description":"The contributors of this document.","nullable":true},"teams":{"type":"array","items":{"$ref":"#/components/schemas/DocumentToTeamEntity"},"description":"The teams this document is connected to.","nullable":true},"workspaceAccessLevel":{"type":"string","description":"Determines the level of access to this document granted to all workspace users.\nCan be either not set (no access), `read`, or `manage`.","nullable":true},"inheritedWorkspaceAccessFromDocumentId":{"type":"string","description":"The id of the document the workspace access level permission has been inherited from.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"inheritedWorkspaceAccessFromDocument":{"$ref":"#/components/schemas/InheritedWorkspaceAccessFromDocumentEntity"},"rootDocumentCreatedBy":{"type":"string","description":"The user id of the creator of the root document of this document's document tree.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"DocumentSearchModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"workspaceId":{"type":"string","description":"The workspace id of this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userStats":{"type":"array","items":{"$ref":"#/components/schemas/UserAccessStatistic"},"description":"The current user's access stats for this entity.","nullable":true},"indexTime":{"type":"string","description":"The last time this entity has been indexed.","format":"date-time"},"name":{"type":"string","description":"The name of the document.","nullable":true},"content":{"type":"string","description":"The content of the document. This is indexed for search and highlighting but not returned in search results.","nullable":true},"documentSpaceId":{"type":"string","description":"The id of the document space.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"documentSpace":{"$ref":"#/components/schemas/DocumentSpaceEntity"},"parentId":{"type":"string","description":"The id of the document's parent document.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"emoji":{"type":"string","description":"The emoji of the document.","nullable":true},"projectId":{"type":"string","description":"The id of the project this document references.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"project":{"$ref":"#/components/schemas/ProjectEntity"},"isPrivate":{"type":"boolean","description":"Whether the document is private."},"isExternal":{"type":"boolean","description":"Whether the document belongs to an external project."},"isHiddenForConnectUsers":{"type":"boolean","description":"Whether the document is hidden for connect users."},"contributors":{"type":"array","items":{"$ref":"#/components/schemas/DocumentContributorEntity"},"description":"The contributors of this document.","nullable":true},"teams":{"type":"array","items":{"$ref":"#/components/schemas/DocumentToTeamEntity"},"description":"The teams this document is connected to.","nullable":true},"workspaceAccessLevel":{"type":"string","description":"Determines the level of access to this document granted to all workspace users.\nCan be either not set (no access), `read`, or `manage`.","nullable":true},"inheritedWorkspaceAccessFromDocumentId":{"type":"string","description":"The id of the document the workspace access level permission has been inherited from.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"inheritedWorkspaceAccessFromDocument":{"$ref":"#/components/schemas/InheritedWorkspaceAccessFromDocumentEntity"},"rootDocumentCreatedBy":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"DocumentSearchModelHit":{"type":"object","properties":{"type":{"type":"string","description":"The name of the type for this search hit.","nullable":true,"readOnly":true,"example":"task"},"score":{"type":"number","description":"The score of this search hit.","format":"double","example":2.9},"entity":{"$ref":"#/components/schemas/DocumentSearchModel"},"highlights":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"},"nullable":true},"description":"The highlights of this search hit, by property.","nullable":true,"example":{"description":["in this creative project"]}}},"additionalProperties":false},"DocumentSearchModelTypeSearchResult":{"type":"object","properties":{"totalCount":{"type":"integer","description":"The count of search hits for this type.","format":"int64","readOnly":true,"example":7},"maxScore":{"type":"number","description":"The score of the best search hit for this type.","format":"double","readOnly":true,"example":1.9},"hits":{"type":"array","items":{"$ref":"#/components/schemas/DocumentSearchModelHit"},"description":"The results found by this search operation for this type.","nullable":true,"readOnly":true},"hasHits":{"type":"boolean","description":"Whether there are any hits at all, computed property.","readOnly":true}},"additionalProperties":false},"DocumentSpaceEntity":{"type":"object","properties":{"id":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"isExternal":{"type":"boolean"},"name":{"type":"string","nullable":true},"workspaceAccessLevel":{"type":"string","nullable":true},"contributors":{"type":"array","items":{"$ref":"#/components/schemas/ContributorEntity"},"nullable":true},"teams":{"type":"array","items":{"$ref":"#/components/schemas/EntityToTeamEntity"},"nullable":true}},"additionalProperties":false},"DocumentToTeamEntity":{"type":"object","properties":{"teamId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"type":"string","nullable":true},"documentId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"inheritedFromDocumentToTeamId":{"type":"string","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"inheritedDocumentToTeam":{"$ref":"#/components/schemas/InheritedDocumentToTeamEntity"}},"additionalProperties":false},"EntityAccessForm":{"type":"object","properties":{"entityId":{"type":"string","description":"The id of the entity that was accessed.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessedOn":{"type":"string","description":"The date and time the entity was accessed by the user.","format":"date-time","nullable":true,"example":"2022-03-01T14:21:00Z"},"entityType":{"type":"string","description":"The tpye of the entity that has been accessed.\nValid values: 'company', 'project', 'task', 'user' and 'document'","nullable":true,"example":"task"}},"additionalProperties":false},"EntityToTeamEntity":{"type":"object","properties":{"teamId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"type":"string","nullable":true}},"additionalProperties":false},"FileSearchModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"workspaceId":{"type":"string","description":"The workspace id of this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userStats":{"type":"array","items":{"$ref":"#/components/schemas/UserAccessStatistic"},"description":"The current user's access stats for this entity.","nullable":true},"indexTime":{"type":"string","description":"The last time this entity has been indexed.","format":"date-time"},"name":{"type":"string","description":"The name of the file.","nullable":true,"example":"Logo for concept."},"createdBy":{"type":"string","description":"The id of the user that has created the file.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"entityType":{"type":"string","description":"The type of the entity that this file is attached to.","nullable":true},"entityId":{"type":"string","description":"The id of the entity that this file is attached to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"project":{"$ref":"#/components/schemas/ProjectEntity"},"task":{"$ref":"#/components/schemas/BaseTaskEntity"},"isExternal":{"type":"boolean","description":"Whether this file is external."},"isHiddenForConnectUsers":{"type":"boolean","description":"Whether this comment is hidden for connect users."}},"additionalProperties":false},"FileSearchModelHit":{"type":"object","properties":{"type":{"type":"string","description":"The name of the type for this search hit.","nullable":true,"readOnly":true,"example":"task"},"score":{"type":"number","description":"The score of this search hit.","format":"double","example":2.9},"entity":{"$ref":"#/components/schemas/FileSearchModel"},"highlights":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"},"nullable":true},"description":"The highlights of this search hit, by property.","nullable":true,"example":{"description":["in this creative project"]}}},"additionalProperties":false},"FileSearchModelTypeSearchResult":{"type":"object","properties":{"totalCount":{"type":"integer","description":"The count of search hits for this type.","format":"int64","readOnly":true,"example":7},"maxScore":{"type":"number","description":"The score of the best search hit for this type.","format":"double","readOnly":true,"example":1.9},"hits":{"type":"array","items":{"$ref":"#/components/schemas/FileSearchModelHit"},"description":"The results found by this search operation for this type.","nullable":true,"readOnly":true},"hasHits":{"type":"boolean","description":"Whether there are any hits at all, computed property.","readOnly":true}},"additionalProperties":false},"InheritedDocumentContributorEntity":{"type":"object","properties":{"documentId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"type":"string","nullable":true}},"additionalProperties":false},"InheritedDocumentToTeamEntity":{"type":"object","properties":{"documentId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"accessLevel":{"type":"string","nullable":true}},"additionalProperties":false},"InheritedWorkspaceAccessFromDocumentEntity":{"type":"object","properties":{"workspaceAccessLevel":{"type":"string","nullable":true}},"additionalProperties":false},"ParentTaskEntity":{"type":"object","properties":{"name":{"type":"string","description":"The name of the task. Max allowed length: 25000 characters.\nRequired.","nullable":true,"example":"Create logo concept"},"id":{"type":"string","description":"The id of the parent task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The user id this task belongs to in case this is a private task.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"createdBy":{"type":"string","description":"The id of the user that created this task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"assigneeIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The user ids this task is assigned to.","nullable":true}},"additionalProperties":false},"ProjectEntity":{"type":"object","properties":{"id":{"type":"string","description":"The id of this project.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the Project. Required. Max allowed length: 25000 characters.","nullable":true,"example":"Website Design"},"company":{"type":"string","description":"The company this project is for.","nullable":true,"example":"Productivity Inc."},"isPrivate":{"type":"boolean","description":"Whether this is a private project only visible to members and the creator.","example":false},"isBillableByDefault":{"type":"boolean","description":"Whether project times should be billable by default.","nullable":true,"example":true},"projectStatus":{"$ref":"#/components/schemas/ProjectStatusEntity"},"createdBy":{"type":"string","description":"The id of the user that created this project.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"teams":{"type":"array","items":{"$ref":"#/components/schemas/TeamEntity"},"description":"The teams this project belongs to.","nullable":true},"members":{"type":"array","items":{"$ref":"#/components/schemas/ProjectMemberEntity"},"description":"The members of this project.","nullable":true},"isExternal":{"type":"boolean","description":"Whether this project is external."}},"additionalProperties":false},"ProjectMemberEntity":{"type":"object","properties":{"id":{"type":"string","description":"The id of this project member.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The id of the user that is member of this project.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"firstName":{"type":"string","description":"The first name of the user.","nullable":true,"example":"Carla"},"lastName":{"type":"string","description":"The last name of the user.","nullable":true,"example":"Creative"},"projectRoleName":{"type":"string","description":"The project role name of the project member.","nullable":true,"example":"Project Manager"},"hasImage":{"type":"boolean","description":"Whether the user has an image.","nullable":true,"example":true},"projectRoleId":{"type":"string","description":"The id of the project role.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"ProjectSearchModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"workspaceId":{"type":"string","description":"The workspace id of this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userStats":{"type":"array","items":{"$ref":"#/components/schemas/UserAccessStatistic"},"description":"The current user's access stats for this entity.","nullable":true},"indexTime":{"type":"string","description":"The last time this entity has been indexed.","format":"date-time"},"name":{"type":"string","description":"The name of the Project. Required. Max allowed length: 25000 characters.","nullable":true,"example":"Website Design"},"projectKey":{"type":"string","description":"The unique project key within the workspace (e.g., \"NIKE\").\nMaximum 32 characters, uppercase letters, numbers, and dashes only.","nullable":true},"description":{"type":"string","description":"The description of the project. Max allowed length: 25000 characters.","nullable":true,"example":"Design a new website that reflects the new brand identity."},"projectTypeId":{"type":"string","description":"The id of the project type of this project.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectStatusId":{"type":"string","description":"The id of the project status.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"isPrivate":{"type":"boolean","description":"Whether this is a private project only visible to members and the creator.","example":false},"isOpen":{"type":"boolean","description":"Whether this project is not closed.","example":true},"isBillableByDefault":{"type":"boolean","description":"Whether project times should be billable by default.","nullable":true,"example":true},"tags":{"type":"array","items":{"type":"string"},"description":"The tags of this project.","nullable":true,"example":["Design"]},"plannedDuration":{"type":"integer","description":"The total planned time of the project, in seconds.\nThe time is calculated as te sum of the planned duration by all project tasks.","format":"int64","nullable":true,"example":432000},"dueDate":{"type":"string","description":"The due date of the project.","format":"date-time","nullable":true,"example":"2022-05-01T00:00:00Z"},"startDate":{"type":"string","description":"The start date of the project.","format":"date-time","nullable":true,"example":"2022-03-01T00:00:00Z"},"company":{"$ref":"#/components/schemas/CompanySearchModel"},"projectType":{"$ref":"#/components/schemas/ProjectTypeEntity"},"projectStatus":{"$ref":"#/components/schemas/ProjectStatusEntity"},"members":{"type":"array","items":{"$ref":"#/components/schemas/ProjectMemberEntity"},"description":"The members of this project.","nullable":true},"hasImage":{"type":"boolean","description":"Whether the project has an image.","nullable":true,"example":true},"createdBy":{"type":"string","description":"The id of the user that created this project.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"teams":{"type":"array","items":{"$ref":"#/components/schemas/TeamEntity"},"description":"The teams this project belongs to.","nullable":true},"isExternal":{"type":"boolean","description":"Whether this project is external."}},"additionalProperties":false},"ProjectSearchModelHit":{"type":"object","properties":{"type":{"type":"string","description":"The name of the type for this search hit.","nullable":true,"readOnly":true,"example":"task"},"score":{"type":"number","description":"The score of this search hit.","format":"double","example":2.9},"entity":{"$ref":"#/components/schemas/ProjectSearchModel"},"highlights":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"},"nullable":true},"description":"The highlights of this search hit, by property.","nullable":true,"example":{"description":["in this creative project"]}}},"additionalProperties":false},"ProjectSearchModelTypeSearchResult":{"type":"object","properties":{"totalCount":{"type":"integer","description":"The count of search hits for this type.","format":"int64","readOnly":true,"example":7},"maxScore":{"type":"number","description":"The score of the best search hit for this type.","format":"double","readOnly":true,"example":1.9},"hits":{"type":"array","items":{"$ref":"#/components/schemas/ProjectSearchModelHit"},"description":"The results found by this search operation for this type.","nullable":true,"readOnly":true},"hasHits":{"type":"boolean","description":"Whether there are any hits at all, computed property.","readOnly":true}},"additionalProperties":false},"ProjectStatusEntity":{"type":"object","properties":{"id":{"type":"string","description":"The id of this project status.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the project status.","nullable":true,"example":"In Progress"},"type":{"type":"string","description":"The general type of this project status.","nullable":true,"example":"progress"}},"additionalProperties":false},"ProjectTypeEntity":{"type":"object","properties":{"id":{"type":"string","description":"The id of the type.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the project type.","nullable":true,"example":"Brand Strategy"},"icon":{"type":"string","description":"The identifier of the project type icon.","nullable":true,"example":"award"}},"additionalProperties":false},"SearchResults":{"type":"object","properties":{"totalCount":{"type":"integer","description":"The overall number of hits.","format":"int64","readOnly":true,"example":15},"maxScore":{"type":"number","description":"The highest overall search score.","format":"double","readOnly":true,"example":0.9},"top":{"type":"array","items":{},"description":"The best search matches accross all types ordered descending by their score.","nullable":true,"example":[{"type":"task","score":28,"entity":{"baseType":"projecttask","name":"Website Design"}}]},"commentHits":{"$ref":"#/components/schemas/CommentSearchModelTypeSearchResult"},"companyHits":{"$ref":"#/components/schemas/CompanySearchModelTypeSearchResult"},"dashboardNotesHits":{"$ref":"#/components/schemas/DashboardNoteSearchModelTypeSearchResult"},"projectHits":{"$ref":"#/components/schemas/ProjectSearchModelTypeSearchResult"},"taskHits":{"$ref":"#/components/schemas/TaskSearchModelTypeSearchResult"},"timeEntriesHits":{"$ref":"#/components/schemas/TimeEntrySearchModelTypeSearchResult"},"timeReportsHits":{"$ref":"#/components/schemas/TimeReportSearchModelTypeSearchResult"},"userHits":{"$ref":"#/components/schemas/UserSearchModelTypeSearchResult"},"taskListHits":{"$ref":"#/components/schemas/TaskListSearchModelTypeSearchResult"},"fileHits":{"$ref":"#/components/schemas/FileSearchModelTypeSearchResult"},"documentHits":{"$ref":"#/components/schemas/DocumentSearchModelTypeSearchResult"}},"additionalProperties":false},"TaskAssignmentEntity":{"type":"object","properties":{"id":{"type":"string","description":"The assigned user's id.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"firstName":{"type":"string","description":"The assigned user's first name.","nullable":true,"example":"Carla"},"lastName":{"type":"string","description":"The assigned user's last name.","nullable":true,"example":"Creative"}},"additionalProperties":false},"TaskListSearchModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"workspaceId":{"type":"string","description":"The workspace id of this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userStats":{"type":"array","items":{"$ref":"#/components/schemas/UserAccessStatistic"},"description":"The current user's access stats for this entity.","nullable":true},"indexTime":{"type":"string","description":"The last time this entity has been indexed.","format":"date-time"},"name":{"type":"string","description":"The name of the task list.","nullable":true,"example":"Create logo concept"},"project":{"$ref":"#/components/schemas/ProjectEntity"},"isExternal":{"type":"boolean","description":"Whether this task list is external."}},"additionalProperties":false},"TaskListSearchModelHit":{"type":"object","properties":{"type":{"type":"string","description":"The name of the type for this search hit.","nullable":true,"readOnly":true,"example":"task"},"score":{"type":"number","description":"The score of this search hit.","format":"double","example":2.9},"entity":{"$ref":"#/components/schemas/TaskListSearchModel"},"highlights":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"},"nullable":true},"description":"The highlights of this search hit, by property.","nullable":true,"example":{"description":["in this creative project"]}}},"additionalProperties":false},"TaskListSearchModelTypeSearchResult":{"type":"object","properties":{"totalCount":{"type":"integer","description":"The count of search hits for this type.","format":"int64","readOnly":true,"example":7},"maxScore":{"type":"number","description":"The score of the best search hit for this type.","format":"double","readOnly":true,"example":1.9},"hits":{"type":"array","items":{"$ref":"#/components/schemas/TaskListSearchModelHit"},"description":"The results found by this search operation for this type.","nullable":true,"readOnly":true},"hasHits":{"type":"boolean","description":"Whether there are any hits at all, computed property.","readOnly":true}},"additionalProperties":false},"TaskSearchModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"workspaceId":{"type":"string","description":"The workspace id of this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userStats":{"type":"array","items":{"$ref":"#/components/schemas/UserAccessStatistic"},"description":"The current user's access stats for this entity.","nullable":true},"indexTime":{"type":"string","description":"The last time this entity has been indexed.","format":"date-time"},"name":{"type":"string","description":"The name of the task. Max allowed length: 25000 characters.\nRequired.","nullable":true,"example":"Create logo concept"},"taskIdentifier":{"type":"string","description":"The full task identifier combining project key and task number (e.g., \"NIKE-42\").","nullable":true},"description":{"type":"string","description":"The description of the task. Max allowed length: 25000 characters.","nullable":true,"example":"Logo design for the new website."},"baseType":{"type":"string","description":"The base type of the task.","nullable":true,"example":"projecttask"},"assignees":{"type":"array","items":{"$ref":"#/components/schemas/TaskAssignmentEntity"},"description":"The assignees of the task.","nullable":true},"tags":{"type":"array","items":{"type":"string"},"description":"The tags of this task.","nullable":true,"example":["Design"]},"lists":{"type":"array","items":{"type":"string"},"description":"The task lists this task is in.","nullable":true,"example":["Preparation and Concepts"]},"isPrio":{"type":"boolean","description":"Whether this task is marked as priority.","nullable":true,"example":true},"isOpen":{"type":"boolean","description":"Whether this task is open.","example":true},"plannedDuration":{"type":"integer","description":"The expected planned workload of the task, in seconds.","format":"int32","nullable":true,"example":21600},"startOn":{"type":"string","description":"The expected start date and time of the task.","format":"date-time","nullable":true,"example":"2021-03-03T17:00:00Z"},"dueOn":{"type":"string","description":"The expected due date and time of the task.","format":"date-time","nullable":true,"example":"2021-03-18T17:00:00Z"},"taskStatus":{"$ref":"#/components/schemas/TaskStatusEntity"},"typeOfWork":{"$ref":"#/components/schemas/TypeOfWorkEntity"},"projectId":{"type":"string","description":"The id of the project this task is part of.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"project":{"$ref":"#/components/schemas/ProjectEntity"},"parentId":{"type":"string","description":"The id of the parent task of this task, if this task is a subtask.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"parentTask":{"$ref":"#/components/schemas/ParentTaskEntity"},"correlationId":{"type":"string","description":"The correlation id of this task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"subtaskOrder":{"type":"number","description":"The order of this subtask in the parent task, if this task is a subtask.","format":"double","nullable":true,"example":null},"userId":{"type":"string","description":"The user id this task belongs to in case this is a private task.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"createdBy":{"type":"string","description":"The id of the user that created this task.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"isExternal":{"type":"boolean","description":"Whether this task is external."},"isHiddenForConnectUsers":{"type":"boolean","description":"Whether this task should be hidden for connected users."}},"additionalProperties":false},"TaskSearchModelHit":{"type":"object","properties":{"type":{"type":"string","description":"The name of the type for this search hit.","nullable":true,"readOnly":true,"example":"task"},"score":{"type":"number","description":"The score of this search hit.","format":"double","example":2.9},"entity":{"$ref":"#/components/schemas/TaskSearchModel"},"highlights":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"},"nullable":true},"description":"The highlights of this search hit, by property.","nullable":true,"example":{"description":["in this creative project"]}}},"additionalProperties":false},"TaskSearchModelTypeSearchResult":{"type":"object","properties":{"totalCount":{"type":"integer","description":"The count of search hits for this type.","format":"int64","readOnly":true,"example":7},"maxScore":{"type":"number","description":"The score of the best search hit for this type.","format":"double","readOnly":true,"example":1.9},"hits":{"type":"array","items":{"$ref":"#/components/schemas/TaskSearchModelHit"},"description":"The results found by this search operation for this type.","nullable":true,"readOnly":true},"hasHits":{"type":"boolean","description":"Whether there are any hits at all, computed property.","readOnly":true}},"additionalProperties":false},"TaskStatusEntity":{"type":"object","properties":{"name":{"type":"string","description":"The name of the task status.","nullable":true,"example":"Concept"},"type":{"type":"string","description":"The general type of this task status.","nullable":true,"example":"progress"},"icon":{"type":"string","description":"The icon of the task status.","nullable":true,"example":"arrow_forward"}},"additionalProperties":false},"TeamEntity":{"type":"object","properties":{"id":{"type":"string","description":"The id of this team.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The name of the team.","nullable":true,"example":"Design Team"}},"additionalProperties":false},"TimeEntrySearchModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"workspaceId":{"type":"string","description":"The workspace id of this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userStats":{"type":"array","items":{"$ref":"#/components/schemas/UserAccessStatistic"},"description":"The current user's access stats for this entity.","nullable":true},"indexTime":{"type":"string","description":"The last time this entity has been indexed.","format":"date-time"},"note":{"type":"string","description":"The note of the time tracking.","nullable":true,"example":"I created a first draft for the new sitemap"},"taskId":{"type":"string","description":"The id of the task this time entry belongs to.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"projectId":{"type":"string","description":"The id of the project this time entry belongs to.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"project":{"$ref":"#/components/schemas/ProjectEntity"},"userId":{"type":"string","description":"The id of the user this time entry belongs to.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"startDateUtc":{"type":"string","description":"The date and time (in UTC) when the time tracking was started.","format":"date-time","nullable":true,"example":"2022-03-01T00:00:00Z"},"startTimeUtc":{"type":"string","description":"The time (in UTC) when the time tracking was started.","nullable":true,"example":"09:21:00"},"timezone":{"type":"string","description":"The original timezone of the time tracking.\nThe format of the timezone is the IANA standard.","nullable":true,"example":"Europe/Berlin"},"duration":{"type":"integer","description":"The duration of the time tracking in seconds.\nRequired when the time tracking has already been completed and EndTime has not been set.","format":"int32","nullable":true,"example":8635},"breakDuration":{"type":"integer","description":"The duration of the break in seconds.\nCannot be set via API.","format":"int32","nullable":true},"isExternal":{"type":"boolean","description":"Whether this time entry is external."},"isBilled":{"type":"boolean","description":"Whether this time entry is billed."}},"additionalProperties":false},"TimeEntrySearchModelHit":{"type":"object","properties":{"type":{"type":"string","description":"The name of the type for this search hit.","nullable":true,"readOnly":true,"example":"task"},"score":{"type":"number","description":"The score of this search hit.","format":"double","example":2.9},"entity":{"$ref":"#/components/schemas/TimeEntrySearchModel"},"highlights":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"},"nullable":true},"description":"The highlights of this search hit, by property.","nullable":true,"example":{"description":["in this creative project"]}}},"additionalProperties":false},"TimeEntrySearchModelTypeSearchResult":{"type":"object","properties":{"totalCount":{"type":"integer","description":"The count of search hits for this type.","format":"int64","readOnly":true,"example":7},"maxScore":{"type":"number","description":"The score of the best search hit for this type.","format":"double","readOnly":true,"example":1.9},"hits":{"type":"array","items":{"$ref":"#/components/schemas/TimeEntrySearchModelHit"},"description":"The results found by this search operation for this type.","nullable":true,"readOnly":true},"hasHits":{"type":"boolean","description":"Whether there are any hits at all, computed property.","readOnly":true}},"additionalProperties":false},"TimeReportSearchModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"workspaceId":{"type":"string","description":"The workspace id of this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userStats":{"type":"array","items":{"$ref":"#/components/schemas/UserAccessStatistic"},"description":"The current user's access stats for this entity.","nullable":true},"indexTime":{"type":"string","description":"The last time this entity has been indexed.","format":"date-time"},"name":{"type":"string","description":"The name of the time report.","nullable":true,"example":"Weekly reporting"},"shared":{"type":"boolean","description":"Whether the time report is shared with other users."},"userId":{"type":"string","description":"The id of the user that created the time report.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"TimeReportSearchModelHit":{"type":"object","properties":{"type":{"type":"string","description":"The name of the type for this search hit.","nullable":true,"readOnly":true,"example":"task"},"score":{"type":"number","description":"The score of this search hit.","format":"double","example":2.9},"entity":{"$ref":"#/components/schemas/TimeReportSearchModel"},"highlights":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"},"nullable":true},"description":"The highlights of this search hit, by property.","nullable":true,"example":{"description":["in this creative project"]}}},"additionalProperties":false},"TimeReportSearchModelTypeSearchResult":{"type":"object","properties":{"totalCount":{"type":"integer","description":"The count of search hits for this type.","format":"int64","readOnly":true,"example":7},"maxScore":{"type":"number","description":"The score of the best search hit for this type.","format":"double","readOnly":true,"example":1.9},"hits":{"type":"array","items":{"$ref":"#/components/schemas/TimeReportSearchModelHit"},"description":"The results found by this search operation for this type.","nullable":true,"readOnly":true},"hasHits":{"type":"boolean","description":"Whether there are any hits at all, computed property.","readOnly":true}},"additionalProperties":false},"TypeOfWorkEntity":{"type":"object","properties":{"name":{"type":"string","description":"The name of the type of work.","nullable":true,"example":"Concept"}},"additionalProperties":false},"UserAccessStatistic":{"type":"object","properties":{"userId":{"type":"string","description":"The id of the user that accessed this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"openCount":{"type":"integer","description":"How many times the user accessed this entity.","format":"int32","example":12},"lastOpened":{"type":"integer","description":"The unix time of when the entity was last accessed by the user.","format":"int64","nullable":true,"example":1646119800}},"additionalProperties":false},"UserSearchModel":{"type":"object","properties":{"id":{"type":"string","description":"The id of this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"workspaceId":{"type":"string","description":"The workspace id of this entity.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userStats":{"type":"array","items":{"$ref":"#/components/schemas/UserAccessStatistic"},"description":"The current user's access stats for this entity.","nullable":true},"indexTime":{"type":"string","description":"The last time this entity has been indexed.","format":"date-time"},"firstName":{"type":"string","description":"The user's first name.","nullable":true,"example":"Carla"},"lastName":{"type":"string","description":"The user's last name.","nullable":true,"example":"Creative"},"title":{"type":"string","description":"The user's title.","nullable":true,"example":"Ms"},"position":{"type":"string","description":"The user's position.","nullable":true,"example":"Creative Director"},"language":{"type":"string","description":"The user's language.","nullable":true,"example":"de-DE"},"gender":{"type":"string","description":"The user's gender.","nullable":true,"example":"Creative"},"tags":{"type":"array","items":{"type":"string"},"description":"The tags of this user.","nullable":true,"example":["Design"]},"teams":{"type":"array","items":{"$ref":"#/components/schemas/TeamModel"},"description":"The teams of this user.","nullable":true},"userContactInfos":{"type":"array","items":{"$ref":"#/components/schemas/ContactInfoEntity"},"description":"The contact infos of this user.","nullable":true},"hasImage":{"type":"boolean","nullable":true},"isDeactivated":{"type":"boolean","nullable":true}},"additionalProperties":false},"UserSearchModelHit":{"type":"object","properties":{"type":{"type":"string","description":"The name of the type for this search hit.","nullable":true,"readOnly":true,"example":"task"},"score":{"type":"number","description":"The score of this search hit.","format":"double","example":2.9},"entity":{"$ref":"#/components/schemas/UserSearchModel"},"highlights":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"},"nullable":true},"description":"The highlights of this search hit, by property.","nullable":true,"example":{"description":["in this creative project"]}}},"additionalProperties":false},"UserSearchModelTypeSearchResult":{"type":"object","properties":{"totalCount":{"type":"integer","description":"The count of search hits for this type.","format":"int64","readOnly":true,"example":7},"maxScore":{"type":"number","description":"The score of the best search hit for this type.","format":"double","readOnly":true,"example":1.9},"hits":{"type":"array","items":{"$ref":"#/components/schemas/UserSearchModelHit"},"description":"The results found by this search operation for this type.","nullable":true,"readOnly":true},"hasHits":{"type":"boolean","description":"Whether there are any hits at all, computed property.","readOnly":true}},"additionalProperties":false},"AcceptInvitation":{"type":"object","properties":{"invitationCode":{"type":"string","description":"The invitation code provided when creating the invitation.","nullable":true,"example":"a368cfdb4="},"referralCode":{"type":"string","description":"The referral code provided when creating the invitation from a referral.","nullable":true,"example":"cdf989ff="}},"additionalProperties":false,"description":"The invitation of a user to a workspace."},"Invitation":{"type":"object","properties":{"workspaceId":{"type":"string","description":"The id of the workspace to invite the user to.\nIf not set, a new workspace will be created.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"invitationFlow":{"type":"string","description":"The current invitation flow.\nUse 'invite' for an invitation from a system admin,\n'new_user_new_workspace' for an invitation when creating a workspace for a new user or\n'existing_user_new_workspace' when creating a workspace for an existing user.","nullable":true,"example":"invite"},"roleId":{"type":"string","description":"The id of the role to which the new user should be added.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"connectInviteCode":{"type":"string","description":"The awork connect invite code.","nullable":true},"passcode":{"type":"string","description":"The bot prevention passcode.","nullable":true},"email":{"type":"string","description":"The email of the user to be invited.","nullable":true,"example":"carla.creative@ncnstn.com"},"password":{"type":"string","description":"The Password of the user to be invited.","nullable":true,"example":"AC0mplexP@ssw0rd"},"firstName":{"type":"string","description":"The first name of the user to be invited.","nullable":true,"example":"Carla"},"lastName":{"type":"string","description":"The last name of the user to be invited.","nullable":true,"example":"Creative"},"title":{"type":"string","description":"The title of the user to be invited.","nullable":true,"example":"Miss"},"position":{"type":"string","description":"The position of the user to be invited.","nullable":true,"example":"Creative Director"},"gender":{"type":"string","description":"The gender of the user to be invited. Can be 'male', 'female' or 'other'.","nullable":true,"example":"female"},"skipSendingEmail":{"type":"boolean","description":"If set to true, skips sending the welcome email. Important for batch invites.","example":false},"teamIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The list of team ids where the user should be assigned to.","nullable":true},"bookedSeats":{"type":"integer","description":"The amount of booked seats.","format":"int32","nullable":true,"example":25}},"additionalProperties":false,"description":"The invitation of a user to a workspace."},"InvitationResponse":{"type":"object","properties":{"invitationCode":{"type":"string","description":"The invitation code that is used to confirm the invitation.\nThe code is valid for 24 hours.","nullable":true,"example":"a368cfdb4="},"passwordResetCode":{"type":"string","description":"A code that is used to reset the user's password.","nullable":true,"example":"f84ab34="},"userId":{"type":"string","description":"The id of the user that has been invited.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"workspace":{"$ref":"#/components/schemas/Workspace"}},"additionalProperties":false},"MigrateGuestUserInWorkspaceForm":{"required":["workspaceId"],"type":"object","properties":{"workspaceId":{"type":"string","description":"The id of the workspace to migrate the UserInWorkspace to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false},"PredictedRevenueModel":{"type":"object","properties":{"revenue":{"type":"number","description":"The predicted annualized revenue.","format":"double"}},"additionalProperties":false},"ProvisionDemoUserMembershipForm":{"required":["accountId","invitationFlow","userId"],"type":"object","properties":{"accountId":{"type":"string","description":"The account id of the demo user.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The core user id of the demo user.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"invitationFlow":{"maxLength":25,"minLength":1,"type":"string","description":"The invitation flow marker stored on the workspace relation."}},"additionalProperties":false},"PublicWorkspaceLookup":{"type":"object","properties":{"id":{"type":"string","description":"The id of the workspace.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The workspace name.","nullable":true},"hasImage":{"type":"boolean","description":"Whether the workspace has uploaded a workspace image."},"updatedOn":{"type":"string","description":"The date this workspace was last modified.","format":"date-time"},"subdomains":{"type":"array","items":{"$ref":"#/components/schemas/SubdomainBase"},"description":"The workspace's subdomains.","nullable":true},"allowSSOLogin":{"type":"boolean","description":"Whether the user can login via an external SSO provider."},"allowSocialLogin":{"type":"boolean","description":"Whether the social login via apple and google is allowed."},"allowCredentialsLogin":{"type":"boolean","description":"Whether the user can login with username and password."},"requireMfa":{"type":"boolean","description":"Whether the workspace requires multi-factor authentication for all users."}},"additionalProperties":false,"description":"Public workspace information needed to bootstrap unauthenticated login flows."},"RegisterLoginForm":{"type":"object","properties":{"origin":{"type":"string","description":"The origin of the login to register.","nullable":true}},"additionalProperties":false},"ResendInvitation":{"type":"object","properties":{"userId":{"type":"string","description":"The id of the user to be invited.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"The model to resend the invitation email to a user."},"SetCustomSubdomainForm":{"required":["name"],"type":"object","properties":{"name":{"minLength":1,"type":"string","description":"The subdomain hostname.\nMust be between 2 and 30 characters.","example":"ncnstn"}},"additionalProperties":false,"description":"The model to set a custom subdomain."},"SocialConnection":{"type":"object","properties":{"workspaceId":{"type":"string","description":"The id of the workspace to invite the user to.\nIf not set, a new workspace will be created.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"invitationFlow":{"type":"string","description":"The current invitation flow.\nUse 'invite' for an invitation from a system admin,\n'new_user_new_workspace' for an invitation when creating a workspace for a new user or\n'existing_user_new_workspace' when creating a workspace for an existing user.","nullable":true,"example":"invite"},"roleId":{"type":"string","description":"The id of the role to which the new user should be added.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"connectInviteCode":{"type":"string","description":"The awork connect invite code.","nullable":true},"passcode":{"type":"string","description":"The bot prevention passcode.","nullable":true},"provider":{"type":"string","description":"The external provider used to log in.","nullable":true,"example":"google"},"authorizationCode":{"type":"string","description":"The authorization code with the user's consent.","nullable":true,"example":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9"},"state":{"type":"string","description":"The state parameter of the initial auth request.","nullable":true,"example":"YWNjZXB0ZWQ9dHJ1ZQ=="},"idToken":{"type":"string","description":"The IdToken if available.","nullable":true,"example":"aWQ9NQ=="},"type":{"type":"string","description":"The type of the connection. Either 'signup' or 'login'.","nullable":true,"example":"login"},"invitationCode":{"type":"string","description":"The InvitationCode code for the invite flow.","nullable":true,"example":"a368cfdb4="},"referralCode":{"type":"string","description":"The optional referral code for the invite flow.","nullable":true,"example":"a368cfdb4="},"validateEmailDomain":{"type":"boolean","description":"If the email domain should be validated against the public domain list.","nullable":true},"firstName":{"type":"string","description":"The first name of the user.","nullable":true,"example":"Carla"},"lastName":{"type":"string","description":"The last name of the user.","nullable":true,"example":"Creative"},"email":{"type":"string","description":"The email of the user.","nullable":true,"example":"carla.creative@ncnstn.com"}},"additionalProperties":false},"Subdomain":{"type":"object","properties":{"name":{"type":"string","description":"The subdomain hostname.","nullable":true,"example":"ncnstn"},"isDefault":{"type":"boolean","description":"Whether this is the default subdomain of the workspace.","example":true},"id":{"type":"string","description":"The id of the subdomain.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"workspaceId":{"type":"string","description":"The id of the workspace this subdomain belongs to.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"The subdomain model."},"SubdomainBase":{"type":"object","properties":{"name":{"type":"string","description":"The subdomain hostname.","nullable":true,"example":"ncnstn"},"isDefault":{"type":"boolean","description":"Whether this is the default subdomain of the workspace.","example":true}},"additionalProperties":false,"description":"The base subdomain model."},"UserInWorkspace":{"type":"object","properties":{"accountId":{"type":"string","description":"The id of the account.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"userId":{"type":"string","description":"The id of the user.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"workspaceId":{"type":"string","description":"The id of the workspace.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"workspaceName":{"type":"string","description":"The name of the workspace.","nullable":true,"example":"NCNSTN Brand Agency"},"workspaceDescription":{"type":"string","description":"The description of the workspace.","nullable":true,"example":"NCNSTN's main workspace"},"isApproved":{"type":"boolean","description":"Whether the user has approved the invitation.","example":true},"invitationFlow":{"type":"string","description":"The invitation flow that was used to create the invitation.","nullable":true,"example":"invite"},"isDeactivated":{"type":"boolean","description":"Indicates if the user in the workspace is deactivated","example":false},"lastLogin":{"type":"string","description":"The date and time the user last logged into this workspace.","format":"date-time","nullable":true}},"additionalProperties":false,"description":"The user in workspace model assigns accounts to workspaces."},"Workspace":{"required":["allowCredentialsLogin","allowSocialLogin"],"type":"object","properties":{"name":{"maxLength":1000,"type":"string","description":"The workspace name. Optional.","nullable":true,"example":"NCNSTN Creative Agency"},"description":{"maxLength":1000,"type":"string","description":"The workspace description. Optional.","nullable":true,"example":"We create awesome digital experiences."},"language":{"maxLength":25,"type":"string","description":"The workspace language. Optional.","nullable":true,"example":"de-DE"},"type":{"maxLength":25,"type":"string","description":"The workspace type / industry set during onboarding. Optional.","nullable":true,"example":"creative-agency"},"size":{"maxLength":100,"type":"string","description":"The workspace size. Optional.","nullable":true,"example":"15"},"goals":{"maxItems":25,"type":"array","items":{"type":"string"},"description":"The workspace team goals. Optional.","nullable":true},"selfAttribution":{"maxLength":100,"type":"string","description":"The way the workspace creator learned awork, set during the onboarding. Optional.","nullable":true},"previousTool":{"maxLength":100,"type":"string","description":"The project management tool used before awork, set during the onboarding. Optional.","nullable":true},"aiUsage":{"maxLength":100,"type":"string","description":"How the team uses AI, set during the onboarding. Optional.","nullable":true},"department":{"maxLength":100,"type":"string","description":"The workspace creator's department, set during the onboarding. Optional.","nullable":true,"example":"15"},"allowSocialLogin":{"type":"boolean","description":"Whether the social login via apple and google is allowed."},"allowCredentialsLogin":{"type":"boolean","description":"Whether the user can login with username and password."},"allowAutomaticScimUserBooking":{"type":"boolean","description":"Whether the SCIM integration should be able to book additional user seats when provisioning and activating new users,\nor should return BadRequest.\nOnly admins are allowed to change this setting.","nullable":true},"sameDomainSignupEnabled":{"type":"boolean","description":"Whether same domain signup feature is enabled.\nOnly admins are allowed to change this setting.","nullable":true},"sameDomainSignupRoleId":{"type":"string","description":"Default Role for users who sign up through same domain signup.\nOnly admins are allowed to change this setting.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"sameDomainSignupDomains":{"type":"array","items":{"type":"string"},"description":"Domains enabled for same domain signup feature.\nOnly admins are allowed to change this setting.","nullable":true},"requireMfa":{"type":"boolean","description":"Whether the workspace requires multi-factor authentication for all users."},"skipCreateDefaultWorkspaceData":{"type":"boolean","description":"Whether to skip the creation of default workspace data.","nullable":true},"id":{"type":"string","description":"The id of the workspace.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"subdomains":{"type":"array","items":{"$ref":"#/components/schemas/SubdomainBase"},"description":"The workspace's subdomains. Read-only.","nullable":true},"memberCount":{"type":"integer","description":"The amount of workspace members. Only visible when the user is authenticated. Read-only.","format":"int32","nullable":true,"example":25},"lastUsed":{"type":"boolean","description":"Whether this is the workspace the current user last logged in with.","example":true},"lastLogin":{"type":"string","description":"The date and time the user last logged in with this workspace, or the workspace was last accessed.","format":"date-time","nullable":true},"accountIds":{"type":"array","items":{"type":"string","format":"uuid"},"description":"The ids of identities assigned to this workspace. Read-only.","nullable":true},"hasImage":{"type":"boolean","description":"Whether the workspace has uploaded a workspace image.","example":true},"createdOn":{"type":"string","description":"The date this workspace was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this workspace.\nOnly set after the first invitation succeeded.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this workspace was last modified.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who last updated this workspace.\nOnly set after the first invitation succeeded.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"isTestWorkspace":{"type":"boolean","description":"Whether the workspace is a test workspace.","example":false},"isApproved":{"type":"boolean","description":"Whether the user accepted the invitation to the workspace.","example":true},"allowSSOLogin":{"type":"boolean","description":"Whether the user can login via an external SSO provider.","example":true},"isScimActivated":{"type":"boolean","description":"Whether the workspace has SCIM user provisioning enabled."},"virtualMRR":{"type":"number","description":"The virtual MRR calculated during onborading.","format":"double","nullable":true},"isMobileSignup":{"type":"boolean","description":"The type of sign-up set during the onboarding.\nCan be: web, mobile, ...","nullable":true},"isFreeMail":{"type":"boolean","description":"Whether the domain of the account of the workspace creator is a freemail or a business domain.","nullable":true},"isJoinable":{"type":"boolean","description":"Whether this workspace has same domain sign up enabled and the account's email matches the permitted domains."},"isFull":{"type":"boolean","description":"Whether this workspace is full and no more users can join. Used in same domain sign up flow.","nullable":true}},"additionalProperties":false,"description":"The workspace GET model."},"WorkspaceDeleteForm":{"type":"object","properties":{"deleteWorkspaceCode":{"type":"string","description":"The token received via email to delete the workspace.","nullable":true}},"additionalProperties":false,"description":"The workspace delete model."},"WorkspacePostForm":{"type":"object","properties":{"name":{"maxLength":1000,"type":"string","description":"The workspace name. Optional.","nullable":true,"example":"NCNSTN Creative Agency"},"description":{"maxLength":1000,"type":"string","description":"The workspace description. Optional.","nullable":true,"example":"We create awesome digital experiences."},"language":{"maxLength":25,"type":"string","description":"The workspace language. Optional.","nullable":true,"example":"de-DE"},"type":{"maxLength":25,"type":"string","description":"The workspace type / industry set during onboarding. Optional.","nullable":true,"example":"creative-agency"},"size":{"maxLength":100,"type":"string","description":"The workspace size. Optional.","nullable":true,"example":"15"},"goals":{"maxItems":25,"type":"array","items":{"type":"string"},"description":"The workspace team goals. Optional.","nullable":true},"selfAttribution":{"maxLength":100,"type":"string","description":"The way the workspace creator learned awork, set during the onboarding. Optional.","nullable":true},"previousTool":{"maxLength":100,"type":"string","description":"The project management tool used before awork, set during the onboarding. Optional.","nullable":true},"aiUsage":{"maxLength":100,"type":"string","description":"How the team uses AI, set during the onboarding. Optional.","nullable":true},"department":{"maxLength":100,"type":"string","description":"The workspace creator's department, set during the onboarding. Optional.","nullable":true,"example":"15"}},"additionalProperties":false,"description":"The workspace POST model."},"WorkspacePutForm":{"required":["allowCredentialsLogin","allowSocialLogin"],"type":"object","properties":{"name":{"maxLength":1000,"type":"string","description":"The workspace name. Optional.","nullable":true,"example":"NCNSTN Creative Agency"},"description":{"maxLength":1000,"type":"string","description":"The workspace description. Optional.","nullable":true,"example":"We create awesome digital experiences."},"language":{"maxLength":25,"type":"string","description":"The workspace language. Optional.","nullable":true,"example":"de-DE"},"type":{"maxLength":25,"type":"string","description":"The workspace type / industry set during onboarding. Optional.","nullable":true,"example":"creative-agency"},"size":{"maxLength":100,"type":"string","description":"The workspace size. Optional.","nullable":true,"example":"15"},"goals":{"maxItems":25,"type":"array","items":{"type":"string"},"description":"The workspace team goals. Optional.","nullable":true},"selfAttribution":{"maxLength":100,"type":"string","description":"The way the workspace creator learned awork, set during the onboarding. Optional.","nullable":true},"previousTool":{"maxLength":100,"type":"string","description":"The project management tool used before awork, set during the onboarding. Optional.","nullable":true},"aiUsage":{"maxLength":100,"type":"string","description":"How the team uses AI, set during the onboarding. Optional.","nullable":true},"department":{"maxLength":100,"type":"string","description":"The workspace creator's department, set during the onboarding. Optional.","nullable":true,"example":"15"},"allowSocialLogin":{"type":"boolean","description":"Whether the social login via apple and google is allowed."},"allowCredentialsLogin":{"type":"boolean","description":"Whether the user can login with username and password."},"allowAutomaticScimUserBooking":{"type":"boolean","description":"Whether the SCIM integration should be able to book additional user seats when provisioning and activating new users,\nor should return BadRequest.\nOnly admins are allowed to change this setting.","nullable":true},"sameDomainSignupEnabled":{"type":"boolean","description":"Whether same domain signup feature is enabled.\nOnly admins are allowed to change this setting.","nullable":true},"sameDomainSignupRoleId":{"type":"string","description":"Default Role for users who sign up through same domain signup.\nOnly admins are allowed to change this setting.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"sameDomainSignupDomains":{"type":"array","items":{"type":"string"},"description":"Domains enabled for same domain signup feature.\nOnly admins are allowed to change this setting.","nullable":true},"requireMfa":{"type":"boolean","description":"Whether the workspace requires multi-factor authentication for all users.\nOnly admins are allowed to change this setting.","nullable":true},"skipCreateDefaultWorkspaceData":{"type":"boolean","description":"Whether to skip the creation of default workspace data.","nullable":true}},"additionalProperties":false,"description":"The workspace PUT model."},"WorkspaceSetting":{"required":["key","value"],"type":"object","properties":{"key":{"minLength":1,"type":"string","description":"The unique key.","example":"features"},"value":{"minLength":1,"type":"string","description":"The value of the setting.","example":"{ \"enabled\": true }"},"createdOn":{"type":"string","description":"The date when the setting was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created the setting.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date when the setting was updated.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who updated the setting.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"additionalProperties":false,"description":"The workspace setting model."},"WorkspaceSettingForm":{"required":["key","value"],"type":"object","properties":{"key":{"minLength":1,"type":"string","description":"The unique key.","example":"features"},"value":{"minLength":1,"type":"string","description":"The value of the setting.","example":"{ \"enabled\": true }"}},"additionalProperties":false,"description":"The workspace setting model."},"WorkspaceSimplified":{"type":"object","properties":{"id":{"type":"string","description":"The id of the workspace.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The workspace name. Optional.","nullable":true,"example":"NCNSTN Creative Agency"},"subdomains":{"type":"array","items":{"$ref":"#/components/schemas/SubdomainBase"},"description":"The workspace's subdomains.","nullable":true},"lastUsed":{"type":"boolean","description":"Whether this is the workspace the current user last logged in with.","example":true},"isApproved":{"type":"boolean","description":"Indicates if the user accepted the invitation to the workspace.","example":true},"hasImage":{"type":"boolean","description":"Whether the workspace has uploaded a workspace image.","example":true},"updatedOn":{"type":"string","description":"The date this workspace was last modified.","format":"date-time"},"isJoinable":{"type":"boolean","description":"Whether this workspace has same domain sign up enabled and the account's email matches the permitted domains."},"isFull":{"type":"boolean","description":"Whether this workspace is full and no more users can join. Used in same domain sign up flow.","nullable":true}},"additionalProperties":false,"description":"The simplified workspace GET model for cases where the user is not logged in."},"WorkspaceWithSubscriptionDetails":{"type":"object","properties":{"id":{"type":"string","description":"The id of the workspace.","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"name":{"type":"string","description":"The workspace name. Optional.","nullable":true,"example":"NCNSTN Creative Agency"},"description":{"type":"string","description":"The workspace description. Optional.","nullable":true,"example":"We create awesome digital experiences."},"language":{"type":"string","description":"The workspace language. Optional.","nullable":true,"example":"de-DE"},"subdomains":{"type":"array","items":{"$ref":"#/components/schemas/SubdomainBase"},"description":"The workspace's subdomains. Read-only.","nullable":true},"lastUsed":{"type":"boolean","description":"Whether this is the workspace the current user last logged in with.","example":true},"hasImage":{"type":"boolean","description":"Whether the workspace has uploaded a workspace image.","example":true},"createdOn":{"type":"string","description":"The date this workspace was created.","format":"date-time"},"createdBy":{"type":"string","description":"The id of the user who created this workspace.\nOnly set after the first invitation succeeded.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"updatedOn":{"type":"string","description":"The date this workspace was last modified.","format":"date-time"},"updatedBy":{"type":"string","description":"The id of the user who last updated this workspace.\nOnly set after the first invitation succeeded.","format":"uuid","nullable":true,"example":"123e4567-e89b-12d3-a456-426614174000"},"isTestWorkspace":{"type":"boolean","description":"Indicates if the workspace is a test workspace.","example":false},"planId":{"type":"string","description":"The id of the plan","nullable":true},"trialEnd":{"type":"string","description":"The date the trial ends.","format":"date-time","nullable":true},"contractEnd":{"type":"string","description":"The date the contract ends.","format":"date-time","nullable":true},"status":{"type":"string","description":"The status of the subscription.","nullable":true,"example":"Active"},"usedUserSeats":{"type":"integer","description":"The amount of used seats.","format":"int32","example":25}},"additionalProperties":false}},"parameters":{"page":{"name":"page","in":"query","description":"Page number for pagination","required":false,"schema":{"type":"integer","default":1}},"pageSize":{"name":"pageSize","in":"query","description":"Number of items per page","required":false,"schema":{"type":"integer","default":10}},"orderby":{"name":"orderby","in":"query","description":"The properties to order by","required":false,"schema":{"type":"string"}},"filterby":{"name":"filterby","in":"query","description":"The filter expression to filter by","required":false,"schema":{"type":"string"}}},"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","bearerFormat":"JWT"},"oauth2":{"type":"oauth2","flows":{"authorizationCode":{"authorizationUrl":"https://api.awork.com/accounts/authorize","tokenUrl":"https://api.awork.com/accounts/token","scopes":{"full_access":"Grants full access","offline_access":"Grants continued access with a refresh token"}}}}}},"security":[{"bearer":[]},{"oauth2":["full_access","offline_access"]}],"tags":[{"name":"Agent Schedules","description":"Create, manage, preview, and run schedules for accessible agents."},{"name":"Agent Skills","description":"Create and manage reusable skills, sharing, support files, access requirements, and secret values."},{"name":"AgentRuntime","description":"Sandbox-backed generic agent runtime endpoints."},{"name":"AgentThreads","description":"Manages agent threads."},{"name":"Custom Agents","description":"Create and configure custom agents, sharing, skills, connectors, delegations, workflows, and presets."},{"name":"Accounts","description":"The accounts endpoints allow you to manage the basic account details of a user."},{"name":"Client Applications","description":"Client applications are used by external login flows and workspace-registered applications."},{"name":"AbsenceRegions","description":"An absence region can be used to define the country/region where the employee is working and as such is subject to the labor laws of that country/region.\n                    This will define the public holidays entitlements for employees. Can be used to define regional workspace absences as well."},{"name":"Absences","description":"The absence endpoints allow you to manage absences for users."},{"name":"ApiUsers","description":"API users are required to create API keys. Changes made by an API client are shown in the UI as the respective API user."},{"name":"AssignedTasks","description":"The assigned tasks endpoints allow you to get all assigned tasks of a user.\n                    Project tasks are only visible if the related project is in progress."},{"name":"ChecklistItems","description":"The checklist items endpoints can be used for managing the checklist items of a task."},{"name":"Companies","description":"The company endpoints allow you to add and manage companies and their details."},{"name":"CompanyTags","description":"Manage tags for companies."},{"name":"CustomFields","description":"Custom fields are used to extend tasks and projects with additional information.\n        They can be used to store additional information. Those are the shared endpoints to work with custom field definitions."},{"name":"Dashboards","description":"The dashboards endpoints allow you to work with user's dashboards."},{"name":"DocumentComments"},{"name":"DocumentSpaces","description":"The document spaces endpoints allow you to create and manage document spaces and related entities such as contributors or connected teams."},{"name":"Documents","description":"The documents endpoints allow you to create and manage documents, their versions and related entities such as contributors or connected teams."},{"name":"Filters","description":"Provides endpoints to manage and share saved filters."},{"name":"Permissions","description":"The permissions endpoints provide the permission information of the workspace.\n                    That includes the complete permission set of the currently logged-in user as well as all available features."},{"name":"PrivateTasks","description":"Private tasks belong to a single user.\n                     Only the users themselves have access to their tasks and they can only be assigned to them.\n                     It is possible to create and assign private tasks to another user in which case both users have access to the task."},{"name":"ProjectComments"},{"name":"ProjectMembers","description":"Project Members feature allows you to manage the members of a project, including adding users, assigning roles, and setting responsible members. Only users with the appropriate permissions can add or modify project members. Roles and responsibilities are enforced according to project type and permissions."},{"name":"ProjectMilestoneTemplates","description":"The project milestone template endpoints allow you to work with milestone templates for project templates."},{"name":"ProjectMilestones","description":"The project milestone endpoints allow you to work with the basic project milestone data."},{"name":"ProjectRoles","description":"The project roles endpoints allow you to define roles for your project members.\n                                   You can assign members to these roles on each project.\n                                   If the roles are linked to the project types then the roles are available in every project using this type.\n                                   When you want to delete a project role which is still in use, you are required to specify which role the currently assigned members should be assigned to instead."},{"name":"ProjectStatuses","description":"Manage project and project template statuses."},{"name":"ProjectTags","description":"Manage tags for projects."},{"name":"ProjectTasks","description":"The project tasks are linked to projects.\n                            Only members of the project or users with project management 'read' permissions have access to these tasks."},{"name":"ProjectTemplateTags","description":"Manage tags for project templates."},{"name":"ProjectTemplates","description":"The project templates endpoints allow you to define different templates for projects."},{"name":"ProjectTypes","description":"The project types endpoints allow you to define different types for projects."},{"name":"Projects","description":"The projects endpoints allow you to work with the basic project data.\n                             If you don't assign a customer to the project, the project will be an internal project.\n                             In addition to the normal operation you can handle the project members and tags of the projects.\n                             When you assign a user to this project as a project member, you need to specify a project role for this project member. The available roles depend on the type of the project.\n                             You can also make one member responsible for the project, which means that we will notify this person if anything of interest happens in the project.\n                             The tags help you to add additional values to your projects and to find them faster.\n                             If you create new tags, they will be available for all other projects, too."},{"name":"Retainers","description":"Retainers are used for projects with recurring budgets. Currently only hourly based monthly recurring budgets are supported."},{"name":"Roles","description":"The roles endpoints allow you to configure the permissions of users.\n            You have the possibility to manage roles and assign users to these roles."},{"name":"TaskBundles","description":"Task bundles are reusable templates for task lists, tasks, and assignments that can be added to projects or created from existing project data."},{"name":"TaskComments"},{"name":"TaskDependencies","description":"The TaskDependencies endpoints allow you to get all task dependencies of a project or a task.\n                    A task can have multiple predecessors and multiple successors through separate dependency relationships."},{"name":"TaskDependencyTemplates","description":"Manage task dependency templates that belong to task bundles."},{"name":"TaskLists","description":"Task lists are a way to group tasks into user-defined lists.\n                            Task lists are currently available in projects and for users.\n                            This way, each project and each user can have a set of ordered task lists.\n                            Task lists can be reordered as well as the tasks within the list.\n                            Since tasks can be in multiple lists, the order is only applied to one list and does not affect others."},{"name":"TaskSchedules","description":""},{"name":"TaskStatuses","description":"The Task statuses endpoints can be used for general task status operation. Only for internal purposes."},{"name":"TaskTags","description":"Manage tags for tasks."},{"name":"TaskTemplateTags","description":"Manage tags for task templates."},{"name":"TaskTemplates","description":"The task templates endpoints can be used for managing task templates within task bundles."},{"name":"Tasks","description":"The Tasks endpoints can be used for general task operations and batch operations.\n        The batch operations include changing the task status, assigning users and more."},{"name":"Teams","description":"The teams endpoints are used to manage the details of your team."},{"name":"TimeBookings","description":"The time bookings are used as a simple way to book a user's time for a specific time frame.\nIt can be related to a project or not.\nThose bookings are then used in the workload to calculate the estimated load of a user."},{"name":"TimeEntries","description":"There are some endpoints which have a V2 version. For those the V1 endpoints will be deprecated in the future.\n                    Please use the V2 endpoints instead.\n                    The endpoints can be used for general operations on existing time entries.\n                    A time entry can be linked to a task and / or project, although it can also be created for the user themselves without any entity link.\n                    If the time entry is linked to a project it is also indirectly linked to the company of that project.\n                    Similarly, the time entry is automatically linked to the project of the the task."},{"name":"TimeReports","description":"Endpoints for generating and managing time report KPIs and configurations."},{"name":"TimeTracking","description":"The v1 versions of these endpoints will be deprecated at some point. Please migrate to the V2 versions.\n                These endpoints can be used to start, stop, pause or resume a time tracking as well as to get the last time tracking of a user."},{"name":"TimeTrackingSettings","description":"These endpoints can be used to manage global timetracking settings for a workspace."},{"name":"TypeOfWork","description":"The type of work endpoints allow you to manage your types of work. They are helpful to describe the type of a task or a time entry."},{"name":"UserCapacities","description":"The user capacity endpoints allow you to define the work capacity of users."},{"name":"UserTags","description":"The user tags endpoints allow you to manage tags on users."},{"name":"Users","description":"The users endpoints allow you to manage the users of your workspace as well as their contact details."},{"name":"Workflows","description":"The workflows endpoints allow you to define and manage workflows for projects and project templates."},{"name":"Workload","description":""},{"name":"WorkspaceAbsences","description":"Use those endpoints to define workspace wide absences. A WorkspaceAbsence is an absence that is applied to all the users of the workspace. \n                  It is useful for defining company specific events/holidays, for example."},{"name":"Agent Files"},{"name":"Agent Thread Files","description":"Endpoints for files attached to agent threads."},{"name":"Company Files"},{"name":"Document Files"},{"name":"FileUpload","description":"These endpoints can be used to upload files to the workspace."},{"name":"Files","description":"File export endpoints."},{"name":"Images","description":"The image endpoints are used to upload and download profile images, for example for users, projects and your workspace.\n                             These endpoints also allow you to crop and scale the image to the size you need."},{"name":"Project Files","description":"Endpoints for files attached to projects, including files of linked tasks."},{"name":"ProjectTemplate Files"},{"name":"SharedFiles","description":"These file endpoints are used to get shared files and public profile images."},{"name":"Task Files"},{"name":"TaskTemplate Files"},{"name":"Temporary Files","description":"The temporary file endpoints allow you to upload and update files\n        that do not have a connection to any entity. The files can be linked to an entity later.\n        They don't show up in awork before they are either linked to a file or marked as a global file.\n        Only the user who uploaded the file has access to the temporary file."},{"name":"User Files"},{"name":"Workspace Files"},{"name":"Project Automations","description":"Endpoints to manage automations and actions scoped to projects."},{"name":"Project Template Automations","description":"Endpoints to manage automations and actions scoped to project templates."},{"name":"Workflow Automations","description":"Endpoints to manage automations scoped to workflows."},{"name":"Webhooks","description":"Endpoints to manage webhook configurations, tests, and external integrations."},{"name":"Autopilot","description":"Endpoints to manage awork autopilot settings for projects."},{"name":"Project Activities"},{"name":"Task Activities"},{"name":"Search","description":"Endpoints for full-text search and search index maintenance."},{"name":"Invitations","description":"The invitation endpoints are used to invite users to a workspace. You can invite a new user or an existing user to a workspace. The invitation code is used to identify the workspace and the account to which the user should be linked. The invitation code is encrypted and can only be decrypted by the service. The invitation code is valid for 24 hours."},{"name":"Workspaces","description":"The workspaces endpoints are used to manage the details of your workspace."}]}