↑ ↓ to navigate · ↵ to open See all results
GET /api/v1/locations

List locations

List locations in the organization attached to your API token, with optional search, filters and sorting.

Last updated

Request

GET /api/v1/locations

Requires locations:read. See token permissions. Every listed permission is required for this endpoint.

Send Authorization: Bearer YOUR_API_TOKEN and Accept: application/json.

Query parameters

page integer Optional
The page of results to return. Starts at 1; defaults to 1.
per_page integer Optional
The maximum number of results per page. Accepts 1–100; defaults to 25.
search string Optional
Up to 255 characters. Matches name, city, state, address or type.
statuses[] string array Optional
Up to 100 values, each active or inactive.
sort_field string Optional
One of id, created_at, updated_at, name, city. Defaults to id.
sort_direction string Optional
asc or desc. Defaults to desc.

Example

Set ASSETCENTER_API_TOKEN as described in the quick start. Replace example record and option IDs with values from your organization. This example lists active locations matching “seattle”, sorted by name.

cURL / Bash
curl --globoff --request GET "https://my.assetcenter.app/api/v1/locations?search=seattle&statuses[]=active&sort_field=name&sort_direction=asc" \
  --header "Authorization: Bearer $ASSETCENTER_API_TOKEN" \
  --header "Accept: application/json"

Response

200 OK. Illustrative record and the common pagination fields; inventory responses include additional pagination links and metadata.

JSON
{
  "data": [
    {
      "id": 123,
      "name": "Main office",
      "address": null,
      "city": "Seattle",
      "state": null,
      "zip": null,
      "type": null,
      "is_temporary": false,
      "status": "active",
      "location_end": null,
      "created_at": "2026-09-07T16:00:00.000000Z",
      "updated_at": "2026-09-07T16:00:00.000000Z"
    }
  ],
  "links": {
    "next": null,
    "prev": null
  },
  "meta": {
    "current_page": 1,
    "last_page": 1,
    "per_page": 25,
    "total": 1
  }
}

Behavior and constraints

Without sort_field, results are ordered by numeric ID, newest first. Records that tie on the sort field are ordered by ID in the same direction.

Filters combine: a record must match every parameter you send. Within one array parameter, a record may match any of the listed values. Send arrays with repeated bracketed names, such as statuses[]=active&statuses[]=inactive; a bare statuses=active returns 422. Follow links.next until it is null; the links keep your filter and sort parameters. Changing filters or sort part-way through gives a new result set, so start again from page 1.

category_ids, condition_ids, assignment and components are not available for locations and return 422. tenant_id and account_id are prohibited. There is no updated-since filter; sort by updated_at descending to find recent changes.

Errors

401 means the token is missing, expired, revoked, or not a customer API token. 403 means a required permission or administrator access is missing. 422 identifies invalid or unsupported input; inspect the errors object when present. 429 means a rate limit was reached. See error handling and rate limits.