Skip to main content
GET
/
locations
/
{location_id}
/
customers
List Customers
curl --request GET \
  --url https://api.crosoftware.com/v0/locations/{location_id}/customers \
  --header 'Authorization: Bearer <token>' \
  --header 'x-tenant-id: <x-tenant-id>'
import requests

url = "https://api.crosoftware.com/v0/locations/{location_id}/customers"

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}/customers', 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}/customers",
  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}/customers"

	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}/customers")
  .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}/customers")

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
{
  "current_limit": 123,
  "current_page": 123,
  "results": [
    {
      "addresses": [
        {
          "country": "<string>",
          "id": 123,
          "is_active": true,
          "is_billing": true,
          "is_physical": true,
          "is_shipping": true,
          "latitude": "<string>",
          "line_1": "<string>",
          "line_2": "<string>",
          "line_3": "<string>",
          "line_4": "<string>",
          "locality": "<string>",
          "longitude": "<string>",
          "postcode": "<string>",
          "region": "<string>"
        }
      ],
      "contacts": [
        {
          "email": "jsmith@example.com",
          "fax": "<string>",
          "id": 123,
          "name": "<string>",
          "notify_on_acknowledged_request": true,
          "notify_on_completed_request": true,
          "notify_on_dispatched_request": true,
          "notify_on_failed_request": true,
          "notify_on_new_request": true,
          "number": "<string>"
        }
      ],
      "created_on": "2023-11-07T05:31:56Z",
      "id": 123,
      "last_updated_on": "2023-11-07T05:31:56Z",
      "locations": [
        {
          "created_on": "2023-11-07T05:31:56Z",
          "id": 123,
          "is_active": true,
          "last_updated_on": "2023-11-07T05:31:56Z",
          "location_id": 123,
          "renewal_date": "2023-11-07T05:31:56Z",
          "is_commercial": true,
          "note": "<string>",
          "reference_number": "<string>",
          "sales_rep": "<string>",
          "sales_rep_id": "<string>",
          "suspension_id": 123
        }
      ],
      "name": "<string>",
      "parent_id": 123
    }
  ],
  "total_count": 123,
  "total_pages": 123
}

Authorizations

Authorization
string
header
required

The access token received from the authorization server in the OAuth 2.0 flow.

Headers

x-api-version
string

Version identifier (date format).

x-tenant-id
integer<int64>
required

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_id
integer<int64>
required

Location identifier.

Query Parameters

active
boolean

If true, return only active records. If false, return only inactive records. If unspecified, return all.

created_on_gte
string<date-time>

Return records created on or after the specified date. If unspecified, return all.

is_parent
boolean

If true, return accounts with no parent. If false, return accounts with a parent. If null, all records returned.

last_updated_gte
string<date-time>

Return only records updated after (must be in past). If unspecified, return all.

name
string

Name (free text).

page_index
integer

Paged results page index (starting from 1).

page_limit
integer

Maximun number of results per page.

parent_id
integer<int64>

If specified, return only children of the specified parent_id.

Response

200 - application/json

Success

Customer list (paged).

current_limit
integer
required

Maximun number of results per page.

current_page
integer
required

Paged results page index (starting from 1).

results
object[]
required
total_count
integer
required

Paged results total viewable records.

total_pages
integer
required

Paged results total pages.