curl --request GET \
--url https://api.crosoftware.com/v0/locations/{location_id} \
--header 'Authorization: Bearer <token>' \
--header 'x-tenant-id: <x-tenant-id>'import requests
url = "https://api.crosoftware.com/v0/locations/{location_id}"
headers = {
"x-tenant-id": "<x-tenant-id>",
"Authorization": "Bearer <token>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'x-tenant-id': '<x-tenant-id>', Authorization: 'Bearer <token>'}
};
fetch('https://api.crosoftware.com/v0/locations/{location_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.crosoftware.com/v0/locations/{location_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"x-tenant-id: <x-tenant-id>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.crosoftware.com/v0/locations/{location_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-tenant-id", "<x-tenant-id>")
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.crosoftware.com/v0/locations/{location_id}")
.header("x-tenant-id", "<x-tenant-id>")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.crosoftware.com/v0/locations/{location_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-tenant-id"] = '<x-tenant-id>'
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"address": {
"id": 123,
"latitude": "<string>",
"line_1": "<string>",
"locality": "<string>",
"longitude": "<string>",
"region": "<string>",
"line_2": "<string>",
"line_3": "<string>",
"line_4": "<string>",
"postcode": "<string>"
},
"allow_new_asset_numbers": true,
"asset_number_required": true,
"auto_billing_setup": true,
"auto_complete_dumps": true,
"auto_rollover_enabled": true,
"bar_code_type": "<string>",
"billing_accounts_global": true,
"contact": {
"email": "jsmith@example.com",
"id": 123,
"name": "<string>",
"number": "<string>"
},
"delivery_hidden": true,
"delivery_name": "<string>",
"distance_factor": "<string>",
"distance_label": "<string>",
"do_share_drivers": true,
"driver_self_assignment": true,
"dropoff_hidden": true,
"dropoff_name": "<string>",
"dtt_enabled": true,
"exchange_hidden": true,
"exchange_name": "<string>",
"id": 123,
"is_active": true,
"leed_enabled": true,
"main_inventory_name": "<string>",
"name": "<string>",
"notify_on_acknowledged_job": true,
"notify_on_completed_job": true,
"notify_on_dispatched_job": true,
"notify_on_failed_job": true,
"pickup_hidden": true,
"pickup_name": "<string>",
"require_reason_fail_delay": true,
"require_reference_number": true,
"require_signature": true,
"service_disclaimer": "<string>",
"service_hidden": true,
"service_name": "<string>",
"timezone": "<string>",
"use_additional_items": true
}Get Location
Get location configuration.
curl --request GET \
--url https://api.crosoftware.com/v0/locations/{location_id} \
--header 'Authorization: Bearer <token>' \
--header 'x-tenant-id: <x-tenant-id>'import requests
url = "https://api.crosoftware.com/v0/locations/{location_id}"
headers = {
"x-tenant-id": "<x-tenant-id>",
"Authorization": "Bearer <token>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'x-tenant-id': '<x-tenant-id>', Authorization: 'Bearer <token>'}
};
fetch('https://api.crosoftware.com/v0/locations/{location_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.crosoftware.com/v0/locations/{location_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"x-tenant-id: <x-tenant-id>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.crosoftware.com/v0/locations/{location_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-tenant-id", "<x-tenant-id>")
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.crosoftware.com/v0/locations/{location_id}")
.header("x-tenant-id", "<x-tenant-id>")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.crosoftware.com/v0/locations/{location_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-tenant-id"] = '<x-tenant-id>'
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"address": {
"id": 123,
"latitude": "<string>",
"line_1": "<string>",
"locality": "<string>",
"longitude": "<string>",
"region": "<string>",
"line_2": "<string>",
"line_3": "<string>",
"line_4": "<string>",
"postcode": "<string>"
},
"allow_new_asset_numbers": true,
"asset_number_required": true,
"auto_billing_setup": true,
"auto_complete_dumps": true,
"auto_rollover_enabled": true,
"bar_code_type": "<string>",
"billing_accounts_global": true,
"contact": {
"email": "jsmith@example.com",
"id": 123,
"name": "<string>",
"number": "<string>"
},
"delivery_hidden": true,
"delivery_name": "<string>",
"distance_factor": "<string>",
"distance_label": "<string>",
"do_share_drivers": true,
"driver_self_assignment": true,
"dropoff_hidden": true,
"dropoff_name": "<string>",
"dtt_enabled": true,
"exchange_hidden": true,
"exchange_name": "<string>",
"id": 123,
"is_active": true,
"leed_enabled": true,
"main_inventory_name": "<string>",
"name": "<string>",
"notify_on_acknowledged_job": true,
"notify_on_completed_job": true,
"notify_on_dispatched_job": true,
"notify_on_failed_job": true,
"pickup_hidden": true,
"pickup_name": "<string>",
"require_reason_fail_delay": true,
"require_reference_number": true,
"require_signature": true,
"service_disclaimer": "<string>",
"service_hidden": true,
"service_name": "<string>",
"timezone": "<string>",
"use_additional_items": true
}Authorizations
The access token received from the authorization server in the OAuth 2.0 flow.
Headers
Version identifier (date format).
Tenant identifier. Contact CRO Software for more info if you don't already have this id. See list tenant ids for info on listing the tenants you have access to.
Path Parameters
Location identifier.
Response
Success
Location data.
Location address profile.
Show child attributes
Show child attributes
Allow input of new asset numbers.
Require assets to have numbers.
Automatically open billing when a customer is created through the CC.
Automatically complete dump jobs.
Automatically move pending jobs scheduled for a date in the past to the current date.
(deprecated) Set to any value to enable barcode scanning.
Share billing accounts between locations.
Location contact profile.
Show child attributes
Show child attributes
Hide delivery job type in user interfaces, except for existing delivery jobs (job type 'L').
Name used in the UI which replaces the word 'Delivery' for job types (job type 'L').
Conversion factor to get from kilometers to the desired distance unit of measurement
Distance unit of measurement
Share drivers between locations
Driver can self assign.
Hide dropoff job type in user interfaces, except for existing delivery jobs (job type 'D').
Name used in the UI which replaces the word 'Dropoff' for job types (job type 'D').
Enables the Daily Truck Timeline.
Hide exchange job type in user interfaces, except for existing exchange jobs (job type 'E').
Name used in the UI which replaces the word 'Exchange' for job types (job type 'E').
Location identifier.
Records marked inactive are treated as deleted (soft delete).
Enable LEED features.
Name of the location's main inventory.
Name for a location.
Send email notification to the location's contact when a job is acknowledged.
Send email notification to the location's contact when a job is completed.
Send email notification to the location's contact when a job is dispatched.
Send email notification to the location's contact when a job is failed.
Hide pickup job type in user interfaces, except for existing pickup jobs (job type 'P').
Name used in the UI which replaces the word 'Pickup' for job types (job type 'P').
Require drivers to input the reason that a job was failed or delayed
Require reference numbers when creating or editing jobs.
Require drivers to collect signatures when completing jobs.
Service disclaimer text presented to customers when drivers acquire signatures.
Hide service job type in user interfaces, except for existing service jobs (job type 'R').
Name used in the UI which replaces the word 'Service' for job types (job type 'R').
Timezone identifier.
Use additional items.