POST /apiv2/depots/savedepot
Creates or updates a depot. Pass id = null to create, or an existing id to update.Servers
- /
Request headers
| Name | Type | Required | Description |
|---|---|---|---|
Content-Type |
String | Yes |
The media type of the request body.
Default value: "application/json" |
Request body fields
| Name | Type | Required | Description |
|---|---|---|---|
deliveryCarrierIds[] |
Array | No |
IDs of carriers allowed to route deliveries to this depot. Affects route generation. |
isDisabled |
Boolean | No |
When true the depot is hidden from the depot picker and unavailable for routing. |
companyId |
Integer | No |
ID of the Root Company that owns this depot. On save: leave at 0 (the
|
carrierId |
Integer | No |
ID of the managing/owning carrier. Null for depots not tied to a specific carrier. |
pickupCarrierIds[] |
Array | No |
IDs of carriers that use this depot for pickups. Stored only — no routing logic reads this in BF-5. |
latitude |
Number | No |
Latitude of the depot's suburb centre point (from Locations.CentrePoint). Already fetched during haversine distance calculation — returned at no extra cost. Used by the frontend to render map pins in the depot picker map view. |
carrierName |
String | No |
Display name of the managing/owning carrier. |
id |
Integer | No |
Depot ID. Null when creating a new depot. |
name |
String | No |
Depot display name (e.g. "Brisbane Depot"). Distinct from |
longitude |
Number | No |
Longitude of the depot's suburb centre point. See Machship.Common.Models.ApiV2Models.Depots.DepotV2.Latitude. |
specialInstructions |
String | No |
Any special instructions for deliveries to this depot. Bounded to 500 characters (BF-170). |
operatingHours[] |
Array | No |
Operating hours for the depot. Always contains exactly 7 entries — one per day of the week (Monday–Sunday). Public holidays and exceptions are not supported in BF-5. Stored only in BF-5; no routing logic reads this yet. |
operatingHours[].operatingTime |
Object | No |
A clock-time window (Open, Close) for a single day. Uses System.TimeOnly rather than
System.TimeSpan because TimeSpan can exceed 24 hours; an operating window can't.
Both endpoints are required — callers represent "no window" (closed all day or open 24 hours)
with a null |
operatingHours[].operatingTime.close |
Object | No | |
operatingHours[].operatingTime.close.millisecond |
Integer | No | |
operatingHours[].operatingTime.close.nanosecond |
Integer | No | |
operatingHours[].operatingTime.close.minute |
Integer | No | |
operatingHours[].operatingTime.close.second |
Integer | No | |
operatingHours[].operatingTime.close.microsecond |
Integer | No | |
operatingHours[].operatingTime.close.ticks |
Integer | No | |
operatingHours[].operatingTime.close.hour |
Integer | No | |
operatingHours[].operatingTime.open |
Object | No | |
operatingHours[].operatingTime.open.millisecond |
Integer | No | |
operatingHours[].operatingTime.open.nanosecond |
Integer | No | |
operatingHours[].operatingTime.open.minute |
Integer | No | |
operatingHours[].operatingTime.open.second |
Integer | No | |
operatingHours[].operatingTime.open.microsecond |
Integer | No | |
operatingHours[].operatingTime.open.ticks |
Integer | No | |
operatingHours[].operatingTime.open.hour |
Integer | No | |
operatingHours[].dayOfWeek |
Integer | No |
0 = Sunday, 1 = Monday, 2 = Tuesday, 3 = Wednesday, 4 = Thursday, 5 = Friday, 6 = Saturday Valid values:
|
operatingHours[].isOpen |
Boolean | No |
Whether the depot is open on this day. |
address |
Object | No |
Depot-specific Machship.Common.Models.Locations.Address that bounds the two address lines to the depot
column lengths (BF-170: The shadowed properties use |
address.contact |
String | No |
The contact name for this address |
address.name |
String | No |
The name of the addresss |
address.email |
String | No |
The email address associated with this addresss |
address.location |
Object | No | |
address.location.locationType |
Integer | No |
0 = Suburb, 1 = PostOfficeBox, 2 = International Valid values:
|
address.location.searchStr |
String | No |
used if the user only passed in a string for the location. Location Service will then try to find location based on str |
address.location.description |
String | No | |
address.location.locationAliases[] |
Array | No | |
address.location.locationAliases[].id |
Integer | No | |
address.location.locationAliases[].locationId |
Integer | No | |
address.location.locationAliases[].name |
String | No | |
address.location.locationAliases[].location |
No | ||
address.location.suburb |
String | No | |
address.location.postcode |
String | No | |
address.location.stateId |
Integer | No | |
address.location.isFrom |
Boolean | No | |
address.location.state |
Object | No | |
address.location.state.id |
Integer | No | |
address.location.state.name |
String | No | |
address.location.state.code |
String | No | |
address.location.countryCode |
String | No |
The country code is used to determine the international location |
address.location.id |
Integer | No | |
address.location.descriptionShort |
String | No | |
address.location.countryId |
Integer | No | |
address.location.timeZoneId |
Integer | No | |
address.location.country |
Object | No | |
address.location.country.id |
Integer | No | |
address.location.country.currencyCode |
String | No | |
address.location.country.name |
String | No | |
address.location.country.numeric |
String | No | |
address.location.country.taxPercentage |
Number | No | |
address.location.country.displayName |
String | No | |
address.location.country.code3 |
String | No | |
address.location.country.code2 |
String | No | |
address.location.subLocality |
String | No | |
address.location.timeZone |
Object | No | |
address.location.timeZone.id |
Integer | No | |
address.location.timeZone.jsName |
String | No | |
address.location.timeZone.name |
String | No | |
address.phone |
String | No |
The phone number associated with this address |
address.addressLine1 |
String | No |
The first line of the depot address. Bounded to 256 characters (BF-170). |
address.addressLine2 |
String | No |
The (optional) second line of the depot address. Bounded to 256 characters (BF-170). |
How to start integrating
- Add HTTP Task to your workflow definition.
- Search for the API you want to integrate with and click on the name.
- This loads the API reference documentation and prepares the Http request settings.
- Click Test request to test run your request to the API and see the API's response.