You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 11 Next »

TM Forum APIs

 

The following APIs are provided:

 

-Trouble Ticket API                      
-Product Ordering API                  
-Usage Management API              
-Product Inventory API                
-Billing Management API              
-Performance Management API    
-Product Catalog API                     
-SLA Management API                  
-Customer Management API       
-Party Management API    
 
 

TROUBLE TICKET RESOURCE MODEL

Managed Entity and Task Resource Models

Example of the JSON representation of a ticket:

{
    "id": "1",
    "correlationId": "TT53482",
    "description": "Customer complaint over last invoice.",
    "severity": "Urgent",
    "type": "Bills, charges or payment",
    "creationDate": "2013-07-23T08:16:39.0Z",
    "targetResolutionDate": "2013-07-30T10:20:01.0Z",
    "status": "In Progress",
    "subStatus": "Held",
    "statusChangeReason": "Waiting for invoicing expert.",
    "statusChangeDate": "2013-07-28T08:55:12.0Z",
    "relatedParty": [
        {
            "href": "/customer/1234",
            "role": "Originator"
        },
        {
            "href": "/operator/1234",
            "role": "Owner"
        },
        {
            "href": "Roger Collins",
            "role": "Reviser"
        }
    ],
    "relatedObject": [
        {
            "involvement": "Disputed",
            "reference": "/invoice/1234"
        },
        {
            "involvement": "Adjusted",
            "reference": "/invoice/5678"
        }
    ],
    "note": [
        {
            "date": "2013-07-24T09:55:30.0Z",
            "author": "Arthur Evans",
            "text": "Already called the expert"
        },
        {
            "date": "2013-07-25T08:55:12.0Z",
            "author": "Arthur Evans",
            "text": "Informed the originator"
        }
    ]
}

GET /API/troubleTicket/{ID}}/?{fields=attributes}&{filtering expression}

This Uniform Contract operation is used to retrieve the representation of a ticket.

Note that collections can be retrieved via GET /API/troubleTicket/ with no {ID}

Filtering is allowed on all attributes. See example below.
Attribute selection is possible for all attributes. See example below.

REQUEST

GET /api/troubleTicket 

Accept: application/json

RESPONSE

200

Content-Type: application/json

 

[ 

{ 

    "id": "1", 

    "correlationId": "TT53482", 

    "description": "Customer complaint over last invoice.", 

    "severity": "Urgent", 

    "type": "Bills, charges or payment", 

    "creationDate": "2013-07-23T08:16:39.0Z", 

    "targetResolutionDate": "2013-07-30T10:20:01.0Z", 

    "status": "In Progress", 

    "subStatus": "Held", 

    "statusChangeReason": "Waiting for invoicing expert.", 

    "statusChangeDate": "2013-07-24T08:55:12.0Z", 

    "relatedParty": [ 

        { 

            "href": "/customer/1234", 

            "role": "Originator" 

        }, 

        { 

            "href": "/operator/1234", 

            "role": "Owner" 

        }, 

        { 

            "href": "Roger Collins", 

            "role": "Reviser" 

        } 

    ], 

    "relatedObject": [ 

        { 

            "involvement": "Disputed", 

            "reference": "/invoice/1234" 

        }, 

        { 

            "involvement": "Adjusted", 

            "reference": "/invoice/5678" 

        } 

    ], 

    "note": [ 

        { 

            "date": "2013-07-24T09:55:30.0Z", 

            "author": "Arthur Evans", 

            "text": "Already called the expert" 

        }, 

        { 

            "date": "2013-07-25T08:55:12.0Z", 

            "author": "Arthur Evans", 

            "text": "Informed the originator" 

        } 

    ] 

}, 

{ 

    "id": "2", 

    "correlationId": "", 

    "description": "Customer asks for information about upgrading products.", 

    "severity": "Low", 

    "type": "Products and Services", 

    "creationDate": "2013-07-25T08:16:00.0Z", 

    "targetResolutionDate": "2013-07-28T00:00:00.0Z", 

    "status": "", 

    "subStatus": "", 

    "statusChangeReason": "", 

    "statusChangeDate": "2013-07-25T08:16:00.0Z", 

    "resolutionDate": "", 

    "relatedParty": [ 

        { 

            "href": "/customer/4567", 

            "role": "Originator" 

        } 

    ], 

    "relatedObject": [ 

    ], 

    "note": [ 

    ] 

} 

] 

POST API/ticket

Description :

  • This Uniform Contract operation is used to create a ticket.
  • Resource represents a managed entity.
  • Mandatory attributes that must be provided when you create the ticket :

Description, severity, type

Behavior :

  • Returns HTTP/1.1 status code 201 if the request was successful.
  • Returns HTTP/1.1 status code 400 (Bad request) if content is invalid (missing required attributes, …).

 

Attribute name

Mandatory

Default

Rule

Id

N

 

Initialized by TT handler

correlationId

N

 

 

description

Y

 

 

severity

Y

 

 

type

Y

 

 

creationDate

N

Date of the day

Initialized by TT handler

targetResolutionDate

N

 

 

status

N

Created

Initialized by TT handler

subStatus

N

 

 

statusChangeReason

N

 

 

statusChangeDate

N

Date of the day

 

resolutionDate

N

 

 

relatedParty

N

 

 

relatedObject

N

 

 

Note

N

 

 

The requester should not provide an id – it is generated automatically by the TT handler. A correlationId can be provided, but is not mandatory.

Create a ticket only with mandatory attributes:

REQUEST

POST API/ troubleTicket

Content-type: application/json

 

{ 

    "description": "Customer complaint over last invoice.", 

    "severity": "Urgent", 

    "type": "Bills, charges or payment" 

} 

RESPONSE

201

Content-Type: application/json

{ 

    "id": "1", 

    "correlationId": "TT53482", 

    "description": "Customer complaint over last invoice.", 

    "severity": "Urgent", 

    "type": "Bills, charges or payment", 

    "creationDate": "2013-07-23T08:16:39.0Z", 

    "targetResolutionDate": "2013-07-30T10:20:01.0Z", 

    "status": "Created", 

    "subStatus": "", 

    "statusChangeReason": "", 

    "statusChangeDate": "2013-07-24T08:55:12.0Z", 

    "resolutionDate": "", 

    "relatedParty": [ 

    ], 

    "relatedObject": [ 

    ], 

    "note": [

    ] 

} 

  • No labels