{
  "opencollection": "1.0.0",
  "info": {
    "name": "Customer Delivery Booking API",
    "version": "v1.0"
  },
  "items": [
    {
      "info": {
        "name": "Reference Data Operations",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "To retrieve the list of provinces available in the system",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/booking/province",
            "headers": [
              {
                "name": "targetSystem",
                "value": ""
              }
            ]
          },
          "docs": "Province list retrieval"
        },
        {
          "info": {
            "name": "To retrieve the list of towns available in the system",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/booking/town",
            "headers": [
              {
                "name": "targetSystem",
                "value": ""
              }
            ]
          },
          "docs": "Town list retrieval"
        },
        {
          "info": {
            "name": "To retrieve the list of suburb available in the system",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/booking/suburb",
            "headers": [
              {
                "name": "targetSystem",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "divisionCode",
                "value": "",
                "type": "query",
                "description": "Division Code"
              },
              {
                "name": "suburbSearchValue",
                "value": "",
                "type": "query",
                "description": "Suburb Search Value Provided (Minimum 3 Characters)"
              }
            ]
          },
          "docs": "Suburb list retrieval"
        }
      ]
    },
    {
      "info": {
        "name": "Process Operations",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "To retrieve the booking availability",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/booking/bookingAvailability",
            "headers": [
              {
                "name": "targetSystem",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "customerGroupCode",
                "value": "",
                "type": "query",
                "description": "Customer Group Code"
              },
              {
                "name": "divisionCode",
                "value": "",
                "type": "query",
                "description": "Division Code"
              },
              {
                "name": "townCode",
                "value": "",
                "type": "query",
                "description": "Town Code"
              },
              {
                "name": "suburbName",
                "value": "",
                "type": "query",
                "description": "Suburb Name"
              },
              {
                "name": "clientName",
                "value": "",
                "type": "query",
                "description": "Client/Card holder Name"
              },
              {
                "name": "clientIdPassport",
                "value": "",
                "type": "query",
                "description": "Client SA ID or Passport Number"
              },
              {
                "name": "productCode",
                "value": "",
                "type": "query",
                "description": "Product type code to be delivered"
              },
              {
                "name": "searchRefType",
                "value": "",
                "type": "query",
                "description": "Reference type indicator 1 = Unique or 2 = Mounties Ref, 3 = Order Number"
              },
              {
                "name": "searchRefValue",
                "value": "",
                "type": "query",
                "description": "Reference Value to search by for received items"
              }
            ]
          },
          "docs": "Booking availability retrieval"
        },
        {
          "info": {
            "name": "To validate the booking",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/booking/externalBooking",
            "headers": [
              {
                "name": "targetSystem",
                "value": ""
              }
            ]
          },
          "docs": "External booking validation"
        },
        {
          "info": {
            "name": "To update or cancel a booking",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/booking/getBooking",
            "headers": [
              {
                "name": "targetSystem",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "divisionCode ",
                "value": "",
                "type": "query",
                "description": "Division Code for the Customers client"
              },
              {
                "name": "customerGroupCode ",
                "value": "",
                "type": "query",
                "description": "Customer Group Code"
              },
              {
                "name": "clientIDPassport",
                "value": "",
                "type": "query",
                "description": "ID or Passport number of the client/cardholder"
              },
              {
                "name": "createdDate ",
                "value": "",
                "type": "query",
                "description": "Booking Created Date e.g. 20171204 - 15:45"
              },
              {
                "name": "referenceNo",
                "value": "",
                "type": "query",
                "description": "DX301117_425"
              }
            ]
          },
          "docs": "To view a booking"
        },
        {
          "info": {
            "name": "To cancel a booking request",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/booking/cancelBooking",
            "headers": [
              {
                "name": "targetSystem",
                "value": ""
              }
            ]
          },
          "docs": "Booking Request cancellation"
        },
        {
          "info": {
            "name": "To track a booking",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/booking/findBooking",
            "headers": [
              {
                "name": "targetSystem",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "customerGroupCode",
                "value": "",
                "type": "query",
                "description": "Customer Group Code"
              },
              {
                "name": "searchBy",
                "value": "",
                "type": "query",
                "description": "Table column to search on (See FieldName in Booking Search Value Options table)"
              },
              {
                "name": "searchValue ",
                "value": "",
                "type": "query",
                "description": "Value to search for in table column i.e. 1 = Requested"
              },
              {
                "name": "searchDate ",
                "value": "",
                "type": "query",
                "description": "CreatedDate filter to search from e.g. 20171204"
              },
              {
                "name": "searchRange ",
                "value": "",
                "type": "query",
                "description": "Date Range to search By (Day, Week, Month)"
              }
            ]
          },
          "docs": "To know the current state of a booking"
        },
        {
          "info": {
            "name": "To validate booking by Administrator",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/booking/updateBooking",
            "headers": [
              {
                "name": "targetSystem",
                "value": ""
              }
            ]
          },
          "docs": "Booking validation by Administrator"
        }
      ]
    }
  ],
  "bundled": true
}