Page tree

 

 

 

 

 

 

 

Communication
API REST Specification

 

Document Number TMF681

November 2017

 

 

 

 

 

 

 

Release: Frameworx Release 17.5

Status: Member Evaluation

Version: 1.1.0

IPR Mode: RAND

NOTICE

Copyright © TM Forum 2017. All Rights Reserved.

 

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published, and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this section are included on all such copies and derivative works. However, this document itself may not be modified in any way, including by removing the copyright notice or references to TM FORUM, except as needed for the purpose of developing any document or deliverable produced by a TM FORUM Collaboration Project Team (in which case the rules applicable to copyrights, as set forth in the TM FORUM IPR Policy , must be followed) or as required to translate it into languages other than English.

The limited permissions granted above are perpetual and will not be revoked by TM FORUM or its successors or assigns.

This document and the information contained herein is provided on an "AS IS" basis and TM FORUM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY OWNERSHIP RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

 

Direct inquiries to the TM Forum office:

4 Century Drive
Suite 100
Parsippany, NJ 07054, USA

Tel No.   +1 973 944 5100

Fax No.   +1 973 944 5110

TM Forum Web Page: www.tmforum.org

Table of Contents

NOTICE

Table of Contents

List of Tables

Introduction

Mapping with SID ABE

Mapping with eTOM Process

Distinction between this API and Event Management API

Distinction between this API and Change Request API

SAMPLE USE CASES

Case1: Communication with Customer

Case2: Communication with Agent (CSR)

RESOURCE MODEL

Managed Entity and Task Resource Models

Communication Message Reso urce Model

Field Descriptions

Example of the resource

Notification Resource Models

Communication Message Creation Notification

Communication Message Deletion Notification

Communication Message Update Notification

API OPERATION TEMPLATES

Communication Message Creation

Communication Message Sending (Send New Message)

Communication Message Sending (Send Pre-defined Message)

Communication Message Enquiry

Communication Message Deletion

Communication message Update

API NOTIFICATIOn TEMPLATES

REGISTER LISTENER POST /hub

UNREGISTER LISTENER DELETE hub/{id}

publish {EventTYPE} POST /listener

release history

Contributors to Document

List of Tables

N/A

 

Introduction

The following document is the specification of the REST API for Communication message . It includes the model definition as well as all available operations.

 

It provides a standardized mechanism for Communication management such as creation, update, retrieval, deletion and notification of the system communication events.

Communication API manages the following data resources:

-           Communication Message

  • Communication message means a notification approach in the format of a message which can be dispatched (sent) to the certain user by the system with the content which can be felt and understood by the recipient. The user can be either a final customer or a customer service agent. The message can reach the customer in different interaction channels, including: email, short message, mobile app notification (push).

Normally the communication is implemented as a common shared service for all the IT applications. Whenever there is an application which needs to manage or send the message to the customer, this application can invoke the “communication” API to dispatch the notification.

 

To help clarify the concept of “communication API”, here all the possible “man-machine” contact approaches are listed as below.   The “tick” shows the interaction types for which the “communication API” is designed to support.

 

Business Interaction Method

Communication API Related

SMS to customer

Email to customer

Mobile app push message to customer

Proactive calling to the customer

(human initiated, i.e. person-call-person)

 

Proactive calling to the customer

(system initiated, i.e. machine-call-person)

 

Face to face contact

 

C ustomer browsing web page, open mobile app, calling IVR etc

 

 

 

Communication API performs the following operation on the resource of “Communication Message”.   There are two types of operations provided in this API. One is the management of the request message body. Another is for sending the communication message to the customer.

 

Operations for Communication Message body management

-           Retrieval of a n existing Communication Message depending on filter criteria

-           Creation of a new Communication Message

-           Partial update of a n existing Communication Message

-           Deletion of a n existing Communication Message

-           Notification of events:

  • Creation of Communication Message
  • U pdat ing Communication Message
  • D elet ion of Communication Message

 

Operations for sending Communication Message.

-           Send a message, including:

  • Send a new message with the whole communication message body (POST operation)
  • Send a message with the predefined communication message body (POST operation)

 

 

Mapping with SID ABE

Communication Message is mapped to “ Business Interaction ABE:: Notification ABE ” in TMF Information Framework (SID).

The Business Interaction ABE is illustrated as the diagram below:

 

Mapping with eTOM Process

Communication API can be mapped to the Customer Interaction Management in TM Forum Process Framework (eTOM).

The relevant process is Notify Customer .

cid:image004.png@01D31CC8.9B8E2F60

The definition of TM Forum Process Framework is:

Category : (3) eTOM Process Type

Process Identifier : 1.3.5.5

Original Process Identifier : 1.1.1.18.5

Maturity Level : 4

Description

Notify the customer when interesting events happen.

Extended Description

The purpose of this process is to notify the customer when events related to existing interactions or to significant customer experience happen. Some notifications can be sent immediately using interactive media (such as SMS, Push to applications, etc.) and other notifications can be sent later using asynchronous media such as mail

 

 

Distinction between this API and Event Management API

This API and Event Management API own some similarities.

The distinctions between them are explained in the table below:

Comparison Points

Communication API

Event Management API

Definition

Communication message means a message which can be dispatch (sent) to the certain user by the system in the format which can be felt and understood by the recipient

An Event represents a change in the state of a configuration item, service or business data entity

User Role

Sender: Enterprise (e.g. TelCo). 

Receiver:  Customer, agent, O&M staff

IT System. 

No natural person (customer or agent) is involved.

Business Scenario

The enterprise needs to send the notification information to the customer or the agent.

Note: It is used to support the direct interaction with the users.

 

It can signal status changes or exceptions that allow the appropriate person or system to perform early response actions to ensure service performance and continuity or used as a trigger for automation run books .

Note: It is used to manage the intrinsic event inside the system. The event is always created in the EM backen d refer ring to the internal Event Management system .

Relevant IT System

Interaction or contact module of the system

Any module inside the IT system

Data Model

Content of communication message. The content is visible to the user (customer, et al)

The description of how an event is triggered and handled.

It has no content to contain the concrete communication message information. The related object in this API does not distinctly express the meaning of content. The related object could be the attachment of the message.

It has no sender and receiver for the communication message information. The explanation of related party in this API has an example which is “assignee support group” . It shows this API parameter is used to depict who is the event handler .

Information Framework (SID) Mapping

Common Business Entities Domain

Business Interaction ABE

Notification Entity

A communication that informs about something that has or will happen. A Notification is typically one-sided, in that no Response is expected. A Notification can be created as the result of a Request.

Common Business Entities Domain

Event ABE

The Event ABE contains entities that are used to represent events, their occurrence and their recording within systems.

Operation

1) CRUD of communication message in IT system, i.e., create, read, update and deletion.

2) Send the communication message to the user

Create event (i.e. trigger the event) in the system.

Query event

Update event

Relationship

In the widest conception, any system action can be an event, such as the creation of new offering, execution of order, adding one item into the shopping cart. O n this level, the communication message is also an event.

In the narrow conception, event is for the technical terminology to describe the one-off change of the certain module, such as an event of memory stack overflow or switch the web server . Such event is collected by the Event Manager to monitor the status of whole running system.

According to the definition of Event Management API, this API focuses more on the second concept . Communication is also taking place in one-off mode, but it expresses the interactive human-machine contact instead of the pure system action.

 

 

Reference:  Event Management API Data Model

C:\Users\Ioannis.Dimou\Desktop\Event Resource.PNG

 

Distinction between this API and Change Request API

This API and Change Request API own some similarities.

The distinctions between them are explained in the table below:

Comparison Points

Communication API

Event Management API

Definition

Communication message means a message which can be dispatch (sent) to the certain user by the system in the format which can be felt and understood by the recipient

Change Management process is to respond to the customer’s changing business requirements.

The Change Management API provides the standard integration capabilities between external applications and Change Management Application

User Role

Sender: Enterprise (e.g. TelCo). 

Receiver:  Customer, agent, O&M staff

The involved roles of the API can be:

-             Change Management Application

-             E xternal application

No natural person (customer or agent) is involved.

Business Scenario

The enterprise needs to send the notification information to the customer or the agent.

Note: It is used to support the direct interaction with the users.

 

-             Asset sharing

-             NFV MULTI-DIGITAL SERVICE PROVIDER offer the products

-             Manage Service of Network Operation or OSS

Data Model

Inherit from Business Interaction .

Content of communication message. The content is visible to the user (customer, et al).

Inherit from Business Interaction .

nota bene:  The Business Interaction has a group of derivative objects. Change Request is mapped to request object, not notification .

Additionally, this API data model contains:

-             Attachment: This is also included in Communication API

-             Related Party: The role which is involved. This is also included in Communication API

-             Target Entity , Impacted Entity : both are referred to realted party .

-             Work log

         If the work log is a type of task for the staff to execute, it is not required in Communication API

         If the work log is the pure log (record) of the system action, it is a default function of the system. Communication API has the log flag to indicate whether the log should be generated after invoking API.  The detail of the log is not required to be explicitly expressed in Communication API

-             Note: It is an optional attribute. In Communication API , the content is used to describe the purpose of the communication message.

 

Information Framework (SID) Mapping

Common Business Entities Domain

Business Interaction ABE

Notification Entity

Common Business Entities Domain

Business Interaction ABE

 

Operation

1) CRUD of communication message in IT system, i.e., create, read, update and deletion.

2) Send the communication message to the user

CRUD operations of the change request

 

Reference:  Change Request API Data Model

 

SAMPLE USE CASES

E xamples of use cases using Communication API is as following

 

Case1: Communication with Customer

 

 

 

Use Case Id

UC_TMF_ CommunicationMessage _0001

Use Case Name

Customer receives communication message.

Summary

This case describes the system manages the communication message and sends the communication message to the customer.

Actor(s)

Customer (person)

Pre-Conditions

NA

Begins When

When the sales/marketing/service or any other business activities requires notifying the customer, the application will initiates the communication message.

 

Description

1)        The system needs to notify the customer about the delivery progress & status.

2)        The system needs to notify the customer about t he latest promotion (e.g. gift) information .

3)        The system needs to notify the customer about the result of purchasing the offer.

Or any other event happens which requires communication with the customer.

4)        The system manages the Communication Message, such as the creation, modification, updating and deletion of the communication.

5)        The system sends the communication and the customer receives the communication content.

 

Ends When

In case of communication is done successfully:

The customer will receive the message.

 

In case of failure:

The system records the failure and the customer cannot know the message. Normally the system will retry to send the message when the network or environment is available.

 

Post-Conditions

 

Exceptions

 

Traceability

 

 

Case2: Communication with Agent (CSR)

 

Use Case Id

UC_TMF_ CommunicationMessage _000 2

Use Case Name

The agent (CSR staff) receives communication message.

Summary

This case describes the system manages the communication message and sends the communication message to the agent .

Actor(s)

Agent staff (person)

Pre-Conditions

NA

Begins When

When the sales/marketing/service or any other business activities requires notifying the agent , the application will initiates the communication message.

Description

The company needs to notify the agent that the latest SLA policy in the market has been published.

The agent needs to know such company rule (policy) and obey it when working.

Ends When

In case of communication is done successfully:

The agent will receive the message.

 

In case of failure:

The system records the failure and the customer cannot know the message. Normally the system will retry to send the message when the network or environment is available.

 

Post-Conditions

 

Exceptions

 

Traceability

 

 

 

RESOURCE MODEL

Managed Entity and Task Resource Models

Communication Message Reso urce Model

 

Field Descriptions

 

Business Interaction is the inherited SID ABE of this API.  So it is not shown in the API fields

 

Parameter

Data Type

Description

@type

String

It indicates the class type of the catalog.

@schemaLocation

String

It provides the link to the schema describing REST resource

@baseType

String

It indicates the base type of REST resource.

id

String

Unique identifier of Communication Message

(inherit from Business Interaction ABE)

href

String

Hypertext Reference of the Communication Message.

Priority

Integer

Priority level for applying this alteration among all the defined alterations .

Type

String

It could be

SMS, Email, “Mobile A pp” ( push notification )

Subject

String

The title of the message.

It is necessary for the email and mobile app push.

Content

String

The content of the communication message.

SendTime

DateTime

The time of sending communication message.

(inherit from Business Interaction ABE)

sendTimeComplete

DateTime

The time of completion of sending communication message.

(inherit from Business Interaction ABE)

status

String

Status of communication message

(inherit from Business Interaction ABE)

description

String

Description for the whole object

(inherit from Business Interaction ABE)

logFlag

Boolean

It is used to decide whether the contact log is need to be recorded.

callbackFlag

Boolean

It is used to decide whether the contact message needs to be replied.

tryTimes

Integer

If fail to send the communication message, how many times the system will retry.

CommunicationRequestCharacteristic

List of String

The values of parameters which are used in the content if the content contains them.

name

String

Content parameter identifier.

value

String

Content parameter value.

Sender

NA

Sender of the communication message.

email

String

Sender address of email, if the communication type is email

id

String

ID of the sender

name

String

Name of the sender

phoneNumber

String

Phone number of the sender, if the communication type is SMS.

Receiver

List of data objects

Receivers of the communication message.

appUserId

String

ID of the mobile app user

email

String

Receiver address of email, if the communication type is email

id

String

ID of the receiver

ip

String

IP address of the receiver

name

String

Name of the receiver

phoneNumber

String

Phone number of the receiver, if the communication type is SMS.

RelatedParty

NA

The party entity of the receiver (user)

id

String

Unique identifier of party

(inherit from Business Interaction ABE)

href

String

Hypertext Reference of the party

name

String

name of the party

role

String

role of the party (customer, partner, etc)

validFor

TimePeriod

V alidity period of the party

Attachment

List of data objects

The attachments of the communication message (when it is email type).

name

String

The name of attached file in the communication message.

Path

String

The path of the attached file in the communication message.

description

String

D escription of the attached file

H ref

String

href of the attached file

mimeType

String

Multi - purpose Internet Mail Extensions Type

S ize

Float

S ize of the attached file

sizeUnit

String

S ize Unit of the attached file

URL

String

URL of the attached file

validFor

TimePeriod

“V alid For period of the attached file

 

 

 

Example of the resource

 

{

“id”:”1001”,     “href”:"http://serverlocation:port/communicationMessage/v1/communicationMessage/564",

“type” : “1”,

                     “priority”: “1”,

“subject” : “News: the latest promotion for you”,

                      “sendTime”: “2016-12-19 T04:00:00.0Z”,

  “sendTimeComplete”: “2016-12-19 T05:00:00.0Z”,

                 “status”: ‘Completed’,

                “description”: “this is communication message for promotion”,

               “content” : “Dear $Parameter1, Here is the information of the promotion $Parameter2”,

"@type": "communication",

"@schemaLocation":"http://serverlocation:port/ communication /schema/ communication.yml",

"@baseType": "",

“contactLogFlag”:”false”,

        “callbackFlag” :”true”,

        “tryTimes” :”3”

 

                 “CommunicationRequestCharacteristic”:[

                 {

{“name”: “$Parameter1”,

value”: “Mr. Bush”

} ,

{

Name”: “$Parameter2”,

value”: “4G_LTE Discount 30%”

}

],

“attachment” : [{

                   “path”: “/attachedfile/1, /attachedfile/”,

                  “name”: “File_XYZ_001”

             }],

" sender": {

          “id”:”10099”,

                         “name” :”ABC Company”,

        “phoneNumber” :”10086”

              },

  "receiver":[ {

          “id”:”10234”,

          “name” :”Customer”,

        “phoneNumber” :”008613811112222”

                  "relatedParty": {

                       "id": "991",

                        "href": "http://serverlocation:port/partyManagement/individual/1",

                       "role": "customer",

                      "name": "John Lock"

                     }, 

            }]

        

 

}

 

 

 


Notification Resource Models

Communication Message Creation Notification

It is u sed to notify that a Communication Message is created.

{

"eventType": " CommunicationMessageCreationNotification",

"eventTime": "2014-09-27T05:46:25.0Z",

"eventId": "8976",

"event":

{

       " CommunicationMessage ": [

{

            "Id":"s1234",

Following a whole representation of the Communication Message resource with all its attributes.

       Refer to communication message Resource.

      }

     ]
}

}

Communication Message Deletion Notification

It is u sed to notify that a Communication Message is deleted.

 

{

    "eventType": "CommunicationMessageDeletionNotification",

"eventTime": "2014-09-27T05:46:25.0Z",

"eventId": "8976",

          "CommunicationMessage":{

         "id":" s1234",

     Following a whole representation of the Communication Message resource with all its attributes.

       Refer to Communication Message Resource.

        }

}

 

 

Communication Message Update Notification

{

    "eventType": "CommunicationMessageUpdateNotification",

"eventTime": "2014-09-27T05:46:25.0Z",

"eventId": "8976",

          "CommunicationMessage":{

         "id":" s1234",

Following a whole representation of the Communication Message resource with all its attributes.

       Refer to Communication Message Resource.

        }

}

 

 

 

 

API OPERATION TEMPLATES

For every single of operation on the entities use the following templates and provide sample REST requests and responses.

Remember that the following Uniform Contract rules must be used:

Operation on Entities

Uniform API Operation

Description

Query Entities

GET Resource

GET must be used to retrieve a representation of a resource.

 

Create Entity

POST Resource

POST must be used to create a new resource

Partial Update of an Entity

PATCH Resource

PATCH must be used to partially update a resource

For reconciliation processes

Complete Update of an Entity

PUT Resource

PUT must be used to completely update a resource identified by its resource URI

Remove an Entity

DELETE Resource

DELETE must be used to remove a resource

 

Filtering and attribute selection rules are described in the TMF REST Design Guidelines.

Notifications are also described in a subsequent section.

 

 

Communication Message Creation

HTTP Verb + URI:

POST /communicationMessage

Description:

         This API is used to create a new Communication Message . The Communication Message is used to express the message itself. After the Communication Message has been created, it can be sent by the system to the “receiver” later.

         Condition:

There is no parameter in this POST verb URI

 

Behavior:

         Return Status Codes:

Status Code

Description

201

The resource has been added successfully

400

Request Error

500

The server encountered an unexpected condition which prevented it from fulfilling the request

Other

The server may use other HTTP error status codes to reflect the error, the client must be processed in accordance with the error messages in other HTTP specification.

 

Sample:

 

REQUEST

POST / communicationMessage

Content-type: application/json

 

{

             “id”:”1001”,    

“href”:"http://serverlocation:port/communicationMessage/v1/communicationMessage/56445633245",

“type” : “1”,

                     “priority”: “1”,

“subject” : “News: the latest promotion for you”,

                      “sendTime”: “2016-12-19 T04:00:00.0Z”,

  “sendTimeComplete”: “2016-12-19 T05:00:00.0Z”,

                 “status”: ‘Completed’,

                “description”: “this is communication message for promotion”,

               “content” : “Dear $Parameter1, Here is the information of the promotion $Parameter2”,

“contactLogFlag”:”false”,

        “callbackFlag” :”true”,

        “tryTimes” :”3”,

              

   “CommunicationRequestCharacteristic”:[

{

{“name”: “$Parameter1”,

value”: “Mr. Bush”

} ,

{

Name”: “$Parameter2”,

value”: “4G_LTE Discount 30%”

}

],

“attachment” : [{

                 “path”: “/attachedfile/1, /attachedfile/”,

                  “name”: “File_XYZ_001”

             }],

" sender": {

          “id”:”10099”,

                         “name” :”ABC Company”,

        “phoneNumber” :”10086”

              },

  "receiver":[ {

          “id”:”10234”,

          “name” :”Customer”,

        “phoneNumber” :”008613811112222”

                  "relatedParty": {

                       "id": "991",

                        "href": "http://serverlocation:port/partyManagement/individual/1",

                       "role": "customer",

                      "name": "John Lock"

                     }, 

            }]

        

 

}

 

RESPONSE

20 1

Content-Type: application/json

 

Following a whole representation of the Communication Message resource with all its attributes.

     Refer to Communication Message Resource.

 

 

 

Communication Message Sending (Send New Message)

HTTP Verb + URI:

POST /communicationMessage/send

Description:

         This API is used to send a new Communication message from the “sender” to the “receiver” .

When executing this API, the message will be directly sent to the receiver, i.e., the final customer.

The full message body and attributes should be filled in this operation request.

         Condition:

The parameter of POST is “send” to indicate this operation is for the “sending message” action.

 

Behavior:

         Return Status Codes:

Status Code

Description

20 0

The message of communication message has been sent.

400

Request Error

500

The server encountered an unexpected condition which prevented it from fulfilling the request

Other

The server may use other HTTP error status codes to reflect the error, the client must be processed in accordance with the error messages in other HTTP specification.

 

Sample:

 

REQUEST

POST / communicationMessage/send

Content-type: application/json

 

 

The following is a whole representation of the Communication Message resource with all its attributes.

     Please refer to the Communication Message Creation” for the content of example.

 

 

RESPONSE

20 0

 

 

Communication Message Sending (Send Pre-defined Message)

HTTP Verb + URI:

POST /communicationMessage/{id}/send

Description:

         This API is used to send a pre-defined Communication message from the “sender” to the “receiver” .

When executing this API, the message will be sent to the receiver, i.e., the final customer.

In this mode, the message body should be created in advance. The “Communication Message Creation” needs to be invoked firstly, so the system can send the pre-defined message.

         Condition:

The parameter of POST is “send” to indicate this operation is for the “sending message” action.

 

Behavior:

         Return Status Codes:

Status Code

Description

20 0

The message of communication message has been sent.

400

Request Error

500

The server encountered an unexpected condition which prevented it from fulfilling the request

Other

The server may use other HTTP error status codes to reflect the error, the client must be processed in accordance with the error messages in other HTTP specification.

 

Sample:

 

REQUEST

POST / communicationMessage/1001/send

Content-type: application/json

 

 

RESPONSE

20 0

 

 

 

Communication Message Enquiry

HTTP Verb + URI:

GET / communicationMessage /{id}

Description:

         This API is used to query an existing pre-defined message body by query conditions

 

 

Behavior:

         Return Status Codes:

Status Code

Description

200

The resource has been retrieved

404

If no record was found

500

The server encountered an unexpected condition which prevented it from fulfilling the request

Others

The server may use other HTTP error status codes to reflect the error, the client must be processed in accordance with the error messages in other HTTP specification.

 

REQUEST

GET / communicationMessage/ 11006

Content-type: application/json

Accept: application/json

RESPONSE

200

Content-Type: application/json

 

      Following a whole representation of the Communication Message resource with all its attributes.

       Refer to Communication Message Resource.

 

 

Communication Message Deletion

HTTP Verb + URI:

DELETE /communicationMessage/ { id }

Description:

         This API is used to delete an existing pre-defined message body .

 

 

 

Behavior:

         Return Status Codes:

Status Code

Description

204

Delete the communication message successfully

400

Request Error

404

If no record was found

500

The server encountered an unexpected condition which prevented it from fulfilling the request

Others

The server may use other HTTP error status codes to reflect the error, the client must be processed in accordance with the error messages in other HTTP specification.

 

REQUEST

DELETE / communicationMessage/ 1006

Content-type: application/json

RESPONSE

204

 

 

Communication message Update

HTTP Verb + URI:

PATCH /communicationMessage/ { id }

Description:

         This API is used to partially update an existing pre-defined message body .

 

 

 

Behavior:

         Return Status Codes:

Status Code

Description

201

Update the communication message successfully

400

Request Error

404

If no record was found

500

The server encountered an unexpected condition which prevented it from fulfilling the request

Others

The server may use other HTTP error status codes to reflect the error, the client must be processed in accordance with the error messages in other HTTP specification.

 

REQUEST

PATCH / communicationMessage/ 1006

Content-type: application/json

{

“lifycycleStatus”: “Release”,

“name”: “Gift_On_Birthday”

}

RESPONSE

201

Content-Type: application/json

 

Following a whole representation of the communication message resource with all its attributes.

       Refer to communication message Resource.

 

 

 

 

 

API NOTIFICATIOn TEMPLATES

For every single of operation on the entities use the following templates and provide sample REST notification POST calls.

It is assumed that the Pub lish /Sub scribe uses the Register and UnRegister mechanisms described in the REST Guidelines reproduced below.

REGISTER LISTENER POST /hub

Description:

Sets the communication endpoint address the service instance must use to deliver information about its health state, execution state, failures and metrics. Subsequent POST calls will be rejected by the service if it does not support multiple listeners. In this case DELETE /api/hub/{id} must be called before an endpoint can be created again.

Behavior:

Returns HTTP/1.1 status code 204 if the request was successful.

Returns HTTP/1.1 status code 409 if request is not successful.

REQUEST

POST /api/hub

Accept: application/json

 

{ "callback" : "http://in.listener.com" }

RESPONSE

201

Content-Type: application/json

Location: /api/hub/42

 

{"id":"42","callback":"http://in.listener.com","query":null}

UNREGISTER LISTENER DELETE hub/{id}

Description:

Clears the communication endpoint address that was set by creating the Hub.

Behavior:

Returns HTTP/1.1 status code 204 if the request was successful.

 

Returns HTTP/1.1 status code 404 if the resource is not found.

REQUEST

DELETE /api/hub/{id}

Accept: application/json

RESPONSE

204

publish {EventTYPE} POST /listener

Description:

Provide the Event description

Behavior:

Returns HTTP/1.1 status code 201 if the service is able to set the configuration.

REQUEST

POST /client/listener

Accept: application/json

 

{
   
    "event" : {

    EVENT BODY
            } ,
    "eventType" : "eventType"
}

RESPONSE

201

Content-Type: application/json

 

Example see TMF REST Design Guidelines.

release history

Release Number

Date

Release led by:

Description

Release 1.0

13/11/2016

Maxu

maxu@huawei.com

Initial Document.

 

09/10/2017

Maxu

maxu@huawei.com

Hongxia Hao

haohongxia@huawei.com

Addressed some comments from Orange & Vodafone & TMF .

 

Contributors to Document

Name

Company

Ma Xu

Huawei

Hongxia Hao

Huawei

Sophie Bouleau

Orange

Pierre Gauthier

TM Forum