Skip to content

Locker API

The Locker API endpoints provide comprehensive management of lockers, including their creation, updating, and retrieval. These endpoints support:

  • Locker Creation: Set up new lockers with necessary details such as location, internal carrier IDs, and specific locker features.
  • Locker Information Retrieval: Access detailed information about lockers, including their status and location.
  • Locker Updates: Update existing locker details to reflect changes in status or configuration.

Key Features:

  • Flexible Locker Management: Create and update lockers to keep information current and accurate.
  • Detailed Location Data: Access geographic and logistical details of each locker.
  • Compartment Management: Manage the availability and allocation of compartments within lockers.

Create a new locker

Request

Create a new locker with the specified details for the carrier, provider, location, and features.

Security
ApiKeyAuth
Bodyapplication/jsonrequired
carrierobject(carrier)required

The details of the locker on the Carrier's system.

providerobject(provider)required

The details of the locker on the Provider's system.

locationobject(location)required

Details about the geographical location of the locker.

metadataArray of objects(metadata)

Additional metadata associated with the locker.

featuresobject(features)

Features available in the locker.

lockerGroupsArray of objects(group)

Locker groups to assign, identified by key and uid; at most one per type key.

curl -i -X POST \
  https://docs.glsnxt.com/_mock/openapi-carrier-integration-api/lockers \
  -H 'Content-Type: application/json' \
  -H 'X-API-Key: YOUR_API_KEY_HERE' \
  -d '{
    "carrier": {
      "lockerName": "Berlin Locker 01",
      "lockerId": "XR1003",
      "activationDate": "2025-08-20T00:00:00Z"
    },
    "provider": {
      "name": "KEBA",
      "lockerModel": "Model 1",
      "lockerVersion": "v2.1"
    },
    "location": {
      "street": "Main Street",
      "streetNumber": "1",
      "postalCode": "90210",
      "city": "Berlin",
      "lon": -118.2437,
      "lat": 34.0522,
      "countryCode": "DE",
      "type": "indoor"
    },
    "metadata": [
      {
        "key": "maxWeightCapacity",
        "value": "50kg"
      }
    ],
    "features": {
      "hasScreen": true,
      "hasPinPad": true,
      "hasPinBarcodeReader": false
    },
    "lockerGroups": [
      {
        "key": "DEPOT",
        "uid": "6838265090"
      }
    ]
  }'

Responses

Locker created successfully.

Bodyapplication/json
uidstring

The internal unique identifier assigned to the locker.

Example:"1002377838"
carrierobject(carrier)

The details of the locker on the Carrier's system.

providerobject(provider)

The details of the locker on the Provider's system.

locationobject(location)

Details about the geographical location of the locker.

featuresobject(features)

Features available in the locker.

openingHoursobject(opening_hours)

Locker availability schedule.

Conditional constraints (enforced server-side, not by the generated client):

  • If accessMode is SCHEDULED, weeklySchedule MUST be provided and non-empty.
  • If accessMode is ALWAYS, weeklySchedule MUST be omitted.
metadataArray of objects(metadata)

Additional metadata associated with the locker.

ownedByCarrierstring or null

Indicates which carrier owns the locker. null means the locker belongs to a 3rd party provider.

Example:"GLS"
compartmentTypesArray of objects or null(compartment)

A list of different compartment types available in the locker.

Example:
[ { "size": "SMALL", "count": 10, "height": 200, "width": 400, "length": 600 }, { "size": "MEDIUM", "count": 4, "height": 400, "width": 400, "length": 600 }, { "size": "LARGE", "count": 2, "height": 800, "width": 400, "length": 600 } ]
Response
{ "uid": "1002377838", "carrier": { "lockerName": "Berlin Locker 01", "lockerId": "XR1003", "activationDate": "2025-08-20T00:00:00Z", "status": "ACTIVE" }, "provider": { "name": "KEBA", "lockerModel": "Model 1", "lockerVersion": "v2.1", "lockerName": "BLOQ-Berlin-12045-001", "lockerUid": "PROVIDER_LOCKER_ABC123", "status": "ACTIVE" }, "location": { "street": "Main Street", "streetNumber": "1", "postalCode": "90210", "city": "Berlin", "lon": -118.2437, "lat": 34.0522, "countryCode": "DE", "type": "indoor" }, "features": { "hasScreen": true, "hasPinPad": true, "hasPinBarcodeReader": false }, "openingHours": { "accessMode": "ALWAYS", "weeklySchedule": [], "exceptions": [] }, "metadata": [ {} ], "ownedByCarrier": "GLS", "compartmentTypes": [ {}, {}, {} ] }