Manage Public Shopping List Headers

As a catalog administrator, you can create public shopping lists to make related groups of items available to preparers for requisitioning. For example, a list could contain office supplies or a new hire kit. The availability of a public shopping list is based on the Procurement BU in which the list is created, the effective dates of the list, and whether the preparer has been granted access to the list.

You can use the Public Shopping Lists REST API resource to maintain shopping list headers using these methods:

  1. Get a public shopping list header (GET).
  2. Update header details of a public shopping list (PATCH).
  3. Delete a public shopping list header (DELETE).
  4. Create a new public shopping list header (POST).

To access this REST resource, you need to have the Procurement Catalog Administrator or ORA_PO_PROCUREMENT_REST_SERVICE_DUTY role.

Let's consider that John Rivenbark is a catalog administrator and is working in a healthcare organization. He often gets requests to create, update or delete shopping lists. He can use this REST API resource to maintain public shopping list headers as needed.

Get a Public Shopping List

To query for public shopping lists you can use the finder parameters to find the records you desire. For example:
  1. Use the finder findByPSLAndProcBU to find public shopping lists by name and by Procurement BU.

  2. Use the finder findByActivePublicShoppingList to find all public shopping lists that are not expired in the current date.

  3. Use the finder findByProcurementBU to find all public shopping lists in a Procurement BU.

Here are two examples using the finders findByPSLAndProcBU and findByProcurementBU.

Example 1

John Rivenbark needs to update one of the shopping lists but he doesn't remember the exact name of the list. He remembers the list is for pediatric supplies and its name has the string 'Pediatric'. Here's what to do:

  1. Pass the list name string with the finder to the resource URL.

  2. Perform a GET operation on the URL.

You can see all the public shopping lists with the string 'Pediatric' in the name in the output response.

Example 1 URL

Use this resource URL format.

GET

curl -u username:password "https://servername/fscmRestApi/resources/version/publicShoppingLists/?finder=findByPSLAndProcBU;PublicShoppingList="%Pediatric%"&orderBy=PublicShoppingList"

Example 1 Response

Here's an example of the reponse body in JSON format:
{
    "items": [
        {
            "PublicShoppingListHeaderId": 300100558177147,
            "PublicShoppingList": "Pediatric Emergency Supplies",
            "ProcurementBUId": 204,
            "ProcurementBU": "Vision Operations",
            "PublicShoppingListDescription": "Pediatric emergency supplies list includes: \n- Arm boards: infant, child\n- IV needles: 24 gauge and up\n- Intraosseous needles- infant, pediatric, adult IV administration sets with calibrated chambers and extension tubing and/or infusion devices, etc.",
            "PublicShoppingListEndDate": null,
            "PublicShoppingListStartDate": "2022-07-19",
            "CreatedBy": "CVRQST17",
            "CreationDate": "2022-07-19T21:07:26+00:00",
            "LastUpdateDate": "2022-07-19T21:12:07.626+00:00",
            "LastUpdatedBy": "CVRQST17",
            "links": [
                {
                    "rel": "self",
                    "href": "https://server/fscmRestApi/resources/version/publicShoppingLists/300100558177147",
                    "name": "publicShoppingLists",
                    "kind": "item",
                    "properties": {
                        "changeIndicator": "ACED0005737200136A6176612E7574696C2E41727261794C6973747881D21D99C7619D03000149000473697A65787000000001770400000001737200116A6176612E6C616E672E496E746567657212E2A0A4F781873802000149000576616C7565787200106A6176612E6C616E672E4E756D62657286AC951D0B94E08B02000078700000000178"
                    }
                },
                {
                    "rel": "canonical",
                    "href": "https://server/fscmRestApi/resources/version/publicShoppingLists/300100558177147",
                    "name": "publicShoppingLists",
                    "kind": "item"
                }
            ]
        },
        {
            "PublicShoppingListHeaderId": 300100558177157,
            "PublicShoppingList": "Pediatric Office Supplies",
            "ProcurementBUId": 204,
            "ProcurementBU": "Vision Operations",
            "PublicShoppingListDescription": "General office supplies for the pediatric department.",
            "PublicShoppingListEndDate": null,
            "PublicShoppingListStartDate": "2022-07-19",
            "CreatedBy": "CVRQST17",
            "CreationDate": "2022-07-19T21:18:01.602+00:00",
            "LastUpdateDate": "2022-07-19T21:18:32.079+00:00",
            "LastUpdatedBy": "CVRQST17",
            "links": [
                {
                    "rel": "self",
                    "href": "https://server/fscmRestApi/resources/version/publicShoppingLists/300100558177157",
                    "name": "publicShoppingLists",
                    "kind": "item",
                    "properties": {
                        "changeIndicator": "ACED0005737200136A6176612E7574696C2E41727261794C6973747881D21D99C7619D03000149000473697A65787000000001770400000001737200116A6176612E6C616E672E496E746567657212E2A0A4F781873802000149000576616C7565787200106A6176612E6C616E672E4E756D62657286AC951D0B94E08B02000078700000000178"
                    }
                },
                {
                    "rel": "canonical",
                    "href": "https://server/fscmRestApi/resources/version/publicShoppingLists/300100558177157",
                    "name": "publicShoppingLists",
                    "kind": "item"
                }
            ]
        },
        {
            "PublicShoppingListHeaderId": 300100558177158,
            "PublicShoppingList": "Pediatric food supplies",
            "ProcurementBUId": 204,
            "ProcurementBU": "Vision Operations",
            "PublicShoppingListDescription": "Food supplies for the pediatric department.",
            "PublicShoppingListEndDate": null,
            "PublicShoppingListStartDate": "2022-07-19",
            "CreatedBy": "CVRQST17",
            "CreationDate": "2022-07-19T21:18:45.454+00:00",
            "LastUpdateDate": "2022-07-19T21:19:19.767+00:00",
            "LastUpdatedBy": "CVRQST17",
            "links": [
                {
                    "rel": "self",
                    "href": "https://server/fscmRestApi/resources/version/publicShoppingLists/300100558177158",
                    "name": "publicShoppingLists",
                    "kind": "item",
                    "properties": {
                        "changeIndicator": "ACED0005737200136A6176612E7574696C2E41727261794C6973747881D21D99C7619D03000149000473697A65787000000001770400000001737200116A6176612E6C616E672E496E746567657212E2A0A4F781873802000149000576616C7565787200106A6176612E6C616E672E4E756D62657286AC951D0B94E08B02000078700000000178"
                    }
                },
                {
                    "rel": "canonical",
                    "href": "https://server/fscmRestApi/resources/version/publicShoppingLists/300100558177158",
                    "name": "publicShoppingLists",
                    "kind": "item"
                }
            ]
        }
    ],
    "count": 3,
    "hasMore": false,
    "limit": 25,
    "offset": 0,
    "links": [
        {
            "rel": "self",
            "href": "https://server/fscmRestApi/resources/version/publicShoppingLists",
            "name": "publicShoppingLists",
            "kind": "collection"
        }
    ]
}

Example 2

John Rivenbark wants to find all public shopping lists in the Vision Services business unit, so he can evaluate whether he should create other lists. Here's what to do:

  1. Pass the business unit name string with the finder to the resource URL.

  2. Perform a GET operation on the URL.

You can see all the public shopping lists created in Vision Services in the output response.

Example 2 URL

Use this resource URL format.

GET

curl -u username:password "https://servername/fscmRestApi/resources/version/publicShoppingLists/?finder=findByProcurementBU;ProcurementBU="Vision Services"&orderBy=CreationDate:desc"

Example 2 Response

Here's an example of the reponse body in JSON format:
{
    "items": [
        {
            "PublicShoppingListHeaderId": 300100559285633,
            "PublicShoppingList": "Pediatric Services",
            "ProcurementBUId": 458,
            "ProcurementBU": "Vision Services",
            "PublicShoppingListDescription": "Speech-Language Therapy, Occupational Therapy, Physical Therapy, Child Development Services.\n",
            "PublicShoppingListEndDate": null,
            "PublicShoppingListStartDate": "2022-07-20",
            "CreatedBy": "CVRQST17",
            "CreationDate": "2022-07-20T21:00:43+00:00",
            "LastUpdateDate": "2022-07-20T21:01:52.113+00:00",
            "LastUpdatedBy": "CVRQST17",
            "links": [
                {
                    "rel": "self",
                    "href": "https://server/fscmRestApi/resources/version/publicShoppingLists/300100559285633",
                    "name": "publicShoppingLists",
                    "kind": "item",
                    "properties": {
                        "changeIndicator": "ACED0005737200136A6176612E7574696C2E41727261794C6973747881D21D99C7619D03000149000473697A65787000000001770400000001737200116A6176612E6C616E672E496E746567657212E2A0A4F781873802000149000576616C7565787200106A6176612E6C616E672E4E756D62657286AC951D0B94E08B02000078700000000178"
                    }
                },
                {
                    "rel": "canonical",
                    "href": "https://server/fscmRestApi/resources/version/publicShoppingLists/300100559285633",
                    "name": "publicShoppingLists",
                    "kind": "item"
                }
            ]
        }
    ],
    "count": 1,
    "hasMore": false,
    "limit": 25,
    "offset": 0,
    "links": [
        {
            "rel": "self",
            "href": "https://server/fscmRestApi/resources/version/publicShoppingLists",
            "name": "publicShoppingLists",
            "kind": "collection"
        }
    ]
}

Update a Public Shopping List

If you want to update details of a shopping list header such as the name, the description, or the start and end dates, you can pass the new details in the payload and perform a PATCH operation.

Note that you can only update the Procurement BU of a public shopping list that has no items saved in the list. For updating the shopping list lines, you need to use the publicShoppingListLines resource.

Example URL

Use this resource URL format.

PATCH

curl -X PATCH -u "username:password" -H "Content-Type: application/vnd.oracle.adf.resourceitem+json" -d 'request payload'  "https://servername/fscmRestApi/resources/version/publicShoppingLists/publicShoppingListId"

Example Request

Here's an example of the request body in JSON format:

{
    "PublicShoppingListStartDate": "2022-07-25",
    "PublicShoppingListDescription": "Pediatric food supplies excluding nuts and dairy products."
}
Example Response

Here's an example of the response body in JSON format:

{
    "PublicShoppingListHeaderId": 300100558177158,
    "PublicShoppingList": "Pediatric food supplies",
    "ProcurementBUId": 204,
    "ProcurementBU": "Vision Operations",
    "PublicShoppingListDescription": "Pediatric food supplies excluding nuts and dairy products.",
    "PublicShoppingListEndDate": null,
    "PublicShoppingListStartDate": "2022-07-25",
    "CreatedBy": "CVRQST17",
    "CreationDate": "2022-07-19T21:18:45.454+00:00",
    "LastUpdateDate": "2022-07-19T22:04:58+00:00",
    "LastUpdatedBy": "CVBUYER01",
    "links": [
        {
            "rel": "self",
            "href": "https://server/fscmRestApi/resources/version/publicShoppingLists/300100558177158",
            "name": "publicShoppingLists",
            "kind": "item",
            "properties": {
                "changeIndicator": "ACED0005737200136A6176612E7574696C2E41727261794C6973747881D21D99C7619D03000149000473697A65787000000001770400000001737200116A6176612E6C616E672E496E746567657212E2A0A4F781873802000149000576616C7565787200106A6176612E6C616E672E4E756D62657286AC951D0B94E08B02000078700000000278"
            }
        },
        {
            "rel": "canonical",
            "href": "https://server/fscmRestApi/resources/version/publicShoppingLists/300100558177158",
            "name": "publicShoppingLists",
            "kind": "item"
        }
    ]
}

Delete a Public Shopping List

After you delete all the items of a public shopping list, you can delete the public shopping list header.

Example URL

Use this resource URL format.

DELETE

curl -u username:password -X DELETE "https://servername/fscmRestApi/resources/version/publicShoppingLists/publicshoppinglistId"

Example Response

Here's an example of the response body in JSON format:

Response Code 204 No Content

Create a Public Shopping List

If you want to create a new shopping list header, you can pass the details in the payload and perform a POST operation.

For adding items to the shopping list, you need to use the publicShoppingListLines resource.

Example URL

Use this resource URL format.

POST

curl -u username:password -X POST -H "Content-Type:application/vnd.oracle.adf.resourceitem+json" -d 'request payload' 
"https://servername/fscmRestApi/resources/version/publicShoppingLists"

Example Request

Here's an example of the request body in JSON format:

{
    "ProcurementBU": "Vision Operations",
    "PublicShoppingList": "Pediatric Equipment",
    "PublicShoppingListDescription": "Pediatric equipment to care for small-sized patients including pediatric scales, tabletop scales, pediatric stretchers, exam room cabinets, pediatric exam tables.",
    "PublicShoppingListEndDate": null,
    "PublicShoppingListStartDate": "2022-08-01"
}
Example Response

Here's an example of the response body in JSON format:

{
    "PublicShoppingListHeaderId": 300100559215333,
    "PublicShoppingList": "Pediatric Equipment",
    "ProcurementBUId": 204,
    "ProcurementBU": "Vision Operations",
    "PublicShoppingListDescription": "Pediatric equipment to care for small-sized patients including pediatric scales, tabletop scales, pediatric stretchers, exam room cabinets, pediatric exam tables.",
    "PublicShoppingListEndDate": null,
    "PublicShoppingListStartDate": "2022-08-01",
    "CreatedBy": "CVRQST17",
    "CreationDate": "2022-07-20T18:27:47+00:00",
    "LastUpdateDate": "2022-07-20T18:27:48.247+00:00",
    "LastUpdatedBy": "CVRQST17",
    "links": [
        {
            "rel": "self",
            "href": "https://server/fscmRestApi/resources/version/publicShoppingLists/300100559215333",
            "name": "publicShoppingLists",
            "kind": "item",
            "properties": {
                "changeIndicator": "ACED0005737200136A6176612E7574696C2E41727261794C6973747881D21D99C7619D03000149000473697A65787000000001770400000001737200116A6176612E6C616E672E496E746567657212E2A0A4F781873802000149000576616C7565787200106A6176612E6C616E672E4E756D62657286AC951D0B94E08B02000078700000000178"
            }
        },
        {
            "rel": "canonical",
            "href": "https://server/fscmRestApi/resources/version/publicShoppingLists/300100559215333",
            "name": "publicShoppingLists",
            "kind": "item"
        }
    ]
}