> ## Documentation Index
> Fetch the complete documentation index at: https://docs.seam.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Unmanaged Access Codes Errors and Warnings

> Errors and warnings that Seam reports on the Unmanaged Access Codes resource, each with its code and meaning.

## Errors

Each error is an object with the following shape:

```json Example error theme={null}
{
  "error_code": "provider_issue",
  "message": "Indicates a provider-specific issue that prevents the access code from being set or managed. Check the error message for details.",
  "created_at": "2025-01-01T00:00:00.000Z",
  "is_access_code_error": true
}
```

<Accordion title="Error object properties">
  <ResponseField name="error_code" type="Enum (String)">
    Unique identifier of the type of error. Enables quick recognition and categorization of the issue.

    One of the error codes listed below.
  </ResponseField>

  <ResponseField name="message" type="String">
    Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
  </ResponseField>

  <ResponseField name="created_at" type="String (ISO 8601)">
    Date and time at which Seam created the error.
  </ResponseField>

  <ResponseField name="change_type" type="Enum (String)">
    Indicates the type of external modification. `modified` means the code's PIN or schedule was changed. `removed` means the code was deleted from the device.
  </ResponseField>

  <ResponseField name="is_access_code_error" type="Boolean">
    Indicates that this is an access code error.
  </ResponseField>

  <ResponseField name="is_bridge_error" type="Boolean">
    Indicates whether the error is related to [Seam Bridge](/capability-guides/seam-bridge).
  </ResponseField>

  <ResponseField name="is_connected_account_error" type="Boolean">
    Indicates that the error is a [connected account](/api/connected_accounts/object) error.
  </ResponseField>

  <ResponseField name="is_device_error" type="Boolean">
    Indicates that the error is not a device error.
  </ResponseField>

  <ResponseField name="managed_access_code_id" type="String (UUID)">
    ID of the managed access code that conflicts with this managed access code, when Seam can identify it.
  </ResponseField>

  <ResponseField name="modified_fields" type="Array">
    List of fields that were changed externally, with their previous and new values.
  </ResponseField>

  <ResponseField name="unmanaged_access_code_id" type="String (UUID)">
    ID of the unmanaged access code that conflicts with this managed access code, when Seam can identify it.
  </ResponseField>
</Accordion>

### `access_code_inactive`

Indicates that the access code is disabled or inactive on the device. The code exists but will not grant access until re-enabled.

***

### `conflicting_external_modification`

Code was modified or removed externally after Seam successfully set it on the device. The external change conflicts with the state that Seam is trying to apply, so Seam will attempt to set the code on the device again.

***

### `duplicate_code_on_device`

Duplicate access code detected on device.

***

### `failed_to_remove_from_device`

Failed to remove code from device.

***

### `failed_to_set_on_device`

Failed to set code on device.

***

### `insufficient_permissions`

Admin role required—insufficient permissions to manage PINs on this device. Please have an admin update your role, or ask them to set the PIN.

***

### `no_space_for_access_code_on_device`

No space for access code on device.

***

### `provider_issue`

Indicates a provider-specific issue that prevents the access code from being set or managed. Check the error message for details.

***

### Connected Account

<Note>
  These errors are inherited from the [Connected Account](/api/connected_accounts/errors) resource. When they are set on the parent connected account, they are propagated to this resource's errors list.
</Note>

#### `account_disconnected`

Indicates that the account is disconnected.

***

#### `bridge_disconnected`

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

***

#### `dormakaba_sites_disconnected`

Indicates that one or more dormakaba sites associated with the connected account could not be connected. Contact dormakaba support.

***

#### `salto_ks_subscription_limit_exceeded`

Indicates that the Salto site user limit has been reached.

***

### Device

<Note>
  These errors are inherited from the [Device](/api/devices/errors) resource. When they are set on the parent device, they are propagated to this resource's errors list.
</Note>

#### `august_lock_missing_bridge`

Indicates that the lock is not connected to a bridge.

***

#### `august_lock_not_authorized`

Indicates that the user is not authorized to use the August lock.

***

#### `device_disconnected`

Indicates that the device is disconnected.

***

#### `device_offline`

Indicates that the device is offline.

***

#### `device_removed`

Indicates that the device has been removed.

***

#### `hub_disconnected`

Indicates that the hub is disconnected.

***

#### `lockly_missing_wifi_bridge`

Indicates that the Lockly lock is not connected to a Wi-Fi bridge.

***

#### `missing_device_credentials`

Indicates that device credentials are missing.

***

#### `subscription_required`

Indicates that a subscription is required to connect.

***

#### `ttlock_lock_not_paired_to_gateway`

Indicates that the lock is not paired with a gateway.

***

## Warnings

Each warning is an object with the following shape:

```json Example warning theme={null}
{
  "warning_code": "code_rotates_periodically",
  "message": "The access code's PIN rotates periodically when the code is renewed. Retrieve the latest code before each use.",
  "created_at": "2025-01-01T00:00:00.000Z"
}
```

<Accordion title="Warning object properties">
  <ResponseField name="warning_code" type="Enum (String)">
    Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.

    One of the warning codes listed below.
  </ResponseField>

  <ResponseField name="message" type="String">
    Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
  </ResponseField>

  <ResponseField name="created_at" type="String (ISO 8601)">
    Date and time at which Seam created the warning.
  </ResponseField>

  <ResponseField name="change_type" type="Enum (String)">
    Indicates the type of external modification. `modified` means the code's PIN or schedule was changed. `removed` means the code was deleted from the device.
  </ResponseField>

  <ResponseField name="modified_fields" type="Array">
    List of fields that were changed externally, with their previous and new values.
  </ResponseField>
</Accordion>

### `being_deleted`

Access code is being deleted.

***

### `code_rotates_periodically`

The access code's PIN rotates periodically when the code is renewed. Retrieve the latest code before each use.

***

### `delay_in_removing_from_device`

Delay in removing code from device.

***

### `delay_in_setting_on_device`

Delay in setting code on device.

***

### `external_modification_in_effect`

Code was modified or removed externally after Seam successfully set it on the device. External modification is allowed for this code, so the externally modified state is being honored.

***

### `igloo_algopin_must_be_used_within_24_hours`

Algopins must be used within 24 hours.

***

### `management_transferred`

Management was transferred to another workspace.

***

### `third_party_integration_detected`

Third-party integration detected that may cause access codes to fail.

***

### `time_frame_adjusted_for_unknown_time_zone`

The device's time zone is unknown and this code's time frame crosses a daylight-saving transition in at least one plausible time zone. A 1-hour safety buffer has been applied to the side of the time frame affected by the transition (`ends_at` for spring-forward, `starts_at` for fall-back) so the code stays active through the shift — the code may be usable up to 1 hour beyond your requested window. Set the device's time zone via `/devices/report_provider_metadata` to clear the buffer and guarantee exact handling.

***

### `using_backup_access_code`

A backup access code has been pulled and is being used in place of this access code.

***
