# Encoders

## The acs\_encoder Object

* [Properties](#properties)
* [Events](#events)
* [Endpoints](#endpoints)

Represents a hardware device that encodes [credential](https://docs.seam.co/latest/~/revisions/WnT0iExlRmVG3JXMNm4C/capability-guides/access-systems/managing-credentials) data onto physical cards within an [access control system](https://docs.seam.co/latest/capability-guides/access-systems).

Some access control systems require credentials to be encoded onto plastic key cards using a card encoder. This process involves the following two key steps:

1. Credential creation Configure the access parameters for the credential.
2. Card encoding Write the credential data onto the card using a compatible card encoder.

Separately, the Seam API also supports card scanning, which enables you to scan and read the encoded data on a card. You can use this action to confirm consistency with access control system records or diagnose discrepancies if needed.

See [Working with Card Encoders and Scanners](https://docs.seam.co/latest/~/revisions/WnT0iExlRmVG3JXMNm4C/capability-guides/access-systems/working-with-card-encoders-and-scanners).

To verify if your access control system requires a card encoder, see the corresponding [system integration guide](https://docs.seam.co/latest/~/revisions/WnT0iExlRmVG3JXMNm4C/device-and-system-integration-guides/overview#access-control-systems).

{% tabs %}
{% tab title="ACS Encoder" %}
An access system encoder resource.

```json
{
  "acs_encoder_id": "681da2d6-4ac6-4b33-8c03-86281b761325",
  "acs_system_id": "c85406d2-214f-4e11-8000-a2e5b5a362a4",
  "connected_account_id": "1b9a3e0d-443f-4063-b619-4ca7e2a97750",
  "created_at": "2025-06-16T16:54:17.946527Z",
  "display_name": "Encoder 1",
  "errors": [],
  "workspace_id": "f863ac85-2c4e-49ae-8679-3ec2417f1d62"
}
```

{% endtab %}
{% endtabs %}

***

## Properties

**`acs_encoder_id`** *UUID*

ID of the \[encoder]\(<https://docs.seam.co/latest/capability-guides/access-systems/working-with-card-encoders-and-scanners>.

***

**`acs_system_id`** *UUID*

ID of the [access control system](https://docs.seam.co/latest/capability-guides/access-systems) that contains the [encoder](https://docs.seam.co/latest/~/revisions/WnT0iExlRmVG3JXMNm4C/capability-guides/access-systems/working-with-card-encoders-and-scanners).

***

**`connected_account_id`** *UUID*

ID of the [connected account](https://docs.seam.co/latest/~/revisions/WnT0iExlRmVG3JXMNm4C/core-concepts/connected-accounts) that contains the [encoder](https://docs.seam.co/latest/~/revisions/WnT0iExlRmVG3JXMNm4C/capability-guides/access-systems/working-with-card-encoders-and-scanners).

***

**`created_at`** *Datetime*

Date and time at which the [encoder](https://docs.seam.co/latest/~/revisions/WnT0iExlRmVG3JXMNm4C/capability-guides/access-systems/working-with-card-encoders-and-scanners) was created.

***

**`display_name`** *String*

Display name for the [encoder](https://docs.seam.co/latest/~/revisions/WnT0iExlRmVG3JXMNm4C/capability-guides/access-systems/working-with-card-encoders-and-scanners).

***

**`errors`** *List* *of Objects*

Errors associated with the [encoder](https://docs.seam.co/latest/~/revisions/WnT0iExlRmVG3JXMNm4C/capability-guides/access-systems/working-with-card-encoders-and-scanners).

<details>

<summary>Child Object Properties</summary>

**`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.

**`message`** *String*

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

</details>

***

**`workspace_id`** *UUID*

ID of the [workspace](https://docs.seam.co/latest/~/revisions/WnT0iExlRmVG3JXMNm4C/core-concepts/workspaces) that contains the [encoder](https://docs.seam.co/latest/~/revisions/WnT0iExlRmVG3JXMNm4C/capability-guides/access-systems/working-with-card-encoders-and-scanners).

***

## Events

**`acs_encoder.added`**

An [access system encoder](https://docs.seam.co/latest/~/revisions/WnT0iExlRmVG3JXMNm4C/capability-guides/access-systems/working-with-card-encoders-and-scanners) was added.

<details>

<summary>Properties</summary>

**`acs_encoder_id`** *UUID*

ID of the affected encoder.

**`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_encoder.added`

**`occurred_at`** *Datetime*

Date and time at which the event occurred.

**`workspace_id`** *UUID*

ID of the [workspace](https://docs.seam.co/latest/~/revisions/WnT0iExlRmVG3JXMNm4C/core-concepts/workspaces) associated with the event.

</details>

***

**`acs_encoder.removed`**

An [access system encoder](https://docs.seam.co/latest/~/revisions/WnT0iExlRmVG3JXMNm4C/capability-guides/access-systems/working-with-card-encoders-and-scanners) was removed.

<details>

<summary>Properties</summary>

**`acs_encoder_id`** *UUID*

ID of the affected encoder.

**`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_encoder.removed`

**`occurred_at`** *Datetime*

Date and time at which the event occurred.

**`workspace_id`** *UUID*

ID of the [workspace](https://docs.seam.co/latest/~/revisions/WnT0iExlRmVG3JXMNm4C/core-concepts/workspaces) associated with the event.

</details>

***

## Endpoints

[**`/acs/encoders/encode_credential`**](https://docs.seam.co/latest/~/revisions/WnT0iExlRmVG3JXMNm4C/api/acs/encoders/encode_credential)

Encodes an existing [credential](https://docs.seam.co/latest/~/revisions/WnT0iExlRmVG3JXMNm4C/capability-guides/access-systems/managing-credentials) onto a plastic card placed on the specified [encoder](https://docs.seam.co/latest/~/revisions/WnT0iExlRmVG3JXMNm4C/capability-guides/access-systems/working-with-card-encoders-and-scanners). Either provide an `acs_credential_id` or an `access_method_id`

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

Returns a specified [encoder](https://docs.seam.co/latest/~/revisions/WnT0iExlRmVG3JXMNm4C/capability-guides/access-systems/working-with-card-encoders-and-scanners).

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

Returns a list of all [encoders](https://docs.seam.co/latest/~/revisions/WnT0iExlRmVG3JXMNm4C/capability-guides/access-systems/working-with-card-encoders-and-scanners).

[**`/acs/encoders/scan_credential`**](https://docs.seam.co/latest/~/revisions/WnT0iExlRmVG3JXMNm4C/api/acs/encoders/scan_credential)

Scans an encoded [acs\_credential](https://docs.seam.co/latest/~/revisions/WnT0iExlRmVG3JXMNm4C/capability-guides/access-systems/managing-credentials) from a plastic card placed on the specified [encoder](https://docs.seam.co/latest/~/revisions/WnT0iExlRmVG3JXMNm4C/capability-guides/access-systems/working-with-card-encoders-and-scanners).
