openapi: 3.1.0
info:
title: FIT-Trouble Ticket
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](https://bitbucket.org/fit-api/fit-api/src/tmf621_v1.0.0/tmf621/oas/fit-tmf621.yaml)
version: '1.0.0'
servers:
- url: https://api.example.org/tmf-api/troubleTicketManagement/v5
- url: http://localhost:8080/tmf-api/troubleTicketManagement/v5
security:
- OAuth2ClientCredentials:
- read
- write
tags:
- name: troubleTicket
description: Operations for TroubleTicket Resource
- name: troubleTicketSpecification
description: Operations for TroubleTicketSpecification Resource
- name: inflightChangeTroubleTicket
description: Operations for InflightChangeTroubleTicket Resource
- name: cancelTroubleTicket
description: Operations for CancelTroubleTicket Resource
- name: notification listener
description: Notifications for Resource Lifecycle and event notifications
paths:
/troubleTicket:
get:
operationId: listTroubleTicket
summary: List or find TroubleTicket objects
description: This operation retrieves a TroubleTicket entity. Attribute selection enabled for all first level attributes.
parameters:
- $ref: '#/components/parameters/Fields'
- $ref: '#/components/parameters/Offset'
- $ref: '#/components/parameters/Limit'
responses:
'200':
$ref: '#/components/responses/200TroubleTicketArray'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'405':
$ref: '#/components/responses/405'
'500':
$ref: '#/components/responses/500'
'501':
$ref: '#/components/responses/501'
'503':
$ref: '#/components/responses/503'
security:
- OAuth2ClientCredentials:
- read
tags:
- troubleTicket
post:
operationId: createTroubleTicket
summary: Creates a TroubleTicket
description: This operation creates a TroubleTicket entity.
parameters:
- $ref: '#/components/parameters/Fields'
requestBody:
$ref: '#/components/requestBodies/TroubleTicket_FVO'
responses:
'201':
$ref: '#/components/responses/201TroubleTicket'
'202':
$ref: '#/components/responses/202'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'405':
$ref: '#/components/responses/405'
'409':
$ref: '#/components/responses/409'
'500':
$ref: '#/components/responses/500'
'501':
$ref: '#/components/responses/501'
'503':
$ref: '#/components/responses/503'
security:
- OAuth2ClientCredentials:
- write
tags:
- troubleTicket
/troubleTicket/{id}:
get:
operationId: retrieveTroubleTicket
summary: Retrieves a TroubleTicket by ID
description: List or find TroubleTicket objects
parameters:
- $ref: '#/components/parameters/Id'
- $ref: '#/components/parameters/Fields'
responses:
'200':
$ref: '#/components/responses/200TroubleTicket_Get'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'405':
$ref: '#/components/responses/405'
'500':
$ref: '#/components/responses/500'
'501':
$ref: '#/components/responses/501'
'503':
$ref: '#/components/responses/503'
security:
- OAuth2ClientCredentials:
- read
tags:
- troubleTicket
/inflightChangeTroubleTicket:
get:
operationId: listInflightChangeTroubleTicket
summary: List or find InflightChangeTroubleTicket objects
description: List or find InflightChangeTroubleTicket objects
parameters:
- $ref: '#/components/parameters/Fields'
- $ref: '#/components/parameters/Offset'
- $ref: '#/components/parameters/Limit'
responses:
'200':
$ref: '#/components/responses/200InflightChangeTroubleTicketArray'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'405':
$ref: '#/components/responses/405'
'500':
$ref: '#/components/responses/500'
'501':
$ref: '#/components/responses/501'
'503':
$ref: '#/components/responses/503'
security:
- OAuth2ClientCredentials:
- read
tags:
- inflightChangeTroubleTicket
post:
operationId: createInflightChangeTroubleTicket
summary: Creates a InflightChangeTroubleTicket
description: This operation creates a InflightChangeTroubleTicket entity.
parameters:
- $ref: '#/components/parameters/Fields'
requestBody:
$ref: '#/components/requestBodies/InflightChangeTroubleTicket_FVO'
responses:
'201':
$ref: '#/components/responses/201InflightChangeTroubleTicket'
'202':
$ref: '#/components/responses/202'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'405':
$ref: '#/components/responses/405'
'409':
$ref: '#/components/responses/409'
'500':
$ref: '#/components/responses/500'
'501':
$ref: '#/components/responses/501'
'503':
$ref: '#/components/responses/503'
security:
- OAuth2ClientCredentials:
- write
tags:
- inflightChangeTroubleTicket
/inflightChangeTroubleTicket/{id}:
get:
operationId: retrieveInflightChangeTroubleTicket
summary: Retrieves a InflightChangeTroubleTicket by ID
description: |-
This operation retrieves a InflightChangeTroubleTicket entity. Attribute selection enabled for all first
level attributes.
parameters:
- $ref: '#/components/parameters/Id'
- $ref: '#/components/parameters/Fields'
responses:
'200':
$ref: '#/components/responses/200InflightChangeTroubleTicket_Get'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'405':
$ref: '#/components/responses/405'
'500':
$ref: '#/components/responses/500'
'501':
$ref: '#/components/responses/501'
'503':
$ref: '#/components/responses/503'
security:
- OAuth2ClientCredentials:
- read
tags:
- inflightChangeTroubleTicket
/cancelTroubleTicket:
get:
operationId: listCancelTroubleTicket
summary: List or find CancelTroubleTicket objects
description: List or find CancelTroubleTicket objects
parameters:
- $ref: '#/components/parameters/Fields'
- $ref: '#/components/parameters/Offset'
- $ref: '#/components/parameters/Limit'
responses:
'200':
$ref: '#/components/responses/200CancelTroubleTicketArray'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'405':
$ref: '#/components/responses/405'
'500':
$ref: '#/components/responses/500'
'501':
$ref: '#/components/responses/501'
'503':
$ref: '#/components/responses/503'
security:
- OAuth2ClientCredentials:
- read
tags:
- cancelTroubleTicket
post:
operationId: createCancelTroubleTicket
summary: Creates a CancelTroubleTicket
description: This operation creates a CancelTroubleTicket entity.
parameters:
- $ref: '#/components/parameters/Fields'
requestBody:
$ref: '#/components/requestBodies/CancelTroubleTicket_FVO'
responses:
'201':
$ref: '#/components/responses/201CancelTroubleTicket'
'202':
$ref: '#/components/responses/202'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'405':
$ref: '#/components/responses/405'
'409':
$ref: '#/components/responses/409'
'500':
$ref: '#/components/responses/500'
'501':
$ref: '#/components/responses/501'
'503':
$ref: '#/components/responses/503'
security:
- OAuth2ClientCredentials:
- write
tags:
- cancelTroubleTicket
/cancelTroubleTicket/{id}:
get:
operationId: retrieveCancelTroubleTicket
summary: Retrieves a CancelTroubleTicket by ID
description: |-
This operation retrieves a CancelTroubleTicket entity. Attribute selection enabled for all first
level attributes.
parameters:
- $ref: '#/components/parameters/Id'
- $ref: '#/components/parameters/Fields'
responses:
'200':
$ref: '#/components/responses/200CancelTroubleTicket_Get'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'405':
$ref: '#/components/responses/405'
'500':
$ref: '#/components/responses/500'
'501':
$ref: '#/components/responses/501'
'503':
$ref: '#/components/responses/503'
security:
- OAuth2ClientCredentials:
- read
tags:
- cancelTroubleTicket
/listener/troubleTicketCreateEvent:
post:
operationId: troubleTicketCreateEvent
summary: Client listener for entity TroubleTicketCreateEvent
description: Example of a client listener for receiving the notification TroubleTicketCreateEvent
requestBody:
$ref: '#/components/requestBodies/TroubleTicketCreateEvent'
responses:
'204':
$ref: '#/components/responses/204Notified'
default:
$ref: '#/components/responses/DefaultError'
security:
- OAuth2ClientCredentials:
- write
tags:
- notification listener
/listener/troubleTicketAttributeValueChangeEvent:
post:
operationId: troubleTicketAttributeValueChangeEvent
summary: Client listener for entity TroubleTicketAttributeValueChangeEvent
description: Example of a client listener for receiving the notification TroubleTicketAttributeValueChangeEvent
requestBody:
$ref: '#/components/requestBodies/TroubleTicketAttributeValueChangeEvent'
responses:
'204':
$ref: '#/components/responses/204Notified'
default:
$ref: '#/components/responses/DefaultError'
security:
- OAuth2ClientCredentials:
- write
tags:
- notification listener
/listener/troubleTicketStatusChangeEvent:
post:
operationId: troubleTicketStatusChangeEvent
summary: Client listener for entity TroubleTicketStatusChangeEvent
description: Example of a client listener for receiving the notification TroubleTicketStatusChangeEvent
requestBody:
$ref: '#/components/requestBodies/TroubleTicketStatusChangeEvent'
responses:
'204':
$ref: '#/components/responses/204Notified'
default:
$ref: '#/components/responses/DefaultError'
security:
- OAuth2ClientCredentials:
- write
tags:
- notification listener
/listener/inflightChangeTroubleTicketStateChangeEvent:
post:
operationId: listenToInflightChangeTroubleTicketStateChangeEvent
summary: Client listener for entity InflightChangeTroubleTicketStateChangeEvent
description: Example of a client listener for receiving notification InflightChangeTroubleTicketStateChangeEvent
requestBody:
$ref: '#/components/requestBodies/InflightChangeTroubleTicketStateChangeEvent'
responses:
'204':
$ref: '#/components/responses/204Notified'
default:
$ref: '#/components/responses/DefaultError'
security:
- OAuth2ClientCredentials:
- write
tags:
- notification listener
/listener/cancelTroubleTicketStateChangeEvent:
post:
operationId: listenToCancelTroubleTicketStateChangeEvent
summary: Client listener for entity CancelTroubleTicketStateChangeEvent
description: Example of a client listener for receiving notification CancelTroubleTicketStateChangeEvent
requestBody:
$ref: '#/components/requestBodies/CancelTroubleTicketStateChangeEvent'
responses:
'204':
$ref: '#/components/responses/204Notified'
default:
$ref: '#/components/responses/DefaultError'
security:
- OAuth2ClientCredentials:
- write
tags:
- notification listener
/listener/troubleTicketResolvedEvent:
post:
operationId: troubleTicketResolvedEvent
summary: Client listener for entity TroubleTicketResolvedEvent
description: Example of a client listener for receiving the notification TroubleTicketResolvedEvent
requestBody:
$ref: '#/components/requestBodies/TroubleTicketResolvedEvent'
responses:
'204':
$ref: '#/components/responses/204Notified'
default:
$ref: '#/components/responses/DefaultError'
security:
- OAuth2ClientCredentials:
- write
tags:
- notification listener
/listener/troubleTicketInformationRequiredEvent:
post:
operationId: troubleTicketInformationRequiredEvent
summary: Client listener for entity TroubleTicketInformationRequiredEvent
description: Example of a client listener for receiving the notification TroubleTicketInformationRequiredEvent
requestBody:
$ref: '#/components/requestBodies/TroubleTicketInformationRequiredEvent'
responses:
'204':
$ref: '#/components/responses/204Notified'
default:
$ref: '#/components/responses/DefaultError'
security:
- OAuth2ClientCredentials:
- write
tags:
- notification listener
/listener/troubleTicketMilestoneEvent:
post:
operationId: listenToTroubleTicketMilestoneEvent
summary: Client listener for entity TroubleTicketMilestoneEvent
description: Example of a client listener for receiving the notification TroubleTicketMilestoneEvent
requestBody:
$ref: '#/components/requestBodies/TroubleTicketMilestoneEvent'
responses:
'204':
$ref: '#/components/responses/204Notified'
default:
$ref: '#/components/responses/DefaultError'
security:
- OAuth2ClientCredentials:
- write
tags:
- notification listener
/listener/troubleTicketJeopardyAlertEvent:
post:
operationId: listenToTroubleTicketJeopardyAlertEvent
summary: Client listener for entity TroubleTicketJeopardyAlertEvent
description: Example of a client listener for receiving the notification TroubleTicketJeopardyAlertEvent
requestBody:
$ref: '#/components/requestBodies/TroubleTicketJeopardyAlertEvent'
responses:
'204':
$ref: '#/components/responses/204Notified'
default:
$ref: '#/components/responses/DefaultError'
security:
- OAuth2ClientCredentials:
- write
tags:
- notification listener
/troubleTicketSpecification:
get:
operationId: listTroubleTicketSpecification
summary: List or find TroubleTicketSpecification objects
description: |-
This operation retrieves a TroubleTicketSpecification entity. Attribute selection enabled
for all first level attributes.
parameters:
- $ref: '#/components/parameters/Fields'
- $ref: '#/components/parameters/Offset'
- $ref: '#/components/parameters/Limit'
responses:
'200':
$ref: '#/components/responses/200TroubleTicketSpecificationArray'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'405':
$ref: '#/components/responses/405'
'500':
$ref: '#/components/responses/500'
'501':
$ref: '#/components/responses/501'
'503':
$ref: '#/components/responses/503'
security:
- OAuth2ClientCredentials:
- read
tags:
- troubleTicketSpecification
/troubleTicketSpecification/{id}:
get:
operationId: retrieveTroubleTicketSpecification
summary: Retrieves a TroubleTicketSpecification by ID
description: List or find TroubleTicketSpecification objects
parameters:
- $ref: '#/components/parameters/Id'
responses:
'200':
$ref: '#/components/responses/200TroubleTicketSpecification_Get'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'405':
$ref: '#/components/responses/405'
'500':
$ref: '#/components/responses/500'
'501':
$ref: '#/components/responses/501'
'503':
$ref: '#/components/responses/503'
security:
- OAuth2ClientCredentials:
- read
tags:
- troubleTicketSpecification
/listener/troubleTicketSpecificationCreateEvent:
post:
operationId: troubleTicketSpecificationCreateEvent
summary: Client listener for entity TroubleTicketSpecificationCreateEvent
description: |-
Example of a client listener for receiving the notification
TroubleTicketSpecificationCreateEvent
requestBody:
$ref: '#/components/requestBodies/TroubleTicketSpecificationCreateEvent'
responses:
'204':
$ref: '#/components/responses/204Notified'
default:
$ref: '#/components/responses/DefaultError'
security:
- OAuth2ClientCredentials:
- write
tags:
- notification listener
/listener/troubleTicketSpecificationAttributeValueChangeEvent:
post:
operationId: troubleTicketSpecificationAttributeValueChangeEvent
summary: Client listener for entity TroubleTicketSpecificationCreateEvent
description: |-
Example of a client listener for receiving the notification
TroubleTicketSpecificationAttributeValueChangeEvent
requestBody:
$ref: '#/components/requestBodies/TroubleTicketSpecificationAttributeValueChangeEvent'
responses:
'204':
$ref: '#/components/responses/204Notified'
default:
$ref: '#/components/responses/DefaultError'
security:
- OAuth2ClientCredentials:
- write
tags:
- notification listener
/listener/troubleTicketSpecificationStatusChangeEvent:
post:
operationId: troubleTicketSpecificationStatusChangeEvent
summary: Client listener for entity TroubleTicketSpecificationCreateEvent
description: |-
Example of a client listener for receiving the notification
TroubleTicketSpecificationStatusChangeEvent
requestBody:
$ref: '#/components/requestBodies/TroubleTicketSpecificationStatusChangeEvent'
responses:
'204':
$ref: '#/components/responses/204Notified'
default:
$ref: '#/components/responses/DefaultError'
security:
- OAuth2ClientCredentials:
- write
tags:
- notification listener
/listener/troubleTicketSpecificationDeleteEvent:
post:
operationId: troubleTicketSpecificationDeleteEvent
summary: Client listener for entity TroubleTicketSpecificationCreateEvent
description: |-
Example of a client listener for receiving the notification
TroubleTicketSpecificationDeleteEvent
requestBody:
$ref: '#/components/requestBodies/TroubleTicketSpecificationDeleteEvent'
responses:
'204':
$ref: '#/components/responses/204Notified'
default:
$ref: '#/components/responses/DefaultError'
security:
- OAuth2ClientCredentials:
- write
tags:
- notification listener
components:
schemas:
TroubleTicketRemark:
description: Specialization of Note
allOf:
- $ref: '#/components/schemas/Note'
- type: object
discriminator:
propertyName: '@type'
mapping:
TroubleTicketRemark: '#/components/schemas/TroubleTicketRemark'
ChannelRef:
description: The channel to which the resource reference to. e.g. channel for selling product offerings, channel for opening a trouble ticket etc..
type: object
allOf:
- $ref: '#/components/schemas/EntityRef'
discriminator:
propertyName: '@type'
mapping:
ChannelRef: '#/components/schemas/ChannelRef'
QuestionAnswer:
description: An object defined as a combination of a question and an answer.
type: object
properties:
questionId:
description: The ID of a question from a question/answer catalog
type: string
example: DSL01
answerId:
description: The ID of an answer from a question/answer catalog
type: string
example: DSL01-01
ExpressFaultResolutionType:
description: |-
Possible values for the express resolution selection:
- *standard*: TODO
- *oneTime*: TODO
- *none*: TODO
type: string
enum:
- standard
- oneTime
- none
FaultTicket:
allOf:
- $ref: '#/components/schemas/TroubleTicket'
- type: object
description: A specific type of trouble ticket is a record of a fault on a product
required:
- ticketType
- externalIdentifier
- agreement
properties:
ticketType:
type: string
description:
type: string
accessLineId:
description: Technical identifier for a physical connection
type: string
example: DEU.DTAG.FTYLIQ7PFT
agreement:
description: A reference to an agreement defined in the context of the product order
type: array
items:
$ref: '#/components/schemas/AgreementRefOrValue'
endUserContactAllowed:
description: Defines if direct contact with end user is allowed
type: boolean
endUserAppointmentIsNecessary:
description: Defines if an appointment with the endUser is necessary
type: boolean
expressFaultResolution:
$ref: '#/components/schemas/ExpressFaultResolutionType'
faultQuestionnaire:
description: An array of questions and answers
type: array
minItems: 0
maxItems: 99
items:
$ref: '#/components/schemas/QuestionAnswer'
interimMessagesRequested:
description: Defines if interim messages are requested to be provided
type: boolean
networkTerminationLocation:
description: Describes the location of the network termination in the building
type: string
example: Flur
resolutionDisputeReason:
description: Indicates the reason why the resolution of the trouble ticket is disputed
type: string
requestedTimeSlot:
$ref: '#/components/schemas/TimeSlot'
appointment:
$ref: '#/components/schemas/AppointmentRefOrValue'
categoryId:
description: Identifier of the trouble ticket category
type: string
billingItem:
description: Array/List of billing items
type: array
minItems: 0
maxItems: 99
items:
type: string
discriminator:
propertyName: '@type'
mapping:
FaultTicket: '#/components/schemas/FaultTicket'
FaultTicket_FVO:
allOf:
- $ref: '#/components/schemas/TroubleTicket_FVO'
- type: object
description: A specific type of trouble ticket is a record of a fault on a product
required:
- ticketType
- externalIdentifier
- agreement
properties:
ticketType:
type: string
description:
type: string
accessLineId:
description: Technical identifier for a physical connection
type: string
example: DEU.DTAG.FTYLIQ7PFT
agreement:
description: A reference to an agreement defined in the context of the product order
type: array
items:
$ref: '#/components/schemas/AgreementRefOrValue'
endUserContactAllowed:
description: Defines if direct contact with end user is allowed
type: boolean
endUserAppointmentIsNecessary:
description: Defines if an appointment with the endUser is necessary
type: boolean
expressFaultResolution:
$ref: '#/components/schemas/ExpressFaultResolutionType'
faultQuestionnaire:
description: An array of questions and answers
type: array
minItems: 0
maxItems: 99
items:
$ref: '#/components/schemas/QuestionAnswer'
interimMessagesRequested:
description: Defines if interim messages are requested to be provided
type: boolean
networkTerminationLocation:
description: Describes the location of the network termination in the building
type: string
example: Flur
resolutionDisputeReason:
description: Indicates the reason why the resolution of the trouble ticket is disputed
type: string
requestedTimeSlot:
$ref: '#/components/schemas/TimeSlot'
appointment:
$ref: '#/components/schemas/AppointmentRefOrValue'
categoryId:
description: Identifier of the trouble ticket category
type: string
billingItem:
description: Array/List of billing items
type: array
minItems: 0
maxItems: 99
items:
type: string
discriminator:
propertyName: '@type'
mapping:
FaultTicket: '#/components/schemas/FaultTicket_FVO'
ProductRef:
allOf:
- $ref: '#/components/schemas/EntityRef'
- type: object
description: Reference to a product
discriminator:
propertyName: '@type'
mapping:
ProductRef: '#/components/schemas/ProductRef'
ProductTestRef:
allOf:
- $ref: '#/components/schemas/EntityRef'
- type: object
description: Reference to a product test
discriminator:
propertyName: '@type'
mapping:
ProductTestRef: '#/components/schemas/ProductTestRef'
TroubleTicket:
allOf:
- $ref: '#/components/schemas/Entity'
- type: object
description: A trouble ticket is a record of an issue that is created, tracked, and managed by a trouble ticket management system
required:
- orderPostedDate
properties:
name:
description: Name of the trouble ticket, typically a short description provided by the user that create the ticket
type: string
description:
description: Description of the trouble or issue
type: string
orderPostedDate:
description: Date when the order was posted by the requester
type: string
format: date-time
example: '2023-01-01T08:00:00+01:00'
severity:
description: |-
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
type: string
ticketType:
description: represent a business type of the trouble ticket e.g. incident, complain, request
type: string
attachment:
description: File(s) attached to the trouble ticket. e.g. picture of broken device, scaning of a bill or charge
type: array
items:
$ref: '#/components/schemas/AttachmentRefOrValue'
channel:
$ref: '#/components/schemas/ChannelRef'
creationDate:
description: The date on which the trouble ticket was created
type: string
format: date-time
requestedResolutionDate:
description: The resolution date requested by the user
type: string
format: date-time
expectedResolutionDate:
description: The expected resolution date determined by the trouble ticket system
type: string
format: date-time
resolutionDate:
description: The date and time the trouble ticket was resolved
type: string
format: date-time
externalIdentifier:
type: array
items:
$ref: '#/components/schemas/ExternalIdentifier'
lastUpdate:
description: The date and time that the trouble ticket was last updated
type: string
format: date-time
note:
description: The note(s) that are associated to the ticket.
type: array
items:
$ref: '#/components/schemas/TroubleTicketRemark'
priority:
description: '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...'
type: string
relatedEntity:
description: An entity that is related to the ticket such as a bill, a product, etc. The entity against which the ticket is associated.
type: array
items:
$ref: '#/components/schemas/RelatedEntityRefOrValue'
relatedParty:
description: The related party(ies) that are associated to the ticket.
type: array
items:
$ref: '#/components/schemas/RelatedPartyOrPartyRole'
status:
$ref: '#/components/schemas/TroubleTicketStatusType'
statusChangeDate:
description: The date and time the status changed.
type: string
format: date-time
statusChangeMessage:
description: Message for the status change described as a combination of a text and a code.
type: array
items:
$ref: '#/components/schemas/Message'
statusChangeHistory:
description: The status change history that are associated to the ticket. Populated by the server
type: array
items:
$ref: '#/components/schemas/StatusChange'
troubleTicketRelationship:
description: A list of trouble ticket relationships (TroubleTicketRelationship [*]). Represents a relationship between trouble tickets
type: array
items:
$ref: '#/components/schemas/TroubleTicketRelationship'
troubleTicketCharacteristic:
description: List of characteristics of the trouble ticket
type: array
items:
$ref: '#/components/schemas/Characteristic'
troubleTicketJeopardyAlert:
description: List of TroubleTicketJeopardyAlerts. A TroubleTicketJeopardyAlert represents a predicted exception during a trouble ticket processing that would brings risk to resolve successfully the trouble ticket.
type: array
items:
$ref: '#/components/schemas/TroubleTicketJeopardyAlert'
troubleTicketMilestone:
description: List of TroubleTicketMilestones. A TroubleTicketMilestone represents an action or event marking a significant change or stage in processing of a trouble ticket.
type: array
items:
$ref: '#/components/schemas/TroubleTicketMilestone'
troubleTicketSpecification:
$ref: '#/components/schemas/TroubleTicketSpecificationRef'
ticketIsChargingRelevant:
description: Boolean amended by the provider defining if the processing of the TroubleTicket is charging relevant
type: boolean
example: false
discriminator:
propertyName: '@type'
mapping:
TroubleTicket: '#/components/schemas/TroubleTicket'
FaultTicket: '#/components/schemas/FaultTicket'
TroubleTicketAttributeValueChangeEvent:
allOf:
- $ref: '#/components/schemas/AttributeValueChangeEvent'
- type: object
description: TroubleTicketAttributeValueChange structure
properties:
event:
$ref: '#/components/schemas/TroubleTicketAttributeValueChangeEventPayload'
discriminator:
propertyName: '@type'
mapping:
TroubleTicketAttributeValueChangeEvent: '#/components/schemas/TroubleTicketAttributeValueChangeEvent'
TroubleTicketAttributeValueChangeEventPayload:
description: TroubleTicketAttributeValueChangeEventPayload generic structure
type: object
properties:
troubleTicket:
$ref: '#/components/schemas/TroubleTicket'
TroubleTicketCreateEvent:
allOf:
- $ref: '#/components/schemas/Event'
- type: object
description: TroubleTicketCreateEvent generic structure
properties:
event:
$ref: '#/components/schemas/TroubleTicketCreateEventPayload'
discriminator:
propertyName: '@type'
mapping:
TroubleTicketCreateEvent: '#/components/schemas/TroubleTicketCreateEvent'
TroubleTicketCreateEventPayload:
description: TroubleTicketCreateEventPayload generic structure
type: object
properties:
troubleTicket:
$ref: '#/components/schemas/TroubleTicket'
TroubleTicketInformationRequiredEvent:
allOf:
- $ref: '#/components/schemas/Event'
- type: object
description: TroubleTicketInformationRequiredEvent generic structure
properties:
fieldPath:
description: TODO
type: array
items:
$ref: '#/components/schemas/FieldPath'
event:
$ref: '#/components/schemas/TroubleTicketInformationRequiredEventPayload'
discriminator:
propertyName: '@type'
mapping:
TroubleTicketInformationRequiredEvent: '#/components/schemas/TroubleTicketInformationRequiredEvent'
TroubleTicketInformationRequiredEventPayload:
description: TroubleTicketInformationRequiredEventPayload generic structure
type: object
properties:
troubleTicket:
$ref: '#/components/schemas/TroubleTicket'
informationRequired:
$ref: '#/components/schemas/JsonPatch'
TroubleTicketJeopardyAlert:
description: A TroubleTicketJeopardyAlert represents a predicted exception during a trouble ticket processing that would brings risk to resolve successfully the trouble ticket.
type: object
allOf:
- $ref: '#/components/schemas/JeopardyAlert'
discriminator:
propertyName: '@type'
mapping:
TroubleTicketJeopardyAlert: '#/components/schemas/TroubleTicketJeopardyAlert'
TroubleTicketJeopardyAlertEvent:
description: TroubleTicketJeopardyAlertEvent generic structure
allOf:
- $ref: '#/components/schemas/Event'
- type: object
properties:
event:
$ref: '#/components/schemas/TroubleTicketJeopardyAlertEventPayload'
discriminator:
propertyName: '@type'
mapping:
TroubleTicketJeopardyAlertEvent: '#/components/schemas/TroubleTicketJeopardyAlertEvent'
TroubleTicketJeopardyAlertEventPayload:
description: TroubleTicketJeopardyAlertEventPayload generic structure
type: object
properties:
troubleTicket:
$ref: '#/components/schemas/TroubleTicket'
TroubleTicketMilestone:
description: A TroubleTicketMilestone represents an action or event marking a significant change or stage in processing of a trouble ticket.
type: object
allOf:
- $ref: '#/components/schemas/Milestone'
discriminator:
propertyName: '@type'
mapping:
TroubleTicketMilestone: '#/components/schemas/TroubleTicketMilestone'
TroubleTicketMilestoneEvent:
description: TroubleTicketMilestoneEvent generic structure
allOf:
- $ref: '#/components/schemas/Event'
- type: object
properties:
event:
$ref: '#/components/schemas/TroubleTicketMilestoneEventPayload'
discriminator:
propertyName: '@type'
mapping:
TroubleTicketMilestoneEvent: '#/components/schemas/TroubleTicketMilestoneEvent'
TroubleTicketMilestoneEventPayload:
description: TroubleTicketMilestoneEventPayload generic structure
type: object
properties:
troubleTicket:
$ref: '#/components/schemas/TroubleTicket'
TroubleTicketRef:
allOf:
- $ref: '#/components/schemas/EntityRef'
- type: object
description: Reference to an TroubleTicket object
required:
- id
properties:
id:
description: Identifier of the corresponding TroubleTicket
type: string
example: 450e8400-e29b-11d4-a716-446651440001
version:
description: The version of the trouble ticket , in case it is desired to maintain multiple versions of trouble ticket
type: string
discriminator:
propertyName: '@type'
mapping:
TroubleTicketRef: '#/components/schemas/TroubleTicketRef'
TroubleTicketRelationship:
allOf:
- $ref: '#/components/schemas/EntityRef'
- type: object
description: Represents a relationship between trouble tickets
required:
- relationshipType
properties:
relationshipType:
description: Type of relationship
type: string
TroubleTicketResolvedEvent:
allOf:
- $ref: '#/components/schemas/Event'
- type: object
description: TroubleTicketResolvedEvent generic structure
properties:
event:
$ref: '#/components/schemas/TroubleTicketResolvedEventPayload'
discriminator:
propertyName: '@type'
mapping:
TroubleTicketResolvedEvent: '#/components/schemas/TroubleTicketResolvedEvent'
TroubleTicketResolvedEventPayload:
description: TroubleTicketResolvedEventPayload generic structure
type: object
properties:
troubleTicket:
$ref: '#/components/schemas/TroubleTicket'
TroubleTicketStatusChangeEvent:
allOf:
- $ref: '#/components/schemas/Event'
- type: object
description: TroubleTicketStatusChangeEvent generic structure
properties:
event:
$ref: '#/components/schemas/TroubleTicketStatusChangeEventPayload'
discriminator:
propertyName: '@type'
mapping:
TroubleTicketStatusChangeEvent: '#/components/schemas/TroubleTicketStatusChangeEvent'
TroubleTicketStatusChangeEventPayload:
description: TroubleTicketStatusChangeEventPayload generic structure
type: object
properties:
troubleTicket:
$ref: '#/components/schemas/TroubleTicket'
TroubleTicketStatusType:
description: |-
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.
type: string
enum:
- acknowledged
- rejected
- pending
- held
- inProgress
- cancelled
- closed
- resolved
- failed
TroubleTicket_FVO:
allOf:
- $ref: '#/components/schemas/Extensible_FVO'
- type: object
description: A trouble ticket is a record of an issue that is created, tracked, and managed by a trouble ticket management system
properties:
name:
description: Name of the trouble ticket, typically a short description provided by the user that create the ticket
type: string
description:
description: Description of the trouble or issue
type: string
orderPostedDate:
description: Date when the order was posted by the requester
type: string
format: date-time
example: '2023-01-01T08:00:00+01:00'
severity:
description: |-
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
type: string
ticketType:
description: Represent a business type of the trouble ticket e.g. incident, complain, request
type: string
attachment:
description: File(s) attached to the trouble ticket. e.g. pictur of broken device, scaning of a bill or charge
type: array
items:
$ref: '#/components/schemas/AttachmentRefOrValue'
channel:
$ref: '#/components/schemas/ChannelRef'
requestedResolutionDate:
description: The resolution date requested by the user
type: string
format: date-time
externalIdentifier:
type: array
items:
$ref: '#/components/schemas/ExternalIdentifier'
note:
description: The note(s) that are associated to the ticket.
type: array
items:
$ref: '#/components/schemas/TroubleTicketRemark'
priority:
description: '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...'
type: string
relatedEntity:
description: An entity that is related to the ticket such as a bill, a product, etc. The entity against which the ticket is associated.
type: array
items:
$ref: '#/components/schemas/RelatedEntityRefOrValue'
relatedParty:
description: The related party(ies) that are associated to the ticket.
type: array
items:
$ref: '#/components/schemas/RelatedPartyOrPartyRole'
troubleTicketRelationship:
description: A list of trouble ticket relationships (TroubleTicketRelationship [*]). Represents a relationship between trouble tickets
type: array
items:
$ref: '#/components/schemas/TroubleTicketRelationship'
troubleTicketCharacteristic:
description: List of characteristics of the trouble ticket
type: array
items:
$ref: '#/components/schemas/Characteristic'
required:
- ticketType
- orderPostedDate
discriminator:
propertyName: '@type'
mapping:
TroubleTicket: '#/components/schemas/TroubleTicket_FVO'
TroubleTicketSpecification:
description: |-
TroubleTicketSpecification defines the common attributes and relationships of a set of
related trouble tickets, while trouble ticket defines a specific instance that is based
on a particular trouble ticket specification.
type: object
allOf:
- $ref: '#/components/schemas/EntitySpecification'
discriminator:
propertyName: '@type'
mapping:
TroubleTicketSpecification: '#/components/schemas/TroubleTicketSpecification'
InflightChangeTroubleTicket:
description: Request to change an existing trouble ticket in-flight
allOf:
- $ref: '#/components/schemas/TaskEntity'
- type: object
required:
- category
properties:
troubleTicket:
description: Explicit reference to the related TroubleTicket
$ref: '#/components/schemas/TroubleTicketRef'
appointment:
$ref: '#/components/schemas/AppointmentRefOrValue'
buyerMessage:
description: message, send from Buyer to Seller
allOf:
- $ref: '#/components/schemas/Message'
- type: object
required:
- text
- code
properties:
text:
type: string
code:
type: string
additionalInformation:
type: string
category:
description: Type of action to be performed with the task resource
type: array
minItems: 1
maxItems: 2
items:
type: string
description: |-
Possible values for the category of the task resource:
- add: add information, e.g., a note or a related party
- reschedule: reschedule the troubleTicket
enum:
- add
- reschedule
externalIdentifier:
description: A reference to an externally defined object in the context of the managed entity
type: array
items:
$ref: '#/components/schemas/ExternalIdentifier'
example: []
note:
description: Note
type: array
items:
$ref: '#/components/schemas/Note'
example: []
stateChangeDate:
description: The date and time the state changed.
type: string
format: date-time
example: '2023-01-01T08:00:00+01:00'
stateChangeHistory:
description: The state change history that is associated to the Entity. Populated by the server
type: array
items:
$ref: '#/components/schemas/StateChange'
example: []
stateChangeMessage:
description: Message for the state change described as a combination of a text and a code.
type: array
items:
$ref: '#/components/schemas/Message'
example: []
requestedResolutionDate:
description: The resolution date requested by the user
type: string
format: date-time
requestedTimeSlot:
$ref: '#/components/schemas/TimeSlot'
InflightChangeTroubleTicket_FVO:
description: Request to change an existing trouble ticket in-flight
allOf:
- $ref: '#/components/schemas/TaskEntity_FVO'
- type: object
required:
- category
properties:
troubleTicket:
description: Explicit reference to the related TroubleTicket
$ref: '#/components/schemas/TroubleTicketRef'
appointment:
$ref: '#/components/schemas/AppointmentRefOrValue'
buyerMessage:
description: message, send from Buyer to Seller
allOf:
- $ref: '#/components/schemas/Message'
- type: object
required:
- text
- code
properties:
text:
type: string
code:
type: string
additionalInformation:
type: string
category:
description: Type of action to be performed with the task resource
type: array
minItems: 1
maxItems: 2
items:
type: string
enum:
- add
- reschedule
example:
- add
externalIdentifier:
description: A reference to an externally defined object in the context of the managed entity
type: array
items:
$ref: '#/components/schemas/ExternalIdentifier'
example: []
note:
description: Note
type: array
items:
$ref: '#/components/schemas/Note'
example: []
requestedResolutionDate:
description: The resolution date requested by the user
type: string
format: date-time
requestedTimeSlot:
$ref: '#/components/schemas/TimeSlot'
InflightChangeTroubleTicketStateChangeEvent:
allOf:
- $ref: '#/components/schemas/Event'
- type: object
description: InflightChangeTroubleTicketStateChangeEvent generic structure
properties:
event:
$ref: '#/components/schemas/InflightChangeTroubleTicketStateChangeEventPayload'
discriminator:
propertyName: '@type'
mapping:
InflightChangeTroubleTicketStateChangeEvent: '#/components/schemas/InflightChangeTroubleTicketStateChangeEvent'
InflightChangeTroubleTicketStateChangeEventPayload:
description: InflightChangeTroubleTicketStateChangeEventPayload generic structure
type: object
properties:
inflightChangeTroubleTicket:
$ref: '#/components/schemas/InflightChangeTroubleTicket'
CancelTroubleTicket:
description: Request to cancel an existing trouble ticket
allOf:
- $ref: '#/components/schemas/TaskEntity'
- type: object
properties:
troubleTicket:
description: Explicit reference to the related TroubleTicket
$ref: '#/components/schemas/TroubleTicketRef'
stateChangeDate:
description: The date and time the state changed.
type: string
format: date-time
example: '2023-01-01T08:00:00+01:00'
stateChangeMessage:
description: Message for the state change described as a combination of a text and a code.
type: array
items:
$ref: '#/components/schemas/Message'
example: []
stateChangeHistory:
description: The state change history that is associated to the Entity. Populated by the server
type: array
items:
$ref: '#/components/schemas/StateChange'
example: []
externalIdentifier:
description: A reference to an externally defined object in the context of the managed entity
type: array
items:
$ref: '#/components/schemas/ExternalIdentifier'
example: []
CancelTroubleTicket_FVO:
description: Request to cancel an existing trouble ticket
allOf:
- $ref: '#/components/schemas/TaskEntity_FVO'
- type: object
properties:
troubleTicket:
description: Explicit reference to the related TroubleTicket
$ref: '#/components/schemas/TroubleTicketRef'
externalIdentifier:
description: A reference to an externally defined object in the context of the managed entity
type: array
items:
$ref: '#/components/schemas/ExternalIdentifier'
example: []
CancelTroubleTicketStateChangeEvent:
allOf:
- $ref: '#/components/schemas/Event'
- type: object
description: CancelTroubleTicketStateChangeEvent generic structure
properties:
event:
$ref: '#/components/schemas/CancelTroubleTicketStateChangeEventPayload'
discriminator:
propertyName: '@type'
mapping:
CancelTroubleTicketStateChangeEvent: '#/components/schemas/CancelTroubleTicketStateChangeEvent'
CancelTroubleTicketStateChangeEventPayload:
description: CancelTroubleTicketStateChangeEventPayload generic structure
type: object
properties:
cancelTroubleTicket:
$ref: '#/components/schemas/CancelTroubleTicket'
TroubleTicketSpecificationAttributeValueChangeEvent:
allOf:
- $ref: '#/components/schemas/AttributeValueChangeEvent'
- type: object
description: TroubleTicketSpecificationAttributeValueChange structure
properties:
event:
$ref: '#/components/schemas/TroubleTicketSpecificationAttributeValueChangeEventPayload'
discriminator:
propertyName: '@type'
mapping:
TroubleTicketSpecificationAttributeValueChangeEvent: '#/components/schemas/TroubleTicketSpecificationAttributeValueChangeEvent'
TroubleTicketSpecificationAttributeValueChangeEventPayload:
description: TroubleTicketSpecificationAttributeValueChangeEventPayload generic structure
type: object
properties:
troubleTicketSpecification:
$ref: '#/components/schemas/TroubleTicketSpecification'
TroubleTicketSpecificationCreateEvent:
allOf:
- $ref: '#/components/schemas/Event'
- type: object
description: TroubleTicketSpecificationCreateEvent generic structure
properties:
event:
$ref: '#/components/schemas/TroubleTicketSpecificationCreateEventPayload'
discriminator:
propertyName: '@type'
mapping:
TroubleTicketSpecificationCreateEvent: '#/components/schemas/TroubleTicketSpecificationCreateEvent'
TroubleTicketSpecificationCreateEventPayload:
description: TroubleTicketSpecificationCreateEventPayload generic structure
type: object
properties:
troubleTicketSpecification:
$ref: '#/components/schemas/TroubleTicketSpecification'
TroubleTicketSpecificationDeleteEvent:
allOf:
- $ref: '#/components/schemas/Event'
- type: object
description: TroubleTicketSpecificationDeleteEvent generic structure
properties:
event:
$ref: '#/components/schemas/TroubleTicketSpecificationDeleteEventPayload'
discriminator:
propertyName: '@type'
mapping:
TroubleTicketSpecificationDeleteEvent: '#/components/schemas/TroubleTicketSpecificationDeleteEvent'
TroubleTicketSpecificationDeleteEventPayload:
description: TroubleTicketSpecificationDeleteEventPayload generic structure
type: object
properties:
troubleTicketSpecification:
$ref: '#/components/schemas/TroubleTicketSpecification'
TroubleTicketSpecificationRef:
allOf:
- $ref: '#/components/schemas/EntityRef'
- type: object
description: Reference to an TroubleTicketSpecification object
properties:
version:
description: |-
The version of the trouble ticket specification, in case it is desired to maintain
multiple versions of trouble ticket specifications
type: string
discriminator:
propertyName: '@type'
mapping:
TroubleTicketSpecificationRef: '#/components/schemas/TroubleTicketSpecificationRef'
TroubleTicketSpecificationStatusChangeEvent:
allOf:
- $ref: '#/components/schemas/Event'
- type: object
description: TroubleTicketSpecificationStatusChangeEvent generic structure
properties:
event:
$ref: '#/components/schemas/TroubleTicketSpecificationStatusChangeEventPayload'
discriminator:
propertyName: '@type'
mapping:
TroubleTicketSpecificationStatusChangeEvent: '#/components/schemas/TroubleTicketSpecificationStatusChangeEvent'
TroubleTicketSpecificationStatusChangeEventPayload:
description: TroubleTicketSpecificationStatusChangeEventPayload generic structure
type: object
properties:
troubleTicketSpecification:
$ref: '#/components/schemas/TroubleTicketSpecification'
Extensible:
description: Base Extensible schema for use in TMForum Open-APIs - When used for in a schema it means that the Entity described by the schema MUST be extended with the @type
type: object
properties:
'@type':
description: When sub-classing, this defines the sub-class Extensible name
type: string
example: ''
'@baseType':
description: When sub-classing, this defines the super-class
type: string
example: ''
'@schemaLocation':
description: A URI to a JSON-Schema file that defines additional attributes and relationships
type: string
example: ''
discriminator:
propertyName: '@type'
required:
- '@type'
Entity:
description: Base entity schema for use in TMForum Open-APIs.
allOf:
- $ref: '#/components/schemas/Extensible'
- type: object
properties:
id:
description: Unique identifier
type: string
example: 2d7ed5fd-9f62-4211-bc84-357f5f7b80f5
href:
description: Hyperlink reference
type: string
format: uri
example: https://api.example.org/resource/id
ContactMedium:
description: Indicates the contact medium that could be used to contact the party.
allOf:
- $ref: '#/components/schemas/Extensible'
- type: object
properties:
contactMediumIdentifier:
description: Identifier for this contact medium.
type: string
example: '123'
contactType:
description: Type of the contact medium to qualifiy it like pro email / personal email. This is not used to define the contact medium used.
type: string
example: personal email
preferred:
description: If true, indicates that is the preferred contact medium
type: boolean
example: true
validFor:
$ref: '#/components/schemas/TimePeriod'
discriminator:
propertyName: '@type'
mapping:
PhoneContactMedium: '#/components/schemas/PhoneContactMedium'
EmailContactMedium: '#/components/schemas/EmailContactMedium'
PostalAddressContactMedium: '#/components/schemas/PostalAddressContactMedium'
PhoneContactMedium:
description: Describes a phone number that could be used to contact a party (an individual or an organization).
allOf:
- $ref: '#/components/schemas/ContactMedium'
- type: object
properties:
phoneNumber:
description: The phone number of the contact
type: string
example: +49 30 1234567
EmailContactMedium:
description: Describes a email that could be used to contact a party (an individual or an organization).
allOf:
- $ref: '#/components/schemas/ContactMedium'
- type: object
properties:
emailAddress:
description: Full email address in standard format
type: string
example: info@example.net
PostalAddressContactMedium:
description: Describes a email that could be used to contact a party (an individual or an organization).
allOf:
- $ref: '#/components/schemas/ContactMedium'
- type: object
properties:
city:
description: Full city name
type: string
example: Berlin
country:
description: Country that the address is in (ISO-3166-1 ALPHA-2)
type: string
example: DE
locality:
description: Locality
type: string
example: ''
postcode:
description: Postcode
type: string
example: '10117'
streetName:
description: StreetName
type: string
example: Reinhardtstr.
streetNr:
description: StreetNr
type: string
example: '31'
streetNrSuffix:
description: StreetNrSuffix
type: string
example: a
TimePeriod:
description: A period of time, either as a deadline (endDateTime only) a startDateTime only, or both
type: object
properties:
startDateTime:
description: Start of the time period, using IETC-RFC-3339 format. If you define a start, you must also define an end
type: string
format: date-time
example: '2023-01-01T08:00:00+01:00'
endDateTime:
description: End of the time period, using IETC-RFC-3339 format
type: string
format: date-time
example: '2025-12-24T19:30:00+01:00'
ExternalIdentifier:
description: An identification of an entity that is owned by or originates in a software system different from the current system, for example a ProductOrder handed off from a commerce platform into an order handling system. The structure identifies the system itself, the nature of the entity within the system (e.g. class name) and the unique ID of the entity within the system. It is anticipated that multiple external IDs can be held for a single entity, e.g. if the entity passed through multiple systems on the way to the current system. In this case the consumer is expected to sequence the IDs in the array in reverse order of provenance, i.e. most recent system first in the list.
allOf:
- $ref: '#/components/schemas/Extensible'
- type: object
properties:
id:
description: Unique identifier
type: string
example: 2d7ed5fd-9f62-4211-bc84-357f5f7b80f5
externalIdentifierType:
description: Type of the identification, typically would be the type of the entity within the external system
type: string
example: ProductOrder
owner:
description: Name of the external system that owns the entity.
type: string
example: AcmeCommerce
Characteristic:
description: Describes a given characteristic of an object or entity through a name/value pair.
allOf:
- $ref: '#/components/schemas/Extensible'
- type: object
properties:
id:
description: Unique identifier of the characteristic
type: string
example: 2d7ed5fd-9f62-4211-bc84-357f5f7b80f5
name:
description: Name of the characteristic
type: string
example: characteristic name
valueType:
description: Data type of the value of the characteristic
type: string
example: string
discriminator:
propertyName: '@type'
mapping:
Characteristic: '#/components/schemas/Characteristic'
StringCharacteristic: '#/components/schemas/StringCharacteristic'
StringArrayCharacteristic: '#/components/schemas/StringArrayCharacteristic'
ObjectCharacteristic: '#/components/schemas/ObjectCharacteristic'
ObjectArrayCharacteristic: '#/components/schemas/ObjectArrayCharacteristic'
NumberCharacteristic: '#/components/schemas/NumberCharacteristic'
NumberArrayCharacteristic: '#/components/schemas/NumberArrayCharacteristic'
IntegerCharacteristic: '#/components/schemas/IntegerCharacteristic'
IntegerArrayCharacteristic: '#/components/schemas/IntegerArrayCharacteristic'
BooleanCharacteristic: '#/components/schemas/BooleanCharacteristic'
BooleanArrayCharacteristic: '#/components/schemas/BooleanArrayCharacteristic'
StringCharacteristic:
description: A characteristic which value is a String.
allOf:
- $ref: '#/components/schemas/Characteristic'
- type: object
required:
- value
properties:
value:
description: Value of the characteristic
type: string
example: Lorem ipsum dolor
StringArrayCharacteristic:
description: A characteristic which value is a String.
allOf:
- $ref: '#/components/schemas/Characteristic'
- type: object
properties:
value:
description: Value of the characteristic
type: array
items:
type: string
example: []
ObjectCharacteristic:
description: A characteristic which value is an Object.
allOf:
- $ref: '#/components/schemas/Characteristic'
- type: object
required:
- value
properties:
value:
description: Value of the characteristic
type: object
ObjectArrayCharacteristic:
description: A characteristic which value is an Object.
allOf:
- $ref: '#/components/schemas/Characteristic'
- type: object
properties:
value:
description: Value of the characteristic
type: array
items:
type: object
example: []
NumberCharacteristic:
description: A characteristic which value is a Number.
allOf:
- $ref: '#/components/schemas/Characteristic'
- type: object
required:
- value
properties:
value:
description: Value of the characteristic
type: number
example: 1
NumberArrayCharacteristic:
description: A characteristic which value is a Number.
allOf:
- $ref: '#/components/schemas/Characteristic'
- type: object
properties:
value:
description: Value of the characteristic
type: array
items:
type: number
example: []
IntegerCharacteristic:
description: A characteristic which value is an Integer.
allOf:
- $ref: '#/components/schemas/Characteristic'
- type: object
required:
- value
properties:
value:
description: Value of the characteristic
type: integer
example: 1
IntegerArrayCharacteristic:
description: A characteristic which value is an Integer.
allOf:
- $ref: '#/components/schemas/Characteristic'
- type: object
properties:
value:
description: Value of the characteristic
type: array
items:
type: integer
example: []
BooleanCharacteristic:
description: A characteristic which value is a Boolean.
allOf:
- $ref: '#/components/schemas/Characteristic'
- type: object
required:
- value
properties:
value:
description: Value of the characteristic
type: boolean
example: true
BooleanArrayCharacteristic:
description: A characteristic which value is a Boolean.
allOf:
- $ref: '#/components/schemas/Characteristic'
- type: object
properties:
value:
description: Value of the characteristic
type: array
items:
type: boolean
example: []
Party:
description: Generic Party structure used to define commonalities between sub concepts of Individual and Organization.
allOf:
- $ref: '#/components/schemas/Entity'
- type: object
properties:
contactMedium:
description: List of means for contacting the party, e.g. mobile phone, email address
type: array
items:
$ref: '#/components/schemas/ContactMedium'
example: []
externalReference:
description: List of identifiers of the Party in an external system, for example when party information is imported from a commerce system
type: array
items:
$ref: '#/components/schemas/ExternalIdentifier'
example: []
businessId:
description: A business relevant identifier when different from the technical identifier documented with the .id property
type: string
example: '1234'
partyCharacteristic:
description: List of additional characteristics that a Party can take on.
type: array
items:
$ref: '#/components/schemas/Characteristic'
example: []
Individual:
description: Individual represents a single human being (a man, woman or child). The individual can be a customer, an employee or any other person that the organization needs to store information about.
allOf:
- $ref: '#/components/schemas/Party'
- type: object
properties:
familyName:
description: Contains the non-chosen or inherited name. Also known as last name in the Western context
type: string
example: Muster
salutation:
description: Standard wording used to address an individual
type: string
example: Ms
givenName:
description: First name of the individual
type: string
example: Melanie
title:
description: Useful for titles (aristocratic, social,...) Pr, Dr, Sir, ...
type: string
example: Dr.
Organization:
description: Organization represents a group of people identified by shared interests or purpose. Examples include business, department and enterprise. Because of the complex nature of many businesses, both organizations and organization units are represented by the same data.
allOf:
- $ref: '#/components/schemas/Party'
- type: object
properties:
name:
description: Organization name (department name for example)
type: string
example: Acme Corp.
EntityRef:
description: Entity reference schema to be use for all entityRef class.
allOf:
- $ref: '#/components/schemas/Extensible'
- type: object
required:
- id
properties:
id:
description: Identifier of the referred entity.
type: string
example: 2d7ed5fd-9f62-4211-bc84-357f5f7b80f5
href:
description: Hyperlink reference
type: string
format: uri
example: https://api.example.org/resource/id
name:
description: Name of the referred entity.
type: string
example: EntityName
'@referredType':
description: The actual type of the target instance when needed for disambiguation.
type: string
example: ''
PartyRef:
description: Party reference.
type: object
allOf:
- $ref: '#/components/schemas/EntityRef'
PartyRoleRef:
description: Party role reference.
type: object
allOf:
- $ref: '#/components/schemas/EntityRef'
AccountRef:
description: Account reference. A account may be a party account or a financial account.
allOf:
- $ref: '#/components/schemas/EntityRef'
- type: object
properties:
description:
description: Detailed description of the account
type: string
example: lorem ipsum dolor
AgreementRef:
description: Agreement reference. An agreement represents a contract or arrangement, either written or verbal and sometimes enforceable by law, such as a service level agreement or a customer price agreement. An agreement involves a number of other business entities, such as products, services, and resources and/or their specifications.
type: object
allOf:
- $ref: '#/components/schemas/EntityRef'
PartyOrPartyRole:
description: A Party or PartyRole or Ref
type: object
discriminator:
propertyName: '@type'
oneOf:
- $ref: '#/components/schemas/Individual'
- $ref: '#/components/schemas/Organization'
- $ref: '#/components/schemas/PartyRef'
- $ref: '#/components/schemas/PartyRoleRef'
- $ref: '#/components/schemas/PartyRole'
RelatedPartyOrPartyRole:
description: RelatedParty reference. A related party defines party or party role or its reference, linked to a specific entity
allOf:
- $ref: '#/components/schemas/Extensible'
- type: object
required:
- role
- partyOrPartyRole
properties:
role:
description: Role played by the related party or party role in the context of the specific entity it is linked to. Such as 'initiator', 'customer', 'salesAgent', 'user'
type: string
example: ''
partyOrPartyRole:
$ref: '#/components/schemas/PartyOrPartyRole'
PartyRole:
description: The part played by a party in a given context.
allOf:
- $ref: '#/components/schemas/Entity'
- type: object
required:
- name
- engagedParty
properties:
businessId:
description: A business relevant identifier when different from the technical identifier documented with the .id property
type: string
example: '1234'
name:
description: A word, term, or phrase by which the PartyRole is known and distinguished from other PartyRoles. It's the name of the PartyRole unique entity.
type: string
example: PartyRoleName
description:
description: A description of the PartyRole.
type: string
example: Lorem ipsum dolor
role:
description: Role played by the engagedParty in this context. As role is defined by partyRoleSpecification, this role attribute can be used to precise the role defined by partyRoleSpecification, or it can be used to define the role in case there is no partyRoleSpecification.
type: string
example: ''
engagedParty:
$ref: '#/components/schemas/PartyRef'
characteristic:
description: Describes the characteristic of a party role.
type: array
items:
$ref: '#/components/schemas/Characteristic'
example: []
account:
description: Account
type: array
items:
$ref: '#/components/schemas/AccountRef'
example: []
agreement:
description: Agreement
type: array
items:
$ref: '#/components/schemas/AgreementRef'
example: []
contactMedium:
description: Contact medium
type: array
items:
$ref: '#/components/schemas/ContactMedium'
example: []
relatedParty:
description: Related party
type: array
items:
$ref: '#/components/schemas/RelatedPartyOrPartyRole'
example: []
status:
description: Used to track the lifecycle status of the party role.
type: string
example: ''
statusReason:
description: A string providing an explanation on the value of the status lifecycle. For instance if the status is Rejected, statusReason will provide the reason for rejection.
type: string
example: ''
validFor:
$ref: '#/components/schemas/TimePeriod'
Agreement:
description: An agreement represents a contract or arrangement, either written or verbal and sometimes enforceable by law, such as a service level agreement or a customer price agreement. An agreement involves a number of other business entities, such as products, services, and resources and/or their specifications.
allOf:
- $ref: '#/components/schemas/Entity'
- type: object
required:
- agreementType
properties:
name:
description: A human-readable name for the agreement
type: string
example: contract no. 42
engagedParty:
description: Engaged party
type: array
items:
$ref: '#/components/schemas/PartyOrPartyRole'
example: []
relatedParty:
description: Related party
type: array
items:
$ref: '#/components/schemas/RelatedPartyOrPartyRole'
example: []
businessId:
description: A business relevant identifier when different from the technical identifier documented with the .id property
type: string
example: '1234'
agreementType:
description: Type of the agreement (e.g. witaContract, ServiceContractCustomer, ServiceContractOrderer, SingleContract, PreAgreement, witaContract,...)
type: string
example: ServiceContractOrderer
AgreementRefOrValue:
description: Agreement reference or value
type: object
discriminator:
propertyName: '@type'
oneOf:
- $ref: '#/components/schemas/Agreement'
- $ref: '#/components/schemas/AgreementRef'
TimeSlot:
allOf:
- $ref: '#/components/schemas/Extensible'
- type: object
required:
- validFor
properties:
id:
description: Unique identifier of the TimeSlot
type: string
example: 2d7ed5fd-9f62-4211-bc84-357f5f7b80f5
href:
description: Reference of the TimeSlot
type: string
example: https://api.example.org/timeslot/id
relatedParty:
description: RelatedParty reference. A related party defines party or party role linked to a specific entity.
$ref: '#/components/schemas/RelatedPartyOrPartyRole'
validFor:
description: Start date and end date of the timeSlot
$ref: '#/components/schemas/TimePeriod'
AppointmentRef:
description: Appointment reference.
type: object
allOf:
- $ref: '#/components/schemas/EntityRef'
AttachmentRef:
description: Attachment reference.
type: object
allOf:
- $ref: '#/components/schemas/EntityRef'
Quantity:
description: An amount in a given unit
type: object
properties:
amount:
description: Numeric value in a given unit
type: number
format: float
example: 20
default: 1
units:
description: Unit
type: string
example: MBit/s
Attachment:
description: Complements the description of an element (for instance a product) through video, pictures...
allOf:
- $ref: '#/components/schemas/Entity'
- type: object
properties:
attachmentType:
description: Attachment type such as video, picture
type: string
example: video
content:
description: The actual contents of the attachment object, if embedded, encoded as base64
example: ''
format: base64
type: string
description:
description: A narrative text describing the content of the attachment
type: string
example: Photograph of the Product
mimeType:
description: Attachment mime type such as extension file for video, picture and document
type: string
example: image/AVIF
name:
description: The name of the attachment
type: string
example: attachment.file
url:
description: Uniform Resource Locator, is a web page address (a subset of URI)
type: string
format: uri
example: https://api.example.org/content/4aafacbd-11ff-4dc8-b445-305f2215715f
size:
description: The size of the attachment.
$ref: '#/components/schemas/Quantity'
validFor:
description: The period of time for which the attachment is valid
$ref: '#/components/schemas/TimePeriod'
AttachmentRefOrValue:
description: Attachment reference or value
type: object
discriminator:
propertyName: '@type'
oneOf:
- $ref: '#/components/schemas/AttachmentRef'
- $ref: '#/components/schemas/Attachment'
Note:
description: Extra information about a given entity
allOf:
- $ref: '#/components/schemas/Entity'
- type: object
required:
- text
properties:
author:
description: Author of the note
type: string
example: jarvis
date:
description: Date of the note
type: string
format: date-time
example: '2023-01-01T08:00:00+01:00'
text:
description: Text of the note
type: string
example: Lorem ipsum dolor
Place:
description: Place value (base class).
allOf:
- $ref: '#/components/schemas/Entity'
- type: object
properties:
externalIdentifier:
type: array
description: Collection of external identifiers
items:
$ref: '#/components/schemas/ExternalIdentifier'
GeographicSubAddress:
description: |-
Representation of a GeographicSubAddress
It is used for addressing within a property in an urban area (country properties are often defined differently). It may refer to a building, a building cluster, or a floor of a multistory building.
allOf:
- $ref: '#/components/schemas/Place'
- type: object
properties:
buildingName:
description: Allows for buildings that have well-known names
type: string
example: Hinterhaus
buildingComplement:
description: Additional designation for completing the building name
type: string
example: n/a
GeographicAddress:
description: |-
Structured textual way of describing how to find a Property in an urban area (country properties are often defined differently).
Note : Address corresponds to SID UrbanPropertyAddress
allOf:
- $ref: '#/components/schemas/Place'
- type: object
properties:
city:
description: City that the address is in
type: string
example: Berlin
country:
description: Country that the address is in (ISO-3166-1 ALPHA-2)
type: string
example: DE
locality:
description: An area of defined or undefined boundaries within a local authority or other legislatively defined area, usually rural or semi rural in nature. [ANZLIC-STREET], or a suburb, a bounded locality within a city, town or shire principally of urban character [ANZLICSTREET]
type: string
example: ''
postcode:
description: descriptor for a postal delivery area, used to speed and simplify the delivery of mail (also know as zipcode)
type: string
example: '10117'
streetName:
description: Name of the street or other street type
type: string
example: Reinhardtstr.
streetNr:
description: Number identifying a specific property on a public street. It may be combined with streetNrLast for ranged addresses
type: string
example: '31'
streetNrSuffix:
description: the first street number suffix
type: string
example: a
geographicSubAddress:
description: Geographic sub address
type: array
items:
$ref: '#/components/schemas/GeographicSubAddress'
example: []
GeographicSite:
description: Geographic site
allOf:
- $ref: '#/components/schemas/Place'
- type: object
properties:
code:
description: 'A code that may be used for some addressing schemes eg: [ANSI T1.253-1999]'
type: string
example: ''
creationDate:
description: Date and time when the GeographicSite was created
type: string
format: date-time
example: '2023-01-01T08:00:00+01:00'
description:
description: Text describing additional information regarding the site
type: string
example: Lorem ipsum dolor
place:
description: Place
type: array
items:
$ref: '#/components/schemas/Place'
example: []
geographicSiteCharacteristic:
description: Geographic site characteristics
type: array
items:
$ref: '#/components/schemas/Characteristic'
example: []
status:
description: The condition of the GeographicSite, such as planned, underConstruction, cancelled, active, inactive, former
type: string
example: active
PlaceRef:
description: Place reference.
type: object
allOf:
- $ref: '#/components/schemas/EntityRef'
PlaceRefOrValue:
description: A place ref or value
type: object
discriminator:
propertyName: '@type'
oneOf:
- $ref: '#/components/schemas/GeographicAddress'
- $ref: '#/components/schemas/GeographicSite'
- $ref: '#/components/schemas/PlaceRef'
RelatedPlaceRefOrValue:
description: Entity reference. The polymorphic attributes @type, @schemaLocation & @referredType are related to the RelatedPlace entity and not the RelatedPlaceRefOrValue class itself
allOf:
- $ref: '#/components/schemas/Extensible'
- type: object
required:
- role
- place
properties:
role:
description: Role played by the related entity
type: string
example: ''
place:
$ref: '#/components/schemas/PlaceRefOrValue'
AppointmentStateType:
description: |-
Valid values for the lifecycle status of the appointment are:
- *initialized*: Appointment initialized
- *confirmed*: Appointment confirmed
- *cancelled*: Appointment cancelled
- *completed*: Appointment completed
- *failed*: Appointment failed
type: string
enum:
- initialized
- confirmed
- cancelled
- completed
- failed
Appointment:
description: An Appointment is an arrangement to do something or meet someone at a particular time, at a place (for face to face appointment) or in a contact medium (for phone appointment).
allOf:
- $ref: '#/components/schemas/Entity'
- type: object
required:
- validFor
properties:
category:
description: 'Business category : intervention for example or to be more precise after SalesIntervention, orderDeliveryIntervention,...'
type: string
example: intervention
creationDate:
description: Appointment creation date
type: string
format: date-time
example: '2023-01-01T08:00:00+01:00'
description:
description: Short free text describing the appointment
type: string
example: Lorem ipsum dolor
externalId:
description: External reference known by the customer
type: string
example: '1234'
lastUpdate:
description: Date of last appointment update
type: string
format: date-time
example: '2023-01-01T08:00:00+01:00'
attachment:
description: Attachment
type: array
items:
$ref: '#/components/schemas/AttachmentRefOrValue'
example: []
contactMedium:
description: Contact medium
type: array
items:
$ref: '#/components/schemas/ContactMedium'
example: []
note:
description: Note
type: array
items:
$ref: '#/components/schemas/Note'
example: []
relatedParty:
description: Related party
type: array
items:
$ref: '#/components/schemas/RelatedPartyOrPartyRole'
example: []
relatedPlace:
description: Related place defines (by reference or value) the place where the appointment will take place.
$ref: '#/components/schemas/RelatedPlaceRefOrValue'
status:
$ref: '#/components/schemas/AppointmentStateType'
validFor:
$ref: '#/components/schemas/TimePeriod'
AppointmentRefOrValue:
description: Appointment reference and value
type: object
discriminator:
propertyName: '@type'
oneOf:
- $ref: '#/components/schemas/AppointmentRef'
- $ref: '#/components/schemas/Appointment'
EntityRefOrValue:
description: An entity ref or value
type: object
discriminator:
propertyName: '@type'
oneOf:
- $ref: '#/components/schemas/Entity'
- $ref: '#/components/schemas/EntityRef'
RelatedEntityRefOrValue:
description: A reference to an entity, where the type of the entity is not known in advance. A related entity defines a entity described by reference or by value linked to a specific entity. The polymorphic attributes @type, @schemaLocation & @referredType are related to the Entity and not the RelatedEntityRefOrValue class itself
type: object
allOf:
- $ref: '#/components/schemas/Extensible'
- type: object
required:
- role
- entity
properties:
role:
description: Role played by the related entity
type: string
example: ''
entity:
$ref: '#/components/schemas/EntityRefOrValue'
Message:
description: A message described as a combination of a text and a code with additional info where required.
type: object
properties:
code:
description: Predefined code corresponding to the message
type: string
example: '00'
text:
description: Predefined text describing the message corresponding to the code
type: string
example: Lorem ipsum dolor
additionalInformation:
description: additional textual information for the message
type: string
example: Lorem ipsum dolor
messageSource:
description: Predefined text describing the message corresponding to the code (e.g. Related)
type: string
example: Related
StatusChange:
description: Holds the status, messages and associated date the status changed, populated by the server
allOf:
- $ref: '#/components/schemas/Extensible'
- type: object
required:
- statusChangeDate
- status
properties:
statusChangeDate:
description: The date and time the status changed.
type: string
format: date-time
example: '2023-01-01T08:00:00+01:00'
statusChangeMessage:
description: Message for the status change described as a combination of a text and a code.
type: array
items:
$ref: '#/components/schemas/Message'
example: []
status:
description: The status of the API resource
type: string
example: ''
discriminator:
propertyName: '@type'
mapping:
StatusChange: '#/components/schemas/StatusChange'
JeopardyAlert:
allOf:
- $ref: '#/components/schemas/Extensible'
- type: object
description: |-
A JeopardyAlert represents a predicted exception during a process that may cause a risk
to complete successfully the process.
properties:
id:
description: Identifier of the JeopardyAlert
type: string
example: 2d7ed5fd-9f62-4211-bc84-357f5f7b80f5
alertDate:
description: A date time( DateTime). The date that the alert issued
type: string
format: date-time
example: '2023-01-01T08:00:00+01:00'
name:
description: A string used to give a name to the jeopardy alert
type: string
example: alert name
jeopardyAlertMessage:
description: Text and code that represents the message of the jeopardy alert
type: array
items:
$ref: '#/components/schemas/Message'
example: []
estimatedAlertEndDate:
description: A date time(DateTime). The estimated date of the alert ending
type: string
format: date-time
example: '2023-01-01T08:00:00+01:00'
exception:
description: The exception associated with this jeopardy alert
type: string
discriminator:
propertyName: '@type'
mapping:
JeopardyAlert: '#/components/schemas/JeopardyAlert'
Milestone:
allOf:
- $ref: '#/components/schemas/Extensible'
- type: object
description: |-
Milestone represents an action or event marking a significant change or stage in a
process like an order process.
properties:
id:
description: Identifier of the Milestone
type: string
example: 2d7ed5fd-9f62-4211-bc84-357f5f7b80f5
milestoneDate:
description: A date time( DateTime). The date that the milestone happens
type: string
format: date-time
example: '2023-01-01T08:00:00+01:00'
name:
description: A string used to give a name to the milestone
type: string
example: milestone name
milestoneMessage:
description: Text and code that represents the message of the milestone
type: array
items:
$ref: '#/components/schemas/Message'
example: []
relatedState:
description: |-
Documents the state of the related API Resource at the time of the
Milestone
type: string
example: active
discriminator:
propertyName: '@type'
mapping:
Milestone: '#/components/schemas/Milestone'
ErrorMessage:
description: Used when an API throws an Error, typically with a HTTP error response-code (3xx, 4xx, 5xx)
allOf:
- $ref: '#/components/schemas/Extensible'
- type: object
required:
- code
- reason
properties:
code:
description: Application relevant detail, defined in the API or a common list.
type: string
example: '0995'
reason:
description: Explanation of the reason for the error which can be shown to a client user.
type: string
example: human error
message:
description: More details and corrective actions related to the error which can be shown to a client user.
type: string
example: Datenstruktur unzulässig.
status:
description: HTTP Error code extension
type: string
example: not found
referenceError:
description: URI of documentation describing the error.
type: string
format: uri
example: https://api.example.org/error/id
example:
'@type': ErrorMessage
code: '0995'
reason: human error
message: Datenstruktur unzulässig.
status: not found
referenceError: https://api.example.org/error/id
Extensible_FVO:
description: Base Extensible schema for use in TMForum Open-APIs - When used for in a schema it means that the Entity described by the schema MUST be extended with the @type
type: object
properties:
'@type':
description: When sub-classing, this defines the sub-class Extensible name
type: string
example: ''
'@baseType':
description: When sub-classing, this defines the super-class
type: string
example: ''
'@schemaLocation':
description: A URI to a JSON-Schema file that defines additional attributes and relationships
type: string
example: ''
discriminator:
propertyName: '@type'
required:
- '@type'
TaskStateType:
description: |-
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.
type: string
enum:
- acknowledged
- rejected
- inProgress
- done
TaskEntity:
description: Base schema for task resource entities
allOf:
- $ref: '#/components/schemas/Entity'
- type: object
properties:
state:
$ref: '#/components/schemas/TaskStateType'
requestDate:
description: Date when the task resource was created
type: string
format: date-time
example: '2023-01-01T08:00:00+01:00'
requestPostedDate:
description: Date when the request was posted
type: string
format: date-time
example: '2023-01-01T08:00:00+01:00'
entity:
$ref: '#/components/schemas/EntityRef'
required:
- state
- entity
- requestDate
- requestPostedDate
StateChange:
description: Holds the state notification message and associated date the state changed, populated by the server
allOf:
- $ref: '#/components/schemas/Extensible'
- type: object
required:
- stateChangeDate
- state
properties:
stateChangeDate:
description: The date and time the state changed.
type: string
format: date-time
example: '2023-01-01T08:00:00+01:00'
stateChangeMessage:
description: Message for the state change described as a combination of a text and a code.
type: array
items:
$ref: '#/components/schemas/Message'
example: []
state:
description: The state of the API resource
type: string
example: ''
Entity_FVO:
description: Base entity schema for use in TMForum Open-APIs.
allOf:
- $ref: '#/components/schemas/Extensible'
- type: object
properties:
id:
description: Unique identifier
type: string
example: 2d7ed5fd-9f62-4211-bc84-357f5f7b80f5
TaskEntity_FVO:
description: |-
Base schema for task resource FVO entities
Skipped properties: state, requestDate
allOf:
- $ref: '#/components/schemas/Entity_FVO'
- type: object
properties:
requestPostedDate:
description: Date when the request was posted
type: string
format: date-time
example: '2023-01-01T08:00:00+01:00'
entity:
$ref: '#/components/schemas/EntityRef'
required:
- entity
- requestPostedDate
Event:
description: event with common attributes.
allOf:
- $ref: '#/components/schemas/Extensible'
- type: object
properties:
eventId:
description: The identifier of the notification.
type: string
example: 2d7ed5fd-9f62-4211-bc84-357f5f7b80f5
eventTime:
description: Time of the event occurrence.
type: string
format: date-time
example: '2023-01-01T08:00:00+01:00'
eventType:
description: The type of the notification.
type: string
example: ''
description:
description: An explanatory of the event.
type: string
example: Lorem ipsum dolor
timeOccurred:
description: The time the event occurred.
type: string
format: date-time
example: '2023-01-01T08:00:00+01:00'
source:
description: Source Entity described by EntityRef
$ref: '#/components/schemas/EntityRef'
reportingSystem:
description: Reporting System described by EntityRef
$ref: '#/components/schemas/EntityRef'
required:
- eventId
- eventTime
- eventType
- event
FieldPath:
description: Field path
type: object
properties:
path:
description: Path of updated attribute
type: string
example: /productOrderItem/0/product/terminationDate
typeOfChange:
description: Type of change
type: string
example: add
required:
- path
AttributeValueChangeEvent:
description: Attribute value change event
allOf:
- $ref: '#/components/schemas/Event'
- type: object
properties:
fieldPath:
description: Field path
type: array
items:
$ref: '#/components/schemas/FieldPath'
example: []
JsonPatch:
description: A JSONPatch document as defined by RFC 6902
properties:
op:
description: |-
The operation to be performed:
- *add*: TODO
- *remove*: TODO
- *replace*: TODO
- *move*: TODO
- *copy*: TODO
- *test*: TODO
type: string
enum:
- add
- remove
- replace
- move
- copy
- test
example: add
path:
description: A JSON-Pointer
type: string
example: /productOrderItem/0/product/terminationDate
value:
description: The value to be used within the operations.
example: ''
from:
description: A string containing a JSON Pointer value.
type: string
example: /productOrderItem/0/product/terminationDate
required:
- op
- path
EntitySpecification:
allOf:
- $ref: '#/components/schemas/Entity'
- type: object
description: |-
EntitySpecification is a class that offers characteristics to describe a type of entity.
Entities are generic constructs that may be used to describe bespoke business entities
that are not effectively covered by the existing SID model.
Functionally, the entity specification acts as a template by which entities may be
instantiated and described. By sharing the same specification, these entities would
therefore share the same set of characteristics.
Note: The 'configurable' attribute on the specCharacteristics determines if an entity
instantiated from the entity specification can override the value of the attribute. When
set to false, the entity instance may not define a value that differs from the value in
the specification.
properties:
name:
description: Name given to the specification
type: string
example: EntityName
description:
description: Description of the specification
type: string
example: Lorem ipsum dolor
lastUpdate:
description: Date and time of the last update of the specification
type: string
format: date-time
example: '2023-01-01T08:00:00+01:00'
lifecycleStatus:
description: Used to indicate the current lifecycle status of this catalog item
type: string
example: active
isBundle:
description: |-
Determines whether specification represents a single specification (false),
or a bundle of specifications (true).
example: true
type: boolean
validFor:
$ref: '#/components/schemas/TimePeriod'
version:
description: Specification version
type: string
example: '1.0'
attachment:
description: |-
Attachments that may be of relevance to this specification, such as picture,
document, media
type: array
items:
$ref: '#/components/schemas/AttachmentRefOrValue'
example: []
targetEntitySchema:
$ref: '#/components/schemas/TargetEntitySchema'
specCharacteristic:
description: List of characteristics that the entity can take
type: array
items:
$ref: '#/components/schemas/CharacteristicSpecification'
example: []
relatedParty:
description: Parties who manage or otherwise have an interest in this specification
type: array
items:
$ref: '#/components/schemas/RelatedPartyOrPartyRole'
example: []
discriminator:
propertyName: '@type'
mapping:
EntitySpecification: '#/components/schemas/EntitySpecification'
TargetEntitySchema:
description: |-
The reference object to the schema and type of target entity which is described by a
specification
type: object
properties:
'@type':
description: Class type of the target entity
type: string
example: ''
'@schemaLocation':
description: This field provides a link to the schema describing the target entity
type: string
example: ''
CharacteristicSpecification:
allOf:
- $ref: '#/components/schemas/Extensible'
- type: object
description: This class defines a characteristic specification.
properties:
id:
description: Unique ID for the characteristic
type: string
example: 2d7ed5fd-9f62-4211-bc84-357f5f7b80f5
name:
description: |-
A word, term, or phrase by which this characteristic specification is known and
distinguished from other characteristic specifications.
type: string
example: characteristic specification name
valueType:
description: |-
A kind of value that the characteristic can take on, such as numeric, text and so
forth
type: string
example: Lorem ipsum dolor
description:
description: A narrative that explains the CharacteristicSpecification.
type: string
example: Lorem ipsum dolor
configurable:
description: If true, the Boolean indicates that the target Characteristic is configurable
type: boolean
example: true
validFor:
$ref: '#/components/schemas/TimePeriod'
minCardinality:
description: |-
The minimum number of instances a CharacteristicValue can take on. For example, zero
to five phone numbers in a group calling plan, where zero is the value for the
minCardinality.
type: integer
example: 2
maxCardinality:
description: |-
The maximum number of instances a CharacteristicValue can take on. For example, zero
to five phone numbers in a group calling plan, where five is the value for the
maxCardinality.
type: integer
example: 5
isUnique:
description: |-
Specifies if the value of this characteristic is unique across all entities
instantiated from the specification that uses this characteristc. For example,
consider a ProductSpecification for a set-top box, with a
CharacteristicSpecification cardID. Each set-top box must have a different value for
cardID, so this isUnique attribute would be set to true for the characteristic.
type: boolean
example: false
regex:
description: |-
A rule or principle represented in regular expression used to derive the value of a
characteristic value.
type: string
example: ''
extensible:
description: |-
An indicator that specifies that the values for the characteristic can be extended
by adding new values when instantiating a characteristic for a resource.
type: boolean
example: false
'@valueSchemaLocation':
description: This (optional) field provides a link to the schema describing the value type.
type: string
example: https://schemas.example.com/example/schema
characteristicValueSpecification:
description: |-
A CharacteristicValueSpecification object is used to define a set of attributes,
each of which can be assigned to a corresponding set of attributes in a
CharacteristicSpecification object. The values of the attributes in the
CharacteristicValueSpecification object describe the values of the attributes that a
corresponding Characteristic object can take on.
type: array
items:
$ref: '#/components/schemas/CharacteristicValueSpecification'
example: ''
discriminator:
propertyName: '@type'
mapping:
CharacteristicSpecification: '#/components/schemas/CharacteristicSpecification'
CharacteristicValueSpecification:
allOf:
- $ref: '#/components/schemas/Extensible'
- type: object
description: |-
specification of a value (number or text or an object) that can be assigned to a
Characteristic. This is an abstract base class, the actual value is in one of the
strongly-typed subclasses
properties:
valueType:
description: |-
A kind of value that the characteristic value can take on, such as numeric, text and
so forth
type: string
example: string
isDefault:
description: |-
If true, the Boolean Indicates if the value is the default value for a
characteristic
type: boolean
example: false
unitOfMeasure:
description: |-
A length, surface, volume, dry measure, liquid measure, money, weight, time, and the
like. In general, a determinate quantity or magnitude of the kind designated, taken
as a standard of comparison for others of the same kind, in assigning to them
numerical values, as 1 foot, 1 yard, 1 mile, 1 square foot.
type: string
example: MBit/s
validFor:
$ref: '#/components/schemas/TimePeriod'
valueFrom:
description: The low range value that a characteristic can take on
type: integer
example: 0
valueTo:
description: The upper range value that a characteristic can take on
type: integer
example: 1000
rangeInterval:
description: |-
An indicator that specifies the inclusion or exclusion of the valueFrom and valueTo
attributes. If applicable, possible values are "open", "closed", "closedBottom" and
"closedTop".
type: string
example: open
regex:
description: A regular expression constraint for given value
type: string
example: ''
'@valueSchemaLocation':
description: This (optional) field provides a link to the schema describing the value type.
type: string
example: https://schemas.example.com/example/schema
discriminator:
propertyName: '@type'
mapping:
CharacteristicValueSpecification: '#/components/schemas/CharacteristicValueSpecification'
BooleanArrayCharacteristicValueSpecification: '#/components/schemas/BooleanArrayCharacteristicValueSpecification'
BooleanCharacteristicValueSpecification: '#/components/schemas/BooleanCharacteristicValueSpecification'
IntegerArrayCharacteristicValueSpecification: '#/components/schemas/IntegerArrayCharacteristicValueSpecification'
IntegerCharacteristicValueSpecification: '#/components/schemas/IntegerCharacteristicValueSpecification'
NumberArrayCharacteristicValueSpecification: '#/components/schemas/NumberArrayCharacteristicValueSpecification'
NumberCharacteristicValueSpecification: '#/components/schemas/NumberCharacteristicValueSpecification'
ObjectArrayCharacteristicValueSpecification: '#/components/schemas/ObjectArrayCharacteristicValueSpecification'
ObjectCharacteristicValueSpecification: '#/components/schemas/ObjectCharacteristicValueSpecification'
StringArrayCharacteristicValueSpecification: '#/components/schemas/StringArrayCharacteristicValueSpecification'
StringCharacteristicValueSpecification: '#/components/schemas/StringCharacteristicValueSpecification'
BooleanArrayCharacteristicValueSpecification:
allOf:
- $ref: '#/components/schemas/CharacteristicValueSpecification'
- type: object
description: A specification for a characteristic for which the value is an array booleans
properties:
value:
description: TODO
type: array
items:
type: boolean
description: Characteristic specification item boolean value
example: true
example: []
BooleanCharacteristicValueSpecification:
allOf:
- $ref: '#/components/schemas/CharacteristicValueSpecification'
- type: object
description: A specification for a characteristic for which the value is a boolean
properties:
value:
description: Value of the characteristic
type: boolean
example: true
IntegerArrayCharacteristicValueSpecification:
allOf:
- $ref: '#/components/schemas/CharacteristicValueSpecification'
- type: object
description: |-
A specification for a characteristic for which the value is a number array of format
integer
properties:
value:
description: TODO
type: array
items:
type: integer
description: Characteristic value
example: 1
example: []
IntegerCharacteristicValueSpecification:
allOf:
- $ref: '#/components/schemas/CharacteristicValueSpecification'
- type: object
description: A specification for a characteristic for which the value is an integer number
properties:
value:
description: Value of the characteristic
type: integer
example: 1
NumberArrayCharacteristicValueSpecification:
allOf:
- $ref: '#/components/schemas/CharacteristicValueSpecification'
- type: object
description: |-
A specification for a characteristic for which the value is a number array with no
specific format
properties:
value:
description: TODO
type: array
items:
type: number
description: Characteristic value
example: 1
example: []
NumberCharacteristicValueSpecification:
allOf:
- $ref: '#/components/schemas/CharacteristicValueSpecification'
- type: object
description: |-
A specification for a characteristic for which the value is a number of no specific
format
properties:
value:
description: Value of the characteristic
type: number
example: 1
ObjectArrayCharacteristicValueSpecification:
allOf:
- $ref: '#/components/schemas/CharacteristicValueSpecification'
- type: object
description: A specification for a characteristic for which the value is an array of objects
properties:
value:
description: A specification for a list of characteristics for which the value is a object
type: array
items:
type: object
description: Characteristic value
example: ''
example: []
ObjectCharacteristicValueSpecification:
allOf:
- $ref: '#/components/schemas/CharacteristicValueSpecification'
- type: object
description: A specification for a characteristic for which the value is any object
properties:
value:
description: Value of the characteristic
type: object
example: ''
StringArrayCharacteristicValueSpecification:
allOf:
- $ref: '#/components/schemas/CharacteristicValueSpecification'
- type: object
description: A specification for a characteristic for which the value is an array of strings
properties:
value:
description: A specification for a list of of characteristics for which the value is a string
type: array
items:
type: string
description: Characteristic value
example: example
example: []
StringCharacteristicValueSpecification:
allOf:
- $ref: '#/components/schemas/CharacteristicValueSpecification'
- type: object
description: A specification for a characteristic for which the value is a string
properties:
value:
description: Value of the characteristic
type: string
example: example
examples:
CreateTroubleTicket_request:
description: POST TroubleTicket Request Example
value:
$schema: '##SCHEMA_PATH##'
'@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
CreateInflightChangeTroubleTicket_request:
description: POST InflightChangeTroubleTicket Request Example
value:
$schema: '##SCHEMA_PATH##'
'@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'
TroubleTicketAttributeValueChangeEvent_request:
description: Message example for TroubleTicketAttributeValueChangeEvent_request event
value:
$schema: '##SCHEMA_PATH##'
'@type': TroubleTicketAttributeValueChangeEvent
eventId: 9436cffe-68b9-42f7-9f93-ef154f7bb8a6
eventTime: '2024-03-09T15:30:00+01:00'
eventType: TroubleTicketAttributeValueChangeEvent
fieldPath:
- path: /note
typeOfChange: add
- path: /resolutionDate
typeOfChange: add
- path: /relatedParty/-
typeOfChange: add
event:
troubleTicket:
'@type': FaultTicket
id: ac925eed-111b-4558-82e3-c48153c8c95c
href: https://api.example.org/tmf-api/troubleTicketManagement/v5/troubleTicket/ac925eed-111b-4558-82e3-c48153c8c95c
description: Internetverbindung fällt mehrmals pro Tag aus
orderPostedDate: '2024-02-08T08:00:00+01:00'
ticketType: fault
creationDate: '2024-02-08T08:00:10+01:00'
requestedResolutionDate: '2024-03-08T00:00:00+01:00'
resolutionDate: '2024-03-09T15:30:00+01:00'
externalIdentifier:
- '@type': ExternalIdentifier
id: '1000222'
externalIdentifierType: troubleTicketExternalId
owner: DEU.VFD
note:
- '@type': TroubleTicketRemark
text: Anschluss läuft wieder
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.
- '@type': RelatedPartyOrPartyRole
role: orderManagementSellerContact
partyOrPartyRole:
'@type': Individual
contactMedium:
- '@type': PhoneContactMedium
contactType: fixed
phoneNumber: '0221789456'
- '@type': PhoneContactMedium
contactType: mobile
phoneNumber: '01717894560221'
- '@type': EmailContactMedium
contactType: email
emailAddress: l.bach@example.net
familyName: Bach
salutation: Frau
givenName: Lisa
status: inProgress
statusChangeDate: '2024-02-08T16:00:00+01:00'
statusChangeMessage:
- code: '0000'
text: Keine Änderung zum Auftrag
statusChangeHistory:
- '@type': StatusChange
statusChangeDate: '2024-02-08T08:00:10+01:00'
status: acknowledged
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
TroubleTicketInformationRequiredEvent_request:
description: Message example for TroubleTicketInformationRequiredEvent event
value:
$schema: '##SCHEMA_PATH##'
'@type': TroubleTicketInformationRequiredEvent
eventId: 6d18e234-8559-4432-aed0-5f1d003fce73
eventTime: '2024-02-08T17:30:00+01:00'
eventType: TroubleTicketInformationRequiredEvent
fieldPath:
- path: /requestedTimeSlot
typeOfChange: replace
event:
troubleTicket:
'@type': FaultTicket
id: ac925eed-111b-4558-82e3-c48153c8c95c
href: https://api.example.org/tmf-api/troubleTicketManagement/v5/troubleTicket/ac925eed-111b-4558-82e3-c48153c8c95c
description: Internetverbindung fällt mehrmals pro Tag aus
orderPostedDate: '2024-02-08T08:00:00+01:00'
ticketType: fault
creationDate: '2024-02-08T08:00:10+01:00'
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.
status: pending
statusChangeDate: '2024-02-08T17:00:00+01:00'
statusChangeMessage:
- code: '6000'
text: Endkunde hat Herstellung zurückgestellt/verweigert.
statusChangeHistory:
- '@type': StatusChange
statusChangeDate: '2024-02-08T08:00:10+01:00'
status: acknowledged
- '@type': StatusChange
statusChangeDate: '2024-02-08T16:00:00+01:00'
statusChangeMessage:
- code: '0000'
text: Keine Änderung zum Auftrag
status: inProgress
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
TroubleTicketStatusChangeEvent_request:
description: Message example for TroubleTicketStatusChangeEvent event
value:
$schema: '##SCHEMA_PATH##'
'@type': TroubleTicketStatusChangeEvent
eventId: d09381ea-bff0-4c4b-8698-05cdbc347188
eventTime: '2024-02-08T16:00:00+01:00'
eventType: TroubleTicketStatusChangeEvent
event:
troubleTicket:
'@type': FaultTicket
id: ac925eed-111b-4558-82e3-c48153c8c95c
href: https://api.example.org/tmf-api/troubleTicketManagement/v5/troubleTicket/ac925eed-111b-4558-82e3-c48153c8c95c
description: Internetverbindung fällt mehrmals pro Tag aus
orderPostedDate: '2024-02-08T08:00:00+01:00'
ticketType: fault
creationDate: '2024-02-08T08:00:10+01:00'
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.
status: inProgress
statusChangeDate: '2024-02-08T16:00:00+01:00'
statusChangeMessage:
- code: '0000'
text: Keine Änderung zum Auftrag
statusChangeHistory:
- '@type': StatusChange
statusChangeDate: '2024-02-08T08:00:10+01:00'
status: acknowledged
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
TroubleTicketResolvedEvent_request:
description: Message example for TroubleTicketStatusChangeEvent event
value:
$schema: '##SCHEMA_PATH##'
'@type': TroubleTicketStatusChangeEvent
eventId: cad34f21-f37f-4141-b123-9ccea07f1c21
eventTime: '2024-03-24T00:00:00+01:00'
eventType: TroubleTicketStatusChangeEvent
event:
troubleTicket:
'@type': FaultTicket
id: ac925eed-111b-4558-82e3-c48153c8c95c
href: https://api.example.org/tmf-api/troubleTicketManagement/v5/troubleTicket/ac925eed-111b-4558-82e3-c48153c8c95c
description: Internetverbindung fällt mehrmals pro Tag aus
orderPostedDate: '2024-02-08T08:00:00+01:00'
ticketType: fault
creationDate: '2024-02-08T08:00:10+01:00'
requestedResolutionDate: '2024-03-08T00:00:00+01:00'
resolutionDate: '2024-03-09T15:30:00+01:00'
externalIdentifier:
- '@type': ExternalIdentifier
id: '1000222'
externalIdentifierType: troubleTicketExternalId
owner: DEU.VFD
note:
- '@type': TroubleTicketRemark
text: Anschluss läuft wieder
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.
- '@type': RelatedPartyOrPartyRole
role: orderManagementSellerContact
partyOrPartyRole:
'@type': Individual
contactMedium:
- '@type': PhoneContactMedium
contactType: fixed
phoneNumber: '0221789456'
- '@type': PhoneContactMedium
contactType: mobile
phoneNumber: '01717894560221'
- '@type': EmailContactMedium
contactType: email
emailAddress: l.bach@example.net
familyName: Bach
salutation: Frau
givenName: Lisa
status: resolved
statusChangeDate: '2024-03-24T00:00:00+01:00'
statusChangeMessage:
- code: '7000'
text: Fehler beseitigt.
statusChangeHistory:
- '@type': StatusChange
statusChangeDate: '2024-02-08T08:00:10+01:00'
status: acknowledged
- '@type': StatusChange
statusChangeDate: '2024-02-08T16:00:00+01:00'
statusChangeMessage:
- code: '0000'
text: Keine Änderung zum Auftrag
status: inProgress
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
InflightChangeTroubleTicketStateChangeEvent_request:
description: Message example for InflightChangeTroubleTicketStateChangeEvent event
value:
$schema: '##SCHEMA_PATH##'
'@type': InflightChangeTroubleTicketStateChangeEvent
eventId: 2285ace1-f11b-4de0-8f12-f9143b839fbd
eventTime: '2024-02-09T17:30:10+01:00'
eventType: InflightChangeTroubleTicketStateChangeEvent
event:
inflightChangeTroubleTicket:
'@type': InflightChangeTroubleTicket
id: 33359a1e-134f-4b0f-98a8-acc91cf5bffe
href: https://api.example.org/tmf-api/troubleTicketManagement/v5/inflightChangeTroubleTicket/33359a1e-134f-4b0f-98a8-acc91cf5bffe
state: inProgress
requestDate: '2024-02-09T17:30:10+01:00'
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
troubleTicket:
'@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
stateChangeDate: '2024-02-09T17:30:10+01:00'
stateChangeHistory:
- '@type': StateChange
stateChangeDate: '2024-02-09T17:30:10+01:00'
state: acknowledged
stateChangeMessage:
- code: '0010'
text: Auftrag ausgeführt
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'
TroubleTicket_list_example_response:
value:
- id: '3180'
href: https://mycsp.com:8080/tmf-api/troubleTicket/v5/troubleTicket/3180
name: complaint over last bill
priority: High
'@type': TroubleTicket
- id: '3256'
href: https://mycsp.com:8080/tmf-api/troubleTicket/v5/troubleTicket/3256
name: 'Coversage problem '
priority: High
'@type': TechnicalTroubleTicket
- id: '4563'
href: https://mycsp.com:8080/tmf-api/troubleTicket/5/troubleTicket/4563
name: Network latency
priority: High
'@type': NetworkTroubleTicket
description: Here's an example of a request for retrieving a list of trouble ticket(s). The given filter criteria is priority High and fields id,href,name,@type,priority
TroubleTicket_retrieve_example_response:
value:
id: '3180'
href: https://mycsp.com:8080/tmf-api/troubleTicket/v5/troubleTicket/3180
creationDate: '2022-05-31T07:34:45.968Z'
description: 'I do not accept the last VOD charge, since the movie was constantly interrupted, I had to quick watching the movie in the middle '
expectedResolutionDate: '2019-06-10T07:34:45.968Z'
lastUpdateDate: '2022-05-31T07:34:45.968Z'
name: complaint over last bill
priority: High
requestedResolutionDate: '2022-05-31T07:34:45.968Z'
resolutionDate: '2022-05-31T07:34:45.968Z'
severity: Minor
status: resolved
statusChangeDate: '2022-05-31T07:34:45.968Z'
statusChangeMessage: Apply full credit
ticketType: Bill Dispute
troubleTicketCharacteristic:
- id: '1'
name: disputeAmount
valueType: Number
value: '40'
'@type': NumberCharacteristic
- id: '2'
name: creditAmount
valueType: Number
value: '40'
characteristicRelationship:
- id: '4'
relationshipType: dependency
'@type': CharacteristicRelationship
'@type': NumberCharacteristic
- id: '3'
name: currency
valueType: String
value: USD
'@type': StringCharacteristic
- id: '4'
name: creditReason
valueType: String
value: Network connectivity issues
'@type': StringCharacteristic
attachment:
- description: Scanned disputed bill
mimeType: image/png
name: March Bill
url: https://mycsp.com:7070/docloader?docnum=3534555
'@type': AttachmentRef
channel:
id: '8774'
name: self service
'@type': ChannelRef
note:
- id: '77456'
author: Jack Smith
date: '2019-05-31T07:34:45.968Z'
text: This is quite important, please approach me as soon as possible
'@type': Note
relatedEntity:
- role: disputedBill
'@type': RelatedEntity
entity:
id: '3472'
href: https://mycsp.com:8080/tmf-api/customerBillManagement/v4/customerBill/8297
name: March 2019 Bill
'@type': EntityRef
'@referredType': CustomerBill
relatedParty:
- role: member
partyOrPartyRole:
id: '9866'
href: https://mycsp.com:8080/tmf-api/partyManagement/v1/individual/9866
name: Sandy Smith
'@type': PartyRef
'@referredType': Individual
'@type': RelatedPartyOrPartyRole
- role: reporter
'@type': RelatedPartyOrPartyRole
partyOrPartyRole:
name: Jacob Jac Miller
contactMedium:
- contactType: business email
emailAddress: jacobJac@telco.com
'@type': EmailContactMedium
'@type': Individual
- role: customer
partyOrPartyRole:
id: '9176'
href: https://mycsp.com:8080/tmf-api/partyManagement/v4/customer/9176
name: Jack Smith
'@type': PartyRoleRef
'@referredType': Customer
'@type': RelatedPartyOrPartyRole
statusChangeHistory:
- statusChangeDate: '2022-05-28T07:34:45.968Z'
statusChangeMessage: 'trouble ticket created '
status: acknowledged
'@type': StatusChange
- statusChangeDate: '2022-05-28T08:34:45.968Z'
statusChangeMessage: start process
status: inProgress
'@type': StatusChange
- statusChangeDate: '2022-05-29T07:34:45.968Z'
statusChangeMessage: Need more information from the customer
status: pending
'@type': StatusChange
- statusChangeDate: '2022-05-31T07:34:45.968Z'
statusChangeMessage: Apply full credit
status: resolved
'@type': StatusChange
troubleTicketRelationship:
- id: '567433'
href: https://mycsp.com:8080/tmf-api/troubleTicket/v5/troubleTicket/567433
name: Network Coverage
relationshipType: dependecy
'@type': TroubleTicketRelationship
externalIdentifier:
- id: '3331234'
owner: BMC Remedy
externalIdentifierType: Incident
'@type': ExternalIdentifier
'@schemaLocation': https://mycsp.com:8080/tmf-api/troubleTicket/5/schema/troubleTicket.yaml
'@type': TroubleTicket
description: Here's an example of a request for retrieving a spesific trouble ticket with id 3180.
TroubleTicket_create_example_request:
value:
name: complaint over last bill
description: 'I do not accept the last VOD charge, since the movie was constantly interrupted, I had to quick watching the movie in the middle '
severity: Major
status: inProgress
ticketType: Bill Dispute
expectedResolutionDate: '2019-06-10T07:34:45.968Z'
requestedResolutionDate: '2022-05-31T07:34:45.968Z'
attachment:
- description: Scanned disputed bill
mimeType: image/png
name: March Bill
url: https://mycsp.com:7070/docloader?docnum=3534555
'@type': AttachmentRef
channel:
id: '8774'
name: self service
'@type': ChannelRef
note:
- id: '77456'
author: Jack Smith
date: '2022-05-31T07:34:45.968Z'
text: This is quite important, please approach me as soon as posible
'@type': Note
relatedEntity:
- role: disputedBill
'@type': RelatedEntity
entity:
id: '3472'
href: https://mycsp.com:8080/tmf-api/customerBillManagement/v5/customerBill/8297
name: March 2019 Bill
'@type': EntityRef
'@referredType': CustomerBill
relatedParty:
- role: member
'@type': RelatedPartyOrPartyRole
partyOrPartyRole:
id: '9866'
href: https://mycsp.com:8080/tmf-api/partyManagement/v1/individual/9866
name: Sandy Smith
'@type': PartyRef
'@referredType': Individual
- role: reporter
'@type': RelatedPartyOrPartyRole
partyOrPartyRole:
name: Jacob Jac Miller
contactMedium:
- contactType: business email
emailAddress: jacobJac@telco.com
'@type': EmailContactMedium
'@type': Individual
- role: customer
'@type': RelatedPartyOrPartyRole
partyOrPartyRole:
id: '9176'
href: https://mycsp.com:8080/tmf-api/partyManagement/v4/customer/9176
name: Jack Smith
'@type': PartyRoleRef
'@referredType': Customer
'@type': TroubleTicket
description: POST trouble ticket request example - only a subset of trouble ticket attributes are used in this example
TroubleTicket_create_example_response:
value:
id: '3180'
href: https://mycsp.com:8080/tmf-api/troubleTicket/v4/troubleTicket/3180
creationDate: '2022-05-31T07:34:45.968Z'
description: 'I do not accept the last VOD charge, since the movie was constantly interrupted, I had to quick watching the movie in the middle '
expectedResolutionDate: '2019-06-10T07:34:45.968Z'
lastUpdateDate: '2022-05-31T07:34:45.968Z'
name: complaint over last bill
priority: High
requestedResolutionDate: '2019-05-31T07:34:45.968Z'
severity: Major
status: pending
statusChangeDate: '2019-05-31T07:34:45.968Z'
statusChangeMessage: Need more information from the customer
ticketType: Bill Dispute
attachment:
- description: Scanned disputed bill
mimeType: image/png
name: March Bill
url: https://mycsp.com:7070/docloader?docnum=3534555
channel:
id: '8774'
name: self service
'@type': ChannelRef
note:
- id: '77456'
author: Jack Smith
date: '2019-05-31T07:34:45.968Z'
text: This is quite important, please approach me as soon as possible
'@type': Note
relatedEntity:
- role: disputedBill
'@type': RelatedEntity
entity:
id: '3472'
href: https://mycsp.com:8080/tmf-api/customerBillManagement/v5/customerBill/8297
name: March 2019 Bill
'@type': EntityRef
'@referredType': CustomerBill
relatedParty:
- role: member
'@type': RelatedPartyOrPartyRole
partyOrPartyRole:
id: '9866'
href: https://mycsp.com:8080/tmf-api/partyManagement/v1/individual/9866
name: Sandy Smith
'@type': PartyRef
'@referredType': Individual
- role: reporter
'@type': RelatedPartyOrPartyRole
partyOrPartyRole:
name: Jacob Jac Miller
contactMedium:
- contactType: business email
emailAddress: jacobJac@telco.com
'@type': EmailContactMedium
'@type': Individual
- role: customer
'@type': RelatedPartyOrPartyRole
partyOrPartyRole:
id: '9176'
href: https://mycsp.com:8080/tmf-api/partyManagement/v4/customer/9176
name: Jack Smith
'@type': PartyRoleRef
'@referredType': Customer
statusChangeHistory:
- statusChangeDate: '2019-05-31T07:34:45.968Z'
statusChangeMessage: Need more information from the customer
status: pending
'@type': StatusChange
troubleTicketRelationship:
- id: '567433'
href: https://mycsp.com:8080/tmf-api/troubleTicket/v5/troubleTicket/567433
name: Network Coverage
relationshipType: dependecy
'@schemaLocation': https://mycsp.com:8080/tmf-api/troubleTicket/v5/schema/troubleTicket.yaml
'@type': TroubleTicket
description: POST Trouble Ticket response description.
TroubleTicket_partialupdate_example_application_json_response:
value:
id: '3180'
href: https://mycsp.com:8080/tmf-api/troubleTicket/v5/troubleTicket/3180
creationDate: '2022-05-31T07:34:45.968Z'
description: 'I do not accept the last VOD charge, since the movie was constantly interrupted, I had to quick watching the movie in the middle '
expectedResolutionDate: '2019-06-10T07:34:45.968Z'
lastUpdateDate: '2022-06-01T07:34:45.968Z'
name: complaint over last bill
priority: High
requestedResDateolutionDate: '2022-05-31T07:34:45.968Z'
resolutionDate: '2022-06-01T07:34:45.968Z'
severity: Major
status: resolved
statusChangeDate: '2022-06-01T07:34:45.968Z'
statusChangeMessage: Give credit and resent bill to customer
ticketType: Bill Dispute
attachment:
- description: Scanned disputed bill
mimeType: image/png
name: March Bill
url: https://mycsp.com:7070/docloader?docnum=3534555
channel:
id: '8774'
name: self service
'@type': ChannelRef
note:
- id: '77456'
author: Jack Smith
date: '2022-05-31T07:34:45.968Z'
text: This is quite important, please approach me as soon as possible
'@type': Note
relatedEntity:
- id: '3472'
href: https://mycsp.com:8080/tmf-api/customerBillManagement/v5/customerBill/8297
name: March 2022 Bill
role: disputedBill
'@type': RelatedEntity
'@referredType': CustomerBill
relatedParty:
- id: '9866'
href: https://mycsp.com:8080/tmf-api/partyManagement/5/individual/9866
name: Sandy Smith
role: member
'@referredType': Individual
- id: '9176'
href: https://mycsp.com:8080/tmf-api/partyManagement/v5/customer/9176
name: Jack Smith
role: customer
'@referredType': Customer
statusChangeHistory:
- statusChangeDate: '2022-05-31T07:34:45.968Z'
statusChangeMessage: Need more information from the customer
status: pending
'@type': StatusChange
- changeDate: '2022-06-01T07:34:45.968Z'
changeMessage: Give credit and resent bill to customer
status: resolved
'@type': StatusChange
troubleTicketRelationship:
- id: '567433'
href: https://mycsp.com:8080/tmf-api/troubleTicket/v5/troubleTicket/567433
name: Network Coverage
relationshipType: dependecy
'@schemaLocation': https://mycsp.com:8080/tmf-api/troubleTicket/v5/schema/troubleTicket.yml
'@type': TroubleTicket
description: Response message
TroubleTicket_partialupdate_example_application_merge_json_request:
value:
status: resolved
statusChangeMessage: Give credit and resent bill to customer
description: Here's an example of a request for updating a trouble ticket - set status to resolved. This example illustrating patch merge, When PATCH is implemeted merge syntaxt is mandatory
TroubleTicket_partialupdate_example_application_merge_json_response:
value:
id: '3180'
href: https://mycsp.com:8080/tmf-api/troubleTicket/v5/troubleTicket/3180
creationDate: '2022-05-31T07:34:45.968Z'
description: 'I do not accept the last VOD charge, since the movie was constantly interrupted, I had to quick watching the movie in the middle '
expectedResolutionDate: '2019-06-10T07:34:45.968Z'
lastUpdateDate: '2022-06-01T07:34:45.968Z'
name: complaint over last bill
priority: High
requestedResDateolutionDate: '2022-05-31T07:34:45.968Z'
resolutionDate: '2022-06-01T07:34:45.968Z'
severity: Major
status: resolved
statusChangeDate: '2022-06-01T07:34:45.968Z'
statusChangeMessage: Give credit and resent bill to customer
ticketType: Bill Dispute
attachment:
- description: Scanned disputed bill
mimeType: image/png
name: March Bill
url: https://mycsp.com:7070/docloader?docnum=3534555
channel:
id: '8774'
name: self service
'@type': ChannelRef
note:
- id: '77456'
author: Jack Smith
date: '2022-05-31T07:34:45.968Z'
text: This is quite important, please approach me as soon as possible
'@type': Note
relatedEntity:
- id: '3472'
href: https://mycsp.com:8080/tmf-api/customerBillManagement/v5/customerBill/8297
name: March 2022 Bill
role: disputedBill
'@type': RelatedEntity
'@referredType': CustomerBill
relatedParty:
- id: '9866'
href: https://mycsp.com:8080/tmf-api/partyManagement/5/individual/9866
name: Sandy Smith
role: member
'@referredType': Individual
- id: '9176'
href: https://mycsp.com:8080/tmf-api/partyManagement/v5/customer/9176
name: Jack Smith
role: customer
'@referredType': Customer
statusChangeHistory:
- statusChangeDate: '2022-05-31T07:34:45.968Z'
statusChangeMessage: Need more information from the customer
status: pending
'@type': StatusChange
- changeDate: '2022-06-01T07:34:45.968Z'
changeMessage: Give credit and resent bill to customer
status: resolved
'@type': StatusChange
troubleTicketRelationship:
- id: '567433'
href: https://mycsp.com:8080/tmf-api/troubleTicket/v5/troubleTicket/567433
name: Network Coverage
relationshipType: dependecy
'@schemaLocation': https://mycsp.com:8080/tmf-api/troubleTicket/v5/schema/troubleTicket.yml
'@type': TroubleTicket
description: Response message
TroubleTicket_partialupdate_example_application_json_patch_request:
value:
- op: replace
path: /severity
value: Minor
- op: add
path: /note
value:
id: '77456'
author: Jack Smith
text: This is quite important, please approach me as soon as possible
description: Here's an example of a request for updating a trouble ticket - set severity to Minor and add new Note. This example illustrating patch json
TroubleTicket_partialupdate_example_application_json_patch_response:
value:
id: '3180'
href: https://mycsp.com:8080/tmf-api/troubleTicket/v5/troubleTicket/3180
creationDate: '2022-05-31T07:34:45.968Z'
description: 'I do not accept the last VOD charge, since the movie was constantly interrupted, I had to quick watching the movie in the middle '
expectedResolutionDate: '2019-06-10T07:34:45.968Z'
lastUpdateDate: '2022-05-31T07:34:45.968Z'
name: complaint over last bill
priority: Medium
requestedResolutionDate: '2022-05-31T07:34:45.968Z'
severity: Minor
status: pending
statusChangeDate: '2022-05-31T07:34:45.968Z'
statusChangeMessage: Need more information from the customer
ticketType: Bill Dispute
attachment:
- description: Scanned disputed bill
mimeType: image/png
name: March Bill
url: https://mycsp.com:7070/docloader?docnum=3534555
channel:
id: '8774'
name: self service
'@type': ChannelRef
note:
- id: '77456'
author: Jack Smith
date: '2019-05-31T07:34:45.968Z'
text: This is quite important, please approach me as soon as possible
'@type': Note
relatedEntity:
- id: '3472'
href: https://mycsp.com:8080/tmf-api/customerBillManagement/v5/customerBill/8297
name: March 2019 Bill
role: disputedBill
'@type': RelatedEntity
'@referredType': CustomerBill
relatedParty:
- id: '9866'
href: https://mycsp.com:8080/tmf-api/partyManagement/v4/individual/9866
name: Sandy Smith
role: member
'@referredType': Individual
- id: '9176'
href: https://mycsp.com:8080/tmf-api/partyManagement/v4/customer/9176
name: Jack Smith
role: customer
'@referredType': Customer
statusChangeHistory:
- statusChangeDate: '2019-05-31T07:34:45.968Z'
statusChangeMessage: Need more information from the customer
status: pending
'@type': StatusChange
troubleTicketRelationship:
- TroubleTicket:
id: '567433'
href: https://mycsp.com:8080/tmf-api/troubleTicket/v5/troubleTicket/567433
name: Network Coverage
relationshipType: dependecy
'@schemaLocation': https://mycsp.com:8080/tmf-api/troubleTicket/v5/schema/troubleTicket.yml
'@type': TroubleTicket
description: Response message
TroubleTicket_partialupdate_example_application_json_patch_query_response:
value:
id: '3180'
href: https://mycsp.com:8080/tmf-api/troubleTicket/v5/troubleTicket/3180
creationDate: '2022-05-31T07:34:45.968Z'
description: 'I do not accept the last VOD charge, since the movie was constantly interrupted, I had to quick watching the movie in the middle '
expectedResolutionDate: '2019-06-10T07:34:45.968Z'
lastUpdateDate: '2022-05-31T07:34:45.968Z'
name: complaint over last bill
priority: High
requestedResolutionDate: '2022-05-31T07:34:45.968Z'
severity: Minor
status: pending
statusChangeDate: '2022-05-31T07:34:45.968Z'
statusChangeMessage: Need more information from the customer
ticketType: Bill Dispute
attachment:
- description: Scanned disputed bill
mimeType: image/png
name: March Bill
url: https://mycsp.com:7070/docloader?docnum=3534555
channel:
id: '8774'
name: self service
'@type': ChannelRef
note:
- id: '77456'
author: Jack Smith
date: '2022-05-31T07:34:45.968Z'
text: Please approach me as soon as possible. Thanks in advance
'@type': Note
relatedEntity:
- id: '3472'
href: https://mycsp.com:8080/tmf-api/customerBillManagement/v5/customerBill/8297
name: March 2022 Bill
role: disputedBill
'@type': RelatedEntity
'@referredType': CustomerBill
relatedParty:
- id: '9866'
href: https://mycsp.com:8080/tmf-api/partyManagement/v5/individual/9866
name: Sandy Smith
role: member
'@referredType': Individual
- id: '9176'
href: https://mycsp.com:8080/tmf-api/partyManagement/v5/customer/9176
name: Jack Smith
role: customer
'@referredType': Customer
statusChangeHistory:
- statusChangeDate: '2022-05-31T07:34:45.968Z'
statusChangeMessage: Need more information from the customer
status: pending
'@type': StatusChange
troubleTicketRelationship:
- TroubleTicket:
id: '567433'
href: https://mycsp.com:8080/tmf-api/troubleTicket/v5/troubleTicket/567433
name: Network Coverage
relationshipType: dependecy
'@schemaLocation': https://mycsp.com:8080/tmf-api/troubleTicket/v5/schema/troubleTicket.yml
'@type': TroubleTicket
description: Response message
TroubleTicketCreateEvent_request:
value:
correlationId: 95003dd3-e325
description: TroubleTicketCreateEvent illustration
domain: Commercial
eventId: 4010-9b59-509a64cf85a8
eventTime: '2022-08-25T12:18:12.171Z'
eventType: TroubleTicketCreateEvent
priority: '1'
timeOcurred: '2022-08-25T12:18:06.252Z'
title: TroubleTicketCreateEvent
event:
troubleTicket:
id: '3180'
href: http://servername/troubleTicket/3180
creationDate: '2019-05-31T07:34:45.968Z'
description: 'I do not accept the last VOD charge, since the movie was constantly interrupted, I had to quick watching the movie in the middle '
expectedResolutionDate: '2019-06-10T07:34:45.968Z'
externalIdentifier: 213-9909
lastUpdateDate: '2019-05-31T07:34:45.968Z'
name: complaint over last bill
priority: High
requestedResolutionDate: '2019-05-31T07:34:45.968Z'
severity: Urgent
status: Pending
statusChangeDate: '2019-05-31T07:34:45.968Z'
statusChangeMessage: Need more information from the customer
ticketType: Bill Dispute
attachment:
- description: Scanned disputed bill
mimeType: image/png
name: March Bill
url: https://mycsp.com:7070/docloader?docnum=3534555
'@type': ' AttachmentRef'
channel:
id: '8774'
name: self service
'@type': ChannelRef
note:
- id: '77456'
author: Jack Smith
date: '2019-05-31T07:34:45.968Z'
text: This is quite important, please approach me as soon as possible
'@type': Note
relatedEntity:
- role: disputedBill
'@type': RelatedEntity
entity:
id: '3472'
href: https://mycsp.com:8080/tmf-api/customerBillManagement/v5/customerBill/8297
name: March 2019 Bill
'@type': EntityRef
'@referredType': CustomerBill
relatedParty:
- role: member
'@type': RelatedPartyOrPartyRole
partyOrPartyRole:
id: '9866'
href: https://mycsp.com:8080/tmf-api/partyManagement/v1/individual/9866
name: Sandy Smith
'@type': PartyRef
'@referredType': Individual
- role: reporter
'@type': RelatedPartyOrPartyRole
partyOrPartyRole:
id: '9867'
href: https://mycsp.com:8080/tmf-api/partyManagement/v1/individual/9867
name: Jacob Jac Miller
'@type': PartyRef
'@referredType': Individual
- role: customer
'@type': RelatedPartyOrPartyRole
partyOrPartyRole:
id: '9176'
href: https://mycsp.com:8080/tmf-api/partyManagement/v4/customer/9176
name: Jack Smith
'@type': PartyRoleRef
'@referredType': Customer
statusChangeHistory:
- statusChangeDate: '2019-05-31T07:34:45.968Z'
statusChangeMessage: Need more information from the customer
status: Pending
'@type': StatusChange
troubleTicketRelationship:
- id: '567433'
href: https://mycsp.com:8080/tmf-api/troubleTicket/v4/troubleTicket/567433
name: Network Coverage
relationshipType: dependecy
'@type': TroubleTicketRelationship
'@type': TroubleTicket
reportingSystem:
id: '759'
name: APP-745
'@type': ReportingResource
'@referredType': LogicalResource
source:
id: '705'
name: APP-317
'@type': ReportingResource
'@referredType': LogicalResource
'@baseType': Event
'@type': TroubleTicketCreateEvent
description: Message example for TroubleTicketCreateEvent event
TroubleTicketDeleteEvent_request:
value:
correlationId: 90cfc73d-deb7
description: TroubleTicketDeleteEvent illustration
domain: Commercial
eventId: 47d6-9751-40e4f01440c9
eventTime: '2022-08-25T12:18:12.202Z'
eventType: TroubleTicketDeleteEvent
priority: '4'
timeOcurred: '2022-08-25T12:18:07.224Z'
title: TroubleTicketDeleteEvent
event:
troubleTicket:
id: '3180'
href: https://host:port/troubleTicket/v5/troubleTicket/3180
'@type': TroubleTicket
reportingSystem:
id: '759'
name: APP-745
'@type': ReportingResource
'@referredType': LogicalResource
source:
id: '705'
name: APP-317
'@type': ReportingResource
'@referredType': LogicalResource
'@baseType': Event
'@type': TroubleTicketDeleteEvent
description: Message example for TroubleTicketDeleteEvent event
TroubleTicketSpecification_list_example_response:
value:
- id: '453180'
href: https://mycsp.com:8080/tmf-api/troubleTicket/v5/troubleTicketSpecification/453180
name: Billing Dispute
status: active
'@type': TroubleTicketSpecification
- id: '453256'
href: https://mycsp.com:8080/tmf-api/troubleTicket/v5/troubleTicketSpecification/453256
name: Technical TroubleTicket Specification
status: active
'@type': TechnicalTroubleTicketSpecification
- id: '454563'
href: https://mycsp.com:8080/tmf-api/troubleTicket/5/troubleTicketSpecification/454563
name: Network and latency TicketSpecification
status: active
'@type': NetworkTroubleTicketSpecification
description: |-
Here's an example of a request for retrieving a list of trouble ticket specification(s). The
given criteria is status is active
TroubleTicketSpecification_retrieve_example_response:
value:
href: https://mycsp.com:8080/tmf-api/troubleTicket/v5/troubleTicketSpecification/25632415
id: '25632415'
'@type': TroubleTicketSpecification
description: |-
This trouble ticket specification describes the characteristic and rules to apply when
creating a Trouble Ticket...
lastUpdateDate: '2022-06-22T10:36:30.709Z'
name: Bill Dispute
relatedParty:
- id: '6678'
href: https://mycsp.com:8080/tmf-api/partyManagement/v5/individual/6678
name: Sara Smith
role: approver
'@referredType': Individual
'@type': RelatedParty
status: active
troubleTicketSpecCharacteristic:
- id: '1'
configurable: true
description: |-
The amount that is on dispute, it can be the entire charge amount or partial amount of
the charge
maxCardinality: 0
minCardinality: 1
name: disputeAmount
valueType: Number
'@type': TroubleTicketSpecCharacteristic
- id: '2'
configurable: true
description: |-
The positive amount to be credit, it can be equal or less than the dispute amount. In
case credit is given a credit reason must be provided. In case no credit is given a
reject reason must be provided
maxCardinality: 0
minCardinality: 1
name: creditAmount
valueType: Number
'@type': TroubleTicketSpecCharacteristic
charSpecRelationship:
- '@type': string
'@baseType': string
'@schemaLocation': string
characteristicSpecificationId: '3'
name: creditReason
relationshipType: dependency
- id: '3'
configurable: true
description: |-
The reason for giving the credit, in case credit apply. In case no credit apply a
reject reason must be provided
maxCardinality: 0
minCardinality: 1
name: creditReason
valueType: String
'@type': TroubleTicketSpecCharacteristic
- id: '4'
configurable: true
description: The reason for rejecting the dispute, in case no credit apply.
maxCardinality: 0
minCardinality: 1
name: rejectReason
valueType: String
'@type': TroubleTicketSpecCharacteristic
- id: '5'
configurable: true
description: Currency (ISO4217 norm uses 3 letters to define the currency)
maxCardinality: 0
minCardinality: 1
name: currency
valueType: String
'@type': TroubleTicketSpecCharacteristic
validFor:
startDateTime: '2022-06-22T23:20:50.52Z'
version: '1'
description: Here's an example of a request for retrieving a spesific trouble ticket specification.
TroubleTicketSpecification_create_example_request:
value:
'@type': TroubleTicketSpecification
description: |-
This trouble ticket specification describes the characteristic and rules to apply when
creating a Trouble Ticket...
name: Bill Dispute
relatedParty:
- id: '6678'
href: https://mycsp.com:8080/tmf-api/partyManagement/v5/individual/6678
name: Sara Smith
role: approver
'@referredType': Individual
'@type': RelatedParty
troubleTicketSpecCharacteristic:
- id: '1'
configurable: true
description: |-
The amount that is on dispute, it can be the entire charge amount or partial amount of
the charge
maxCardinality: 0
minCardinality: 1
name: disputeAmount
valueType: Number
'@type': CharacteristicSpecification
- id: '2'
configurable: true
description: |-
The positive amount to be credit, it can be equal or less than the dispute amount. In
case credit is given a credit reason must be provided. In case no credit is given a
reject reason must be provided
maxCardinality: 0
minCardinality: 1
name: creditAmount
valueType: Number
'@type': CharacteristicSpecification
charSpecRelationship:
- '@type': CharacteristicSpecRelationship
'@baseType': CharacteristicSpecRelationship
'@schemaLocation': /someUri
characteristicSpecificationId: '3'
name: creditReason
relationshipType: dependency
- id: '3'
configurable: true
description: |-
The reason for giving the credit, in case credit apply. In case no credit apply a
reject reason must be provided
maxCardinality: 0
minCardinality: 1
name: creditReason
valueType: String
'@type': CharacteristicSpecification
- id: '4'
configurable: true
description: The reason for rejecting the dispute, in case no credit apply.
maxCardinality: 0
minCardinality: 1
name: rejectReason
valueType: String
'@type': CharacteristicSpecification
- id: '5'
configurable: true
description: Currency (ISO4217 norm uses 3 letters to define the currency)
maxCardinality: 0
minCardinality: 1
name: currency
valueType: String
'@type': CharacteristicSpecification
validFor:
startDateTime: '2022-06-22T23:20:50.52Z'
version: '1'
description: |-
POST trouble ticket request example - only a subset of trouble ticket specification
attributes are used in this example
TroubleTicketSpecification_create_example_response:
value:
href: https://mycsp.com:8080/tmf-api/troubleTicket/v5/troubleTicketSpecification/25632415
id: '25632415'
'@type': TroubleTicketSpecification
description: |-
This trouble ticket specification describes the characteristic and rules to apply when
creating a Trouble Ticket...
lastUpdateDate: '2022-06-22T10:36:30.709Z'
name: Bill Dispute
relatedParty:
- id: '6678'
href: https://mycsp.com:8080/tmf-api/partyManagement/v5/individual/6678
name: Sara Smith
role: approver
'@referredType': Individual
'@type': RelatedParty
status: inDesgin
troubleTicketSpecCharacteristic:
- id: '1'
configurable: true
description: |-
The amount that is on dispute, it can be the entire charge amount or partial amount of
the charge
maxCardinality: 0
minCardinality: 1
name: disputeAmount
valueType: Number
'@type': CharacteristicSpecification
- id: '2'
configurable: true
description: |-
The positive amount to be credit, it can be equal or less than the dispute amount. In
case credit is given a credit reason must be provided. In case no credit is given a
reject reason must be provided
maxCardinality: 0
minCardinality: 1
name: creditAmount
valueType: Number
'@type': CharacteristicSpecification
charSpecRelationship:
- '@type': string
'@baseType': string
'@schemaLocation': string
characteristicSpecificationId: '3'
name: creditReason
relationshipType: dependency
- id: '3'
configurable: true
description: |-
The reason for giving the credit, in case credit apply. In case no credit apply a
reject reason must be provided
maxCardinality: 0
minCardinality: 1
name: creditReason
valueType: String
'@type': CharacteristicSpecification
- id: '4'
configurable: true
description: The reason for rejecting the dispute, in case no credit apply.
maxCardinality: 0
minCardinality: 1
name: rejectReason
valueType: String
'@type': CharacteristicSpecification
- id: '5'
configurable: true
description: Currency (ISO4217 norm uses 3 letters to define the currency)
maxCardinality: 0
minCardinality: 1
name: currency
valueType: String
'@type': CharacteristicSpecification
validFor:
startDateTime: '2022-06-22T23:20:50.52Z'
version: '1'
description: POST Trouble Ticket Specification response description.
TroubleTicketSpecification_partialupdate_example_Application_request:
value:
status: active
description: Bill Dispute Specification
description: |-
Here's an example of a request for updating a trouble ticket - set status to active and
update description. This example illustrating patch merge, When PATCH is implemeted merge
syntaxt is mandatory
TroubleTicketSpecification_partialupdate_example_Application_response:
value:
href: https://mycsp.com:8080/tmf-api/troubleTicket/v5/troubleTicketSpecification/25632415
id: '25632415'
'@type': TroubleTicketSpecification
description: |-
This trouble ticket specification describes the characteristic and rules to apply when
creating a Trouble Ticket...
lastUpdateDate: '2022-06-22T10:36:30.709Z'
name: Bill Dispute Specification
relatedParty:
- id: '6678'
href: https://mycsp.com:8080/tmf-api/partyManagement/v5/individual/6678
name: Sara Smith
role: approver
'@referredType': Individual
status: active
troubleTicketSpecCharacteristic:
- id: '1'
configurable: true
description: |-
The amount that is on dispute, it can be the entire charge amount or partial amount of
the charge
maxCardinality: 0
minCardinality: 1
name: disputeAmount
valueType: Number
- id: '2'
configurable: true
description: |-
The positive amount to be credit, it can be equal or less than the dispute amount. In
case credit is given a credit reason must be provided. In case no credit is given a
reject reason must be provided
maxCardinality: 0
minCardinality: 1
name: creditAmount
valueType: Number
charSpecRelationship:
- '@type': string
'@baseType': string
'@schemaLocation': string
characteristicSpecificationId: '3'
name: creditReason
relationshipType: dependency
- id: '3'
configurable: true
description: |-
The reason for giving the credit, in case credit apply. In case no credit apply a
reject reason must be provided
maxCardinality: 0
minCardinality: 1
name: creditReason
valueType: String
- id: '4'
configurable: true
description: The reason for rejecting the dispute, in case no credit apply.
maxCardinality: 0
minCardinality: 1
name: rejectReason
valueType: String
- id: '5'
configurable: true
description: Currency (ISO4217 norm uses 3 letters to define the currency)
maxCardinality: 0
minCardinality: 1
name: currency
valueType: String
validFor:
startDateTime: '2022-06-22T23:20:50.52Z'
version: '1'
description: Response message
TroubleTicketSpecification_partialupdate_example_02_request:
value:
status: active
description: Bill Dispute Specification
description: |-
Here's an example of a request for updating a trouble ticket - set status to active and
update description. This example illustrating patch merge, When PATCH is implemeted merge
syntaxt is mandatory
TroubleTicketSpecification_partialupdate_example_02_response:
value:
href: https://mycsp.com:8080/tmf-api/troubleTicket/v5/troubleTicketSpecification/25632415
id: '25632415'
'@type': TroubleTicketSpecification
description: |-
This trouble ticket specification describes the characteristic and rules to apply when
creating a Trouble Ticket...
lastUpdateDate: '2022-06-22T10:36:30.709Z'
name: Bill Dispute Specification
relatedParty:
- id: '6678'
href: https://mycsp.com:8080/tmf-api/partyManagement/v5/individual/6678
name: Sara Smith
role: approver
'@referredType': Individual
status: active
troubleTicketSpecCharacteristic:
- id: '1'
configurable: true
description: |-
The amount that is on dispute, it can be the entire charge amount or partial amount of
the charge
maxCardinality: 0
minCardinality: 1
name: disputeAmount
valueType: Number
- id: '2'
configurable: true
description: |-
The positive amount to be credit, it can be equal or less than the dispute amount. In
case credit is given a credit reason must be provided. In case no credit is given a
reject reason must be provided
maxCardinality: 0
minCardinality: 1
name: creditAmount
valueType: Number
charSpecRelationship:
- '@type': string
'@baseType': string
'@schemaLocation': string
characteristicSpecificationId: '3'
name: creditReason
relationshipType: dependency
- id: '3'
configurable: true
description: |-
The reason for giving the credit, in case credit apply. In case no credit apply a
reject reason must be provided
maxCardinality: 0
minCardinality: 1
name: creditReason
valueType: String
- id: '4'
configurable: true
description: The reason for rejecting the dispute, in case no credit apply.
maxCardinality: 0
minCardinality: 1
name: rejectReason
valueType: String
- id: '5'
configurable: true
description: Currency (ISO4217 norm uses 3 letters to define the currency)
maxCardinality: 0
minCardinality: 1
name: currency
valueType: String
validFor:
startDateTime: '2022-06-22T23:20:50.52Z'
version: '1'
description: Response message
TroubleTicketSpecification_partialupdate_example_01_request:
value:
- op: replace
path: /status
value: active
- op: replace
path: /name
value: Bill Dispute Specification
description: |-
Here's an example of a request for updating a trouble ticket spesification - set status to
active and update description. This example illustrating patch json
TroubleTicketSpecification_partialupdate_example_01_response:
value:
href: https://mycsp.com:8080/tmf-api/troubleTicket/v5/troubleTicketSpecification/25632415
id: '25632415'
'@type': TroubleTicketSpecification
description: |-
This trouble ticket specification describes the characteristic and rules to apply when
creating a Trouble Ticket...
lastUpdateDate: '2022-06-22T10:36:30.709Z'
name: Bill Dispute Specification
relatedParty:
- id: '6678'
href: https://mycsp.com:8080/tmf-api/partyManagement/v5/individual/6678
name: Sara Smith
role: approver
'@referredType': Individual
status: active
troubleTicketSpecCharacteristic:
- id: '1'
configurable: true
description: |-
The amount that is on dispute, it can be the entire charge amount or partial amount of
the charge
maxCardinality: 0
minCardinality: 1
name: disputeAmount
valueType: Number
- id: '2'
configurable: true
description: |-
The positive amount to be credit, it can be equal or less than the dispute amount. In
case credit is given a credit reason must be provided. In case no credit is given a
reject reason must be provided
maxCardinality: 0
minCardinality: 1
name: creditAmount
valueType: Number
charSpecRelationship:
- '@type': string
'@baseType': string
'@schemaLocation': string
characteristicSpecificationId: '3'
name: creditReason
relationshipType: dependency
- id: '3'
configurable: true
description: |-
The reason for giving the credit, in case credit apply. In case no credit apply a
reject reason must be provided
maxCardinality: 0
minCardinality: 1
name: creditReason
valueType: String
- id: '4'
configurable: true
description: The reason for rejecting the dispute, in case no credit apply.
maxCardinality: 0
minCardinality: 1
name: rejectReason
valueType: String
- id: '5'
configurable: true
description: Currency (ISO4217 norm uses 3 letters to define the currency)
maxCardinality: 0
minCardinality: 1
name: currency
valueType: String
validFor:
startDateTime: '2022-06-22T23:20:50.52Z'
version: '1'
description: Response message
TroubleTicketSpecification_partialupdate_example_03_request:
value:
- op: replace
path: /troubleTicketSpecCharacteristic?id=5
value: 'false'
description: |-
Here's an example of a request for updating a trouble ticket - set characteristic id=5 to
readonly. This example illustrating patch query json
TroubleTicketSpecification_partialupdate_example_03_response:
value:
href: https://mycsp.com:8080/tmf-api/troubleTicket/v5/troubleTicketSpecification/25632415
id: '25632415'
'@type': TroubleTicketSpecification
description: |-
This trouble ticket specification describes the characteristic and rules to apply when
creating a Trouble Ticket...
lastUpdateDate: '2022-06-22T10:36:30.709Z'
name: Bill Dispute Specification
relatedParty:
- id: '6678'
href: https://mycsp.com:8080/tmf-api/partyManagement/v5/individual/6678
name: Sara Smith
role: approver
'@referredType': Individual
status: active
troubleTicketSpecCharacteristic:
- id: '1'
configurable: true
description: |-
The amount that is on dispute, it can be the entire charge amount or partial amount of
the charge
maxCardinality: 0
minCardinality: 1
name: disputeAmount
valueType: Number
- id: '2'
configurable: true
description: |-
The positive amount to be credit, it can be equal or less than the dispute amount. In
case credit is given a credit reason must be provided. In case no credit is given a
reject reason must be provided
maxCardinality: 0
minCardinality: 1
name: creditAmount
valueType: Number
charSpecRelationship:
- '@type': string
'@baseType': string
'@schemaLocation': string
characteristicSpecificationId: '3'
name: creditReason
relationshipType: dependency
- id: '3'
configurable: true
description: |-
The reason for giving the credit, in case credit apply. In case no credit apply a
reject reason must be provided
maxCardinality: 0
minCardinality: 1
name: creditReason
valueType: String
- id: '4'
configurable: true
description: The reason for rejecting the dispute, in case no credit apply.
maxCardinality: 0
minCardinality: 1
name: rejectReason
valueType: String
- id: '5'
configurable: false
description: Currency (ISO4217 norm uses 3 letters to define the currency)
maxCardinality: 0
minCardinality: 1
name: currency
valueType: String
validFor:
startDateTime: '2022-06-22T23:20:50.52Z'
version: '1'
description: Response message
requestBodies:
TroubleTicket_FVO:
description: The TroubleTicket to be created
content:
application/json:
schema:
$ref: '#/components/schemas/TroubleTicket_FVO'
examples:
CreateTroubleTicket:
$ref: '#/components/examples/CreateTroubleTicket_request'
required: true
InflightChangeTroubleTicket_FVO:
description: The InflightChangeTroubleTicket to be created
content:
application/json:
schema:
$ref: '#/components/schemas/InflightChangeTroubleTicket_FVO'
examples:
CreateInflightChangeTroubleTicket:
$ref: '#/components/examples/CreateInflightChangeTroubleTicket_request'
required: true
InflightChangeTroubleTicketStateChangeEvent:
description: InflightChangeTroubleTicket StateChange Event payload
content:
application/json:
schema:
$ref: '#/components/schemas/InflightChangeTroubleTicketStateChangeEvent'
examples:
InflightChangeTroubleTicketStateChangeEvent:
$ref: '#/components/examples/InflightChangeTroubleTicketStateChangeEvent_request'
required: true
CancelTroubleTicket_FVO:
description: The CancelTroubleTicket to be created
content:
application/json:
schema:
$ref: '#/components/schemas/CancelTroubleTicket_FVO'
required: true
CancelTroubleTicketStateChangeEvent:
description: CancelTroubleTicket StateChange Event payload
content:
application/json:
schema:
$ref: '#/components/schemas/CancelTroubleTicketStateChangeEvent'
required: true
TroubleTicketCreateEvent:
description: TroubleTicket create Event payload
content:
application/json:
schema:
$ref: '#/components/schemas/TroubleTicketCreateEvent'
examples:
TroubleTicketCreateEvent:
$ref: '#/components/examples/TroubleTicketCreateEvent_request'
required: true
TroubleTicketAttributeValueChangeEvent:
description: TroubleTicket attributeValueChange Event payload
content:
application/json:
schema:
$ref: '#/components/schemas/TroubleTicketAttributeValueChangeEvent'
examples:
TroubleTicketAttributeValueChangeEvent:
$ref: '#/components/examples/TroubleTicketAttributeValueChangeEvent_request'
required: true
TroubleTicketStatusChangeEvent:
description: TroubleTicket StatusChange Event payload
content:
application/json:
schema:
$ref: '#/components/schemas/TroubleTicketStatusChangeEvent'
examples:
TroubleTicketStatusChangeEvent:
$ref: '#/components/examples/TroubleTicketStatusChangeEvent_request'
required: true
TroubleTicketResolvedEvent:
description: TroubleTicket resolved Event payload
content:
application/json:
schema:
$ref: '#/components/schemas/TroubleTicketResolvedEvent'
examples:
TroubleTicketResolvedEvent:
$ref: '#/components/examples/TroubleTicketResolvedEvent_request'
required: true
TroubleTicketInformationRequiredEvent:
description: TroubleTicket informationRequired Event payload
content:
application/json:
schema:
$ref: '#/components/schemas/TroubleTicketInformationRequiredEvent'
examples:
TroubleTicketInformationRequiredEvent:
$ref: '#/components/examples/TroubleTicketInformationRequiredEvent_request'
required: true
TroubleTicketMilestoneEvent:
description: TroubleTicket milestone Event payload
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/TroubleTicketMilestoneEvent'
TroubleTicketJeopardyAlertEvent:
description: TroubleTicket jeopardyAlert Event payload
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/TroubleTicketJeopardyAlertEvent'
TroubleTicketSpecificationCreateEvent:
description: TroubleTicketSpecification create Event payload
content:
application/json:
schema:
$ref: '#/components/schemas/TroubleTicketSpecificationCreateEvent'
required: true
TroubleTicketSpecificationAttributeValueChangeEvent:
description: TroubleTicketSpecification attributeValueChange Event payload
content:
application/json:
schema:
$ref: '#/components/schemas/TroubleTicketSpecificationAttributeValueChangeEvent'
required: true
TroubleTicketSpecificationStatusChangeEvent:
description: TroubleTicketSpecification StatusChange Event payload
content:
application/json:
schema:
$ref: '#/components/schemas/TroubleTicketSpecificationStatusChangeEvent'
required: true
TroubleTicketSpecificationDeleteEvent:
description: TroubleTicketSpecification delete Event payload
content:
application/json:
schema:
$ref: '#/components/schemas/TroubleTicketSpecificationDeleteEvent'
required: true
responses:
'202':
description: Accepted
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
'405':
description: Method Not allowed
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
'501':
description: Not Implemented
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
'503':
description: Service Unavailable
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
200TroubleTicketArray:
description: Success
headers:
X-Total-Count:
$ref: '#/components/headers/X-Total-Count'
X-Result-Count:
$ref: '#/components/headers/X-Result-Count'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/TroubleTicket'
examples:
TroubleTicket_list_example:
$ref: '#/components/examples/TroubleTicket_list_example_response'
200TroubleTicket_Get:
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/TroubleTicket'
examples:
TroubleTicket_retrieve_example:
$ref: '#/components/examples/TroubleTicket_retrieve_example_response'
200InflightChangeTroubleTicketArray:
description: Success
headers:
X-Total-Count:
$ref: '#/components/headers/X-Total-Count'
X-Result-Count:
$ref: '#/components/headers/X-Result-Count'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/InflightChangeTroubleTicket'
200InflightChangeTroubleTicket_Get:
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/InflightChangeTroubleTicket'
200CancelTroubleTicketArray:
description: Success
headers:
X-Total-Count:
$ref: '#/components/headers/X-Total-Count'
X-Result-Count:
$ref: '#/components/headers/X-Result-Count'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/CancelTroubleTicket'
200CancelTroubleTicket_Get:
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CancelTroubleTicket'
201TroubleTicket:
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/TroubleTicket'
examples:
TroubleTicket_create_example:
$ref: '#/components/examples/TroubleTicket_create_example_response'
200TroubleTicketSpecificationArray:
description: Success
headers:
X-Total-Count:
$ref: '#/components/headers/X-Total-Count'
X-Result-Count:
$ref: '#/components/headers/X-Result-Count'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/TroubleTicketSpecification'
examples:
TroubleTicketSpecification_list_example:
$ref: '#/components/examples/TroubleTicketSpecification_list_example_response'
200TroubleTicketSpecification_Get:
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/TroubleTicketSpecification'
examples:
TroubleTicketSpecification_retrieve_example:
$ref: '#/components/examples/TroubleTicketSpecification_retrieve_example_response'
201InflightChangeTroubleTicket:
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/InflightChangeTroubleTicket'
201CancelTroubleTicket:
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/CancelTroubleTicket'
DefaultError:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
204Notified:
description: Notified
securitySchemes:
OAuth2ClientCredentials:
type: oauth2
description: See https://oauth.net/2/grant-types/client-credentials/
flows:
clientCredentials:
tokenUrl: https://auth.example.org/oauth2/token/
scopes:
read: read objects
write: write objects
parameters:
Fields:
name: fields
in: query
description: Comma-separated properties to be provided in response
schema:
type: string
Offset:
name: offset
in: query
description: Requested index for start of resources to be provided in response
schema:
type: integer
Limit:
name: limit
in: query
description: Requested number of resources to be provided in response
schema:
type: integer
Id:
name: id
required: true
schema:
type: string
in: path
description: Identifier of the API Resource
headers:
X-Total-Count:
description: Total number of items matching criteria
schema:
type: integer
X-Result-Count:
description: Actual number of items returned in the response body
schema:
type: integer