---
title: "[beta] List asset status changes"
method: GET
path: "/maintenance/asset-status-changes"
tags: ["Beta APIs"]
---

# \[beta\] List asset status changes

`GET /maintenance/asset-status-changes`

## Request

- Base URL: `https://api.samsara.com`
- URL: `https://api.samsara.com/maintenance/asset-status-changes`
- Auth: HTTP bearer

Returns the status history of one asset, newest first. Exactly one asset ID must be given in assetIds.

 <b>Rate limit:</b> 5 requests/sec (learn more about rate limits <a href="https://developers.samsara.com/docs/rate-limits" target="_blank">here</a>).

To use this endpoint, select **Read Assets** under the Assets category when creating or editing an API token. <a href="https://developers.samsara.com/docs/authentication#scopes-for-api-tokens" target="_blank">Learn More.</a>
 

 **Submit Feedback**: Likes, dislikes, and API feature requests should be filed as feedback in our <a href="https://forms.gle/zkD4NCH7HjKb7mm69" target="_blank">API feedback form</a>. If you encountered an issue or noticed inaccuracies in the API documentation, please <a href="https://www.samsara.com/help" target="_blank">submit a case</a> to our support team.

## Query parameters

- `assetIds` string, required
- `after` string
- `limit` integer

## Response `200`

OK response.

- EntityAssetStatusChangeEventsServiceListAssetStatusChangeEventsResponseBody
  - `data` EntityListAssetStatusChangeEventsTypeResponseBody[], required: An array of AssetStatusChangeEvents
    - `actor` ListAssetStatusChangeEventsEntityAssetStatusChangeEventAssetStatusChangeEventActorTypeResponseBody: AssetStatusChangeEventActor object
      - `actorId` string: ID of the user or API token that made the change. For system changes, a fixed label for the process.
      - `actorType` 'unknown' | 'user' | 'system' | 'apiToken': Whether a user, an API token, or Samsara itself made the change. Valid values: `unknown`, `user`, `system`, `apiToken`
    - `asset` EntityListAssetStatusChangeEventsAssetRefTypeResponseBody: Reference to a Asset
      - `id` string, required: The ID of the referenced Asset.
    - `changeUuid` string: Unique ID of this status change.
    - `comment` string: Note recorded with the change.
    - `isImported` boolean: Whether the entry was backfilled from a historical import rather than recorded live.
    - `newStatus` ListAssetStatusChangeEventsEntityAssetStatusChangeEventAssetStatusChangeEventStatusTypeResponseBody: AssetStatusChangeEventStatus object
      - `category` 'unknown' | 'operational' | 'down' | 'disposed': Whether the status counts as operational, down, or disposed in availability reporting. Valid values: `unknown`, `operational`, `down`, `disposed`
      - `name` string: Name of the status as shown in Maintenance Settings.
      - `statusUuid` string: Stable ID of the status. It does not change when the status is renamed.
    - `occurredAtTime` string: When the status change happened.
    - `previousStatus` ListAssetStatusChangeEventsEntityAssetStatusChangeEventAssetStatusChangeEventStatusTypeResponseBody: AssetStatusChangeEventStatus object
      - `category` 'unknown' | 'operational' | 'down' | 'disposed': Whether the status counts as operational, down, or disposed in availability reporting. Valid values: `unknown`, `operational`, `down`, `disposed`
      - `name` string: Name of the status as shown in Maintenance Settings.
      - `statusUuid` string: Stable ID of the status. It does not change when the status is renamed.
    - `source` 'unknown' | 'dashboard' | 'csv' | 'automation' | 'api' | 'mobile' | 'shim' | 'backfill' | 'system' | 'csvHistoricalImport': Where the change was made from. Valid values: `unknown`, `dashboard`, `csv`, `automation`, `api`, `mobile`, `shim`, `backfill`, `system`, `csvHistoricalImport`
    - `sourceEntity` ListAssetStatusChangeEventsEntityAssetStatusChangeEventAssetStatusChangeSourceEntityTypeResponseBody: AssetStatusChangeSourceEntity object
      - `sourceEntityId` string: ID of the record that triggered the change.
      - `sourceEntityType` 'unknown' | 'workOrder' | 'campaignItem' | 'automationRule' | 'geofence' | 'dvir' | 'csvUpload': Kind of record that triggered the change. Valid values: `unknown`, `workOrder`, `campaignItem`, `automationRule`, `geofence`, `dvir`, `csvUpload`
  - `pagination` GoaPaginationResponseResponseBody, required: Pagination parameters.
    - `endCursor` string, required: Cursor identifier representing the last element in the response. This value should be used in conjunction with a subsequent request's 'after' query parameter. This may be an empty string if there are no more pages left to view.
    - `hasNextPage` boolean, required: True if there are more pages of results immediately available after this endCursor.

## Other responses

- `401`: Unauthorized response.
- `404`: Not Found response.
- `405`: Method Not Allowed response.
- `413`: Content Too Large response.
- `429`: Too Many Requests response.
- `500`: Internal Server Error response.
- `501`: Not Implemented response.
- `502`: Bad Gateway response.
- `503`: Service Unavailable response.
- `504`: Gateway Timeout response.
- `default`: Bad Request response.

---

[API](https://skmtc.dev/samsara/apis/samsara-api.md) - [All operations](https://skmtc.dev/samsara/apis/samsara-api/llms.txt) - [OpenAPI document](https://skmtc.dev/samsara/apis/samsara-api/revisions/a9e35d4999be?raw)
