# Update issue entity Modify an existing issue within the Property Management System (PMS) by providing updated details in the request body. The update process requires a valid issue ID and allows modifications to fields such as issue status, priority, category, or resolution notes. Issues are typically associated with properties, units, bookings, or guest stays, ensuring efficient tracking and management. To prevent data conflicts, a locking mechanism is applied during updates. The response includes the updated issue details. If the issue ID does not exist, a error will be returned. In case of an unexpected error, a will be triggered. Endpoint: PUT /api/v3/issues/{id} Version: 3.0.4 Security: OAuth2 ## Path parameters: - `id` (integer, required) Issue ID ## Query parameters: - `currentUser` (object, required) ## Request fields (application/json): - `id` (integer, required) ID of the issue - `subject` (string, required) Subject of the issue - `description` (string, required) Description of the issue - `issueStatus` (string, required) Status of the issue Enum: "OPEN", "STARTED", "RESOLVED", "CLOSED" - `issuePriority` (object, required) Priority of the issue - `issuePriority.id` (integer) The unique identifier of the issue priority - `issuePriority.name` (string) The name of the issue priority - `issueType` (object, required) Type of the issue - `issueType.id` (integer) Issue type id Example: 1 - `issueType.name` (string) Issue type name Example: "Bug" - `restrictsAvailability` (boolean) Indicates if the issue restricts availability - `restrictsAvailabilityFrom` (string) Start date of availability restriction - `restrictsAvailabilityTo` (string) End date of availability restriction - `responseTargetDate` (string) Target date for response - `respondedDate` (string) Date when the issue was responded to - `resolutionTargetDate` (string) Target date for resolution - `resolvedDate` (string) Date when the issue was resolved - `closedDate` (string) Date when the issue was closed - `assigneeTeam` (object) Team assigned to the issue - `assigneeTeam.id` (integer) The unique identifier of the team - `assigneeTeam.teamName` (string) The name of the team - `assigneeUser` (object) User who started the issue - `assigneeUser.id` (integer) The unique identifier of the user - `assigneeUser.firstName` (string) The first name of the user - `assigneeUser.lastName` (string) The last name of the user - `assigneeUser.username` (string) The username of the user - `unit` (object) Summary of the Unit associated with the Unit Access Group - `unit.id` (integer) Unique identifier of the unit Example: 1 - `unit.name` (string) Name of the unit Example: "Apartment 101" - `building` (object) Building associated with the unit type - `building.id` (integer) Unique identifier of the building - `building.name` (string) Name of the building - `booking` (object) Booking associated with the issue - `booking.id` (integer) The unique identifier of the booking - `booking.bookingReference` (string) The booking reference number - `reporterUser` (object) User who started the issue - `reporterContact` (object) The primary correspondence contact of the company - `reporterContact.id` (integer) Unique identifier of the contact - `reporterContact.firstName` (string) First name of the contact - `reporterContact.lastName` (string) Last name of the contact - `resolvedBy` (object) User who started the issue - `closedBy` (object) User who started the issue - `timeOfReporting` (string) Time when the issue was reported - `assigneeCompany` (object) Company summary associated with the finance account - `assigneeCompany.id` (integer) Unique identifier of the company - `assigneeCompany.companyName` (string) Name of the company - `startedDate` (string) Date when the issue was started - `startedBy` (object) User who started the issue - `elapsedTime` (integer) Elapsed time for the issue - `guestStay` (object) Guest stay associated with the issue - `guestStay.id` (integer) The unique identifier of the guest stay - `guestStay.contact` (object) The primary correspondence contact of the company - `guestStay.dateFrom` (string) The start date of the guest stay - `guestStay.dateTo` (string) The end date of the guest stay - `readStatus` (boolean) Read status of the issue - `uuid` (string) UUID of the issue - `private` (boolean) ## Response 200 fields (application/json): - `id` (integer, required) ID of the issue - `subject` (string, required) Subject of the issue - `description` (string, required) Description of the issue - `issueStatus` (string, required) Status of the issue Enum: "OPEN", "STARTED", "RESOLVED", "CLOSED" - `issuePriority` (object, required) Priority of the issue - `issuePriority.id` (integer) The unique identifier of the issue priority - `issuePriority.name` (string) The name of the issue priority - `issueType` (object, required) Type of the issue - `issueType.id` (integer) Issue type id Example: 1 - `issueType.name` (string) Issue type name Example: "Bug" - `restrictsAvailability` (boolean) Indicates if the issue restricts availability - `restrictsAvailabilityFrom` (string) Start date of availability restriction - `restrictsAvailabilityTo` (string) End date of availability restriction - `responseTargetDate` (string) Target date for response - `respondedDate` (string) Date when the issue was responded to - `resolutionTargetDate` (string) Target date for resolution - `resolvedDate` (string) Date when the issue was resolved - `closedDate` (string) Date when the issue was closed - `assigneeTeam` (object) Team assigned to the issue - `assigneeTeam.id` (integer) The unique identifier of the team - `assigneeTeam.teamName` (string) The name of the team - `assigneeUser` (object) User who started the issue - `assigneeUser.id` (integer) The unique identifier of the user - `assigneeUser.firstName` (string) The first name of the user - `assigneeUser.lastName` (string) The last name of the user - `assigneeUser.username` (string) The username of the user - `unit` (object) Summary of the Unit associated with the Unit Access Group - `unit.id` (integer) Unique identifier of the unit Example: 1 - `unit.name` (string) Name of the unit Example: "Apartment 101" - `building` (object) Building associated with the unit type - `building.id` (integer) Unique identifier of the building - `building.name` (string) Name of the building - `booking` (object) Booking associated with the issue - `booking.id` (integer) The unique identifier of the booking - `booking.bookingReference` (string) The booking reference number - `reporterUser` (object) User who started the issue - `reporterContact` (object) The primary correspondence contact of the company - `reporterContact.id` (integer) Unique identifier of the contact - `reporterContact.firstName` (string) First name of the contact - `reporterContact.lastName` (string) Last name of the contact - `resolvedBy` (object) User who started the issue - `closedBy` (object) User who started the issue - `timeOfReporting` (string) Time when the issue was reported - `assigneeCompany` (object) Company summary associated with the finance account - `assigneeCompany.id` (integer) Unique identifier of the company - `assigneeCompany.companyName` (string) Name of the company - `startedDate` (string) Date when the issue was started - `startedBy` (object) User who started the issue - `elapsedTime` (integer) Elapsed time for the issue - `guestStay` (object) Guest stay associated with the issue - `guestStay.id` (integer) The unique identifier of the guest stay - `guestStay.contact` (object) The primary correspondence contact of the company - `guestStay.dateFrom` (string) The start date of the guest stay - `guestStay.dateTo` (string) The end date of the guest stay - `readStatus` (boolean) Read status of the issue - `uuid` (string) UUID of the issue - `private` (boolean)