Skip to main content
Start an integration by asking the API which resources your key can access. Keep the returned IDs and use them in later requests.

List accessible locations

GET /v1/locations is the best discovery request for every key type. It requires location.read.
  • With a business-organization-scoped key, the response contains the accessible child locations.
  • With a location-scoped key, the response contains that one location.
The endpoint returns a paginated list. Follow has_more and use starting_after when you need the next page.

Retrieve one location

Use a location ID from the list with GET /v1/locations/{location_id}. This also requires location.read.
The request returns 404 when the ID does not exist or is outside the key’s scope.

List accessible organizations

GET /v1/organizations requires businessOrganization.read and returns a paginated list containing zero or one organization:
An empty organization list is therefore valid and does not mean the location call will also be empty.

Retrieve one organization

Use the returned organization ID with GET /v1/organizations/{organization_id}. It requires businessOrganization.read.
Add expand[]=locations to include complete location objects alongside the organization’s location IDs:

List locations in an organization

When you already know the organization ID, call GET /v1/organizations/{organization_id}/locations. It requires location.read.
This gives a location list constrained to the organization in the URL. Use the top-level GET /v1/locations when you simply need every location your key can access.

Choose the right discovery call

See Pagination for complete cursor options and Expanding objects for expansion behavior.

Manage a location

Use the discovered IDs to update profiles and operational settings.