TMF622 v5 Use Cases

I want to
Request Type
Example URL
Retrieve and display details of a particular product order.
GET by ID{{orgendpoint}}/services/data/{{version}}/connect/comms/productOrderingManagement/v5/productOrder/{orderNumber}

NOTE: 
For invalid case ID, you will receive HTTP 404 error.
List all the product orders present in the system.
GET List
{{orgendpoint}}/services/data/{{version}}/connect/comms/productOrderingManagement/v5/productOrder
List all the product orders present in the system based on the provided field values.
GET List with Fields
{{orgendpoint}}/services/data/{{version}}/connect/comms/productOrderingManagement/v5/productOrder?fields=id,state,relatedParty

NOTE: 
The requested fields will be part of output, if they have value.
List all the product orders present in the system based on the filter applied.
GET List with Filters
{{orgendpoint}}/services/data/{{version}}/connect/comms/productOrderingManagement/v5/productOrder?state=Draft

NOTE: 
The requested fields will be part of output, if they have value.
List product orders, limit the number of product orders to a maximum of specified limit, and display results from the page specified by offset.GET with Pagination
{{orgendpoint}}/services/data/{{version}}/connect/comms/productOrderingManagement/v5/productOrder?offset=1&pageLimit=1&pageinfo=true
Create a new product order by providing the required details.
POST
{{orgendpoint}}/services/data/{{version}}/connect/comms/productOrderingManagement/v5/productOrder

GET by ID 

Consider you want to retrieve details of a particular product order.

Sample URL 

https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v63.0/connect/comms/productOrderingManagement/v5/productOrder/00000100

Sample Response 

1{
2  "id": "00000100",
3  "href": "/connect/comms/customermanagement/${version}/customer/00000100",
4  "state": "Draft",
5  "productOrderItem": [
6    {
7      "id": "100",
8      "quantity": 1,
9      "action": "add",
10      "productOffering": {
11        "id": "14277",
12        "name": "TMF25",
13        "@type": "ProductOfferingRef"
14      },
15      "@type": "ProductOrderItem"
16    }
17  ],
18  "relatedParty": [
19    {
20      "role": "Seller",
21      "partyOrPartyRole": {
22        "name": "Sample Account",
23        "@type": "PartyRef"
24      },
25      "@type": "RelatedPartyRefOrPartyRoleRef"
26    }
27  ],
28  "externalId": [
29    {
30      "@type": "ExternalIdentifier",
31      "owner": "TMF",
32      "externalIdentifierType": "POnumber",
33      "id": "456"
34    }
35  ],
36  "@type": "ProductOrder"
37}

GET List 

Consider there are multiple product orders in the system and you want to list all of them.

Sample URL 

https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v63.0/connect/comms/productOrderingManagement/v5/productOrder

Sample Response 

1[
2  {
3    "id": "00000100",
4    "href": "/connect/comms/customermanagement/${version}/customer/00000100",
5    "state": "Draft",
6    "productOrderItem": [
7      {
8        "id": "100",
9        "quantity": 1,
10        "action": "add",
11        "productOffering": {
12          "id": "14277",
13          "name": "TMF25",
14          "@type": "ProductOfferingRef"
15        },
16        "@type": "ProductOrderItem"
17      }
18    ],
19    "relatedParty": [
20      {
21        "role": "Seller",
22        "partyOrPartyRole": {
23          "name": "Sample Account",
24          "@type": "PartyRef"
25        },
26        "@type": "RelatedPartyRefOrPartyRoleRef"
27      }
28    ],
29    "externalId": [
30      {
31        "@type": "ExternalIdentifier",
32        "owner": "TMF",
33        "externalIdentifierType": "POnumber",
34        "id": "456"
35      }
36    ],
37    "@type": "ProductOrder"
38  }
39]

GET List with Fields 

Consider you want to retrieve all the active product orders present in the system for selected field values.

Sample URL 

https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v63.0/connect/comms/productOrderingManagement/v5/productOrder?fields=id,state,relatedParty

Sample Response 

1[
2  {
3    "id": "00000100",
4    "state": "Draft",
5    "relatedParty": [
6      {
7        "role": "Seller",
8        "partyOrPartyRole": {
9          "name": "Sample Account",
10          "@type": "PartyRef"
11        },
12        "@type": "RelatedPartyRefOrPartyRoleRef"
13      }
14    ]
15  }
16]

GET List with Filters 

Consider you want to list all the product orders present in the system based on the filter applied.

Sample URL 

https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v63.0/connect/comms/productOrderingManagement/v5/productOrder?state=Draft

Sample Response 

1{
2  "id": "00000100",
3  "href": "/connect/comms/customermanagement/${version}/customer/00000100",
4  "state": "Draft",
5  "productOrderItem": [
6    {
7      "id": "100",
8      "quantity": 1,
9      "action": "add",
10      "productOffering": {
11        "id": "14277",
12        "name": "TMF25",
13        "@type": "ProductOfferingRef"
14      },
15      "@type": "ProductOrderItem"
16    }
17  ],
18  "relatedParty": [
19    {
20      "role": "Seller",
21      "partyOrPartyRole": {
22        "name": "Sample Account",
23        "@type": "PartyRef"
24      },
25      "@type": "RelatedPartyRefOrPartyRoleRef"
26    }
27  ],
28  "externalId": [
29    {
30      "@type": "ExternalIdentifier",
31      "owner": "TMF",
32      "externalIdentifierType": "POnumber",
33      "id": "456"
34    }
35  ],
36  "@type": "ProductOrder"
37}

GET with Pagination 

Consider you want to retrieve list of product orders and apply required pagination query.

Sample URL 

https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v63.0/connect/comms/productOrderingManagement/v5/productOrder?offset=1&pageLimit=1&pageinfo=true

Sample Response 

1{
2  "currentPage": 2,
3  "totalPageSize": 10,
4  "recordList": [
5    {
6      "id": "00000100",
7      "href": "/connect/comms/customermanagement/${version}/customer/00000100",
8      "state": "Draft",
9      "productOrderItem": [
10        {
11          "id": "100",
12          "quantity": 1,
13          "action": "add",
14          "productOffering": {
15            "id": "14277",
16            "name": "TMF25",
17            "@type": "ProductOfferingRef"
18          },
19          "@type": "ProductOrderItem"
20        }
21      ],
22      "relatedParty": [
23        {
24          "role": "Seller",
25          "partyOrPartyRole": {
26            "name": "Sample Account",
27            "@type": "PartyRef"
28          },
29          "@type": "RelatedPartyRefOrPartyRoleRef"
30        }
31      ],
32      "externalId": [
33        {
34          "@type": "ExternalIdentifier",
35          "owner": "TMF",
36          "externalIdentifierType": "POnumber",
37          "id": "456"
38        }
39      ],
40      "@type": "ProductOrder"
41    }
42  ]
43}

POST 

Consider you want to create a new product order.

Sample URL 

https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/data/v63.0/connect/comms/productOrderingManagement/v5/productOrder

Sample Request 

1{
2"description": "Product Order illustration sample",
3"priceBookName": "Standard",
4"state":"Submitted",
5"externalId": [
6{
7"externalIdentifierType": "POnumber",
8"id": "456"
9}
10],
11"requestedCompletionDate": "2019-05-02T08:13:59.506Z",
12"requestedStartDate": "2019-05-03T08:13:59.506Z",
13"productOrderItem": [
14{
15"id": "100",
16"quantity": 1,
17"action": "add",
18"productOffering": {
19"id": "SL9060",
20"name": "SLA: Gold"
21},
22"product": {
23"productCharacteristic": [
24{
25"name": "GOLD_ATTRIBUTE",
26"id": "GOLD_ATTRIBUTE",
27"value": "415 279 7439",
28"valueType": "string"
29}
30]
31}
32
33}
34],
35"relatedParty": [
36{
37"role": "Customer",
38"partyOrPartyRole": {
39"id": "CC978213",
40"name": "GenePoint"
41}
42}
43]
44}

Sample Response 

1201 Created