# Creates a new ticket. Endpoint: PUT /tickets Version: v3 Security: oauth2 ## Request fields (application/json): - `summary` (string,null) Gets or sets the summary of the ticket. - `description` (string,null) Gets or sets the description of the ticket. - `cause` (string,null) Gets or sets the cause of the ticket. - `solution` (string,null) Gets or sets the solution of the ticket. - `twinId` (string,null) Gets or sets the digital twin id associated with the ticket. - `notes` (string,null) Gets or sets additional notes for the ticket. - `latitude` (number,null) Gets or sets the latitude of the ticket location. - `longitude` (number,null) Gets or sets the longitude of the ticket location. - `insightId` (string,null) Gets or sets the InsightId associated with the ticket. - `insightName` (string,null) Gets or sets the name of the insight associated with the ticket. - `diagnostics` (array,null) Gets or sets the diagnostics associated with the ticket. - `diagnostics.id` (string) Gets or sets the unique identifier of the insight. - `diagnostics.customerId` (string) Gets or sets the unique identifier of the customer associated with the insight. - `diagnostics.siteId` (string) Gets or sets the unique identifier of the site associated with the insight. - `diagnostics.sequenceNumber` (string,null) Gets or sets the sequence number of the insight. - `diagnostics.equipmentId` (string,null) Gets or sets the unique identifier of the equipment associated with the insight. - `diagnostics.twinId` (string,null) Gets or sets the twin identifier of the insight. - `diagnostics.twinName` (string,null) Gets or sets the name of the twin associated with the insight. - `diagnostics.insightType` (string) Gets or sets the type of the insight (standard or scenario). Enum: "standard", "scenario" - `diagnostics.category` (string) Gets or sets the category of the insight. Enum: "fault", "energy", "alert", "note", "goldenStandard", "infrastructure", "integrityKpi", "energyKpi", "edgeDevice", "dataQuality", "commissioning", "comfort", "wellness", "calibration", "diagnostic", "predictive", "alarm" - `diagnostics.name` (string,null) Gets or sets the name of the insight. - `diagnostics.description` (string,null) Gets or sets the description of the insight. - `diagnostics.recommendation` (string,null) Gets or sets the recommendation for the insight. - `diagnostics.impactScores` (array,null) Gets or sets the impact scores associated with the insight. - `diagnostics.impactScores.name` (string,null) Gets or sets the name of the impact score. - `diagnostics.impactScores.fieldId` (string,null) Gets or sets the field ID of the impact score. - `diagnostics.impactScores.value` (number) Gets or sets the value of the impact score. - `diagnostics.impactScores.unit` (string,null) Gets or sets the unit of the impact score. - `diagnostics.impactScores.externalId` (string,null) Gets or sets the external ID that matches a time series in ADX. - `diagnostics.impactScores.ruleId` (string,null) Gets or sets the rule ID associated with the impact score. - `diagnostics.priority` (integer) Gets or sets the priority of the insight. - `diagnostics.lastStatus` (string) Gets or sets the last status of the insight. Enum: "open", "ignored", "inProgress", "resolved", "new", "deleted", "readyToResolve" - `diagnostics.state` (string) Gets or sets the state of the insight. Enum: "inactive", "active", "disabled", "insufficientData", "archived" - `diagnostics.createdDate` (string) Gets or sets the date when the insight was created. - `diagnostics.updatedDate` (string) Gets or sets the date when the insight was last updated. - `diagnostics.occurredDate` (string) Gets or sets the date when the insight occurred. - `diagnostics.detectedDate` (string) Gets or sets the date when the insight was detected. - `diagnostics.sourceType` (string) Gets or sets the source type of the insight. Enum: "Adx", "AdtQuery", "AdtMemory", "Acs" - `diagnostics.sourceId` (string,null) Gets or sets the unique identifier of the source associated with the insight. - `diagnostics.sourceName` (string,null) Gets or sets the name of the source associated with the insight. - `diagnostics.primaryModelId` (string,null) Gets or sets the primary model identifier of the insight. - `diagnostics.externalId` (string,null) Gets or sets the external identifier of the insight. - `diagnostics.externalStatus` (string,null) Gets or sets the external status of the insight. - `diagnostics.externalMetadata` (string,null) Gets or sets the external metadata of the insight. - `diagnostics.occurrenceCount` (integer) Gets or sets the occurrence count of the insight. - `diagnostics.createdUserId` (string,null) Gets or sets the unique identifier of the user who created the insight. - `diagnostics.ruleId` (string,null) Gets or sets the rule identifier associated with the insight. - `diagnostics.ruleName` (string,null) Gets or sets the rule name associated with the insight. - `diagnostics.newOccurrence` (boolean) Gets or sets a value indicating whether the insight is a new occurrence. - `diagnostics.previouslyIgnored` (integer) Gets or sets the count of times the insight was previously ignored. - `diagnostics.previouslyResolved` (integer) Gets or sets the count of times the insight was previously resolved. - `diagnostics.floorId` (string,null) Gets or sets the unique identifier of the floor associated with the insight. - `diagnostics.reported` (boolean) Gets or sets a value indicating whether the insight has been reported. - `diagnostics.commentCount` (integer) Gets or sets the comment count for the insight. - `diagnostics.lastResolvedDate` (string,null) Gets or sets the date when the insight was last resolved. - `diagnostics.lastIgnoredDate` (string,null) Gets or sets the date when the insight was last ignored. - `diagnostics.locationDetails` (array,null) Gets or sets the location details, including twin ID, name, and model ID. - `diagnostics.locationDetails.id` (string,null) Gets or sets location Id (Scope's twinId). - `diagnostics.locationDetails.name` (string,null) Gets or sets location name. - `diagnostics.locationDetails.modelId` (string,null) Gets or sets location model Id. - `diagnostics.tags` (array,null) Gets or sets the tags associated with the insight. - `diagnostics.ignoreUntil` (string,null) Gets or sets the ignore expiry date for the insight. - `diagnostics.openTicketCount` (integer) Gets or sets the number of open tickets for the insight. - `diagnostics.completedTicketCount` (integer) Gets or sets the number of Completed tickets for the insight. - `diagnostics.closedTicketCount` (integer) Gets or sets the number of closed tickets for the insight. - `diagnostics.ticketClosedDate` (string,null) Gets or sets the ticket closed date. - `diagnostics.ticketCompletedDate` (string,null) Gets or sets the ticket completed date. - `diagnostics.secondaryTwins` (array,null) Gets or sets the secondary twins "secondary components" of the insight. - `diagnostics.secondaryTwins.id` (string,null) Gets or sets twin Id. - `diagnostics.secondaryTwins.name` (string,null) Gets or sets twin Name. - `diagnostics.secondaryTwins.modelId` (string,null) Gets or sets model id. - `diagnostics.secondaryTwins.eTag` (string,null) Gets or sets unique tag of location for changes. - `diagnostics.recommendations` (array,null) Gets or sets the recommendations of the insight. - `diagnostics.recommendations.id` (string) Gets or sets the unique identifier for the recommendation. - `diagnostics.recommendations.name` (string,null) Gets or sets the name of the recommendation. - `diagnostics.recommendations.recommendation` (string,null) Gets or sets the recommendation. - `diagnostics.recommendations.tags` (array,null) Gets or sets the tags for recommendation. - `diagnostics.recommendations.ignored` (boolean) Gets or sets a value indicating whether the recommendation is ignored or not. - `diagnostics.recommendations.tickets` (array,null) Gets or sets the recommendation's tickets. - `diagnostics.recommendations.tickets.id` (string) Gets or sets the ticket id. - `diagnostics.recommendations.tickets.summary` (string,null) Gets or sets the ticket summary. - `diagnostics.recommendations.tickets.createdDate` (string) Gets or sets the ticket created date. - `diagnostics.recommendations.tickets.ticketStatus` (object,null) Gets or sets the ticket status details. - `diagnostics.recommendations.tickets.ticketStatus.id` (string) Gets or sets the unique identifier for the ticket status. - `diagnostics.recommendations.tickets.ticketStatus.name` (string,null) Gets or sets the name of the ticket status. - `diagnostics.recommendations.tickets.ticketStatus.tab` (string,null) Gets or sets the status's tab that can be used to filter ticket status in UI. - `diagnostics.recommendations.tickets.ticketStatus.color` (string,null) Gets or sets the color associated with the ticket status. - `diagnostics.dependencyCount` (integer) Gets or sets the number of insight's dependencies. - `diagnostics.actionStatus` (string) Gets or sets the action status of the insight. Enum: "needsAction", "inProgress", "unsuccessfullyActioned", "successfullyActioned" - `diagnostics.scenarioId` (string,null) Gets or sets the insights parent scenario id. - `diagnostics.scenarioName` (string,null) Gets or sets the insights parent scenario name. - `diagnostics.type` (string) Gets or sets the type of the insight. Enum: "fault", "energy", "alert", "note", "goldenStandard", "infrastructure", "integrityKpi", "energyKpi", "edgeDevice", "dataQuality", "commissioning", "comfort", "wellness", "calibration", "diagnostic", "predictive", "alarm" - `diagnostics.locations` (array,null) Gets or sets the locations associated with the insight. - `diagnostics.isDiagnosticsData` (boolean) Gets or sets a value indicating whether the insight contains diagnostics data. - `reporter` (object) - `reporter.id` (string,null) Gets or sets the unique identifier for the user. - `reporter.name` (string,null) Gets or sets the name of the user. - `reporter.email` (string,null) Gets or sets the email address of the user. - `reporter.phone` (string,null) Gets or sets the phone number of the user. - `reporter.company` (string,null) Gets or sets the company name associated with the user. - `creator` (object) - `assigneeType` (string) Specifies the type of assignee for a ticket. Enum: "noAssignee", "customerUser", "workGroup" - `userAssignee` (object) - `workgroupAssignee` (object) Represents a workgroup assignee for tickets. - `workgroupAssignee.id` (string,null) Gets or sets the workgroup identifier. - `workgroupAssignee.name` (string,null) Gets or sets the workgroup name. - `dueDate` (string,null) Gets or sets the due date of the ticket. - `externalCreatedDate` (string,null) Gets or sets the external created date of the ticket. This field represents the created date of the ticket in an external system. - `externalUpdatedDate` (string,null) Gets or sets the external updated date of the ticket. This field represents the last updated date of the ticket in an external system. - `externalId` (string,null) Gets or sets the external id of the ticket. This field represents the id of the ticket in an external system. - `externalMetadata` (string,null) Gets or sets the external metadata of the ticket. - `categoryId` (string,null) Gets or sets the category id of the ticket. - `jobTypeId` (string,null) Gets or sets the job type id of the ticket. - `serviceNeededId` (string,null) Gets or sets the service needed id of the ticket. - `subStatusId` (string,null) Gets or sets the sub status id of the ticket. - `statusId` (string) Gets or sets the status id of the ticket. - `priorityId` (string,null) Gets or sets the priority id of the ticket. - `tasks` (array,null) Gets or sets the list of tasks associated with the ticket. - `tasks.id` (string) Gets or sets the unique identifier. - `tasks.taskName` (string,null) Gets or sets the task name. - `tasks.isCompleted` (boolean) Gets or sets a value indicating whether the task is completed. - `tasks.order` (integer) Gets or sets the display order. - `tasks.numberValue` (number,null) Gets or sets the numeric value for the task. - `tasks.type` (string) Specifies the type of task. Enum: "numeric", "checkbox" - `tasks.decimalPlaces` (integer,null) Gets or sets the number of decimal places. - `tasks.minValue` (number,null) Gets or sets the minimum value. - `tasks.maxValue` (number,null) Gets or sets the maximum value. - `tasks.unit` (string,null) Gets or sets the unit of measurement. - `customProperties` (object,null) Gets or sets the custom properties of the ticket. - `extendableSearchablePropertyKeys` (array,null) Gets or sets the list of property keys that can be extended and searched. - `recommendations` (array,null) Gets or sets the list of ticket's recommendations. - `recommendations.id` (string) Gets or sets the unique identifier for the recommendation entity. - `ticketCosts` (array,null) Gets or sets the list of ticket costs associated with the ticket. - `ticketCosts.phase` (string) Specifies the phase of ticket cost tracking, indicating whether the cost is estimated, planned, or actual. Enum: "estimated", "planned", "actual" - `ticketCosts.category` (string) Specifies the category of cost associated with a ticket, such as tools, materials, labor, or the total cost. Enum: "tool", "material", "labor", "total" - `ticketCosts.unit` (string,null) Gets or sets the unit of measurement associated with the value. - `ticketCosts.value` (number) Gets or sets the numeric value represented by this instance. ## Response 200 fields (application/json): - `id` (string) Gets or sets the unique identifier for the ticket. - `ticketPriority` (object) - `ticketPriority.id` (string) Gets or sets the unique identifier for the ticket priority. - `ticketPriority.name` (string,null) Gets or sets the name of the ticket priority. - `ticketPriority.priorityLevel` (string) Ticket priority levels. These are the standardized priority levels recognized by Willow that can be assigned to tickets. Custom priority levels should be mapped to these standard levels so the system can interpret them consistently. Enum: "urgent", "high", "medium", "low" - `ticketStatus` (object) Represent the Ticket status dto class. - `ticketStatus.id` (string) Gets or sets the unique identifier for the ticket status. - `ticketStatus.name` (string,null) Gets or sets the name of the ticket status. - `ticketStatus.tab` (string,null) Gets or sets the status's tab that can be used to filter ticket status in UI. - `ticketStatus.color` (string,null) Gets or sets the color associated with the ticket status. - `insightId` (string,null) Gets or sets the insight identifier associated with the ticket. - `summary` (string,null) Gets or sets the summary of the ticket. - `description` (string,null) Gets or sets the description of the ticket. - `cause` (string,null) Gets or sets the description of the underlying reason or cause associated with this instance. - `solution` (string,null) Gets or sets the solution text associated with the ticket. - `reporter` (object) - `reporter.id` (string,null) Gets or sets the unique identifier for the user. - `reporter.name` (string,null) Gets or sets the name of the user. - `reporter.email` (string,null) Gets or sets the email address of the user. - `reporter.phone` (string,null) Gets or sets the phone number of the user. - `reporter.company` (string,null) Gets or sets the company name associated with the user. - `assigneeType` (string) Specifies the type of assignee for a ticket. Enum: "noAssignee", "customerUser", "workGroup" - `userAssignee` (object) - `workgroupAssignee` (object) Represents a workgroup assignee for tickets. - `workgroupAssignee.id` (string,null) Gets or sets the workgroup identifier. - `workgroupAssignee.name` (string,null) Gets or sets the workgroup name. - `creator` (object) - `dueDate` (string,null) Gets or sets the due date of the ticket. - `createdDate` (string) Gets or sets the date when the ticket was created. - `updatedDate` (string) Gets or sets the date when the ticket was last updated. - `startedDate` (string,null) Gets or sets the date when the ticket was started. - `resolvedDate` (string,null) Gets or sets the date when the ticket was resolved. - `closedDate` (string,null) Gets or sets the date when the ticket was closed. - `sourceType` (string) Specifies the available data source types for queries and operations. Enum: "Adx", "AdtQuery", "AdtMemory", "Acs" - `sourceName` (string,null) Gets or sets the name of the source from which the ticket originated. - `externalId` (string,null) Gets or sets the external identifier of the ticket. - `externalCreatedDate` (string,null) Gets or sets the date when the ticket was created in an external system. - `externalUpdatedDate` (string,null) Gets or sets the date when the ticket was last updated in an external system. - `latitude` (number,null) Gets or sets the latitude of the ticket's location. - `longitude` (number,null) Gets or sets the longitude of the ticket's location. - `customProperties` (object,null) Gets or sets the custom properties associated with the ticket. - `extendableSearchablePropertyKeys` (array,null) Gets or sets the list of extendable searchable property keys associated with the ticket. - `scheduledDate` (string,null) Gets or sets the scheduled date for the ticket. - `occurrence` (integer) Gets or sets the occurrence count of the ticket. - `locations` (array,null) Gets or sets the list of ticket locations. - `locations.id` (string,null) Gets or sets location Id (Scope's twinId). - `locations.name` (string,null) Gets or sets location name. - `locations.modelId` (string,null) Gets or sets location model Id. - `twin` (object) Represent the base twin. - `twin.id` (string,null) Gets or sets the unique identifier for the twin. - `twin.name` (string,null) Gets or sets the name of the twin. - `twin.modelId` (string,null) Gets or sets the twin's model id. - `recommendations` (array,null) Gets or sets the list of ticket's recommendations. - `recommendations.id` (string) Gets or sets the unique identifier for the recommendation entity. - `recommendations.name` (string,null) Gets or sets the name of the recommendation. - `recommendations.recommendation` (string,null) Gets or sets the recommendation. - `recommendations.tags` (array,null) Gets or sets the tags for recommendation. - `category` (object) - `category.id` (string) - `category.name` (string,null) - `jobType` (object) - `serviceNeeded` (object) - `subStatus` (object) - `comments` (array,null) Gets or sets the comments associated with the ticket. - `comments.id` (string) Gets or sets the unique identifier for the comment. - `comments.text` (string,null) Gets or sets the text content of the comment. - `comments.createdDate` (string) Gets or sets the date and time when the comment was created. - `attachments` (array,null) Gets or sets the attachments associated with the ticket. - `attachments.id` (string) Gets or sets the unique identifier for the attachment. - `attachments.fileName` (string,null) Gets or sets the file name of the attachment. - `ticketCosts` (array,null) Gets or sets the list of ticket costs associated with the ticket. - `ticketCosts.phase` (string) Specifies the phase of ticket cost tracking, indicating whether the cost is estimated, planned, or actual. Enum: "estimated", "planned", "actual" - `ticketCosts.category` (string) Specifies the category of cost associated with a ticket, such as tools, materials, labor, or the total cost. Enum: "tool", "material", "labor", "total" - `ticketCosts.unit` (string,null) Gets or sets the unit of measurement associated with the value. - `ticketCosts.value` (number) Gets or sets the numeric value represented by this instance. ## Response 400 fields (application/json): - `type` (string,null) - `title` (string,null) - `status` (integer,null) - `detail` (string,null) - `instance` (string,null) - `errors` (object,null) ## Response 401 fields