Enate Forum Home

Enate Ticket API

Kindly please could you provide some assistance I’m trying to create a ticket with the API in our play environment.

Q1) Please could you get your development team to give the best process for creating a ticket using the swagger API?

Q2) Also I have reverse engineered the front end calls to create a ticket and it seems pretty interesting ? it uses undocumented API calls to internal methods? Is this the only/ best way or is there a better solution (possibly answered by Q1)

Steps to create enate Ticket:

Establish the entity for the current contact!

[https://enate.community/GWW/webapi/Entity/GetEntityDetails?entityGUID=8520d9e2-0a16-4826-96e1-d32ab91e99d7&authToken=RemovedByModerator]

We then need to create a packet with the method call handle:

POST to [https://enate.community/GWW/WebAPI/Packet/CreatePacket]

{“ProcessVersionInstanceGUID”:“a8f5b391-d6ae-45c6-8c6a-93fff1f507e0”,“RequesterEntityGUID”:“8520d9e2-0a16-4826-96e1-d32ab91e99d7”,“TestingPacket”:false,“StartMethod”:“CallHandling”}

Enate then searches for the packet with 2 blank spaces and dots by due date asc false

[https://enate.community/GWW/Services/CallHandlingPageService.svc/GetPacketsRelatedToEntity?entityGUID="8520d9e2-0a16-4826-96e1-d32ab91e99d7"&testing=false&packetsStatesToDisplay=0&requestID=2&pageIndex=0&fetchPageCount=true&sortColumnKey="DueDate"&sortAscending=false&searchText=""]

This returns enough context to send create tab with : (which may or may not create the ticket?)

{“Name”:“100159-T - No title”,“URL”:"",“active”:false,“loaded”:false,“Order”:4,“QueryString”:“CaseflowPacketGUID=6cdf867d-f040-e911-aa0f-a26f53a910e2”,“params”:{“CaseflowPacketGUID”:“6cdf867d-f040-e911-aa0f-a26f53a910e2”,“Testing”:false},“PageType”:5,“viewUrl”:“views/CaseflowPacket.html”,“isCaseflowDisplayPacket”:true,“PacketGUID”:“6cdf867d-f040-e911-aa0f-a26f53a910e2”,“caseflowPacketGUID”:“6cdf867d-f040-e911-aa0f-a26f53a910e2”}

Enate then gets contxt with get case flow packet

[https://enate.community/GWW/WebAPI/packet/GetCaseflowPacket?caseflowPacketGUID=6cdf867d-f040-e911-aa0f-a26f53a910e2]

Described on swagger as :

The actual object returned will be one ActionPacket {eNate.Enable.DataAccessLayer.DTOs.ActionPacket}, CasePacket {eNate.Enable.DataAccessLayer.DTOs.CasePacket} or TicketPacket {eNate.Enable.DataAccessLayer.DTOs.TicketPacket}.All date/time values are passed in the Timezone of the User as set on their Profile.

Parameters :

Parameter Value Description Parameter Type Data Type

caseflowPacketGUID

6cdf867d-f040-e911-aa0f-a26f53a910e2

The unique identifier of the Action, Case or Ticket.

Calling this with peramiter ID gives me the ticket information

Many Thanks ,

Chris

Hi Chris

Though you are right the Packet/CreatePacket API creates a ticket.

But you need not go for a un-documented API (which can change anytime) you can use this below API which is open and documented. Go through it and let me know if you need anymore help

Please could you provide an end to end example ?
I did try the Ticket Create Ticket but could not get it to work ?

I used get ticket to get the information as follows :

Response Body

{
  "SplitTickets": null,
  "Defects": [],
  "ScheduledFollowUpOn": null,
  "TicketWaitMaximumDuration": 0,
  "CloseIfNoResponseReceived": false,
  "Description": "",
  "ShortDescription": "",
  "Status": 0,
  "StatusDescription": "In progress",
  "ReadOnly": true,
  "DoNotSendEmails": false,
  "TicketStartedMethod": "Call Handling",
  "TicketStartedPacket": null,
  "CancellationReason": "",
  "CancellationRequestedBy": null,
  "CancellationRequestedOn": null,
  "ResolutionDetails": "",
  "CompletedBy": null,
  "ResolvedOn": null,
  "RelatedPacket": null,
  "TicketAttribute": null,
  "StartableCaseCount": 9,
  "TimeoutDate": null,
  "StateChangedOn": "2019-04-15T15:15:22.803",
  "AffectedRecordCount": 1,
  "CalculatedDueDate": "0001-01-01T00:00:00",
  "Contacts": [
    {
      "Employee": {
        "EntityGUID": "8520d9e2-0a16-4826-96e1-d32ab91e99d7",
        "GUID": "f8aac695-4734-48c5-a856-dff28c217f8e",
        "FullName": "Frederic Duval",
        "EmailAddress": "Frederic.Duval@enate.community",
        "HasProfilePicture": false,
        "UserType": 2
      },
      "ExternalContact": null,
      "Tags": [
        {
          "GUID": "a91fc149-6df1-4c08-aa8d-261fec55fb0d",
          "Name": "Original Requester"
        },
        {
          "GUID": "e78c40cd-af9e-4e36-964d-517afd12cb25",
          "Name": "Requester"
        },
        {
          "GUID": "be503445-95e0-4d08-ac1a-7be063f20f8d",
          "Name": "Primary Contact"
        },
        {
          "GUID": "86aa8274-19e7-4b8a-98bb-81c81de53693",
          "Name": "Subject"
        }
      ],
      "EmailAddress": "Frederic.Duval@enate.community",
      "EntityGUID": "8520d9e2-0a16-4826-96e1-d32ab91e99d7",
      "UserGUID": "f8aac695-4734-48c5-a856-dff28c217f8e"
    }
  ],
  "ContractGUID": "46c0278c-6d2c-450c-99ff-778fa8f86bf0",
  "CustomerGUID": "5779fbc1-9e85-4abc-a526-1b3c07c9f0e4",
  "DataFields": {},
  "Files": [],
  "KeepWithMeUser": null,
  "NewInformationReceived": false,
  "NewInformationReceivedOn": null,
  "OverrideDueDate": null,
  "OverrideDueDateSet": false,
  "ParentPacket": null,
  "ProcessAttributeObjectGUID": "00000000-0000-0000-0000-000000000000",
  "ProcessVersionInstanceGUID": "a8f5b391-d6ae-45c6-8c6a-93fff1f507e0",
  "ServiceGUID": "c3af32d3-b013-46d0-8bc8-9c93b0662b1a",
  "IsContactsMandatory": true,
  "OpenPacketActivityGUID": "7c0977e4-5766-4a60-8bb9-746782fcfb31",
  "OpenDuration": 0,
  "OpenManualDuration": null,
  "GUID": "6cdf867d-f040-e911-aa0f-a26f53a910e2",
  "CustomerName": "Harrisons James Limited",
  "ContractName": "France",
  "ServiceName": "L & P Simon",
  "ProcessName": "Ticket",
  "CurrentPacketTaskGUID": "00000000-0000-0000-0000-000000000000",
  "Reference": "100159-T",
  "Title": null,
  "QueueName": null,
  "CurrentCustomState": "In progress",
  "StartDate": "2019-04-15T15:15:22.793",
  "DueDate": null,
  "EndDate": null,
  "RAGStatus": null,
  "RAGStatusDescription": "",
  "LastUpdatedByUserDate": null,
  "UpdatedTime": "2019-04-15T15:15:22.793",
  "OpenedByAssignedUser": false,
  "State": 0,
  "StateDescription": "Process not started",
  "ProcessType": 2,
  "ProcessTypeDescription": "Ticket",
  "ProcessSubType": 0,
  "ProcessSubTypeDescription": "Other",
  "IsAssignedToMe": true,
  "IsWaitingForMe": false,
  "HasNotifications": false,
  "HasAttachments": false,
  "LastAccessedByMe": null,
  "CurrentTaskName": null,
  "AssignedToUser": {
    "EntityGUID": "5c3b308a-0df3-47eb-9944-16e57a2d71d7",
    "GUID": "e719879e-9e1f-4b25-bcac-d331cf90730d",
    "FullName": "REDACTED",
    "EmailAddress": "REDACTED",
    "HasProfilePicture": false,
    "UserType": 1
  },
  "OwnerUser": null,
  "LastUpdatedByUser": null,
  "StarterUser": {
    "EntityGUID": "5c3b308a-0df3-47eb-9944-16e57a2d71d7",
    "GUID": "e719879e-9e1f-4b25-bcac-d331cf90730d",
    "FullName": "REDACTED",
    "EmailAddress": "REDACTED",
    "HasProfilePicture": false,
    "UserType": 1
  }
}

I then populated the swagger with the following :

Hi Chris,

As reference document for API documentation can be found under below link (Refer to Enate Integration Guide) Useful Documents .

Page 55 on this explains how to create work item in Enate.

Ok thanks , ill attempt by following the information in the documentation PDF.

There does however seem to be missing API calls on the swagger ? :

Overview of API’s called and the order required.
• GetContexts (OK)
• GetTicketCategories (OK)
• GetTicketAttribute(not there)
• CreatePacket (not there)
• GetTicket (OK)
• SearchForContact (Ok)
• UpdateTicket (ok)