Design Document For Symphonica API

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 27

Design document for Symphonica API

Table of Contents
Authentication........................................................................................................................1
Authentication Header for all calls..........................................................................................2
Create Service Order (Bandwidth)...........................................................................................2
Symphonica Notification.........................................................................................................5
Creating Subscription Channel...........................................................................................................6
Event Name SERVICE-ORDER.STATE-CHANGED....................................................................................................6

Create Service Order (Bandwidth & Voice).............................................................................11


Reboot ONT service...............................................................................................................19
ONT Status.......................................................................................................................................19
Install ONT service.................................................................................................................20
Cancellation (Broadband and/or voice).................................................................................21
Call Features.........................................................................................................................22
GET ONT Status.....................................................................................................................23
Change Equipment or Update Serial Number.........................................................................24

Authentication
Post: https://login.symphonica.com/sso_rest/authentication/login

Add this to custom setting:

Username: lumos-lab-api@lumos.com
Password: Escambia12

Extract token from the response.

Important: Use Named Credentials here


Authentication Header for all calls
X-Organization-Code: LUMOS-LAB
X-Authorization: << Token received from authorization call>>

Create Service Order (Bandwidth)

https://login.symphonica.com/service-order-manager/api/service-orders/

"externalId": "{{$guid}}" d9a87aea-0faf-4b65-


81e0-86bd55bafcecc
(Order Id or any global
key)
"region": "{{REGION}}" Product
“1” Note: This will be
from type of site
"id": "{{product_id}}" Product Salesforce Product Id

"source": "{{SOURCE}}" Product VOM

"name": "{{product_id}}" Product Salesforce Product Id

"id": "{{id_contract}}" relatedParty Salesforce Order Id

"source": "{{SOURCE}}" relatedParty VOM

"name": "{{id_contract}}" relatedParty Order Name

"publicIdentifier": orderItems.service.publicIdentifier Service ID Generated in


"{{id_contract}}_{{product_id}}_HSD" Salesforce

Request

{
"externalId": "d9a87aea-0faf-4b65-81e0-86bd55bafcec",
"priority": "1",
"orderType": "PROVIDE",
"region": "1",
"category": "HSD",
"product": {
"id": "01t6t000001ZlLfAAK",
"source": "VOM",
"name": "Residential Broadband 200"
},
"relatedParty": [
{
"role": "CUSTOMER",
"id": "8018L000000MPwxQAG",
"source": "VOM",
"name": "Order 0000010"
}
],
"orderItems": [
{
"id": 0,
"action": "ADD",
"appointments": [],
"orderItemRelationships": [],
"service": {
"publicIdentifier": "8018L000000MPwxQAG_01t6t000001ZlLfAAK_HSD",
"serviceSpecification": {
"code": "RES_HSD",
"version": "1.0"
},
"description": "",
"places": [],
"characteristics": [
{
"name": "BANDWIDTH_PROFILE",
"value": "50Mbps", // Technical Product
"serviceSpecCharRelationships": [],
"characteristicRelationships": []
},
{
"name": "TECHNOLOGY",
"value": "FTTH"
}
],
"serviceRelationship": [],
"publicIdentifierserviceRelationship": []
}
}
],
"extraValues": [
{
"name": "NETWORK_ACCESS",
"value": "false"
}
]
}

Response (Store highlighted return values)

{
"id": "6408ca7371127b6ac0e731a9",
"externalId": "d9a87aea-0faf-4b65-81e0-86bd55bafcec",
"priority": "1",
"category": "HSD",
"state": "INITIAL",
"orderDate": "2023-03-08T17:48:35.470Z",
"region": "TIDEWATER",
"source": "SYM-SOM",
"traceId": "ab4f4709fb305387",
"executionMode": "LAUNCHED",
"orderType": "PROVIDE",
"notes": [],
"orderItems": [
{
"id": "0",
"action": "ADD",
"state": "INITIAL",
"appointments": [],
"orderItemRelationships": [],
"errors": [],
"service": {
"description": "",
"serviceSpecification": {
"id": null,
"source": "SYM-CATALOG",
"name": null,
"code": "RES_HSD",
"version": "1.0"
},
"category": "CFS",
"characteristics": [
{
"name": "BANDWIDTH_PROFILE",
"value": "50Mbps"
},
{
"name": "TECHNOLOGY",
"value": "FTTH"
}
],
"publicIdentifier": "8018L000000MPwxQAG_01t6t000001ZlLfAAK_HSD"
}
}
],
"orderRelationships": [],
"relatedParty": [
{
"id": "8018L000000MPwxQAG",
"source": "VOM",
"name": "Order 0000010",
"role": "CUSTOMER"
}
],
"extraValues": [
{
"name": "NETWORK_ACCESS",
"value": "false"
}
],
"errors": [],
"executionTimeInMillis": null,
"product": {
"id": "01t6t000001ZlLfAAK",
"source": "VOM",
"name": "Residential Broadband 200"
},
"customerAccount": null,
"links": [
{
"rel": "self",
"href": "https://login.symphonica.com/service-order-manager/api/service-orders/6408ca7371127b6ac0e731a9"
}
]
}

Symphonica Notification
Symphonica will return notifications to subscribed channel.

Creating Subscription Channel

POST https://login.symphonica.com/notification-service/api/subscriber
Event Name SERVICE-ORDER.STATE-CHANGED

Request Header:

X-Organization-Code: LUMOS-LAB
X-Authorization: <Token received from authentication call>

Request Body:

{
"subscriptionType": "HTTP",
"subscriptionKey": "b0c9330714ff3dc56a0919f640d585d70a468d6b64fa041507c74b8559f78553",
"subscriberCode": "LUMOS-LAB",
"serviceName": "service-order-manager",
"eventName": "SERVICE-ORDER.STATE-CHANGED",
"query": null,
"subscriptionInformation": {
"retries": 3,
"httpUri": "https://nslumoscomm111--dev05.sandbox.my.salesforce-sites.com/services/apexrest/SymphonicaNotification",
"timeoutInMs": 3000,
"retryIntervalInMs": 30000,
"httpMethod": "POST"
},
"createdAt": "2023-03-10T15:06+0000",
"eventOutputTransformation": null,
"links": []
}

Create a Salesforce Object : Symphonica Notification

Add the following field

Notification JSON Notification_JSON__c Long Text Area(130000)

Create Apex Rest class to receive notification message via Http Post. Store the response as
JSON.

Here’s an example:

/**
* Created by josephpoozhikunnel.
*/

@RestResource(UrlMapping = '/SymphonicaNotification/*')
global with sharing class SymphonicaNotification {

@HttpPost
global static String postMessage(){

RestRequest request = RestContext.request;

System.debug('Symponica message ' +


request.requestBody.toString());

Symphonica_Notification__c message = new


Symphonica_Notification__c();
message.Notification_JSON__c = request.requestBody.toString();

insert message;

return 'Success';
}

Typical notification will be:

{
"payload": {
"id": "640b49c55a152715d2e69d49",
"externalId": "d9a87aea-0faf-4b65-81e0-86bd55bafcec",
"priority": "1",
"category": "HSD",
"state": "IN_PROGRESS",
"orderDate": "2023-03-10T15:16:21.227Z",
"startDate": "2023-03-10T15:16:21.311Z",
"region": "TIDEWATER",
"source": "SYM-SOM",
"executionMode": "LAUNCHED",
"traceId": "17b92ffc7dafd2e0",
"orderType": "PROVIDE",
"notes": [],
"orderRelationships": [],
"errors": [],
"relatedParty": [{
"id": "8018L000000MPwxQAG",
"source": "VOM",
"name": "Order 0000010",
"role": "CUSTOMER"
}],
"extraValues": [{
"name": "NETWORK_ACCESS",
"value": "false"
}],
"product": {
"id": "01t6t000001ZlLfAAK",
"source": "VOM",
"name": "Residential Broadband 200"
},
"orderItems": [{
"id": "0",
"action": "ADD",
"state": "IN_PROGRESS",
"appointments": [],
"orderItemRelationships": [],
"errors": [],
"service": {
"description": "",
"serviceSpecification": {
"id": "638a69ae607a10776e9b7582",
"source": "SYM-CATALOG",
"name": "RES_HSD",
"code": "RES_HSD",
"version": "1.0"
},
"category": "CFS",
"characteristics": [{
"name": "BANDWIDTH_PROFILE",
"value": "50Mbps"
}, {
"name": "TECHNOLOGY",
"value": "FTTH"
}],
"publicIdentifier":
"8018L000000MPwxQAG_01t6t000001ZlLfAAK_HSD"
}
}],
"executionTimeInMillis": null
},
"eventTime": "2023-03-10T15:16:21.314+0000",
"eventType": "SERVICE-ORDER.STATE-CHANGED",
"serviceName": "service-order-manager"
}

"externalId": "d9a87aea-0faf-4b65-81e0-86bd55bafcec",
This Id corresponds to the ID sent in Creating Order in the previous Create Order call. It will be
regular salesforce order id sent earlier.

"state": "IN_PROGRESS",
This indicates the progress. If it’s failed then create a case for someone to take care of it. If its
success then continue in the orchestration step.
Here are the various states:
State Description
Initial: First status of the order when sent to the SOM.
Acknowledge: It is where an order has been received and the message and basic
validations have passed.
In Progress: It is when the delivery of the service has started.
Canceled: It is where an order "on the fly" has been successfully canceled.
Completed: It is where an order has a complete provision, and the service is
now active.
Rejected: Rejected status can happen for several reasons: The order did not pass the viability check.
There are invalid values within the Order Request from the northbound system.
The order does not comply with the business rules established by the operator.

Pending: It is when the order is in the waiting stage for some action/task to be completed before it can
move forward.
Held: It is used when an order cannot progress due to a problem.

These states have to be addressed in the Orchestration flow.


Create Service Order (Bandwidth & Voice)

HTTP POST https://login.symphonica.com/service-order-manager/api/service-orders/

Authentication same as above.

"externalId": "{{$guid}}" d9a87aea-0faf-4b65-


81e0-86bd55bafcecc
(Order id)
"region": "{{REGION}}" Product
1
"id": "{{product_id}}" Product Salesforce Product Id

"source": "{{SOURCE}}" Product VOM

"name": "{{product_id}}" Product Salesforce Product Id

"id": "{{id_contract}}" relatedParty Salesforce Order Id

"source": "{{SOURCE}}" relatedParty VOM

"name": "{{id_contract}}" relatedParty Order Name

"publicIdentifier": orderItems.service.publicIdentifier Service ID Generated in


"{{id_contract}}_{{product_id}}_HSD" Salesforce

Voice
"externalId": "{{$guid}}" d9a87aea-0faf-
4b65-81e0-
86bd55bafcecc
(Address Id from
VC4 will be on
Service Address
object)
"region": "{{REGION}}" Product
1
"id": "{{product_id}}" Product Salesforce Product Id

"source": "{{SOURCE}}" Product VOM


"name": "{{product_id}}" Product Broadband

"id": "{{id_contract}}" relatedParty Salesforce Order Id

"source": "{{SOURCE}}" relatedParty VOM

"name": "{{id_contract}}" relatedParty Order Name

"publicIdentifier": orderItems.service.publicIdentifier Service ID Generated


"{{id_contract}}_{{product_id}}_VOICE_{{phoneNumber}} in Salesforce
"

"characteristics": [
{
"name": "BANDWIDTH_PROFILE",
"value": "Fibertec_100Mbps",
"serviceSpecCharRelationships": [],
"characteristicRelationships": []
},
{
"name": "TECHNOLOGY",
"value": "FTTH"
}
],

Important note: All name value comes from EPC Product de-composition

Characteristics Bandwidth
"value": "Fibertec_100Mbps" value To be populated from EPC
Products
"name": "BANDWIDTH_PROFILE", name To be populated from EPC
Products

Characteristics Voice
"value": "3WC", value To be populated from EPC
Products
"name": "CALL_FEATURE", name

Request (This is only voice, to add broadband add as an item to order items)
{
"externalId": "d9a87aea-0faf-4b65-81e0-86bd55bafcec",
"priority": "1",
"orderType": "PROVIDE",
"region": "1",
"category": "HSD",
"product": {
"id": "01t6t000001ZlLfAAK",
"source": "VOM",
"name": "Residential Voice"
},
"relatedParty": [
{
"role": "CUSTOMER",
"id": "8018L000000MPwxQAG",
"source": "VOM",
"name": "Order 0000010"
}
],
"orderItems": [
{
"id": 0,
"action": "ADD",
"appointments": [],
"orderItemRelationships": [],
"service": {
"publicIdentifier": "8018L000000MPwxQAG_01t6t000001ZlLfAAK_VOICE_7865642044",
"serviceSpecification": {
"code": "RES_VOICE",
"version": "1.0"
},
"description": "",
"places": [
{
"name": "Main Office",
"role": "Default Delivery",
"address": {
"streetName": "Cabildo",
"streetType": "Avenue",
"streetNumber": "50",
"streetNumberSuffix": "",
"postCode": "",
"locality": "",
"city": "Richmond",
"stateOrProvince": "Virginia",
"country": "United States"
}
}
],
"characteristics": [
{
"name": "PORT",
"value": "1"
},
{
"name": "PROFILE",
"value": "BASIC"
},
{
"name": "PHONE_NUMBER",
"value": "7865642044"
},
{
"name": "CALL_FEATURE",
"value": "CAW",
"operation": "ADD",
"characteristicRelationships": []
},
{
"name": "CALL_FEATURE",
"value": "3WC",
"operation": "ADD",
"characteristicRelationships": [
{
"id": "1",
"name": "CALL_FEATURE_CUSTOM_VALUE",
"value": "5"
}
]
},
{
"name": "TECHNOLOGY",
"value": "FTTH"
}
],
"serviceRelationship": [],
"publicIdentifierserviceRelationship": []
}
}
],
"extraValues": [
{
"name": "NETWORK_ACCESS",
"value": "false"
},
{
"name": "SIP_PASSWORD",
"value": ""
}
]
}

Important:

"publicIdentifier": "8018L000000MPwxQAG_01t6t000001ZlLfAAK_VOICE_7865642044",

This public identifier will be the service key generated on all order items in order management
process.

Note: Characteristics will represent the different call features that will be available from EPC
technical product.

"characteristics": [
{
"name": "PORT",
"value": "1"
},
{
"name": "PROFILE",
"value": "BASIC"
},
{
"name": "PHONE_NUMBER",
"value": "7865642044"
},
{
"name": "CALL_FEATURE",
"value": "CAW",
"operation": "ADD",
"characteristicRelationships": []
},
{
"name": "CALL_FEATURE",
"value": "3WC",
"operation": "ADD",
"characteristicRelationships": [
{
"id": "1",
"name": "CALL_FEATURE_CUSTOM_VALUE",
"value": "5"
}
]
},

Response (Store highlighted return values)

{
"id": "64230681fbf3945011549bcc",
"externalId": "d9a87aea-0faf-4b65-81e0-86bd55bafcec",
"priority": "1",
"category": "HSD",
"state": "INITIAL",
"orderDate": "2023-03-28T15:23:45.935Z",
"region": "1",
"source": "SYM-SOM",
"traceId": "92b988795ee642e5",
"executionMode": "LAUNCHED",
"orderType": "PROVIDE",
"notes": [],
"orderItems": [
{
"id": "0",
"action": "ADD",
"state": "INITIAL",
"appointments": [],
"orderItemRelationships": [],
"errors": [],
"service": {
"description": "",
"serviceSpecification": {
"id": null,
"source": "SYM-CATALOG",
"name": null,
"code": "RES_VOICE",
"version": "1.0"
},
"category": "CFS",
"places": [
{
"name": "Main Office",
"role": "Default Delivery",
"address": {
"streetName": "Cabildo",
"streetType": "Avenue",
"streetNumber": "50",
"streetNumberSuffix": "",
"streetNumberLastSuffix": null,
"streetSuffix": null,
"postCode": "",
"locality": "",
"city": "Richmond",
"stateOrProvince": "Virginia",
"country": "United States"
}
}
],
"characteristics": [
{
"name": "PORT",
"value": "1"
},
{
"name": "PROFILE",
"value": "BASIC"
},
{
"name": "PHONE_NUMBER",
"value": "7865642044"
},
{
"name": "CALL_FEATURE",
"value": "CAW",
"operation": "ADD"
},
{
"name": "CALL_FEATURE",
"value": "3WC",
"operation": "ADD",
"characteristicRelationships": [
{
"id": "1",
"name": "CALL_FEATURE_CUSTOM_VALUE",
"value": "5"
}
]
},
{
"name": "TECHNOLOGY",
"value": "FTTH"
}
],
"publicIdentifier": "8018L000000MPwxQAG_01t6t000001ZlLfAAK_VOICE_7865642044"
}
}
],
"orderRelationships": [],
"relatedParty": [
{
"id": "8018L000000MPwxQAG",
"source": "VOM",
"name": "Order 0000010",
"role": "CUSTOMER"
}
],
"extraValues": [
{
"name": "NETWORK_ACCESS",
"value": "false"
}
],
"errors": [],
"executionTimeInMillis": null,
"product": {
"id": "01t6t000001ZlLfAAK",
"source": "VOM",
"name": "Residential Voice"
},
"customerAccount": null,
"links": [
{
"rel": "self",
"href": "https://login.symphonica.com/service-order-manager/api/service-orders/64230681fbf3945011549bcc"
}
]
}

Reboot ONT service


Reboot of ONT service can be done by Service agent and/or Repair Tech in the field.

As per symphonica they do not receive any “real” feedback after a reboot request is done. The
field tech can see the reboot happening.

POST: https://login.symphonica.com/workflow-order-manager/api/workflow-orders
Request:

{
"externalId": "d9a87aea-0faf-4b65-81e0-86bd55bafcec",
"region": "1",
"category": "RES_PON_ACCESS",
"description": "ONT Reset",
"cfs": {
"publicIdentifier": "8018L000000MPwxQAG_01t6t000001ZlLfAAK_HSD",
"source": "SYM-INVENTORY"
},
"relatedParty": [
{
"role": "CUSTOMER",
"id": "8018L000000MPwxQAG", // Order id
"source": "VOM",
"name": "Order 0000010" // Actual order number
}
],
"workflowOrderSpec": {
"source": "SYM-WOM",
"code": "DUMMY.RES_PON_ACCESS.EQUIPMENT.Reset"
}
}

Important things to remember:

"publicIdentifier": "8018L000000MPwxQAG_01t6t000001ZlLfAAK_HSD" => This is the service ID sent in the previous call
and should be on the order items.

"code": "DUMMY.RES_PON_ACCESS.EQUIPMENT.Reset" => Important: Test environment will have the “Dummy” tag.
Remove it for production.

ONT Status
NOTE: Another call to get the ONT Status can be made to get the status. But no real status is obtained. If the reboot was received
successfully then a state is sent back with the call below. But this state does not indicate if the reboot was successful. This call
therefore is redundant and have no value. For the purpose of completeness the call es EACTLY the same as above with replace

"description": "ONT Reset", with "description": "ONT Satus",

Install ONT service

Install ONT service request is called after the installation and Serial Number and RG Serial Number are entered or scanned by
the field services tech.
POST: https://login.symphonica.com/workflow-order-manager/api/service-orders

Authentication as provided above.

Request:

{
"externalId": "d9a87aea-0faf-4b65-81e0-86bd55bafcec",
"priority": "1",
"orderType": "PROVIDE",
"description": "ADD",
"region": "1",
"category": "PON_ACCESS",
"product": {
"id": "01t6t000001ZlLfAAK",
"source": "VOM",
"name": "Residential Broadband 200"
},
"relatedParty": [
{
"role": "CUSTOMER",
"id": "8018L000000MPwxQAG",
"source": "VOM",
"name": "Order 0000010"
}
],
"orderItems": [
{
"id": 0,
"action": "ADD",
"service": {
"publicIdentifier": "8018L000000MPwxQAG_01t6t000001ZlLfAAK_HSD",
"serviceSpecification": {
"code": "RES_PON_ACCESS",
"version": "1.0"
},
"characteristics": [
{
"name": "SERIAL_NUMBER",
"value": "4879789"
}, {
"name": "RG_SERIAL_NUMBER",
"value": "1234567"
}

]
}
}
],
"extraValues": [
{
"name": "NETWORK_ACCESS",
"value": "false"
}
]
}

Note the highlighted key terms. These are differences when it comes to the earlier request to make an order.
Important: "code": "RES_PON_ACCESS"

Cancellation (Broadband and/or voice)


POST https://login.symphonica.com/workflow-order-manager/api/service-orders

The request will be the same as the order (Create Service Order). This is just another order
type.

Only difference:
{
……
"orderType": "CEASE",
"description": "DELETE",
"region": “1",
…………. All the order items etc should be included.
}

Call Features
These features will need to be added for voice product.

"characteristics": [
{
"name": "CALL_FEATURE",
"value": "CAW",
"operation": "ADD",
"characteristicRelationships": []
},
{
"name": "CALL_FEATURE",
"value": "3WC",
"operation": "ADD",
"characteristicRelationships": [
{
"id": "1",
"name": "CALL_FEATURE_CUSTOM_VALUE",
"value": "5"
}
]
},

Description Code on product Custom Values Operations*


A M D
CALL_FEATURE CALL_FEATURE_CUSTOM_VAL
UE
Anonymous Call Rejection CALLREJECTION N/A X X
Automatic Call Back (Call Return) CALLBACK N/A X X
Call Block CALLBLOCK N/A X X
Call Forwarding Always
CALLFWDU Custom1: TN to be forwarded X X X
(Unconditional)
Call Forwarding Busy CALLFWDB Custom1: TN to be forwarded X X X
Call Forwarding No Answer CALLFWDNA Custom1: TN to be forwarded X X X
Call Forwarding Not Reachable CALLFWDNR Custom1: TN to be forwarded X X X
Call Waiting CALLWAITING N/A X X
Caller ID Name and Number CALLERID N/A X X
Selected Call Acceptance SELECTIVECALL N/A X X
Speed Dial SPEEDDIAL N/A X X
Three Way Calling 3WAYCALLING N/A X X
Voicemail VOICEMAIL N/A X X
Custom1: DirectoryAssistance
Custom2: International
Custom3: AccessCodes
Toll Deny 411, 700, 900, International
CALLBARRING X X X
(Call Barring) Custom Values take values
true or false to deny or
grant, default value to
Metaswitch is false
Unlimited Domestic Long Distance
UNLIMITEDLD N/A X X

Sim Ring SIMRING N/A X X


Sequential Ring SEQRING N/A X X
Voicemail to email VTM N/A X X
Calling ID Block CALLERIDBLOCK N/A X X
Distinctive Ring DISTINCTIVERING N/A X X
Call Hold CALLHOLD N/A X X
N/A

E911 E911 The data required will be X X


taken from places, specified
in the service order
N/A

The data required will be


Directory Listing DIRECTORY X X X
taken from places and
relatedParty, specified in
the service order.

GET ONT Status


POST https://login.symphonica.com/workflow-order-manager/api/workflow-orders

Call this after the RES PON Access is COMPLETE the tech will need to do this call to check if
the ports are correct. The system will have to compare if there is a difference between VC4 port
details and Symphonica port details.

Request

{
"externalId": "d9a87aea-0faf-4b65-81e0-86bd55bafcec",
"region": "1",
"category": "RES_PON_ACCESS",
"description": "ONT Satus",
"cfs": {
"publicIdentifier": "8018L000000MPwxQAG_01t6t000001ZlLfAAK_HSD",
"source": "SYM-INVENTORY"
},
"relatedParty": [
{
"role": "CUSTOMER",
"id": "8018L000000MPwxQAG",
"source": "VOM",
"name": "Order 0000010"
}
],
"workflowOrderSpec": {
"source": "SYM-WOM",
"code": "DUMMY.RES_PON_ACCESS.Status"
}
}
Note: There is ongoing work on updating the response as per Symponica on April 21st. The
response will provide the port.

The port information returned has to be compared with earlier provided port info from VC4. If
this is different. Then update the new port information using the next call. Need some
clarification since its work in progress with Symphonica.

Change Equipment or Update Serial Number


POST https://login.symphonica.com/service-order-manager/api/service-orders/

Request

{
"externalId": "d9a87aea-0faf-4b65-81e0-86bd55bafcec",
"priority": "1",
"region": "1",
"category": "PON_ACCESS",
"orderType": "CHANGE_RESOURCE",
"source": "VOM",
"relatedParty": [
{
"role": "CUSTOMER",
"id": "8018L000000MPwxQAG",
"source": "VOM",
"name": "Order 0000010"
}
],
"orderItems": [
{
"id": 0,
"action": "MODIFY",
"service": {
"publicIdentifier": "8018L000000MPwxQAG_01t6t000001ZlLfAAK_HSD", // service id
"serviceSpecification": {
"code": "RES_PON_ACCESS",
"version": "1.0"
},
"characteristics": [
{
"name": "SERIAL_NUMBER", // ont serial in woli
"value": "AAAAAAAAA",
"operation": "MODIFY"
},
{
"name": "RG_SERIAL_NUMBER", // rg serial in woli
"value": "BBBBBBBB",
"operation": "MODIFY"
}.
{
"name": "RACK",
"value": "RRRRRRRRR",
"operation": "MODIFY"
}.
{
"name": "SLOT ",
"value": "STTTTTTTTTTT",
"operation": "MODIFY"
}.

{
"name": "PORT",
"value": "PPPPPPPPP",
"operation": "MODIFY"
}.

]
}
}
],
"extraValues": [
{
"name": "NETWORK_ACCESS",
"value": "false"
}
]
}

Response:

{
"id": "64465f6afbf394501197b805",
"externalId": "d9a87aea-0faf-4b65-81e0-86bd55bafcec",
"priority": "1",
"category": "PON_ACCESS",
"state": "INITIAL",
"orderDate": "2023-04-24T10:52:26.444Z",
"region": "1",
"source": "VOM",
"traceId": "657c509da0effdae",
"executionMode": "LAUNCHED",
"orderType": "CHANGE_RESOURCE",
"notes": [],
"orderItems": [
{
"id": "0",
"action": "MODIFY",
"state": "INITIAL",
"appointments": [],
"orderItemRelationships": [],
"errors": [],
"service": {
"serviceSpecification": {
"id": null,
"source": "SYM-CATALOG",
"name": null,
"code": "RES_PON_ACCESS",
"version": "1.0"
},
"category": "CFS",
"characteristics": [
{
"name": "SERIAL_NUMBER",
"value": "AAAAAAAAA",
"operation": "MODIFY"
},
{
"name": "RG_SERIAL_NUMBER",
"value": "BBBBBBBB",
"operation": "MODIFY"
}
],
"publicIdentifier": "8018L000000MPwxQAG_01t6t000001ZlLfAAK_HSD"
}
}
],
"orderRelationships": [],
"relatedParty": [
{
"id": "8018L000000MPwxQAG",
"source": "VOM",
"name": "Order 0000010",
"role": "CUSTOMER"
}
],
"extraValues": [
{
"name": "NETWORK_ACCESS",
"value": "false"
}
],
"errors": [],
"executionTimeInMillis": null,
"product": null,
"customerAccount": null,
"links": [
{
"rel": "self",
"href": "https://login.symphonica.com/service-order-manager/api/service-orders/64465f6afbf394501197b805"
}
]
}

The only important part of the response is the state. They system will have to wait for the
response from he subscribed call earlier to see the change in status.

You might also like