# Get paginated locations Endpoint: GET /locations Version: 1.0.0 Security: M2X_auth_application ## Query parameters: - `lastLocationId` (string) The last locationId, query would start after that. - `pagesToReturn` (integer) Number of locations to return, default/max 20. ## Response 200 fields (application/json): - `lastLocationId` (string) Document from where the page starts - `pagesToReturn` (integer) Page size - `locations` (array) Queried locations - `locations.locationKind` (string,null) Enum: "Farm", "Carrier", "Port", "Warehouse", "Sale Yard", "Holding Yard", "Works", "Weighbridge", "Accommodation", "Quarry", "Mine", "Store", "Plant", "Forest", "Ranch", "Growyard", "Elevator", "Feedyard", "Depot", "Pack Site", "Container Depot" - `locations.shortName` (string, required) Example: "Dreamy Farm" - `locations.areaName` (string,null) Example: "Mystery Creek" - `locations.facilityName` (string,null) Example: "Main Yards" - `locations.addressText` (string,null) Example: "Main Yards" - `locations.latitude` (number,null) If null or not provided, the latitude from the current location will be retained. If there is no current latitude, it will be resolved by geocoding. - `locations.longitude` (number,null) If null or not provided, the longitude from the current location will be retained. If there is no current longitude, it will be resolved by geocoding. - `locations.externalId` (string,null) An optional external identifier assigned to the location. This ID can be provided when creating the location and is typically used for cross-system referencing or integration with external data sources. - `locations.inboundIntegrationIds` (array,null) - `locations.disabled` (boolean, required) - `locations.onHold` (boolean) - `locations.customer` (object,null) At least one field needs to be provided to resolve the customer - `locations.customer.customerId` (string) M2X customer ID - `locations.customer.customerName` (string) Customer name - `locations.customer.integrationId` (string) Customer integration ID - `locations.customer.externalId` (string) External customer ID - `locations.mobile` (string,null) Location mobile number Example: "+33 123" - `locations.phone` (string,null) Location phone number Example: "+33 123" - `locations.email` (string,null) Location email Example: "asd@asd.asd" - `locations.hazards` (string,null) Hazards descriptions - `locations.notes` (string,null) Notes - `locations.properties` (object,null) A key value store containing bespoke properties usable for pricing and optimisation - `locations.requirements` (object,null) A key value store containing bespoke properties usable for pricing and optimisation - `locations.restrictions` (object,null) A key value store containing bespoke properties usable for pricing and optimisation - `locations.metadata` (object,null) Opaque passenger data - `locations.readonlyFields` (object,null) Specifies which field should not be touched by the user - `locations.readonlyFields.latitude` (boolean) - `locations.readonlyFields.longitude` (boolean) - `locations.readonlyFields.notes` (boolean) - `locations.readonlyFields.hazards` (boolean) - `locations.readonlyFields.externalId` (boolean) - `locations.readonlyFields.customer` (boolean) - `locations.readonlyFields.mobile` (boolean) - `locations.readonlyFields.phone` (boolean) - `locations.readonlyFields.email` (boolean) - `locations.readonlyFields.gtnCaptureRequiredPickup` (boolean) - `locations.readonlyFields.gtnCaptureRequiredDelivery` (boolean) - `locations.readonlyFields.openingHours` (boolean) - `locations.accessLatitude` (number,null) - `locations.accessLongitude` (number,null) - `locations.maxIncomingWeight` (number,null) - `locations.maxOutgoingWeight` (number,null) - `locations.minIncomingWeight` (number,null) - `locations.minOutgoingWeight` (number,null) - `locations.offRoadDistance` (number,null) - `locations.offRoadDuration` (number,null) - `locations.waitTime` (number,null) - `locations.contactName` (string,null) - `locations.contactNotes` (string,null) - `locations.dairySupplyGeneration` (object,null) - `locations.geofenceType` (string,null) Enum: "Circular", "Polygon", null - `locations.polygonGeofence` (string,null) If geofenceType is "Polygon" uses this WKT closed polygon (last and first lat/long pair must match) Example: "POLYGON ((-105.0105 39.7617,-105.0108 39.7614,-105.0111 39.7616,-105.0105 39.7617))" - `locations.radius` (integer,null) If geofenceType is "Circular" uses this integer radius in meters around the determined or provided lat/long Example: 300 - `locations.geofenceAlerting` (object,null) - `locations.geofenceAlerting.enabled` (boolean, required) - `locations.geofenceAlerting.emails` (array,null) A list of email addresses Example: ["abc@example.com"] - `locations.geofenceAlerting.mobileNumbers` (array,null) A list of mobile numbers Example: [64211234567] - `locations.gtnCaptureRequiredPickup` (string,null) Policy for weighbridge input on pickup Enum: "MANDATORY", "OPTIONAL", "NONE", null - `locations.gtnCaptureRequiredDelivery` (string,null) Policy for weighbridge input on delivery Enum: "MANDATORY", "OPTIONAL", "NONE", null - `locations.weeklySupplyGeneration` (object,null) - `locations.weeklySupplyGeneration.interactionsInstructions` (array,null) - `locations.weeklySupplyGeneration.interactionsInstructions.storageId` (string, required) - `locations.weeklySupplyGeneration.interactionsInstructions.storageName` (string,null) - `locations.weeklySupplyGeneration.interactionsInstructions.capacity` (object) - `locations.weeklySupplyGeneration.interactionsInstructions.capacity.capacityFuelMinPumpableLitres` (number,null) - `locations.weeklySupplyGeneration.interactionsInstructions.capacity.capacityFuelSafeFillLitres` (number,null) - `locations.weeklySupplyGeneration.interactionsInstructions.capacity.capacityFuelSafetyStockLitres` (number,null) - `locations.weeklySupplyGeneration.interactionsInstructions.capacity.capacityLitres` (number,null) - `locations.weeklySupplyGeneration.interactionsInstructions.product` (object) - `locations.weeklySupplyGeneration.interactionsInstructions.product.productCodeId` (string, required) - `locations.weeklySupplyGeneration.interactionsInstructions.product.productCodeName` (string, required) - `locations.weeklySupplyGeneration.interactionsInstructions.product.productId` (string, required) - `locations.weeklySupplyGeneration.interactionsInstructions.product.productLinearRate` (number,null) - `locations.weeklySupplyGeneration.interactionsInstructions.productLinearRateCalculated` (boolean) - `locations.weeklySupplyGeneration.defaultProductEnabled` (boolean) - `locations.weeklySupplyGeneration.dayCollectionWindow` (object,null) - `locations.weeklySupplyGeneration.dayCollectionWindow.startTime` (string,null) The start of the collection/delivery time window. May extend past 24:00 for overnight time windows. Example: "07:00" - `locations.weeklySupplyGeneration.dayCollectionWindow.endTime` (string,null) The end of the collection/delivery time window. May extend past 24:00 for overnight time windows. Example: "28:00" - `locations.weeklySupplyGeneration.generationBasis` (string,null) Enum: "PATTERN", "SAFETY_STOCK" - `locations.weeklySupplyGeneration.patternType` (string,null) Enum: "TWICE_WEEKLY", "WEEKLY", "FORTNIGHTLY", "THIRD_WEEK", "FOURTH_WEEK", "FIVE_DAYS", "CUSTOM" - `locations.weeklySupplyGeneration.pattern` (array,null) - `locations.weeklySupplyGeneration.pattern.monday` (object, required) - `locations.weeklySupplyGeneration.pattern.monday.day` (boolean) - `locations.weeklySupplyGeneration.pattern.monday.night` (boolean) - `locations.weeklySupplyGeneration.pattern.tuesday` (object, required) - `locations.weeklySupplyGeneration.pattern.wednesday` (object, required) - `locations.weeklySupplyGeneration.pattern.thursday` (object, required) - `locations.weeklySupplyGeneration.pattern.friday` (object, required) - `locations.weeklySupplyGeneration.pattern.saturday` (object, required) - `locations.weeklySupplyGeneration.pattern.sunday` (object, required) - `locations.weeklySupplyGeneration.patternStartDay` (string,null) YYYY-MM-DD Example: "2024-01-01" - `locations.weeklySupplyGeneration.customPriority` (string,null) Enum: "HIGH", "MEDIUM", "LOW" - `locations.weeklySupplyGeneration.isTopupSite` (boolean) - `locations.weeklySupplyGeneration.productQuantity` (number,null) - `locations.id` (string) Example: "D001" - `locations.updated` (string,null) - `latestLocationId` (integer) Last document in this batch