# Report Devices

* [Request Parameters](#request-parameters)
* [Response](#response)

Reports ACS system device status including encoders and entrances.

{% tabs %}
{% tab title="JavaScript" %}
Inform Seam that devices are connected to the ACS system or were removed.

**Code:**

```javascript
await seam.acs.systems.reportDevices({
  acs_system_id: "182ea706-8e14-4921-8e57-ee18d5a7de31",
  acs_encoders: [
    { hotek_metadata: { encoder_number: "1" } },
    { is_removed: true, hotek_metadata: { encoder_number: "2" } },
  ],
  acs_entrances: [
    { hotek_metadata: { room_number: "203" } },
    { is_removed: true, hotek_metadata: { room_number: "500" } },
    { hotek_metadata: { common_area_name: "Gym", common_area_number: "2" } },
  ],
});
```

**Output:**

```javascript
// void
```

{% endtab %}

{% tab title="cURL" %}
Inform Seam that devices are connected to the ACS system or were removed.

**Code:**

```curl
curl --include --request POST "https://connect.getseam.com/acs/systems/report_devices" \
  --header "Authorization: Bearer $SEAM_API_KEY" \
  --json @- <<EOF
{
  "acs_system_id": "182ea706-8e14-4921-8e57-ee18d5a7de31",
  "acs_encoders": [
    {
      "hotek_metadata": {
        "encoder_number": "1"
      }
    },
    {
      "is_removed": true,
      "hotek_metadata": {
        "encoder_number": "2"
      }
    }
  ],
  "acs_entrances": [
    {
      "hotek_metadata": {
        "room_number": "203"
      }
    },
    {
      "is_removed": true,
      "hotek_metadata": {
        "room_number": "500"
      }
    },
    {
      "hotek_metadata": {
        "common_area_name": "Gym",
        "common_area_number": "2"
      }
    }
  ]
}
EOF
```

**Output:**

```curl
{}
```

{% endtab %}

{% tab title="Python" %}
Inform Seam that devices are connected to the ACS system or were removed.

**Code:**

```python
seam.acs.systems.report_devices(
    acs_system_id="182ea706-8e14-4921-8e57-ee18d5a7de31",
    acs_encoders=[
        {"hotek_metadata": {"encoder_number": "1"}},
        {"is_removed": true, "hotek_metadata": {"encoder_number": "2"}},
    ],
    acs_entrances=[
        {"hotek_metadata": {"room_number": "203"}},
        {"is_removed": true, "hotek_metadata": {"room_number": "500"}},
        {"hotek_metadata": {"common_area_name": "Gym", "common_area_number": "2"}},
    ],
)
```

**Output:**

```python
None
```

{% endtab %}

{% tab title="Ruby" %}
Inform Seam that devices are connected to the ACS system or were removed.

**Code:**

```ruby
seam.acs.systems.report_devices(
  acs_system_id: "182ea706-8e14-4921-8e57-ee18d5a7de31",
  acs_encoders: [
    { hotek_metadata: { encoder_number: "1" } },
    { is_removed: true, hotek_metadata: { encoder_number: "2" } },
  ],
  acs_entrances: [
    { hotek_metadata: { room_number: "203" } },
    { is_removed: true, hotek_metadata: { room_number: "500" } },
    { hotek_metadata: { common_area_name: "Gym", common_area_number: "2" } },
  ],
)
```

**Output:**

```ruby
nil
```

{% endtab %}

{% tab title="PHP" %}
Inform Seam that devices are connected to the ACS system or were removed.

**Code:**

```php
$seam->acs->systems->report_devices(
    acs_system_id: "182ea706-8e14-4921-8e57-ee18d5a7de31",
    acs_encoders: [
        ["hotek_metadata" => ["encoder_number" => "1"]],
        ["is_removed" => true, "hotek_metadata" => ["encoder_number" => "2"]],
    ],
    acs_entrances: [
        ["hotek_metadata" => ["room_number" => "203"]],
        ["is_removed" => true, "hotek_metadata" => ["room_number" => "500"]],
        [
            "hotek_metadata" => [
                "common_area_name" => "Gym",
                "common_area_number" => "2",
            ],
        ],
    ],
);
```

**Output:**

```php
```

{% endtab %}

{% tab title="Seam CLI" %}
Inform Seam that devices are connected to the ACS system or were removed.

**Code:**

```seam_cli
seam acs systems report-devices --acs_system_id "182ea706-8e14-4921-8e57-ee18d5a7de31" --acs_encoders [{"hotek_metadata":{"encoder_number":"1"}},{"is_removed":true,"hotek_metadata":{"encoder_number":"2"}}] --acs_entrances [{"hotek_metadata":{"room_number":"203"}},{"is_removed":true,"hotek_metadata":{"room_number":"500"}},{"hotek_metadata":{"common_area_name":"Gym","common_area_number":"2"}}]
```

**Output:**

```seam_cli
{}
```

{% endtab %}
{% endtabs %}

<details>

<summary>Authentication Methods</summary>

* API key
* Personal access token\
  Must also include the `seam-workspace` header in the request.

To learn more, see [Authentication](https://docs.seam.co/latest/api/authentication).

</details>

## Request Parameters

**`acs_system_id`** *String* (Required)

ID of the ACS system to report resources for

***

**`acs_encoders`** *Array* *of Objects*

Array of ACS encoders to report

<details>

<summary><code>hotek_metadata</code> <em>Object</em></summary>

Hotek-specific metadata associated with the entrance.

</details>

***

<details>

<summary><code>hotek_metadata.encoder_number</code> <em>String</em></summary>

The encoder number determined by the USB port connection.

</details>

***

<details>

<summary><code>is_removed</code> <em>Boolean</em></summary>

Whether the encoder is removed

</details>

***

**`acs_entrances`** *Array* *of Objects*

Array of ACS entrances to report

<details>

<summary><code>hotek_metadata</code> <em>Object</em></summary>

Hotek-specific metadata associated with the entrance.

</details>

***

<details>

<summary><code>hotek_metadata.common_area_name</code> <em>String</em></summary>

The common area name

</details>

***

<details>

<summary><code>hotek_metadata.common_area_number</code> <em>String</em></summary>

The room number identifier

</details>

***

<details>

<summary><code>hotek_metadata.room_number</code> <em>String</em></summary>

The room number identifier

</details>

***

<details>

<summary><code>is_removed</code> <em>Boolean</em></summary>

Whether the entrance is removed

</details>

***

## Response

{% hint style="success" %}
Returns: **void**
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.seam.co/latest/api/acs/systems/report_devices.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
