Skip to content

PickUpPoint Management

This section gives an overview of the API calls used for managing PickUpPoints.

GetPickUpPoints

Location /v1/PickupPoints/GetPickUpPoints

Gets a list of all the PickUppoints. PickUpPoints will be filtered by currently logged in (api) account. Request and result are paginated.

{
    # Mandatory Fields
    "pageNo": 1,                    # Page number, starting from 1
    "pageSize": 10                  # Number of items on a single page. Min: 1, Max: 500

    # Optional Fields
    "pupUid": "",                   # Unique pick up point identifier to get the details for.
    "includeDetails": false         # Include pick up points details like addresses and reference.
    "searchText": null/""           # Search pick up point by name or address.

}
POST /v1/PickupPoints/GetPickUpPoints HTTP/1.1
Host: api.staging.mypup.app
Authorization: Bearer ......
Content-Type: application/json

{
    "pageNo": 1,  
    "pageSize": 10,
    "pupUid": null,
    "includeDetails": false
}
{
  "items": [                        # List of pick up points
    {
      "pupUid": "",                 # Unique Identifier for the pick up point
      "name": "",                   # Name of the pick up point
      "timeZone": ""                # (Optional) code of the timezone of the pickuppoint. See 
                                    # Protocol page for a list of all available timezones.

                                    # If IncludeDetails is TRUE
      "locationAddress": {          # The physical location of the lockers
        "streetName": "",
        "mailbox": "",
        "city": "",
        "countryIso2": ""           
      },
      "deliveryAddress": {          # The location where the mail will be sent and distributed to the Pick Up Points
        "streetName": "",
        "mailbox": "",
        "city": "",
        "countryIso2": ""
      },
      "parkingAddress": {           # The location where the delivery person parks his car to supply the Pick Up Points
        "streetName": "",
        "mailbox": "",
        "city": "",
        "countryIso2": ""
      },
      "externalReference": ""       # External Pick Up Point reference
    } 
  ],
  "pageNo": 1,                      # Result page number
  "pageSize": 10,                   # Requested page size
  "totalItems": 0,                  # Total number of items available, independent 
                                    # of the current page.
  "totalPages": 0,                  # Total number of pages, independent of the current page.
  "success": true/false,            # Command executed successfully
  "error": null,                    # Error code (if any)
  "message": null                   # Error message (if any)
}
{
  "items": [
    {
      "pupUid": "6d35c61f3fba4186a8c276bb9b9a2f63",
      "name": "Pick Up Point One"
      "locationAddress": {
        "streetName": "Singel 93",
        "mailbox": "1234 AB",
        "city": "Amsterdam",
        "countryIso2": "NL"         
      },
      "deliveryAddress": {
        "streetName": "'s-Gravelandseweg 365",
        "mailbox": "1243 BJ",
        "city": "Zaandam",
        "countryIso2": "NL"
      },
      "parkingAddress": null,
      "externalReference": "Ref.12"
    },
    {
      "pupUid": "d84150566fe34861a80c6e9ecf004b95",
      "name": "Pick Up Point Two",
      "locationAddress": {
        "streetName": "Dam 123",
        "mailbox": "1234 AB",
        "city": "Amsterdam",
        "countryIso2": "NL"         
      },
      "deliveryAddress": {
        "streetName": "Kalverstraat 365",
        "mailbox": "1243 BJ",
        "city": "Amsterdam",
        "countryIso2": "NL"
      },
      "parkingAddress": null,
      "externalReference": "Ref.12"
    }
  ],
  "pageNo": 1,
  "pageSize": 10,
  "totalItems": 2,
  "totalPages": 1,
  "success": true,
  "error": null,
  "message": null
}

GetPickUpPointAvailability

Location /v1/PickupPoints/GetPickUpPointAvailability

Gets a list of the PickUpPoint's availability. PickUpPoints will be filtered by currently logged in (api) account. Request and result are paginated.

{
    # Mandatory Fields
    "pageNo": 1,                    # Page number, starting from 1
    "pageSize": 10,                 # Number of items on a single page. Min: 1, Max: 500
    "pupUid": ""                    # Unique Id of a single PickUpPoint to get the availability for.
}
POST /v1/PickupPoints/GetPickUpPointAvailability HTTP/1.1
Host: api.staging.mypup.app
Authorization: Bearer ......
Content-Type: application/json

{
    "pageNo": 1, 
    "pageSize": 10,
    "pupUid": "4aba1eb179644a95887e3ab37e644193"

}
{
  "items": [                        # List of pick up points, including availability.
    {
      "pupUid": "",                 # Unique id of the pick up point.
      "freeLockers": 0,             # Total number of available/free lockers.
      "occupiedLockers": 0,         # Total number of occupied lockers.
      "totalLockers": 0,            # Total number of lockers in the pick up point.
      "availabilityBySize": [       # List of available locker (types) by size.
        {
          "name": "",               # Name of  the size.
          "freeLockers": 0,         # Total number of free lockers, within this size category.
          "occupiedLockers": 2,     # Total number of occupied lockers, within this size category.
          "totalLockers": 2         # Total number of lockers in the pick up point, within this size category.
        }
      ]
    }
  ],
  "pageNo": 1,                      # Result page number
  "pageSize": 10,                   # Requested page size
  "totalItems": 0,                  # Total number of items available, independent of the current page.
  "totalPages": 0,                  # Total number of pages, independent of the current page.
  "success": true/false,            # Command executed successfully
  "error": null,                    # Error code (if any)
  "message": null                   # Error message (if any)
}
{
  "items": [
    {
      "pupUid": "fa8d3cccc0a4fb3c8fa66399f5ea8767",
      "freeLockers": 8,
      "occupiedLockers": 15,
      "totalLockers": 23,
      "availabilityBySize": [
        {
          "name": "40cm x 60cm x 65cm",
          "freeLockers": 0,
          "occupiedLockers": 2,
          "totalLockers": 2
        },
        {
          "name": "40cm x 60cm x 15cm",
          "freeLockers": 0,
          "occupiedLockers": 12,
          "totalLockers": 12
        },
        {
          "name": "40cm x 60cm x 30cm",
          "freeLockers": 8,
          "occupiedLockers": 1,
          "totalLockers": 9
        }
      ]
    }
  ],
  "pageNo": 1,
  "pageSize": 10,
  "totalItems": 1,
  "totalPages": 1,
  "success": true,
  "error": null,
  "message": null
}

GetLockers

Location /v1/PickupPoints/GetLockers

Gets a list of all lockers. Request and result are paginated.

{
    # Mandatory Fields
    "pageNo": 1,                    # Page number, starting from 1
    "pageSize": 10,                 # Number of items on a single page. Min: 1, Max: 500
    "pupUid": ""                    # Unique Id of a single PickUpPoint to get the availability for.
}
POST /v1/PickupPoints/GetLockers HTTP/1.1
Host: api.staging.mypup.app
Authorization: Bearer ......
Content-Type: application/json

{
    "pageNo": 1, 
    "pageSize": 10,
    "pupUid": "4aba1eb179644a95887e3ab37e644193"

}
{
  "items": [                        # List of pick up points, including availability.
    {
      "pupUid": "",                 # Unique id of the pick up point.
      "lockerUid": "",              # Unique id of the locker.
      "name": "",                   # Name of the locker
      "dimension": {                # Dimension of the locker in centimeters. 
        "width": 1,                  
        "height": 1,                 
        "length": 1,                 
      }
    }
  ],
  "pageNo": 1,                      # Result page number
  "pageSize": 10,                   # Requested page size
  "totalItems": 0,                  # Total number of items available, independent of the current page.
  "totalPages": 0,                  # Total number of pages, independent of the current page.
  "success": true/false,            # Command executed successfully
  "error": null,                    # Error code (if any)
  "message": null                   # Error message (if any)
}
{
    "items": [
        {
            "pupUid": "4aba1eb179644a95887e3ab37e644193",
            "lockerUid": "faea7d0a038744e7b3d5492b7fd34185",
            "name": "1",
            "dimension": {
                "width": 40,
                "height": 15,
                "length": 60
            }
        },
        {
            "pupUid": "4aba1eb179644a95887e3ab37e644193",
            "lockerUid": "c570603d3efd4bc9ae66242946d9f1ff",
            "name": "5",
            "dimension": {
                "width": 40,
                "height": 15,
                "length": 60
            }
        },
        {
            "pupUid": "4aba1eb179644a95887e3ab37e644193",
            "lockerUid": "586b6b755bf24f8ba311f613ddcf37ba",
            "name": "6",
            "dimension": {
                "width": 40,
                "height": 15,
                "length": 60
            }
        }
    ],
    "pageNo": 1,
    "pageSize": 500,
    "totalItems": 3,
    "totalPages": 1,
    "success": true,
    "error": null,
    "message": null
}

GetAvailableLockers

Location /v1/PickupPoints/GetAvailableLockers

Gets a list of the lockers available. This method can be used, for example, to collect free lockers for creating local shipments. Request and result are paginated.

{
    # Mandatory Fields
    "pageNo": 1,                    # Page number, starting from 1
    "pageSize": 10,                 # Number of items on a single page. Min: 1, Max: 500
    "pupUid": ""                    # Unique Id of a single PickUpPoint to get the availability for.
}
POST /v1/PickupPoints/GetAvailableLockers HTTP/1.1
Host: api.staging.mypup.app
Authorization: Bearer ......
Content-Type: application/json

{
    "pageNo": 1, 
    "pageSize": 10,
    "pupUid": "4aba1eb179644a95887e3ab37e644193"

}
{
  "items": [                        # List of pick up points, including availability.
    {
      "pupUid": "",                 # Unique id of the pick up point.
      "lockerUid": "",              # Unique id of the locker.
      "name": "",                   # Name of the locker
      "dimension": {                # Dimension of the locker in centimeters. 
        "width": 1,                  
        "height": 1,                 
        "length": 1,                 
      }
    }
  ],
  "pageNo": 1,                      # Result page number
  "pageSize": 10,                   # Requested page size
  "totalItems": 0,                  # Total number of items available, independent of the current page.
  "totalPages": 0,                  # Total number of pages, independent of the current page.
  "success": true/false,            # Command executed successfully
  "error": null,                    # Error code (if any)
  "message": null                   # Error message (if any)
}
{
    "items": [
        {
            "pupUid": "4aba1eb179644a95887e3ab37e644193",
            "lockerUid": "faea7d0a038744e7b3d5492b7fd34185",
            "name": "1",
            "dimension": {
                "width": 40,
                "height": 15,
                "length": 60
            }
        },
        {
            "pupUid": "4aba1eb179644a95887e3ab37e644193",
            "lockerUid": "c570603d3efd4bc9ae66242946d9f1ff",
            "name": "5",
            "dimension": {
                "width": 40,
                "height": 15,
                "length": 60
            }
        },
        {
            "pupUid": "4aba1eb179644a95887e3ab37e644193",
            "lockerUid": "586b6b755bf24f8ba311f613ddcf37ba",
            "name": "6",
            "dimension": {
                "width": 40,
                "height": 15,
                "length": 60
            }
        }
    ],
    "pageNo": 1,
    "pageSize": 500,
    "totalItems": 3,
    "totalPages": 1,
    "success": true,
    "error": null,
    "message": null
}

GetLockerKinds

Location /v1/PickupPoints/GetLockerKinds

Gets a list of the locker kinds. With this method you can request an overview of the different types of lockers.

{
    # Mandatory Fields
    "pupUid": ""                    # Unique Id of a single PickUpPoint to get a list of the locker kinds
}
POST /v1/PickupPoints/GetLockerKinds HTTP/1.1
Host: api.staging.mypup.app
Authorization: Bearer ......
Content-Type: application/json

{
    "pupUid": "4aba1eb179644a95887e3ab37e631193"

}
{
  "items": [                        
    {
        "sizeCode": "s",            # locker name code (e.g. large, small, etc).  
                                    # When unavailable this will contain the dimension 
                                    # in the form of [Height]x[Width]x[Length]
        "typeCode": "normal",       # type of the locker (e.g. normal, cooled, etc)
        "dimension": {              # the dimension of the locker
            "width": 40,
            "height": 15,
            "length": 60
        }
    }
  ],
  "pageNo": 1,                      # Result page number
  "pageSize": 1,                    # Requested page size
  "totalItems": 1,                  # Total number of items available, independent of the current page.
  "totalPages": 1,                  # Total number of pages, independent of the current page.
  "success": true/false,            # Command executed successfully
  "error": null,                    # Error code (if any)
  "message": null                   # Error message (if any)
}
{
    "items": [
        {
            "sizeCode": "s",
            "typeCode": "normal",
            "dimension": {
                "width": 40,
                "height": 15,
                "length": 60
            }
        },
        {
            "sizeCode": "m",
            "typeCode": "normal",
            "dimension": {
                "width": 40,
                "height": 30,
                "length": 60
            }
        },
        {
            "sizeCode": "l",
            "typeCode": "normal",
            "dimension": {
                "width": 40,
                "height": 40,
                "length": 60
            }
        },
        {
            "sizeCode": "xl",
            "typeCode": "normal",
            "dimension": {
                "width": 40,
                "height": 70,
                "length": 60
            }
        }
    ],
    "pageNo": 1,
    "pageSize": 4,
    "totalItems": 4,
    "totalPages": 1,
    "success": true,
    "error": null,
    "message": null
}