Skip to content

User Guide FIT Trouble Ticket API

AG-FIT 621

Release 1.0.0 (Build 910) 2026-03-27 released

Release notes

Please see the version history for the list of changes in the last versions.

Version history

Description

The Trouble Ticket 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. Examples of Trouble Ticket API originators (clients) include CRM applications, network management or fault management systems, or other Trouble Ticket management systems (e.g. B2B). The API supports the ability to send requests to create a new trouble ticket specifying the nature and severity of the trouble or issue as well as all necessary related information. The API also includes mechanisms to search for and update existing trouble tickets. Notifications are defined to provide information when a trouble ticket has been updated, including status changes. A basic set of states of a trouble ticket has been specified (as an example) to handle trouble ticket lifecycle management.

Resources

-A trouble ticket represents a record, or an issue raised by requestor that need to be solved, used for reporting and managing the resolution of problems, incidents or request -Main trouble ticket attributes are its description, severity, type, related dates (creation, expected resolution, resolution), state and related information (change message and change date), related parties (originator, owner, reviser, etc.), related entities (product, product order, customer bill) and notes

Operations

-Retrieval of a trouble ticket or a collection of trouble ticket depending on filter criteria -Partial update of a trouble ticket -Creation of a trouble ticket

Notification of events on trouble ticket

-Trouble ticket state change -Trouble ticket attribute value change
-Trouble ticket created
-Trouble ticket Information required

Trouble Ticket API performs the following operations on trouble ticket specification

-Retrieval of a trouble ticket specification or a collection of trouble ticket specification depending on filter criteria -Partial update of a trouble ticket specification -Creation of a trouble ticket specification -Notification of events on trouble ticket specification: -Trouble ticket specification state change -Trouble ticket specification attribute value change -Trouble ticket specification delete (typically restricted to admin role) -Trouble ticket specification created

TMF API Reference

TMF API Reference : TMF - 621 Trouble Ticket

FIT Adaptations

TroubleTicket: - PATCH & DELETE are not used for FIT - Added Milestone / JeopardyAlert adapted to FIT requirements

TroubleTicketSpecification: POST, PATCH & DELETE are not used for FIT

Added Task resources: CancelTroubleTicket & InflightChangeTroubleTicket

TroubleTicket strongly-typed extension @FaultTicket: AgreementRefOrValue, TimeSlot, Appointment, faultDescriptionMessage, resolutionDisputeReason, expressFaultResolution, interimMessageRequested, endUserContactAllowed

Sources

The source API definition can be found at fit-tmf621.yaml

Documentation for API Endpoints

All URIs are relative to https://api.example.org/tmf-api/troubleTicketManagement/v5

Method HTTP request Description
createCancelTroubleTicket POST /cancelTroubleTicket Creates a CancelTroubleTicket
listCancelTroubleTicket GET /cancelTroubleTicket List or find CancelTroubleTicket objects
retrieveCancelTroubleTicket GET /cancelTroubleTicket/{id} Retrieves a CancelTroubleTicket by ID
createInflightChangeTroubleTicket POST /inflightChangeTroubleTicket Creates a InflightChangeTroubleTicket
listInflightChangeTroubleTicket GET /inflightChangeTroubleTicket List or find InflightChangeTroubleTicket objects
retrieveInflightChangeTroubleTicket GET /inflightChangeTroubleTicket/{id} Retrieves a InflightChangeTroubleTicket by ID
listenToCancelTroubleTicketStateChangeEvent POST /listener/cancelTroubleTicketStateChangeEvent Client listener for entity CancelTroubleTicketStateChangeEvent
listenToInflightChangeTroubleTicketStateChangeEvent POST /listener/inflightChangeTroubleTicketStateChangeEvent Client listener for entity InflightChangeTroubleTicketStateChangeEvent
listenToTroubleTicketJeopardyAlertEvent POST /listener/troubleTicketJeopardyAlertEvent Client listener for entity TroubleTicketJeopardyAlertEvent
listenToTroubleTicketMilestoneEvent POST /listener/troubleTicketMilestoneEvent Client listener for entity TroubleTicketMilestoneEvent
troubleTicketAttributeValueChangeEvent POST /listener/troubleTicketAttributeValueChangeEvent Client listener for entity TroubleTicketAttributeValueChangeEvent
troubleTicketCreateEvent POST /listener/troubleTicketCreateEvent Client listener for entity TroubleTicketCreateEvent
troubleTicketInformationRequiredEvent POST /listener/troubleTicketInformationRequiredEvent Client listener for entity TroubleTicketInformationRequiredEvent
troubleTicketResolvedEvent POST /listener/troubleTicketResolvedEvent Client listener for entity TroubleTicketResolvedEvent
troubleTicketSpecificationAttributeValueChangeEvent POST /listener/troubleTicketSpecificationAttributeValueChangeEvent Client listener for entity TroubleTicketSpecificationCreateEvent
troubleTicketSpecificationCreateEvent POST /listener/troubleTicketSpecificationCreateEvent Client listener for entity TroubleTicketSpecificationCreateEvent
troubleTicketSpecificationDeleteEvent POST /listener/troubleTicketSpecificationDeleteEvent Client listener for entity TroubleTicketSpecificationCreateEvent
troubleTicketSpecificationStatusChangeEvent POST /listener/troubleTicketSpecificationStatusChangeEvent Client listener for entity TroubleTicketSpecificationCreateEvent
troubleTicketStatusChangeEvent POST /listener/troubleTicketStatusChangeEvent Client listener for entity TroubleTicketStatusChangeEvent
createTroubleTicket POST /troubleTicket Creates a TroubleTicket
listTroubleTicket GET /troubleTicket List or find TroubleTicket objects
retrieveTroubleTicket GET /troubleTicket/{id} Retrieves a TroubleTicket by ID
listTroubleTicketSpecification GET /troubleTicketSpecification List or find TroubleTicketSpecification objects
retrieveTroubleTicketSpecification GET /troubleTicketSpecification/{id} Retrieves a TroubleTicketSpecification by ID

Documentation for Authorization

OAuth2ClientCredentials

  • Type: OAuth
  • Flow: clientCredentials

  • Token URL: https://auth.example.org/oauth2/token/

  • Scopes:
  • read: read objects
  • write: write objects

This API can be secured using OAuth 2.0. OAuth separates the authentication provider from the resource. The authorization server issues access tokens which are used to access the protected resource. This allows consumption of the API without sharing credentials with the API provider. OAuth 2.0 is implemented in various ways using flows. The most common flow for machine-to-machine interfaces is the Client Credentials flow. This is the flow used for this API. Below is a sequence diagram illustrating the Client Credentials flow.

Client Credentials Grant Flow

See also Api Authentifizierung

Sample use cases

Sample use cases can be found at Entstörauftrag

Managed Entity Resource Models

Trouble Ticket

A trouble ticket represents a record, or an issue raised by requestor that needs to be solved, used for reporting and managing the resolution of problems, incidents or request.

Lifecycle

Trouble Ticket lifecycle

TroubleTicketStatusType

Data type: enum of string

Possible values for the status of the trouble ticket

  • acknowledged: The acknowledged status is where an trouble ticket has been received and has passed message level validation (e. g. schema, conformance profile). The trouble ticket is stored and addressable.
  • rejected: The rejected status is where Invalid information is provided or the request fails to meet business rules
  • pending: The pending status is used when an trouble ticket is currently in a waiting stage for an action/activity to be completed before it can progress further. In situations where Buyer action is required, an “information required” notification will be issued on transition into this status.
  • held: The held status is (optional) used when an trouble ticket cannot be progressed due to an issue. Upon resolution of the issue, the trouble ticket will continue to progress
  • inProgress: The in progress status is where an trouble ticket has passed the Feasibility check successfully and troubleshooting has started.
  • cancelled: The cancelled status is where an trouble ticket has been successfully cancelled.
  • closed: The post-provisioning activities such as billing account update have been finalized. The trouble ticket is closed.TODO
  • resolved: The resolved status is used when the problem is resolved from the seller's point of view
  • failed: The problem is not resolved and the trouble ticket has failed.

Resource model

Trouble ticket diagramm

Field description

Complex types used can be viewed by following the linked type.

FaultTicket

Data type: TroubleTicket

Name Type Description Example
@type (1) string When sub-classing, this defines the sub-class Extensible name
orderPostedDate (1) DateTime Date when the order was posted by the requester 2023-01-01T08:00:00+01:00
ticketType (1) string
externalIdentifier (1) ExternalIdentifier [n..m]
agreement (1) AgreementRefOrValue [n..m] A reference to an agreement defined in the context of the product order null
@baseType string When sub-classing, this defines the super-class
@schemaLocation string A URI to a JSON-Schema file that defines additional attributes and relationships
id string Unique identifier 2d7ed5fd-9f62-4211-bc84-357f5f7b80f5
href URI Hyperlink reference https://api.example.org/resource/id
name string Name of the trouble ticket, typically a short description provided by the user that create the ticket null
description string
severity string The severity of the issue. Indicate the implication of the issue on the expected functionality e.g. of a system, application, service etc.. Severity values can be for example : Critical, Major, Minor null
attachment AttachmentRefOrValue [n..m] File(s) attached to the trouble ticket. e.g. picture of broken device, scaning of a bill or charge null
channel ChannelRef
creationDate DateTime The date on which the trouble ticket was created null
requestedResolutionDate DateTime The resolution date requested by the user null
expectedResolutionDate DateTime The expected resolution date determined by the trouble ticket system null
resolutionDate DateTime The date and time the trouble ticket was resolved null
lastUpdate DateTime The date and time that the trouble ticket was last updated null
note Note [n..m] The note(s) that are associated to the ticket. null
priority string The priority of the trouble ticket and how quickly the issue should be resolved. Example: Critical, High, Medium, Low. The value is set by the ticket management system considering the severity, ticket type etc... null
relatedEntity RelatedEntityRefOrValue [n..m] An entity that is related to the ticket such as a bill, a product, etc. The entity against which the ticket is associated. null
relatedParty RelatedPartyOrPartyRole [n..m] The related party(ies) that are associated to the ticket. null
status TroubleTicketStatusType
statusChangeDate DateTime The date and time the status changed. null
statusChangeMessage Message [n..m] Message for the status change described as a combination of a text and a code. null
statusChangeHistory StatusChange [n..m] The status change history that are associated to the ticket. Populated by the server null
troubleTicketRelationship TroubleTicketRelationship [n..m] A list of trouble ticket relationships (TroubleTicketRelationship [*]). Represents a relationship between trouble tickets null
troubleTicketCharacteristic Characteristic [n..m] List of characteristics of the trouble ticket null
troubleTicketJeopardyAlert TroubleTicketJeopardyAlert [n..m] List of TroubleTicketJeopardyAlerts. A TroubleTicketJeopardyAlert represents a predicted exception during a trouble ticket processing that would brings risk to resolve successfully the trouble ticket. null
troubleTicketMilestone TroubleTicketMilestone [n..m] List of TroubleTicketMilestones. A TroubleTicketMilestone represents an action or event marking a significant change or stage in processing of a trouble ticket. null
troubleTicketSpecification TroubleTicketSpecificationRef
ticketIsChargingRelevant boolean Boolean amended by the provider defining if the processing of the TroubleTicket is charging relevant false
accessLineId string Technical identifier for a physical connection DEU.DTAG.FTYLIQ7PFT
endUserContactAllowed boolean Defines if direct contact with end user is allowed null
endUserAppointmentIsNecessary boolean Defines if an appointment with the endUser is necessary null
expressFaultResolution ExpressFaultResolutionType
faultQuestionnaire QuestionAnswer [0..99] An array of questions and answers null
interimMessagesRequested boolean Defines if interim messages are requested to be provided null
networkTerminationLocation string Describes the location of the network termination in the building Flur
resolutionDisputeReason string Indicates the reason why the resolution of the trouble ticket is disputed null
requestedTimeSlot TimeSlot
appointment AppointmentRefOrValue
categoryId string Identifier of the trouble ticket category null
billingItem array Array/List of billing items null

JSON representation sample

We provide below the JSON representation of an example of a 'FaultTicket' resource object

{
  "$schema" : "https://bitbucket.org/fit-api/fit-api/raw/tmf621_v1.0.0/tmf621/ctk/json-schema/fit-tmf621.schema.json",
  "@type" : "FaultTicket_FVO",
  "description" : "Internetverbindung fällt mehrmals pro Tag aus",
  "orderPostedDate" : "2024-02-08T08:00:00+01:00",
  "ticketType" : "fault",
  "requestedResolutionDate" : "2024-03-08T00:00:00+01:00",
  "externalIdentifier" : [ {
    "@type" : "ExternalIdentifier",
    "id" : "1000222",
    "externalIdentifierType" : "troubleTicketExternalId",
    "owner" : "DEU.VFD"
  } ],
  "relatedEntity" : [ {
    "@type" : "RelatedEntityRefOrValue",
    "role" : "affectedProduct",
    "entity" : {
      "@type" : "EntityRef",
      "id" : "922ebf01-e930-47a0-842e-059d1f188a15",
      "@referredType" : "Product"
    }
  }, {
    "@type" : "RelatedEntityRefOrValue",
    "role" : "optionalServices",
    "entity" : {
      "@type" : "ProductOffering",
      "name" : "Ganzheitliche Entstörung"
    }
  }, {
    "@type" : "RelatedEntityRefOrValue",
    "role" : "diagnosis",
    "entity" : {
      "@type" : "EntityRef",
      "id" : "873ebg01-a930-47a0-842e-059d1f188b23",
      "@referredType" : "ProductTest"
    }
  } ],
  "relatedParty" : [ {
    "@type" : "RelatedPartyOrPartyRole",
    "role" : "orderManagementBuyerContact",
    "partyOrPartyRole" : {
      "@type" : "Individual",
      "contactMedium" : [ {
        "@type" : "PhoneContactMedium",
        "contactType" : "fixed",
        "phoneNumber" : "+49221456789"
      }, {
        "@type" : "PhoneContactMedium",
        "contactType" : "mobile",
        "phoneNumber" : "+4917754545454"
      }, {
        "@type" : "EmailContactMedium",
        "contactType" : "email",
        "emailAddress" : "j.kirk@example.net"
      } ],
      "familyName" : "Kirk",
      "salutation" : "Herr",
      "givenName" : "James T.",
      "title" : "Captain"
    }
  }, {
    "@type" : "RelatedPartyOrPartyRole",
    "role" : "installationContact",
    "partyOrPartyRole" : {
      "@type" : "Individual",
      "contactMedium" : [ {
        "@type" : "PhoneContactMedium",
        "contactType" : "fixed",
        "phoneNumber" : "+49221456790"
      }, {
        "@type" : "PhoneContactMedium",
        "contactType" : "mobile",
        "phoneNumber" : "+4917754545455"
      }, {
        "@type" : "EmailContactMedium",
        "contactType" : "email",
        "emailAddress" : "m.scott@example.net"
      } ],
      "familyName" : "Scott",
      "salutation" : "Herr",
      "givenName" : "Montgomery",
      "title" : "Lt. Cmdr."
    }
  } ],
  "accessLineId" : "DEU.DTAG.FTYLIQ7PFT",
  "agreement" : [ {
    "@type" : "Agreement",
    "name" : "buyerServiceContract",
    "engagedParty" : [ {
      "@type" : "Organization",
      "businessId" : "500011"
    } ],
    "businessId" : "500012",
    "agreementType" : "buyerServiceContract"
  }, {
    "@type" : "Agreement",
    "name" : "ordererServiceContract",
    "engagedParty" : [ {
      "@type" : "Organization",
      "businessId" : "500014"
    } ],
    "businessId" : "500013",
    "agreementType" : "ordererServiceContract"
  }, {
    "@type" : "Agreement",
    "name" : "singleContract",
    "businessId" : "555001",
    "agreementType" : "singleContract"
  } ],
  "endUserContactAllowed" : true,
  "expressFaultResolution" : "oneTime",
  "faultQuestionnaire" : [ {
    "questionId" : "DSL01",
    "answerId" : "DSL01-03"
  }, {
    "questionId" : "DSL04",
    "answerId" : "DSL04-02"
  } ],
  "interimMessagesRequested" : true,
  "networkTerminationLocation" : "Flur",
  "requestedTimeSlot" : {
    "@type" : "TimeSlot",
    "validFor" : {
      "startDateTime" : "2024-03-08T12:00:00+01:00",
      "endDateTime" : "2024-03-08T16:00:00+01:00"
    }
  },
  "categoryId" : "SABB"
}
To view more examples go to TMF621 examples

Task Resource Models

Lifecycle

Task resource lifecycle

TaskStateType

Data type: enum of string

Possible values for the state of a task are:

  • acknowledged: The acknowledged state is used if a task resource has been received and has passed message and basic business validations.
  • rejected: The task has been rejected during validation or processing.
  • inProgress: The InProgress state is used while the task is being processed.
  • done: The task has been completed and a result is available.

Cancel Trouble Ticket task resource

Resource model

Cancel Trouble Ticket diagramm

Field description

CancelTroubleTicket

Data type: TaskEntity

Request to cancel an existing trouble ticket

Name Type Description Example
@type (1) string When sub-classing, this defines the sub-class Extensible name
state (1) TaskStateType
requestDate (1) DateTime Date when the task resource was created 2023-01-01T08:00:00+01:00
requestPostedDate (1) DateTime Date when the request was posted 2023-01-01T08:00:00+01:00
entity (1) EntityRef
@baseType string When sub-classing, this defines the super-class
@schemaLocation string A URI to a JSON-Schema file that defines additional attributes and relationships
id string Unique identifier 2d7ed5fd-9f62-4211-bc84-357f5f7b80f5
href URI Hyperlink reference https://api.example.org/resource/id
troubleTicket TroubleTicketRef Explicit reference to the related TroubleTicket null
stateChangeDate DateTime The date and time the state changed. 2023-01-01T08:00:00+01:00
stateChangeMessage Message [n..m] Message for the state change described as a combination of a text and a code. []
stateChangeHistory StateChange [n..m] The state change history that is associated to the Entity. Populated by the server []
externalIdentifier ExternalIdentifier [n..m] A reference to an externally defined object in the context of the managed entity []

JSON representation sample

{
  "$schema" : "https://bitbucket.org/fit-api/fit-api/raw/tmf621_v1.0.0/tmf621/ctk/json-schema/fit-tmf621.schema.json",
  "@type" : "CancelTroubleTicket_FVO",
  "requestPostedDate" : "2022-05-11T10:30:00+02:00",
  "entity" : {
    "@type" : "TroubleTicketRef",
    "id" : "ac925eed-111b-4558-82e3-c48153c8c95c",
    "href" : "https://api.example.org/tmf-api/troubleTicketManagement/v5/troubleTicket/ac925eed-111b-4558-82e3-c48153c8c95c"
  }
}

Inflight Change Trouble Ticket task resource

Resource model

Inflight Change Trouble Ticket diagramm

Field description

InflightChangeTroubleTicket

Data type: TaskEntity

Request to change an existing trouble ticket in-flight

Name Type Description Example
@type (1) string When sub-classing, this defines the sub-class Extensible name
state (1) TaskStateType
requestDate (1) DateTime Date when the task resource was created 2023-01-01T08:00:00+01:00
requestPostedDate (1) DateTime Date when the request was posted 2023-01-01T08:00:00+01:00
entity (1) EntityRef
category (1) array Type of action to be performed with the task resource null
@baseType string When sub-classing, this defines the super-class
@schemaLocation string A URI to a JSON-Schema file that defines additional attributes and relationships
id string Unique identifier 2d7ed5fd-9f62-4211-bc84-357f5f7b80f5
href URI Hyperlink reference https://api.example.org/resource/id
troubleTicket TroubleTicketRef Explicit reference to the related TroubleTicket null
appointment AppointmentRefOrValue
buyerMessage InflightChangeTroubleTicket_allOf_buyerMessage
externalIdentifier ExternalIdentifier [n..m] A reference to an externally defined object in the context of the managed entity []
note Note [n..m] Note []
stateChangeDate DateTime The date and time the state changed. 2023-01-01T08:00:00+01:00
stateChangeHistory StateChange [n..m] The state change history that is associated to the Entity. Populated by the server []
stateChangeMessage Message [n..m] Message for the state change described as a combination of a text and a code. []
requestedResolutionDate DateTime The resolution date requested by the user null
requestedTimeSlot TimeSlot

JSON representation samples

Category reschedule

{
  "$schema" : "https://bitbucket.org/fit-api/fit-api/raw/tmf621_v1.0.0/tmf621/ctk/json-schema/fit-tmf621.schema.json",
  "@type" : "InflightChangeTroubleTicket_FVO",
  "requestPostedDate" : "2024-02-09T17:30:00+01:00",
  "entity" : {
    "@type" : "TroubleTicketRef",
    "id" : "ac925eed-111b-4558-82e3-c48153c8c95c",
    "href" : "https://api.example.org/tmf-api/troubleTicketManagement/v5/troubleTicket/ac925eed-111b-4558-82e3-c48153c8c95c"
  },
  "category" : [ "reschedule" ],
  "requestedResolutionDate" : "2024-03-09T00:00:00+01:00",
  "requestedTimeSlot" : {
    "@type" : "TimeSlot",
    "validFor" : {
      "startDateTime" : "2024-03-09T12:00:00+01:00",
      "endDateTime" : "2024-03-09T16:00:00+01:00"
    }
  }
}
Category add
{
  "$schema" : "https://bitbucket.org/fit-api/fit-api/raw/tmf621_v1.0.0/tmf621/ctk/json-schema/fit-tmf621.schema.json",
  "@type" : "InflightChangeTroubleTicket_FVO",
  "requestPostedDate" : "2024-10-24T10:32:00+02:00",
  "entity" : {
    "@type" : "TroubleTicketRef",
    "id" : "ac925eed-111b-4558-82e3-c48153c8c95c",
    "href" : "https://api.example.org/tmf-api/troubleTicketManagement/v5/troubleTicket/ac925eed-111b-4558-82e3-c48153c8c95c"
  },
  "buyerMessage" : {
    "code" : "7040",
    "text" : "Ergänzende Information zum Auftrag."
  },
  "category" : [ "add" ],
  "note" : [ {
    "@type" : "TroubleTicketRemark",
    "text" : "Note from Buyer to Seller"
  } ]
}

Notification Resource Models

Following notifications are defined for this API:

Notifications related to Trouble Ticket:

Notifications related to CancelTroubleTicket:

Notifications related to InflightChangeTroubleTicket:

Trouble Ticket Create Event

TroubleTicketCreateEvent

Data type: Event

Name Type Description Example
@type (1) string When sub-classing, this defines the sub-class Extensible name
eventId (1) string The identifier of the notification. 2d7ed5fd-9f62-4211-bc84-357f5f7b80f5
eventTime (1) DateTime Time of the event occurrence. 2023-01-01T08:00:00+01:00
eventType (1) string The type of the notification.
@baseType string When sub-classing, this defines the super-class
@schemaLocation string A URI to a JSON-Schema file that defines additional attributes and relationships
description string An explanatory of the event. Lorem ipsum dolor
timeOccurred DateTime The time the event occurred. 2023-01-01T08:00:00+01:00
source EntityRef Source Entity described by EntityRef null
reportingSystem EntityRef Reporting System described by EntityRef null
event TroubleTicketCreateEventPayload

Trouble Ticket Status Change Event

TroubleTicketStatusChangeEvent

Data type: Event

Name Type Description Example
@type (1) string When sub-classing, this defines the sub-class Extensible name
eventId (1) string The identifier of the notification. 2d7ed5fd-9f62-4211-bc84-357f5f7b80f5
eventTime (1) DateTime Time of the event occurrence. 2023-01-01T08:00:00+01:00
eventType (1) string The type of the notification.
@baseType string When sub-classing, this defines the super-class
@schemaLocation string A URI to a JSON-Schema file that defines additional attributes and relationships
description string An explanatory of the event. Lorem ipsum dolor
timeOccurred DateTime The time the event occurred. 2023-01-01T08:00:00+01:00
source EntityRef Source Entity described by EntityRef null
reportingSystem EntityRef Reporting System described by EntityRef null
event TroubleTicketStatusChangeEventPayload

JSON representation sample

Cancelled JSON example

Trouble Ticket Attribute Value Change Event

TroubleTicketAttributeValueChangeEvent

Data type: AttributeValueChangeEvent

Name Type Description Example
@type (1) string When sub-classing, this defines the sub-class Extensible name
eventId (1) string The identifier of the notification. 2d7ed5fd-9f62-4211-bc84-357f5f7b80f5
eventTime (1) DateTime Time of the event occurrence. 2023-01-01T08:00:00+01:00
eventType (1) string The type of the notification.
@baseType string When sub-classing, this defines the super-class
@schemaLocation string A URI to a JSON-Schema file that defines additional attributes and relationships
description string An explanatory of the event. Lorem ipsum dolor
timeOccurred DateTime The time the event occurred. 2023-01-01T08:00:00+01:00
source EntityRef Source Entity described by EntityRef null
reportingSystem EntityRef Reporting System described by EntityRef null
fieldPath FieldPath [n..m] Field path []
event TroubleTicketAttributeValueChangeEventPayload

JSON representation sample

Resolution Date JSON example

Trouble Ticket Information Required Event

TroubleTicketInformationRequiredEvent

Data type: Event

Name Type Description Example
@type (1) string When sub-classing, this defines the sub-class Extensible name
eventId (1) string The identifier of the notification. 2d7ed5fd-9f62-4211-bc84-357f5f7b80f5
eventTime (1) DateTime Time of the event occurrence. 2023-01-01T08:00:00+01:00
eventType (1) string The type of the notification.
@baseType string When sub-classing, this defines the super-class
@schemaLocation string A URI to a JSON-Schema file that defines additional attributes and relationships
description string An explanatory of the event. Lorem ipsum dolor
timeOccurred DateTime The time the event occurred. 2023-01-01T08:00:00+01:00
source EntityRef Source Entity described by EntityRef null
reportingSystem EntityRef Reporting System described by EntityRef null
fieldPath FieldPath [n..m] TODO null
event TroubleTicketInformationRequiredEventPayload

JSON representation sample

Requested completion date JSON example

Trouble Ticket Jeopardy Alert Event

TroubleTicketJeopardyAlertEvent

Data type: Event

TroubleTicketJeopardyAlertEvent generic structure

Name Type Description Example
@type (1) string When sub-classing, this defines the sub-class Extensible name
eventId (1) string The identifier of the notification. 2d7ed5fd-9f62-4211-bc84-357f5f7b80f5
eventTime (1) DateTime Time of the event occurrence. 2023-01-01T08:00:00+01:00
eventType (1) string The type of the notification.
@baseType string When sub-classing, this defines the super-class
@schemaLocation string A URI to a JSON-Schema file that defines additional attributes and relationships
description string An explanatory of the event. Lorem ipsum dolor
timeOccurred DateTime The time the event occurred. 2023-01-01T08:00:00+01:00
source EntityRef Source Entity described by EntityRef null
reportingSystem EntityRef Reporting System described by EntityRef null
event TroubleTicketJeopardyAlertEventPayload

Trouble Ticket Milestone Event

TroubleTicketMilestoneEvent

Data type: Event

TroubleTicketMilestoneEvent generic structure

Name Type Description Example
@type (1) string When sub-classing, this defines the sub-class Extensible name
eventId (1) string The identifier of the notification. 2d7ed5fd-9f62-4211-bc84-357f5f7b80f5
eventTime (1) DateTime Time of the event occurrence. 2023-01-01T08:00:00+01:00
eventType (1) string The type of the notification.
@baseType string When sub-classing, this defines the super-class
@schemaLocation string A URI to a JSON-Schema file that defines additional attributes and relationships
description string An explanatory of the event. Lorem ipsum dolor
timeOccurred DateTime The time the event occurred. 2023-01-01T08:00:00+01:00
source EntityRef Source Entity described by EntityRef null
reportingSystem EntityRef Reporting System described by EntityRef null
event TroubleTicketMilestoneEventPayload

JSON representation sample

Milestone JSON example

Cancel Trouble Ticket State Change Event

CancelTroubleTicketStateChangeEvent

Data type: Event

Name Type Description Example
@type (1) string When sub-classing, this defines the sub-class Extensible name
eventId (1) string The identifier of the notification. 2d7ed5fd-9f62-4211-bc84-357f5f7b80f5
eventTime (1) DateTime Time of the event occurrence. 2023-01-01T08:00:00+01:00
eventType (1) string The type of the notification.
@baseType string When sub-classing, this defines the super-class
@schemaLocation string A URI to a JSON-Schema file that defines additional attributes and relationships
description string An explanatory of the event. Lorem ipsum dolor
timeOccurred DateTime The time the event occurred. 2023-01-01T08:00:00+01:00
source EntityRef Source Entity described by EntityRef null
reportingSystem EntityRef Reporting System described by EntityRef null
event CancelTroubleTicketStateChangeEventPayload

JSON representation sample

Inflight Change Trouble Ticket State Change Event

InflightChangeTroubleTicketStateChangeEvent

Data type: Event

Name Type Description Example
@type (1) string When sub-classing, this defines the sub-class Extensible name
eventId (1) string The identifier of the notification. 2d7ed5fd-9f62-4211-bc84-357f5f7b80f5
eventTime (1) DateTime Time of the event occurrence. 2023-01-01T08:00:00+01:00
eventType (1) string The type of the notification.
@baseType string When sub-classing, this defines the super-class
@schemaLocation string A URI to a JSON-Schema file that defines additional attributes and relationships
description string An explanatory of the event. Lorem ipsum dolor
timeOccurred DateTime The time the event occurred. 2023-01-01T08:00:00+01:00
source EntityRef Source Entity described by EntityRef null
reportingSystem EntityRef Reporting System described by EntityRef null
event InflightChangeTroubleTicketStateChangeEventPayload

JSON representation sample for reschedule Trouble Ticket

In Progress JSON example

Validation using Conformance Profile

A Conformance Profile is supplied in the form of a JSON Schema (see fit-tmf621.schema.json).

The following rules are checked:

  • Mandatory attribute,
  • Mandatory attribute if the optional parent attribute is present,
  • Mandatory/Non-mandatory attribute, depending on further conditions

Where a resource is an input into an API (e.g. POST), Mandatory means that the attribute value must be supplied by the API consumer in the input and must not be blank or null

Where a resource is an output from an API (e.g. GET, POST), Mandatory means that the attribute value must be supplied by the API provider in the output and must not be blank or null.