# Systems

## The acs\_system Object

* [Properties](#properties)
* [Errors](#errors)
* [Warnings](#warnings)
* [Events](#events)
* [Endpoints](#endpoints)

Represents an [access control system](https://docs.seam.co/latest/capability-guides/access-systems).

Within an `acs_system`, create [`acs_user`s](https://docs.seam.co/latest/api/acs/users#acs_user) and [`acs_credential`s](https://docs.seam.co/latest/api/acs/credentials#acs_credential) to grant access to the `acs_user`s.

For details about the resources associated with an access control system, see the [access control systems namespace](https://docs.seam.co/latest/api/acs).

{% tabs %}
{% tab title="JSON" %}

```json
{
  "acs_system_id": "bbcea306-7201-4d85-b527-3abc55277203",
  "name": "Salto KS Credential Manager",
  "workspace_id": "bbcea306-7201-4d85-b527-3abc55277203",
  "created_at": "2025-05-15T13:18:14.664Z",
  "is_credential_manager": true,
  "connected_account_ids": ["bbcea306-7201-4d85-b527-3abc55277203"],
  "connected_account_id": "bbcea306-7201-4d85-b527-3abc55277203",
  "image_url": "https://connect.getseam.com/_next/image?url=https://connect.getseam.com/assets/images/acs_systems/salto_ks_site.png&q=75&w=128",
  "image_alt_text": "Salto KS site Logo",
  "errors": [],
  "warnings": [],
  "location": { "time_zone": null }
}
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="JSON" %}

```json
{
  acs_access_group_count: [example value],
  acs_system_id: [example value],
  acs_user_count: [example value],
  connected_account_id: [example value],
  connected_account_ids: [example value],
  created_at: [example value],
  default_credential_manager_acs_system_id: [example value],
  errors: [example value],
  external_type: [example value],
  external_type_display_name: [example value],
  image_alt_text: [example value],
  image_url: [example value],
  is_credential_manager: [example value],
  location: [example value],
  name: [example value],
  system_type: [example value],
  system_type_display_name: [example value],
  visionline_metadata: [example value],
  warnings: [example value],
  workspace_id: [example value]
}
```

{% endtab %}
{% endtabs %}

***

## Properties

**`acs_access_group_count`** *Number*

***

**`acs_system_id`** *UUID*

ID of the [access control system](https://docs.seam.co/latest/capability-guides/access-systems).

***

**`acs_user_count`** *Number*

***

**`connected_account_id`** *UUID*

ID of the [connected account](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/core-concepts/connected-accounts) associated with the [access control system](https://docs.seam.co/latest/capability-guides/access-systems).

***

**`connected_account_ids`** *List* *of UUIDs*

IDs of the [connected accounts](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/core-concepts/connected-accounts) associated with the [access control system](https://docs.seam.co/latest/capability-guides/access-systems).

{% hint style="warning" %}
**Deprecated**. Use `connected_account_id`.
{% endhint %}

***

**`created_at`** *Datetime*

Date and time at which the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) was created.

***

**`default_credential_manager_acs_system_id`** *UUID*

ID of the default credential manager `acs_system` for this [access control system](https://docs.seam.co/latest/capability-guides/access-systems).

***

[**`errors`**](#errors) *List* *of Objects*

Errors associated with the [access control system](https://docs.seam.co/latest/capability-guides/access-systems).

The specific structure of each object in this list depends on the value of its `error_code` field.

Variants:

<details>

<summary><code>seam_bridge_disconnected</code></summary>

Indicates that the Seam API cannot communicate with [Seam Bridge](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/capability-guides/seam-bridge), for example, if Seam Bridge executable has stopped or if the computer running the Seam Bridge executable is offline.\
This error might also occur if Seam Bridge is connected to the wrong [workspace](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/core-concepts/workspaces).\
See also [Troubleshooting Your Access Control System](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/capability-guides/access-systems/troubleshooting-your-access-control-system#acs_system.errors.seam_bridge_disconnected).

**`created_at`** *Datetime*

Date and time at which Seam created the error.

***

**`error_code`** *Enum*

Unique identifier of the type of error. Enables quick recognition and categorization of the issue.

Enum values:

```
- <code>seam_bridge_disconnected</code>
```

***

**`message`** *String*

Detailed description of the error. Provides insights into the issue and potentially how to rectify it.

</details>

<details>

<summary><code>bridge_disconnected</code></summary>

Indicates that the Seam API cannot communicate with [Seam Bridge](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/capability-guides/seam-bridge), for example, if Seam Bridge executable has stopped or if the computer running the Seam Bridge executable is offline.\
See also [Troubleshooting Your Access Control System](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/capability-guides/access-systems/troubleshooting-your-access-control-system#acs_system.errors.seam_bridge_disconnected).

**`created_at`** *Datetime*

Date and time at which Seam created the error.

***

**`error_code`** *Enum*

Unique identifier of the type of error. Enables quick recognition and categorization of the issue.

Enum values:

```
- <code>bridge_disconnected</code>
```

***

**`is_bridge_error`** *Boolean*

***

**`message`** *String*

Detailed description of the error. Provides insights into the issue and potentially how to rectify it.

</details>

<details>

<summary><code>visionline_instance_unreachable</code></summary>

Indicates that [Seam Bridge](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/capability-guides/seam-bridge) is functioning correctly and the Seam API can communicate with Seam Bridge, but the Seam API cannot connect to the on-premises [Visionline access control system](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/device-and-system-integration-guides/assa-abloy-visionline-access-control-system).\
For example, the IP address of the on-premises access control system may be set incorrectly within the Seam [workspace](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/core-concepts/workspaces).\
See also [Troubleshooting Your Access Control System](https://docs.seam.co/latest/capability-guides/capability-guides/access-systems/troubleshooting-your-access-control-system#acs_system.errors.visionline_instance_unreachable).

**`created_at`** *Datetime*

Date and time at which Seam created the error.

***

**`error_code`** *Enum*

Unique identifier of the type of error. Enables quick recognition and categorization of the issue.

Enum values:

```
- <code>visionline_instance_unreachable</code>
```

***

**`message`** *String*

Detailed description of the error. Provides insights into the issue and potentially how to rectify it.

</details>

<details>

<summary><code>salto_ks_subscription_limit_exceeded</code></summary>

Indicates that the maximum number of users allowed for the site has been reached. This means that new access codes cannot be created. Contact Salto support to increase the user limit.

**`created_at`** *Datetime*

Date and time at which Seam created the error.

***

**`error_code`** *Enum*

Unique identifier of the type of error. Enables quick recognition and categorization of the issue.

Enum values:

```
- <code>salto_ks_subscription_limit_exceeded</code>
```

***

**`message`** *String*

Detailed description of the error. Provides insights into the issue and potentially how to rectify it.

</details>

<details>

<summary><code>acs_system_disconnected</code></summary>

Indicates that the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) has been disconnected. See [Troubleshooting Your Access Control System](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/capability-guides/access-systems/troubleshooting-your-access-control-system) to resolve the issue.

**`created_at`** *Datetime*

Date and time at which Seam created the error.

***

**`error_code`** *Enum*

Unique identifier of the type of error. Enables quick recognition and categorization of the issue.

Enum values:

```
- <code>acs_system_disconnected</code>
```

***

**`message`** *String*

Detailed description of the error. Provides insights into the issue and potentially how to rectify it.

</details>

<details>

<summary><code>account_disconnected</code></summary>

Indicates that the login credentials are invalid. Reconnect the account using a [Connect Webview](https://docs.seam.co/latest/ui-components/connect-webviews) to restore access.

**`created_at`** *Datetime*

Date and time at which Seam created the error.

***

**`error_code`** *Enum*

Unique identifier of the type of error. Enables quick recognition and categorization of the issue.

Enum values:

```
- <code>account_disconnected</code>
```

***

**`message`** *String*

Detailed description of the error. Provides insights into the issue and potentially how to rectify it.

</details>

<details>

<summary><code>salto_ks_certification_expired</code></summary>

Indicates that the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) has lost its Salto KS certification. Contact [support](mailto:support@seam.co) to regain access.

**`created_at`** *Datetime*

Date and time at which Seam created the error.

***

**`error_code`** *Enum*

Unique identifier of the type of error. Enables quick recognition and categorization of the issue.

Enum values:

```
- <code>salto_ks_certification_expired</code>
```

***

**`message`** *String*

Detailed description of the error. Provides insights into the issue and potentially how to rectify it.

</details>

***

**`external_type`** *Enum*

Brand-specific terminology for the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) type.

<details>

<summary>Enum values</summary>

* `pti_site`
* `alta_org`
* `salto_ks_site`
* `salto_space_system`
* `brivo_account`
* `hid_credential_manager_organization`
* `visionline_system`
* `assa_abloy_credential_service`
* `latch_building`
* `dormakaba_community_site`
* `legic_connect_credential_service`
* `assa_abloy_vostio`
* `assa_abloy_vostio_credential_service`

</details>

***

**`external_type_display_name`** *String*

Display name that corresponds to the brand-specific terminology for the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) type.

***

**`image_alt_text`** *String*

Alternative text for the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) image.

***

**`image_url`** *String*

URL for the image that represents the [access control system](https://docs.seam.co/latest/capability-guides/access-systems).

***

**`is_credential_manager`** *Boolean*

Indicates whether the `acs_system` is a credential manager.

***

**`location`** *Object*

<details>

<summary>Child Properties</summary>

* **`time_zone`** *String*

Time zone in which the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) is located.

</details>

***

**`name`** *String*

Name of the [access control system](https://docs.seam.co/latest/capability-guides/access-systems).

***

**`system_type`** *Enum*

{% hint style="warning" %}
**Deprecated**. Use `external_type`.
{% endhint %}

<details>

<summary>Enum values</summary>

* `pti_site`
* `alta_org`
* `salto_ks_site`
* `salto_space_system`
* `brivo_account`
* `hid_credential_manager_organization`
* `visionline_system`
* `assa_abloy_credential_service`
* `latch_building`
* `dormakaba_community_site`
* `legic_connect_credential_service`
* `assa_abloy_vostio`
* `assa_abloy_vostio_credential_service`

</details>

***

**`system_type_display_name`** *String*

{% hint style="warning" %}
**Deprecated**. Use `external_type_display_name`.
{% endhint %}

***

**`visionline_metadata`** *Object*

<details>

<summary>Child Properties</summary>

* **`lan_address`** *String*

IP address or hostname of the main Visionline server relative to [Seam Bridge](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/capability-guides/seam-bridge) on the local network.

* **`mobile_access_uuid`** *String*

Keyset loaded into a reader. Mobile keys and reader administration tools securely authenticate only with readers programmed with a matching keyset.

* **`system_id`** *String*

Unique ID assigned by the ASSA ABLOY licensing team that identifies each hotel in your credential manager.

</details>

***

[**`warnings`**](#warnings) *List* *of Objects*

Warnings associated with the [access control system](https://docs.seam.co/latest/capability-guides/access-systems).

The specific structure of each object in this list depends on the value of its `warning_code` field.

Variants:

<details>

<summary><code>salto_ks_subscription_limit_almost_reached</code></summary>

Indicates that the Salto KS site has exceeded 80% of the maximum number of allowed users. Increase your subscription limit or delete some users from your site to rectify the issue.

**`created_at`** *Datetime*

Date and time at which Seam created the warning.

***

**`message`** *String*

Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.

***

**`warning_code`** *Enum*

Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.

Enum values:

```
- <code>salto_ks_subscription_limit_almost_reached</code>
```

</details>

<details>

<summary><code>time_zone_does_not_match_location</code></summary>

Indicates the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) time zone could not be determined because the reported physical location does not match the time zone configured on the physical [ACS entrances](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/capability-guides/access-systems/retrieving-entrance-details).

**`created_at`** *Datetime*

Date and time at which Seam created the warning.

***

**`message`** *String*

Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.

***

**`misconfigured_acs_entrance_ids`** *List* *of UUIDs*

{% hint style="warning" %}
**Deprecated**. this field is deprecated.
{% endhint %}

***

**`warning_code`** *Enum*

Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.

Enum values:

```
- <code>time_zone_does_not_match_location</code>
```

</details>

***

**`workspace_id`** *UUID*

ID of the [workspace](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/core-concepts/workspaces) that contains the [access control system](https://docs.seam.co/latest/capability-guides/access-systems).

***

## Errors

**`seam_bridge_disconnected`**

Indicates that the Seam API cannot communicate with [Seam Bridge](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/capability-guides/seam-bridge), for example, if Seam Bridge executable has stopped or if the computer running the Seam Bridge executable is offline.\
This error might also occur if Seam Bridge is connected to the wrong [workspace](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/core-concepts/workspaces).\
See also [Troubleshooting Your Access Control System](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/capability-guides/access-systems/troubleshooting-your-access-control-system#acs_system.errors.seam_bridge_disconnected).

***

**`bridge_disconnected`**

Indicates that the Seam API cannot communicate with [Seam Bridge](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/capability-guides/seam-bridge), for example, if Seam Bridge executable has stopped or if the computer running the Seam Bridge executable is offline.\
See also [Troubleshooting Your Access Control System](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/capability-guides/access-systems/troubleshooting-your-access-control-system#acs_system.errors.seam_bridge_disconnected).

***

**`visionline_instance_unreachable`**

Indicates that [Seam Bridge](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/capability-guides/seam-bridge) is functioning correctly and the Seam API can communicate with Seam Bridge, but the Seam API cannot connect to the on-premises [Visionline access control system](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/device-and-system-integration-guides/assa-abloy-visionline-access-control-system).\
For example, the IP address of the on-premises access control system may be set incorrectly within the Seam [workspace](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/core-concepts/workspaces).\
See also [Troubleshooting Your Access Control System](https://docs.seam.co/latest/capability-guides/capability-guides/access-systems/troubleshooting-your-access-control-system#acs_system.errors.visionline_instance_unreachable).

***

**`salto_ks_subscription_limit_exceeded`**

Indicates that the maximum number of users allowed for the site has been reached. This means that new access codes cannot be created. Contact Salto support to increase the user limit.

***

**`acs_system_disconnected`**

Indicates that the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) has been disconnected. See [Troubleshooting Your Access Control System](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/capability-guides/access-systems/troubleshooting-your-access-control-system) to resolve the issue.

***

**`account_disconnected`**

Indicates that the login credentials are invalid. Reconnect the account using a [Connect Webview](https://docs.seam.co/latest/ui-components/connect-webviews) to restore access.

***

**`salto_ks_certification_expired`**

Indicates that the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) has lost its Salto KS certification. Contact [support](mailto:support@seam.co) to regain access.

***

## Warnings

**`salto_ks_subscription_limit_almost_reached`**

Indicates that the Salto KS site has exceeded 80% of the maximum number of allowed users. Increase your subscription limit or delete some users from your site to rectify the issue.

***

**`time_zone_does_not_match_location`**

Indicates the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) time zone could not be determined because the reported physical location does not match the time zone configured on the physical [ACS entrances](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/capability-guides/access-systems/retrieving-entrance-details).

***

## Events

**`acs_system.connected`**

An [access system](https://docs.seam.co/latest/capability-guides/access-systems) was connected.

<details>

<summary>Properties</summary>

**`acs_system_id`** *UUID*

ID of the access system.

**`connected_account_id`** *UUID*

ID of the connected account.

**`created_at`** *Datetime*

Date and time at which the event was created.

**`event_id`** *UUID*

ID of the event.

**`event_type`** *Enum*

Value: `acs_system.connected`

**`occurred_at`** *Datetime*

Date and time at which the event occurred.

**`workspace_id`** *UUID*

ID of the workspace associated with the event.

</details>

***

**`acs_system.added`**

An [access system](https://docs.seam.co/latest/capability-guides/access-systems) was added.

<details>

<summary>Properties</summary>

**`acs_system_id`** *UUID*

ID of the access system.

**`connected_account_id`** *UUID*

ID of the connected account.

**`created_at`** *Datetime*

Date and time at which the event was created.

**`event_id`** *UUID*

ID of the event.

**`event_type`** *Enum*

Value: `acs_system.added`

**`occurred_at`** *Datetime*

Date and time at which the event occurred.

**`workspace_id`** *UUID*

ID of the workspace associated with the event.

</details>

***

**`acs_system.disconnected`**

An [access system](https://docs.seam.co/latest/capability-guides/access-systems) was disconnected.

<details>

<summary>Properties</summary>

**`acs_system_id`** *UUID*

ID of the access system.

**`connected_account_id`** *UUID*

ID of the connected account.

**`created_at`** *Datetime*

Date and time at which the event was created.

**`event_id`** *UUID*

ID of the event.

**`event_type`** *Enum*

Value: `acs_system.disconnected`

**`occurred_at`** *Datetime*

Date and time at which the event occurred.

**`workspace_id`** *UUID*

ID of the workspace associated with the event.

</details>

***

## Endpoints

[**`/acs/systems/get`**](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/api/acs/systems/get)

Returns a specified [access system](https://docs.seam.co/latest/capability-guides/access-systems).

[**`/acs/systems/list`**](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/api/acs/systems/list)

Returns a list of all [access systems](https://docs.seam.co/latest/capability-guides/access-systems).

[**`/acs/systems/list_compatible_credential_manager_acs_systems`**](https://docs.seam.co/latest/~/revisions/DFdrUdS2jQOnbJTNDT5a/api/acs/systems/list_compatible_credential_manager_acs_systems)

Returns a list of all credential manager systems that are compatible with a specified [access system](https://docs.seam.co/latest/capability-guides/access-systems).
