shireesha-p
7/13/2017 - 7:09 AM

Sdev

Sdev

{
	"swagger": "2.0",
	"info": {
		"title": "Pull Notification API",
		"description": "This API resource would pull all the unread/read order notifications belonging to you.",
		"version": "1.0.0",
		"termsOfService": "https://sdev.telstra.com/legal/wholesale"
	},
	"host": "private-sapi.telstra.com",
    "basePath": "/application/tw-notification/v1/pull-notification",
	"schemes": [
		"https"
	],
	"security": [
		{
			"OAuth2": [
				"TWORDERNOTIFICATION",
				"TWTICKETNOTIFICATION",
				"TWDIAGNOSTICNOTIFICATION"
			]
		}
	],
	"paths": {
		"/orders": {
			"get": {
				"operationId": "Get Order Notifications",
				"summary": "This API resource would pull all your unread/read order notifications. The resource can be queried via different query parameters and the returned resource will list all order notifications that satisfy those filter criteria.",
				"description": "This query returns notifications that belong to you based on the queryparams.\n",
				"produces": [
					"application/json"
				],
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"description": "A header in the format 'Bearer {access_token}' - get the token by using the OAuth API with the scope 'TWORDERNOTIFICATION'.",
						"type": "string",
						"required": true
					},
					{
						"name": "orderId",
						"in": "query",
						"description": "The order identifier that uniquely identifies an order.",
						"type": "string",
						"required": false
					},
					{
						"name": "startDate",
						"in": "query",
						"description": "The start date from when the order created should be fetched from. Start date should not be future dated and expected format is YYYY-MM-DD.",
						"type": "string",
						"format": "date",
						"required": false
					},
					{
						"name": "endDate",
						"in": "query",
						"description": "The end date until when the order notifications received are returned.If startDate is populated, then end date should be after the startDate and if nothing is supplied then endDate will be defaulted to today’s date. expected format is YYYY-MM-DD.",
						"type": "string",
						"format": "date",
						"required": false
					},
					{
						"name": "include",
						"in": "query",
						"description": "Field to indicate if you are interested to obtain read (or) unread (or) all messages. Value expected to be received is read/unread/all.",
						"type": "string",
						"required": false
					},
					{
						"name": "notificationId",
						"in": "query",
						"description": "Notification id that needs to be returned.",
						"type": "string",
						"required": false
					},
					{
						"name": "lastRecord",
						"in": "query",
						"description": "Will hold the notification id of the last record retrieved using the search criteria.",
						"type": "string",
						"required": false
					}
				],
				"tags": [
					"Order Notifications"
				],
				"responses": {
					"200": {
						"description": "Success - A list of responses are returned",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/MessageResponses"
							}
						}
					},
					"400": {
						"description": "Invalid or missing request parameters",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"401": {
						"description": "Invalid or no credentials passed in the request",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"403": {
						"description": "Authorization credentials passed and accepted but account does not have permission",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"404": {
						"description": "The requested URI does not exist",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"429": {
						"description": "Too many requests in a given amount of time",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"500": {
						"description": "An internal error occurred when processing the request",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					}
				},
				"security": []
			}
		},
		"/orders/{type}": {
			"get": {
				"operationId": "Get Order Notifications By Type",
				"summary": "This API resource would pull all the unread/read order notifications belonging to you. The resource can be queried via different query parameters and the returned resource will list all order notifications that satisfy those filter criteria.",
				"description": "This query returns notifications that belong to you based on the queryparams.\n",
				"produces": [
					"application/json"
				],
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"description": "A header in the format 'Bearer {access_token}' - get the token by using the OAuth API with the scope 'TWORDERNOTIFICATION'.",
						"type": "string",
						"required": true
					},
					{
						"name": "type",
						"in": "path",
						"description": "'type can be one of the following AppointmentUpdate, OrderUpdate, Reminder, NotesAdded'.",
						"type": "string",
						"required": true
					},
					{
						"name": "orderId",
						"in": "query",
						"description": "The order identifier that uniquely identifies an order.",
						"type": "string",
						"required": false
					},
					{
						"name": "startDate",
						"in": "query",
						"description": "The start date from when the order created should be fetched from. Start date should not be future dated and expected format is YYYY-MM-DD.",
						"type": "string",
						"format": "date",
						"required": false
					},
					{
						"name": "endDate",
						"in": "query",
						"description": "The end date until when the order notifications received are returned.If startDate is populated, then end date should be after the startDate and if nothing is supplied then endDate will be defaulted to today’s date. expected format is YYYY-MM-DD.",
						"type": "string",
						"format": "date",
						"required": false
					},
					{
						"name": "include",
						"in": "query",
						"description": "Field to indicate if you are interested to obtain read (or) unread (or) all messages. Value expected to be received is read/unread/all.",
						"type": "string",
						"required": false
					},
					{
						"name": "notificationId",
						"in": "query",
						"description": "Notification id that needs to be returned.",
						"type": "string",
						"required": false
					},
					{
						"name": "lastRecord",
						"in": "query",
						"description": "Will hold the notification id of the last record retrieved using the search criteria.",
						"type": "string",
						"required": false
					}
				],
				"tags": [
					"Order Notifications"
				],
				"responses": {
					"200": {
						"description": "Success - A list of responses are returned",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/MessageResponses"
							}
						}
					},
					"400": {
						"description": "Invalid or missing request parameters",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"401": {
						"description": "Invalid or no credentials passed in the request",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"403": {
						"description": "Authorization credentials passed and accepted but account does not have permission",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"404": {
						"description": "The requested URI does not exist",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"429": {
						"description": "Too many requests in a given amount of time",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"500": {
						"description": "An internal error occurred when processing the request",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					}
				},
				"security": []
			}
		},
		"/tickets": {
			"get": {
				"operationId": "Get Ticket Notifications",
				"summary": "This API resource would pull all the unread/read ticket notifications belonging you. The resource can be queried via different query parameters and the returned resource will list all ticket notifications that satisfy the filter criteria.",
				"description": "This query returns all the unread tickets that belong to you.\n",
				"produces": [
					"application/json"
				],
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"description": "Authorization header in the format 'Bearer {access_token}' - get the token by using the OAuth API with the scope 'TWTICKETNOTIFICATION'.",
						"type": "string",
						"required": true
					},
					{
						"name": "telstraRefNumber",
						"in": "query",
						"description": "The Telstra reference number is identifier that uniquely identifies a case in assurance system.",
						"required": false,
						"type": "string"
					},
					{
						"name": "startDate",
						"in": "query",
						"description": "The start date from when the ticket created should be fetched from. Start date should not be future dated and expected format is YYYY-MM-DD.",
						"type": "string",
						"format": "date",
						"required": false
					},
					{
						"name": "endDate",
						"in": "query",
						"description": "The end date until when the ticket notifications received are returned.If startDate is populated, then end date should be after the startDate and if nothing is supplied then endDate will be defaulted to today’s date. expected format is YYYY-MM-DD.",
						"type": "string",
						"format": "date",
						"required": false
					},
					{
						"name": "include",
						"in": "query",
						"description": "Field to indicate if you are interested to obtain read (or) unread (or) all messages. Value expected to be received is read/unread/all.",
						"type": "string",
						"required": false
					},
					{
						"name": "notificationId",
						"in": "query",
						"description": "Notification id that needs to be returned.",
						"type": "string",
						"required": false
					},
					{
						"name": "acknowledgementId",
						"in": "query",
						"description": "Telstra Wholesale’s unique identifier either for ticketCreateResponse, callDiversionResponse or ApptRescheduleSelectResponse, IsolateLineHuntResponse for tracking purposes. Format Ex: TCI - nnnnnnnnnn or CDRI - nnnnnnnnnn or ARSI - nnnnnnnnnn or ILRI - nnnnnnnnnn.",
						"type": "string",
						"required": false
					},
					{
						"name": "lastRecord",
						"in": "query",
						"description": "Will hold the notification id of the last record retrieved using the search criteria.",
						"type": "string",
						"required": false
					}
				],
				"tags": [
					"Ticket Notifications"
				],
				"responses": {
					"200": {
						"description": "Success - A list of responses are returned",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/TicketResponses"
							}
						}
					},
					"400": {
						"description": "Invalid or missing request parameters",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"401": {
						"description": "Invalid or no credentials passed in the request",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"403": {
						"description": "Authorization credentials passed and accepted but account does not have permission",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"404": {
						"description": "The requested URI does not exist",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"429": {
						"description": "Too many requests in a given amount of time",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"500": {
						"description": "An internal error occurred when processing the request",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					}
				},
				"security": []
			}
		},
		"/tickets/{type}": {
			"get": {
				"operationId": "Get Ticket Notifications By Type",
				"summary": "This API resource would pull all the unread/read ticket notifications belonging to you. The resource can be queried via different query parameters and the returned resource will list all ticket notifications that satisfy the search criteria.",
				"description": "This query returns all the unread tickets that belong you.\n",
				"produces": [
					"application/json"
				],
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"description": "Authorization header in the format 'Bearer {access_token}' - get the token by using the OAuth API with the scope 'TWTICKETNOTIFICATION'.",
						"type": "string",
						"required": true
					},
					{
						"name": "type",
						"in": "path",
						"description": "type can be one of the following CaseStatusChange, SubCaseStatusChange, CaseTargetRestorationChange, SubCaseCommitmentAppointmentChange, NotesChange, TicketCreateResponse, CallDiversionResponse, ApptRescheduleSelectResponse, IsolateLineHuntResponse.",
						"type": "string",
						"required": true
					},
					{
						"name": "telstraRefNumber",
						"in": "query",
						"description": "The Telstra reference number is identifier that uniquely identifies a case in SIIAM.",
						"required": false,
						"type": "string"
					},
					{
						"name": "startDate",
						"in": "query",
						"description": "The start date from when the ticket created should be fetched from. Start date should not be future dated and expected format is YYYY-MM-DD.",
						"type": "string",
						"format": "date",
						"required": false
					},
					{
						"name": "endDate",
						"in": "query",
						"description": "The end date until when the ticket notifications received are returned.If startDate is populated, then end date should be after the startDate and if nothing is supplied then endDate will be defaulted to today’s date. expected format is YYYY-MM-DD.",
						"type": "string",
						"format": "date",
						"required": false
					},
					{
						"name": "include",
						"in": "query",
						"description": "Field to indicate if you are interested to obtain read (or) unread (or) all messages. Value expected to be received is read/unread/all.",
						"type": "string",
						"required": false
					},
					{
						"name": "notificationId",
						"in": "query",
						"description": "Notification id that needs to be returned.",
						"type": "string",
						"required": false
					},
					{
						"name": "acknowledgementId",
						"in": "query",
						"description": "Telstra Wholesale’s unique identifier either for ticketCreateResponse, callDiversionResponse or ApptRescheduleSelectResponse, IsolateLineHuntResponse for tracking purposes. Format Ex: TCI - nnnnnnnnnn or CDRI - nnnnnnnnnn or ARSI - nnnnnnnnnn or ILRI - nnnnnnnnnn.",
						"type": "string",
						"required": false
					},
					{
						"name": "lastRecord",
						"in": "query",
						"description": "Will hold the notification id of the last record retrieved using the search criteria.",
						"type": "string",
						"required": false
					}
				],
				"tags": [
					"Ticket Notifications"
				],
				"responses": {
					"200": {
						"description": "Success - A list of responses are returned",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/TicketResponses"
							}
						}
					},
					"400": {
						"description": "Invalid or missing request parameters",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"401": {
						"description": "Invalid or no credentials passed in the request",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"403": {
						"description": "Authorization credentials passed and accepted but account does not have permission",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"404": {
						"description": "The requested URI does not exist",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"429": {
						"description": "Too many requests in a given amount of time",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"500": {
						"description": "An internal error occurred when processing the request",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					}
				},
				"security": []
			}
		},
		"/diagnostics-results": {
			"get": {
				"operationId": "Get Diagnostics Notifications",
				"summary": "This API resource would pull all the unread/read diagnostics notifications belonging to you. The resource can be queried via different query parameters and the returned resource will list all diagnostics notifications that satisfy the filter criteria.",
				"description": "This query returns all the unread diagnostics that belong to you.\n",
				"produces": [
					"application/json"
				],
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"description": "Authorization header in the format 'Bearer {access_token}' - get the token by using the OAuth API with the scope 'TWDIAGNOSTICNOTIFICATION'.",
						"type": "string",
						"required": true
					},
					{
						"name": "serviceId",
						"in": "query",
						"description": "Service ID or FNN.",
						"required": false,
						"type": "string"
					},
					{
						"name": "diagnosticId",
						"in": "query",
						"description": "Telstra Wholesale’s unique identifier of the diagnostic test request.",
						"required": false,
						"type": "string"
					},
					{
						"name": "startDate",
						"in": "query",
						"description": "The query will return all notifications with an event time on or after the start date. \n  The start date should not be future dated and the correct format is YYYY-MM-DD.",
						"type": "string",
						"format": "date",
						"required": false
					},
					{
						"name": "endDate",
						"in": "query",
						"description": "The API will return all notificications with an event time on or before the end date. If the startDate is populated, the end date should be after the startDate. If the end date is not populated the endDate will default to today’s date. The correct format is YYYY-MM-DD.",
						"type": "string",
						"format": "date",
						"required": false
					},
					{
						"name": "include",
						"in": "query",
						"description": "You can use this field to indicate if you are interested in receiving read (or) unread (or) all messages. Value expected to be received is read/unread/all. ",
						"type": "string",
						"required": false
					},
					{
						"name": "notificationId",
						"in": "query",
						"description": "Notification ID of the notification that needs to be returned.",
						"type": "string",
						"required": false
					},
					{
						"name": "status",
						"in": "query",
						"description": "Status of diagnostic test which can be one of the following 1.Pass 2.Fail 3.Inconclusive 4.Completed 5.Completed With Error 6.Timed Out.",
						"type": "string",
						"required": false
					},
					{
						"name": "lastRecord",
						"in": "query",
						"description": "Will hold the Notification ID of the last record retrieved using the search criteria. The API will return only notifications with an event timestamp later than the event timestamp of the last record.  This field is used to retrieve the next page for pagination of API responses.",
						"type": "string",
						"required": false
					}
				],
				"tags": [
					"Diagnostic Notifications"
				],
				"responses": {
					"200": {
						"description": "Success - A list of responses are returned",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/DiagnosticsResponses"
							}
						}
					},
					"400": {
						"description": "Invalid or missing request parameters",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"401": {
						"description": "Invalid or no credentials passed in the request",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"403": {
						"description": "Authorization credentials passed and accepted but account does not have permission",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"404": {
						"description": "The requested URI does not exist",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"429": {
						"description": "Too many requests in a given amount of time",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"500": {
						"description": "An internal error occurred when processing the request",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					}
				},
				"security": []
			}
		},
		"/diagnostics-results/{type}": {
			"get": {
				"operationId": "Get Diagnostics Notifications by Type",
				"summary": "This API resource would pull all the unread/read diagnostics notifications belonging to you. The resource can be queried via different query parameters and the returned resource will list all diagnostics notifications that satisfy the filter criteria.",
				"description": "This query returns all the unread diagnostics that belong to you.\n",
				"produces": [
					"application/json"
				],
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"description": "Authorization header in the format 'Bearer {access_token}' - get the token by using the OAuth API with the scope 'TWDIAGNOSTICNOTIFICATION'.",
						"type": "string",
						"required": true
					},
					{
						"name": "type",
						"in": "path",
						"description": "type can be one of the following extendedpackage, foreignbattery, foreignbatterytoground, lowscaleresistance, lowscaleresistancetoground, opencircuit, resistancecapacitance, resistance, resistancetoground, superpackage, dslline, dsllinewithmlt, rvop, dataflow, combineddataintegrity, modemresync, linequalitydiagnostic, loopbacktest, portreset, singleendedlinetest, linestate, metalliclinetest, ntdstatuscheck, unidstatuscheck, univstatuscheck, dslamcongestioncheck, networkperformancetest, radiusevents, ntdreset.",
						"type": "string",
						"required": true
					},
					{
						"name": "serviceId",
						"in": "query",
						"description": "Service ID or FNN.",
						"required": false,
						"type": "string"
					},
					{
						"name": "diagnosticId",
						"in": "query",
						"description": "Telstra Wholesale’s unique identifier of the diagnostic test request.",
						"required": false,
						"type": "string"
					},
					{
						"name": "startDate",
						"in": "query",
						"description": "The query will return all notifications with an event time on or after the start date. \n  The start date should not be future dated and the correct format is YYYY-MM-DD.",
						"type": "string",
						"format": "date",
						"required": false
					},
					{
						"name": "endDate",
						"in": "query",
						"description": "The API will return all notificications with an event time on or before the end date. If the startDate is populated, the end date should be after the startDate. If the end date is not populated the endDate will default to today’s date. The correct format is YYYY-MM-DD.",
						"type": "string",
						"format": "date",
						"required": false
					},
					{
						"name": "include",
						"in": "query",
						"description": "You can use this field to indicate if you are interested in receiving read (or) unread (or) all messages. Value expected to be received is read/unread/all. ",
						"type": "string",
						"required": false
					},
					{
						"name": "notificationId",
						"in": "query",
						"description": "Notification ID of the notification that needs to be returned.",
						"type": "string",
						"required": false
					},
					{
						"name": "status",
						"in": "query",
						"description": "Status of diagnostic test which can be one of the following 1.Pass 2.Fail 3.Inconclusive 4.Completed 5.Completed With Error 6.Timed Out.",
						"type": "string",
						"required": false
					},
					{
						"name": "lastRecord",
						"in": "query",
						"description": "Will hold the Notification ID of the last record retrieved using the search criteria. The API will return only notifications with an event timestamp later than the event timestamp of the last record.  This field is used to retrieve the next page for pagination of API responses.",
						"type": "string",
						"required": false
					}
				],
				"tags": [
					"Diagnostic Notifications"
				],
				"responses": {
					"200": {
						"description": "Success - A list of responses are returned",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/DiagnosticsResponses"
							}
						}
					},
					"400": {
						"description": "Invalid or missing request parameters",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"401": {
						"description": "Invalid or no credentials passed in the request",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"403": {
						"description": "Authorization credentials passed and accepted but account does not have permission",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"404": {
						"description": "The requested URI does not exist",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"429": {
						"description": "Too many requests in a given amount of time",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					},
					"500": {
						"description": "An internal error occurred when processing the request",
						"schema": {
							"$ref": "#/definitions/Error"
						}
					}
				},
				"security": []
			}
		}
	},
	"securityDefinitions": {
		"OAuth2": {
			"type": "oauth2",
			"tokenUrl": "/v1/oauth/token",
			"flow": "application",
			"scopes": {
				"TWORDERNOTIFICATION": "Oauth scope for orders of Pull Notification API",
				"TWTICKETNOTIFICATION": "OAuth scope for tickets of Pull Notification API",
				"TWDIAGNOSTICNOTIFICATION": "OAuth scope for Diagnostics of Pull Notification API"
			}
		}
	},
	"definitions": {
		"MessageResponses": {
			"type": "object",
			"required": [
				"event"
			],
			"properties": {
				"event": {
					"type": "array",
					"description": "This block will hold one or more events.",
					"items": {
						"type": "object",
						"required": [
							"id",
							"type",
							"action",
							"eventDateTime",
							"customerOrder"
						],
						"properties": {
							"id": {
								"type": "string",
								"description": "Notification id for every individual event message that is sent. Unique identifier generated by Notification Broker."
							},
							"type": {
								"type": "string",
								"description": "The type of the order notification. This can be one of the following AppointmentUpdate, OrderUpdate, Reminder, NotesAdded."
							},
							"subType": {
								"type": "string",
								"description": "The sub type will indicate the individual notification reason."
							},
							"action": {
								"type": "string",
								"description": "Describes whether the notification is 'For Your Information’ or ‘For Your Action’. Possible values are FYI, FYA."
							},
							"description": {
								"type": "string",
								"description": "Long description field. This will provide a static description for the sub type value."
							},
							"eventDateTime": {
								"type": "string",
								"description": "'The timestamp when the event was created in Telstra’s system, in YYYY-MM-DDTHH:MM:SSZ format for example: 2016-10-11T00:00:00Z'."
							},
							"customerOrder": {
								"type": "object",
								"description": "This block will contain the order specific details.",
								"required": [
									"id",
									"type",
									"version"
								],
								"properties": {
									"id": {
										"type": "string",
										"description": "This value indicates the Order id created within Telstra systems."
									},
									"externalId": {
										"type": "string",
										"description": "This carries the order id that was created in your system."
									},
									"status": {
										"type": "string",
										"description": "Status of the order in Telstra systems. Active, Withdrawn, Completed, On Hold, Unable To Complete, Replaced, Rejected, Under-Assessment, Transmitted, Initial, Cancelled, Unable to Process."
									},
									"type": {
										"type": "string",
										"description": "Type of the Order. CONNECT, TRANSITION, NBSHP(Shape), NBUSHP(Unshape), NBCNAM(Change of Name), NBCPROD(Modify Product Configuration), NBCOL(Change of Owner), NBCCSN(Change of CSN), NBCPLN(Change of Plan), NBMOVE(Move), NBAAPMT(Amend Appointment), NBASITE(Amend Site Contact), NBACAN(Amend Cancel), NBAPROD(Amend Prod Config), NBCAN(Disconnect), NBNEW(Port-In), NBCHINT(Churn In Transition)."
									},
									"version": {
										"type": "string",
										"description": "Order version number."
									},
									"projectId": {
										"type": "string",
										"description": "The project name associated with the order."
									},
									"rejectReasonCode": {
										"type": "string",
										"description": "Populated in case of order rejections. N.B. This is not used for NBN LOLO order notifications."
									},
									"rejectReasonDescription": {
										"type": "string",
										"description": "Description of the rejection reason. N.B. This is not used for NBN LOLO order notifications."
									},
									"creationDatetime": {
										"type": "string",
										"description": "'The date when the order was created, in YYYY-MM-DDTHH:MM:SSZ format for example:\n  2016-10-11T00:00:00Z\n  N.B. This is not used for NBN LOLO order notifications.'"
									},
									"completionDatetime": {
										"type": "string",
										"description": "The date when the order was completed. Will be populated only when the order reaches terminal state.  N.B. This is not used for NBN LOLO order notifications."
									},
									"telstraCommitmentDate": {
										"type": "string",
										"description": "The expected resolution or completion date of the order."
									},
									"appointment": {
										"type": "array",
										"description": "This block will contain the appointment related details.",
										"items": {
											"type": "object",
											"required": [
												"id",
												"type",
												"startDateTime",
												"endDateTime"
											],
											"properties": {
												"id": {
													"type": "string",
													"description": "Appointment identifier."
												},
												"type": {
													"type": "string",
													"description": "This field specifies what type of appointment this block is for. Possible values are 1.NBN 2.Telstra."
												},
												"startDateTime": {
													"type": "string",
													"description": "'The appointment start date and time, in YYYY-MM-DDTHH:MM:SSZ format exfor example: 2016-10-11T00:00:00Z'."
												},
												"endDateTime": {
													"type": "string",
													"description": "'The appointment end date and time, in YYYY-MM-DDTHH:MM:SSZ format exfor example: 2016-10-11T00:00:00Z'."
												}
											}
										}
									},
									"customerOderItem": {
										"type": "object",
										"description": "The order item details corresponds to the NBN LOLO Request Item details.",
										"properties": {
											"id": {
												"type": "string",
												"description": "The identifier of the order item N.B. This is not used for NBN LOLO order notifications."
											},
											"status": {
												"type": "string",
												"description": "The request item status In Progress, Withdrawn, Completed, On Hold, Unable To Complete, Replaced, Rejected, Under-Assessment, Transmitted, Initial."
											},
											"version": {
												"type": "string",
												"description": "The version of the order item N.B. This is not used for NBN LOLO order notifications."
											},
											"type": {
												"type": "string",
												"description": "The type of the order item possible values are Connect, Disconnect."
											},
											"service": {
												"type": "array",
												"description": "This blocks contains the specific service information provided on the notification.",
												"items": {
													"type": "object",
													"required": [
														"type"
													],
													"properties": {
														"id": {
															"type": "string",
															"description": "Service dentifier for example: CSN or Broadband ID."
														},
														"status": {
															"type": "string",
															"description": "'Status of the service: In Progress, Withdrawn, Completed, On Hold, Unable To Complete, Replaced, Rejected, Under-Assessment, Transmitted, Initial'."
														},
														"type": {
															"type": "string",
															"description": "The type of the service. The possible values are: Voice, Broadband."
														},
														"serviceCharacteristics": {
															"type": "array",
															"items": {
																"type": "object",
																"required": [
																	"type",
																	"value"
																],
																"properties": {
																	"type": {
																		"type": "string",
																		"description": "Characteristics of the service such as Service Number, Serial Number, External Service ID, Product Name, Outbound Proxy, AVC ID, UNENCRYPTED SIP PASSWORD, USER AGENT DOMAIN, SIP USERNAME, NTD Port ID, SIP_URI."
																	},
																	"value": {
																		"type": "string",
																		"description": "Value of the associated name."
																	}
																}
															}
														}
													}
												}
											}
										}
									},
									"notes": {
										"type": "array",
										"description": "This block will contain information for any notes relating to the notification.",
										"items": {
											"type": "object",
											"required": [
												"text",
												"type"
											],
											"properties": {
												"text": {
													"type": "string",
													"description": "The text that is associated with the order."
												},
												"dateTime": {
													"type": "string",
													"description": "'Optional date field that specifies when the notes was created in YYYY-MM-DDTHH:MM:SSZ format for example: 2016-10-11T00:00:00Z'."
												},
												"author": {
													"type": "string",
													"description": "The author of the note."
												},
												"type": {
													"type": "string",
													"description": "Type of the note UserNotes, FulfillmentNotes, SystemNotes."
												},
												"authorType": {
													"type": "string",
													"description": "AuthorType possible values are TW User, SP User."
												}
											}
										}
									}
								}
							}
						}
					}
				},
				"nextDataSet": {
					"type": "string",
					"description": "In case off result set, this field will hold the url to fetch the next set of available records.  This field will not be populated if there are no more records to be returned."
				}
			},
			"example": {
				"event": [
					{
						"id": "notification id",
						"type": "OrderStatusChanged",
						"subtype": "NBN Delay Resolved",
						"action": "FYI",
						"description": "The internal network shortfall delay for this request has now been resolved. You will be notified if an appointment reschedule is required.",
						"eventDateTime": "2015-10-11T10:05:01Z",
						"customerOrder": {
							"id": "TelstraReference ID",
							"externalId": "your request id",
							"status": "completed",
							"type": "connect",
							"version": "1.0",
							"projectId": null,
							"rejectReasonCode": null,
							"rejectReasonDescription": null,
							"creationDatetime": null,
							"completionDatetime": null,
							"telstraCommitmentDate": "2016-10-11T00:00:00Z",
							"appointment": [
								{
									"id": "NBN Appointment ID",
									"type": "NBN",
									"startDateTime": "2016-10-11T00:00:00Z",
									"endDateTime": "2016-10-11T00:00:00Z"
								},
								{
									"id": "Telstra Appointment ID",
									"type": "Telstra",
									"startDateTime": "2016-10-11T00:00:00Z",
									"endDateTime": "2016-10-11T00:00:00Z"
								}
							],
							"customerOrderItem": {
								"id": "1",
								"status": "completed",
								"version": "1.0",
								"type": "connect",
								"service": {
									"id": "CSN number",
									"status": "Completed",
									"type": "voice",
									"serviceCharacteristics": [
										{
											"type": "SOP Username",
											"value": "Jonh"
										},
										{
											"type": "BB - AVC ID",
											"value": "AVC000012345678"
										},
										{
											"type": "BB - Port id",
											"value": 4
										},
										{
											"type": "NTD ID",
											"value": "ntd1234567"
										}
									]
								},
								"notes": [
									{
										"text": "NBN Appointment completed awaiting Telstra activation",
										"dateTime": 1476144000000,
										"author": "name of the person",
										"authorType": "TW",
										"type": "requestNote"
									}
								]
							}
						}
					}
				],
				"nextDataSet": "http://prod-api.in.telstra.com.au/application/tw/v1/pull-notification/orders?startDate=2015-06-13&notificationId= notification id"
			}
		},
		"TicketResponses": {
			"type": "object",
			"required": [
				"event"
			],
			"properties": {
				"event": {
					"type": "array",
					"description": "This block will hold one or more events.",
					"items": {
						"type": "object",
						"required": [
							"id",
							"type",
							"action",
							"eventDateTime"
						],
						"properties": {
							"id": {
								"type": "string",
								"description": "Notification id for every individual event message that is sent. Unique identifier generated by Notification Broker."
							},
							"type": {
								"type": "string",
								"description": "The type of the ticket event. Can be one of the following data CaseStatusChange, SubCaseStatusChange, CaseTargetRestorationChange, SubCaseCommitmentAppointmentChange, NotesChange, TicketCreateResponse, CallDiversionResponse, ApptRescheduleSelectResponse, IsolateLineHuntResponse."
							},
							"subType": {
								"type": "string",
								"description": "Type of subcase. This is populated when the event type is “SubCaseStatusChange or CallDiversionResponse or IsolateLineHuntResponse”.Possible values are Appointment, Commitment, Diversion."
							},
							"action": {
								"type": "string",
								"description": "Describes whether the notification is ‘For Your Information’ or ‘For Your Action’. Possible values are FYI."
							},
							"description": {
								"type": "string",
								"description": "Long description field."
							},
							"eventDateTime": {
								"type": "string",
								"description": "'The timestamp when the event was created in Telstra’s system, in YYYY-MM-DDTHH:MM:SSZ format for example: 2016-10-15T17:00:00Z'."
							},
							"ticket": {
								"type": "object",
								"required": [
									"telstraRefNumber",
									"notificationOn"
								],
								"properties": {
									"telstraRefNumber": {
										"type": "string",
										"description": "Telstra Reference number is the Case/Subcase Reference  used to identify the case or subcase in SIIAM."
									},
									"customerRefNumber": {
										"type": "string",
										"description": "This is provided while creating the case."
									},
									"timestamp": {
										"type": "string",
										"description": "'The Notification generation Time Stamp format for example: 2016-10-15T17:00:00Z timestamp is applicable when the event type is either “CaseStatusChange” or “SubCaseStatusChange” or “NotesChange”'."
									},
									"notificationOn": {
										"type": "object",
										"required": [
											"object"
										],
										"properties": {
											"object": {
												"type": "string",
												"description": "This indicates whether the notification is on Ticket or Task (Appointment/Commitment/Diversion)."
											},
											"taskRefNumber": {
												"type": "string",
												"description": "This is applicable only when the object is Appointment/Commitment/Diversion."
											},
											"status": {
												"type": "object",
												"properties": {
													"previous": {
														"type": "string",
														"description": "previous Status of the ticket in Telstra systems could be any of these values. Previous Status is only applicable in case of event type is  “CaseStatusChange” or “SubCaseStatusChange” For caseStatus Notifications Appointment Open, Closed, Collect-Pending,  Consultant-Accepted, Courier-Pending, Diversion-Pending, Escalation Open, Field-Open, Field-Open Pending, Interim-Pending, IVR-Hold, Network-Accepted, Network-Hold, Network-Open, Network pending, Network-Reassign, Network-Returned, New, Outage open, Outage-Resolved, Outage-Ringback, Recall open,  Ringback open, Test-Accepted, Test-ADSL, Test-BRS-Pending, Test-Connect Down, Test-CSP-Down, Test-Hold, Test-Iface-Error, Test-Inactive, Test-Pending, Test-RALF-Ok, Test-Reassign, Test-Reconcile, Test-Retest Fail, Test-Returned, Test-Ringback, Test-ROLF-Hold, Test-ROLF-Ok, Test-RONS-Ok, Test-RVOP-Ok, TIME-Process, Waiting parts open, Warranty-Closed, Warranty-NIA, Warranty-Notify, Web-Closed, Web-CPE, Web-CPE-Investigate, Web-Reschedule, Web-Transient. For subCaseStatus Notifications Closed, Close-Pending, Collect-Pending, Consultant-Accepted, Courier-Pending, Diversion-Pending, Escalation-Open, Field-Assigned, Field-Dispatched, Field-Qual-Continuity, Field-Recall, Field-Serv-Qual, Field-Unassigned, Interim-Pending, Network-Accepted, Network-Assigned, Network-Dispatched, Network-Hold, Network-Resolved, Network-Unassigned, New, Recall-Open, Test-Accepted, Test-Iface-Error, Test-Pending, Test-Returned, Web-Diversion."
													},
													"current": {
														"type": "string",
														"description": "Current Status of the ticket in Telstra systems could be any of these. Current Status is only applicable in case of event type is  “CaseStatusChange” or “SubCaseStatusChange” For caseStatus Notifications Appointment Open, Closed, Collect-Pending, Consultant-Accepted, Courier-Pending, Diversion-Pending, Escalation Open, Field-Open, Field-Open Pending, Interim-Pending, IVR-Hold, Network-Accepted, Network-Hold, Network-Open, Network pending, Network-Reassign, Network-Returned, New, Outage open, Outage-Resolved, Outage-Ringback, Recall open, Ringback open, Test-Accepted, Test-ADSL, Test-BRS-Pending, Test-Connect Down, Test-CSP-Down, Test-Hold, Test-Iface-Error, Test-Inactive, Test-Pending, Test-RALF-Ok, Test-Reassign, Test-Reconcile, Test-Retest Fail, Test-Returned, Test-Ringback, Test-ROLF-Hold, Test-ROLF-Ok, Test-RONS-Ok, Test-RVOP-Ok, TIME-Process, Waiting parts open, Warranty-Closed, Warranty-NIA, Warranty-Notify, Web-Closed, Web-CPE ,Web-CPE-Investigate, Web-Reschedule, Web-Transient. For subCaseStatus Notifications Closed, Close-Pending, Collect-Pending, Consultant-Accepted, Courier-Pending, Diversion-Pending, Escalation-Open, Field-Assigned, Field-Dispatched, Field-Qual-Continuity, Field-Recall, Field-Serv-Qual, Field-Unassigned, Interim-Pending, Network-Accepted, Network-Assigned, Network-Dispatched, Network-Hold, Network-Resolved, Network-Unassigned, New, Recall-Open, Test-Accepted, Test-Iface-Error, Test-Pending, Test-Returned, Web-Diversion."
													}
												}
											},
											"restoreTarget": {
												"type": "object",
												"properties": {
													"reasonCode": {
														"type": "string",
														"description": "This will hold the restoration reason code. In case of event type is “CaseTargetRestorationChange” one of the following reason code would be provided Customer Callback, Customer Delay, Customer Delay CSG, Hold for monitoring, Pending Parts Delivery, Pending test results, Pending test results from other area, Recalled Contractor, Transfer to NBN Co, Vendor Contract Delay, NBN Co related activities, Third party damage outside MSD, Access issue o/s Telstra control, Customer notified delay, Planned outage for upgrade. Incase the event type is “SubCaseCommitmentAppointmentChange” The following reason code would be provided Customer wants Fastrack, Customer After Hours Attendance, Customer negotiated delay, Customer Previously NIA, Mass Service Disruption, Neg'td b4 appt/commt, Rescheduled Appt Brought Forward, Telstra COW, Telstra Negotiated Delay, Telstra No Equipment, NBN Co related activities, Third party damage outside MSD, Access issue o/s Telstra control, Staff relocation associated with MSD, Planned outage for upgrade."
													},
													"previous": {
														"type": "string",
														"description": "'This would be the previous Restore Target Date Time in case of event  type is “CaseStatusChange and this would refer to Appointment/Commitment Date Time in case of event type is ”SubCaseCommitmentAppointmentChange” in YYYY-MM-DDTHH:MM:SSZ\n  format for example: 2016-10-15T17:00:00Z'."
													},
													"current": {
														"type": "string",
														"description": "'This would be the current Restore Target Date Time in case of event  type is “CaseStatusChange and this would refer to Appointment/Commitment Date Time in case of event type is ”SubCaseCommitmentAppointmentChange” in YYYY-MM-DDTHH:MM:SSZ\n  format for example ex: 2016-10-15T17:00:00Z'."
													}
												}
											},
											"newNotes": {
												"type": "string",
												"description": "Newly added notes and this is only provided when the event type is “NotesChange”."
											}
										}
									}
								}
							},
							"ticketCreateResponse": {
								"type": "object",
								"description": "This JSON object will be applicable only in case the ticket event type is TicketCreateResponse.",
								"required": [
									"acknowledgementId"
								],
								"properties": {
									"acknowledgementId": {
										"type": "string",
										"description": "Telstra Wholesale’s unique identifier of the ticketCreateResponse for tracking purposes. Format Ex: TCI-nnnnnnnnnn."
									},
									"success": {
										"type": "object",
										"description": "Ticket create success response.",
										"required": [
											"telstraRefNumber",
											"outcomeDescription",
											"faultStatus",
											"faultStatusDescription",
											"productDescription",
											"creationTime",
											"serviceUsage"
										],
										"properties": {
											"telstraRefNumber": {
												"type": "string",
												"description": "Telstra Case Reference Number used to identify the case in SIIAM."
											},
											"diagnosisDescription": {
												"type": "string",
												"description": "Description of test Results."
											},
											"outcomeDescription": {
												"type": "string",
												"description": "Description of outcome that are derived."
											},
											"outageDescription": {
												"type": "string",
												"description": "Description of the Outage."
											},
											"faultStatus": {
												"type": "string",
												"description": "Status of the case -  OPEN/CLOSED."
											},
											"faultStatusDescription": {
												"type": "string",
												"description": "Fault Status Description."
											},
											"productDescription": {
												"type": "string",
												"description": "High level product description on which the case is created. Possible values ADSL Wholesale – Flexstream, Wholesale ADSL L2TP, Exchange Line Only, Next Generation Voice, etc."
											},
											"creationTime": {
												"type": "string",
												"description": "Creation time of the case in YYYY-MM-DDTHH:MM:SSZ format, for ex: 2016-12-15T09:00:00Z."
											},
											"taskDetails": {
												"type": "array",
												"items": {
													"type": "object",
												"properties": {
													"status": {
														"type": "string",
														"description": "Status of the Subcase. Possible values- Consultant-Accepted,Field-Assigned,Field-Dispatched,Field-Recall,Field-Serv-Qual,Field-Unassigned,Network-Accepted,Network-Assigned,Network-Dispatched,Network-Hold,Network-Resolved,Network-Unassigned,New,Recall-Accepted,Recall-Pending,Test-Accepted,Test-Iface-Error,Test-Pending,Test-Returned."
													},
													"type": {
														"type": "string",
														"description": "Indicates the subcase type: Possible values are 1. Appointment 2. Commitment."
													},
													"startTime": {
														"type": "string",
														"description": "Start date time of the task in YYYY-MM-DDTHH:MM:SSZ format.Example: 2016-10-15T17:00:00Z.Start time is not provided if the task type is commitment."
													},
													"endTime": {
														"type": "string",
														"description": "End date time of the task in YYYY-MM-DDTHH:MM:SSZ format.Example: 2016-10-15T17:00:00Z."
													},
													"disruptId": {
														"type": "string",
														"description": "Mass service disruption or high work load id."
													},
													"message": {
														"type": "string",
														"description": "In case of subcase type is Appointment, the following would be the message: An appointment cannot be provided at this time. A Service Consultant will call the nominated contact person when an appointment can be confirmed. In case of subcase type is Commitment, the following would be the message: A field task commitment cannot be confirmed at this time.Telstra expects to meet its service restoration obligation. Should this not be possible the nominated contact person will be contacted in that regard."
													}
												}
												}
											},
											"serviceUsage": {
												"type": "object",
												"required": [
													"slaDescription",
													"responseTime",
													"restoreTime"
												],
												"properties": {
													"slaDescription": {
														"type": "string",
														"description": "SLA Description for the Fault i.e. Standard/Medical Priority,etc."
													},
													"responseTime": {
														"type": "object",
														"required": [
															"target"
														],
														"properties": {
															"target": {
																"type": "string",
																"description": "Response target Time of the case in YYYY-MM-DDTHH:MM:SSZ format, for ex: 2016-12-15T09:00:00Z."
															}
														}
													},
													"restoreTime": {
														"type": "object",
														"required": [
															"target"
														],
														"properties": {
															"target": {
																"type": "string",
																"description": "Restoration target Time of the case in YYYY-MM-DDTHH:MM:SSZ format, for ex: 2016-12-15T09:00:00Z."
															}
														}
													}
												}
											}
										}
									},
									"failure": {
										"type": "object",
										"description": "Error encountered in SIIAM for Ticket create – could be internal SIIAM error or validation of ticket create request issue found after processing an authorised request.",
										"required": [
											"code",
											"message"
										],
										"properties": {
											"code": {
												"type": "integer",
												"description": "Error code."
											},
											"message": {
												"type": "string",
												"description": "Text for error Message."
											}
										}
									}
								}
							},
							"callDiversionResponse": {
								"type": "object",
								"description": "This JSON object will be applicable only in case the ticket event type is CallDiversionResponse.",
								"required": [
									"acknowledgementId"
								],
								"properties": {
									"acknowledgementId": {
										"type": "string",
										"description": "Telstra Wholesale’s unique identifier of the callDiversionResponse for tracking purposes.Format Ex: CDRI-nnnnnnnnnn."
									},
									"success": {
										"type": "object",
										"description": "Ticket update for call diversion success response performed automatically via DivTool.",
										"required": [
											"telstraRefNumber",
											"serviceNumber",
											"diversionToNumber",
											"outcomeText"
										],
										"properties": {
											"telstraRefNumber": {
												"type": "string",
												"description": "Telstra Reference number is the Case Reference used to identify the case or subcase in Telstra Core Systems."
											},
											"serviceNumber": {
												"type": "string",
												"description": "Customer service number of the service being diverted."
											},
											"callDiversionResponseId": {
												"type": "string",
												"description": "DivTool reference ID. Only included if automatic diversion is successfully completed via Telstra systems."
											},
											"diversionToNumber": {
												"type": "string",
												"description": "Customer service number of the service that the service is being diverted to."
											},
											"outcomeText": {
												"type": "string",
												"description": "Your request for diversion has been successfully activated from 0X XXXX XXXX to 0X XXXX XXXX 'On restoration of your service, please deactivate the diversion by pressing #21# on the phone of the restored device' 
												(OR) Your request for call diversion for <Service Number> could not be activated at this time. A call diversion task has been dispatched to the National Wholesale Service Centre Support Desk for activation. You will be notified upon successful activation of the diversion."
											}
										}
									},
									"failure": {
										"type": "object",
										"description": "Ticket update for call diversion failure response.",
										"properties": {
											"code": {
												"type": "integer",
												"description": "Error code."
											},
											"message": {
												"type": "string",
												"description": "Text for error Message."
											}
										}
									}
								}
							},
							"apptRescheduleSelectResponse": {
								"type": "object",
								"description": "This JSON object will be applicable only in case the ticket event type is ApptRescheduleSelectResponse.",
								"required": [
									"acknowledgementId"
								],
								"properties": {
									"acknowledgementId": {
										"type": "string",
										"description": "Telstra Wholesale’s unique identifier of the ApptRescheduleSelectResponse for tracking purposes.Format Ex: ARSI-nnnnnnnnnn."
									},
									"success": {
										"type": "object",
										"description": "Appointment Reschedule Select success response.",
										"required": [
											"telstraRefNumber",
											"appointment"
										],
										"properties": {
											"telstraRefNumber": {
												"type": "string",
												"description": "Telstra Reference number is the Case Reference used to identify the case or subcase in Telstra Core Systems."
											},
											"appointment": {
												"type": "object",
												"description": "Appointment to be selected.",
												"required": [
													"appointmentId",
													"startDateTime",
													"endDateTime"
												],
												"properties": {
													"appointmentId": {
														"type": "string",
														"description": "Numeric Value."
													},
													"startDateTime": {
														"type": "string",
														"description": "Available start date and time in YYYY-MM-DDTHH:MM:SSZ format. Example: 2016-12-15T13:00:00Z."
													},
													"endDateTime": {
														"type": "string",
														"description": "Available end date and time in YYYY-MM-DDTHH:MM:SSZ format. Example: 2016-12-15T17:00:00Z."
													}
												}
											}
										}
									},
									"failure": {
										"type": "object",
										"description": "Appointment Reschedule Select failure response.",
										"required": [
											"code",
											"message"
										],
										"properties": {
											"code": {
												"type": "integer",
												"description": "Error code."
											},
											"message": {
												"type": "string",
												"description": "Text for error Message."
											}
										}
									}
								}
							},
							"isolateLineHuntResponse": {
								"type": "object",
								"description": "This JSON object will be applicable only in case the ticket event type is IsolateLineHuntResponse.",
								"required": [
									"acknowledgementId"
								],
								"properties": {
									"acknowledgementId": {
										"type": "string",
										"description": "Telstra Wholesale’s unique identifier of the IsolateLineHuntResponse for tracking purposes.Format Ex: ILRI-nnnnnnnnnn."
									},
									"success": {
										"type": "object",
										"description": "Ticket update for isolateHuntGroup success response performed automatically via DivTool.",
										"required": [
											"telstraRefNumber",
											"serviceNumber",
											"outcomeText"
										],
										"properties": {
											"telstraRefNumber": {
												"type": "string",
												"description": "Telstra Reference number is the Case Reference used to identify the case or subcase in Telstra Core Systems."
											},
											"serviceNumber": {
												"type": "string",
												"description": "Customer service number of the service being diverted."
											},
											"outcomeText": {
												"type": "string",
												"description": "Outcome Text: Your request for line hunt isolation for <Service Number> could not be activated at this time. A Diversion task requesting line hunt isolation has been dispatched to the National Wholesale Service Centre Support Desk for activation. You will be notified upon successful activation."
											}
										}
									},
									"failure": {
										"type": "object",
										"description": "Ticket update for isolationHuntGroup failure response.",
										"properties": {
											"code": {
												"type": "integer",
												"description": "Error code."
											},
											"message": {
												"type": "string",
												"description": "Text for error Message."
											}
										}
									}
								}
							}
						}
					}
				},
				"nextDataSet": {
					"type": "string",
					"description": "Newly added notes and this is only provided when the event type is “NotesChange”."
				}
			},
			"example": {
				"event": [
					{
						"id": "AssuranceSystem_23456",
						"type": "CaseStatusChange",
						"subType": null,
						"action": "FYI",
						"description": null,
						"eventDateTime": "2016-10-11T00:00:00Z",
						"ticket": {
							"telstraRefNumber": "123456",
							"customerRefNumber": "A23456",
							"timestamp": "2016-12-15T09:00:00Z",
							"notificationOn": {
								"object": "Ticket",
								"taskRefNumber": "123456-1",
								"status": {
									"previous": "Field-Open",
									"current": "Field-Open Pending"
								},
								"restoreTarget": {
									"reasonCode": "Customer wants Fastrack",
									"previous": "2016-12-15T09:00:00Z",
									"current": "2016-12-15T09:00:00Z"
								}
							}
						}
					}
				],
				"nextDataSet": "http://sapi-api.in.telstra.com.au/application/tw-notification/v1/pull-notification/tickets/CaseStatusChange&lastRecord=notificationid"
			}
		},
		"DiagnosticsResponses": {
			"type": "object",
			"required": [
				"event"
			],
			"properties": {
				"event": {
					"type": "array",
					"description": "This block will hold one or more events.",
					"items": {
						"type": "object",
						"required": [
							"id",
							"type",
							"action",
							"eventDateTime",
							"diagnosticsResult"
						],
						"properties": {
							"id": {
								"type": "string",
								"description": "Notification ID for every individual event message that is sent. Unique identifier generated by Notification Broker."
							},
							"type": {
								"type": "string",
								"description": "The type of the event. For Diagnostics, it will always be the diagnostic  test name. This can have one of these values extendedpackage, foreignbattery, foreignbatterytoground, lowscaleresistance, lowscaleresistancetoground, opencircuit, resistancecapacitance, resistance, resistancetoground, superpackage, dslline, dsllinewithmlt, rvop, dataflow, combineddataintegrity, modemresync, linequalitydiagnostic, loopbacktest, portreset, singleendedlinetest, linestate, metalliclinetest, ntdstatuscheck, unidstatuscheck, univstatuscheck, dslamcongestioncheck, networkperformancetest, radiusevents, ntdreset"
							},
							"action": {
								"type": "string",
								"description": "Describes whether the notification is ‘For Your Information’ or ‘For Your Action’. Possible values are: FYI\n  N.B. for Diagnostic Notifications, FYI is the only possible value."
							},
							"eventDateTime": {
								"type": "string",
								"description": "'The timestamp when the event was created in Telstra’s system, in YYYY-MM-DDTHH:MM:SSZ format. Example: 2016-10-11T17:00:00Z.'"
							},
							"diagnosticsResult": {
								"type": "object",
								"required": [
									"diagnosticId",
									"correlationId",
									"diagnosticName",
									"status",
									"resultMessage"
								],
								"properties": {
									"diagnosticId": {
										"type": "string",
										"description": "Diagnostics ID of the notification that needs to be returned."
									},
									"correlationId": {
										"type": "string",
										"description": "The unique identifier of the diagnostic test request from the point of view of RSP."
									},
									"diagnosticName": {
										"type": "string",
										"description": "'The diagnostic test for which the response belongs For the possible types: extendedpackage, foreignbattery, foreignbatterytoground, lowscaleresistance, lowscaleresistancetoground, opencircuit, resistancecapacitance, resistance, resistancetoground, superpackage, dslline, dsllinewithmlt, rvop, dataflow, combineddataintegrity, modemresync, linequalitydiagnostic, loopbacktest, portreset, singleendedlinetest, linestate, metalliclinetest, ntdstatuscheck, unidstatuscheck, univstatuscheck, dslamcongestioncheck, networkperformancetest, radiusevents, ntdreset'."
									},
									"avc": {
										"type": "string",
										"description": "AVC number."
									},
									"serviceId": {
										"type": "string",
										"description": "Service ID or FNN."
									},
									"endTime": {
										"type": "string",
										"description": "End date and time of the diagnostics test (for NBN services only).The format is YYYY-MM-DDTHH:MM:SSZ. Example: 2016-10-11T17:00:00Z."
									},
									"status": {
										"type": "string",
										"description": "Status of diagnostic test which can be one of the following 1.Pass 2.Fail 3.Inconclusive 4.Completed 5.Completed With Error 6.Timed Out."
									},
									"resultMessage": {
										"type": "string",
										"description": "Short message for the Diagnostic result."
									},
									"testDetails": {
										"type": "object",
										"description": "This object contains the detailed test results received for NBN or Copper from Telstra Wholesale back-end testing systems. Please refer to the TW Diagnostics API Guide for detailed descriptions and examples of the testDetails for each diagnostic test."
									}
								}
							}
						}
					}
				},
				"nextDataSet": {
					"type": "string",
					"description": "In case off result set, this field will hold the URL to fetch the next set of available records.This field will not be populated if there are no more records to be returned."
				}
			},
			"example": {
				"event": [
					{
						"id": "TnDM_23456",
						"type": "resistance",
						"action": "FYI",
						"eventDateTime": "2016-10-11T00:00:00Z",
						"diagnosticsResult": {
							"diagnosticId": "1234567890",
							"correlationId": "DODO123456",
							"avc": "AVC10001",
							"serviceId": "A0211111115",
							"endTime": "2016-09-08T07:58:00Z",
							"status": "Pass",
							"resultMessage": "No threshold breaches occurred"
						}
					}
				],
				"nextDataSet": "http://sapi-api.in.telstra.com.au/application/tw-notification/v1/pull-notification/diagnostics-results?serviceId=TR1234&lastRecord=notification id"
			}
		},
		"Error": {
			"type": "object",
			"required": [
				"message"
			],
			"properties": {
				"status": {
					"type": "integer",
					"format": "int32",
					"description": "The status code."
				},
				"message": {
					"type": "string",
					"description": "Message describing the error."
				}
			},
			"example": {
				"status": 400,
				"message": "Invalid or missing request parameters"
			}
		}
	}
}