Overview

  • The TMF621 API provides a standardized client interface to Trouble Ticket Management Systems for creating, tracking, and managing trouble tickets as a result of an issue or problem identified by a customer or another system.
  • Following block diagram provides a high-level overview of how the various components are involved in handling TMF 621 API operations (GET, POST).

TMF621 Components

  • Consider you have purchased a new service. You can create a new ticket from an external system to log an issue (POST). You can also check the status of the created ticket or access all the tickets from the system (GET).

In general, we can consider the various use cases listed based on the operation you want to perform.

It is assumed that you have completed the following.

Following block diagram provides a sequence of operations involved. Sequence

NOTE:

I want to
Request Type
Example URL
Retrieve and display details of a particular caseNumber.GET by ID{{orgendpoint}}/services/data/{{version}}/connect/comms/troubleticket/v5/troubleticket/{caseNumber}

NOTE: 
For invalid case ID, you will receive HTTP 404 error.
List all the tickets present in the system.GET List
{{orgendpoint}}/services/data/{{version}}/connect/comms/troubleticket/v5/troubleticket
List all the tickets present in the system based on the provided field values.GET with Fields
{{orgendpoint}}/services/data/{{version}}/connect/comms/troubleticket/v5/troubleticket?fields=name,status,description,priority,ticketType

NOTE: 
The requested fields will be part of output, if they have value.
List all the tickets present in the system based on the filter applied.GET with Filters
{{orgendpoint}}/services/data/{{version}}/connect/comms/troubleticket/v5/troubleticket?status=Working&fields=priority,status,name,ticketType

NOTE: 
The requested fields will be part of output, if they have value.
List tickets, limit the number of tickets to a maximum of specified limit, and display results from the page specified by offset.GET with Pagination
{{orgendpoint}}/services/data/{{version}}/connect/comms/troubleticket/v5/troubleticket?pageLimit=1&offset=1
Create a new ticket by providing the required details.POST
{{orgendpoint}}/services/data/{{version}}/connect/comms/troubleticket/v5/troubleticket
Delete a ticket.DELETE{{orgendpoint}}/services/data/{{version}}/connect/comms/troubleticket/v5/troubleticket/{caseNumber}

Consider you want to retrieve details of a particular case. For example, caseNumber = 00001022. NOTE: CaseNumber is the unique identifier.

https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v62.0/connect/comms/troubleticket/v5/troubleticket/00001002

Consider there are multiple tickets in the system and you want to list all of them.

https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v62.0/connect/comms/troubleticket/v5/troubleticket

Consider you want to retrieve all the tickets by applying the requested fields. The requested fields will be part of output if they are have value. Following fields are available for selection.

  • name
  • status
  • description
  • priority
  • ticketType

https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v62.0/connect/comms/troubleticket/v5/troubleticket?fields=name,status,description,priority,ticketType

The fields id, href, and @type are always present in the response.

Consider you want to retrieve all the tickets present in the system with filtering supported for following fields.

  • status
  • priority
  • ticketType

https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v62.0/connect/comms/troubleticket/v5/troubleticket?status=Working&fields=priority,status,name,ticketType

Consider you want to retrieve list of tickets and apply required pagination query.

https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v62.0/connect/comms/troubleticket/v5/troubleticket?pageLimit=1&offset=2

NOTE: If the total tickets are 22, the above pagination query pageLimit=1&offset=2 will start display from page 3 by skipping 2 records and each page will contain 1 record.

Consider you want to create a new ticket.

Prerequisites These are the prerequisites for the POST operation.

  • These are mandatory fields. You need to specify the values for the following the mandatory fields.
    • description
    • ticketType
    • severity
  • Define picklist values for CaseTroubleTicket.Severity and for the fields ticketType, status, priority, and origin in Case entity. The values passed for these attributes in post payload must be present in the system. These will not be validated.
  • The field CaseNumber is the unique identifier.
  • For Account/Contact/Asset, reference is their Salesforce ID.
  • Enable FLS read/edit for all the Case resource fields for the User Profile.

https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v62.0/connect/comms/troubleticket/v5/troubleticket

Consider you want to delete details of a particular trouble ticket.

https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v62.0/connect/comms/troubleticket/v5/troubleticket/00001002

No request body.

Status code 204 with no response body