---
canonical_url: "https://docs.composio.dev/toolkits/seam"
markdown_url: "https://docs.composio.dev/toolkits/seam.md"
product: "platform"
version: null
last_updated: null
---

# Seam

Control smart locks, access systems, thermostats, sensors, and other connected devices in a Seam workspace.

- **Category:** internet of things
- **Auth:** API_KEY
- **Composio-managed OAuth available?** N/A
- **Tools:** 10
- **Triggers:** 0
- **Slug:** `SEAM`
- **Version:** 00000000_00

## Tools

### Add Access Methods to Grant

**Slug:** `SEAM_ADD_ACCESS_METHODS_TO_GRANT`

Request additional PIN, card, mobile-key, or cloud-key methods for an existing access grant.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `access_grant_id` | string | Yes | UUID of the access grant to extend. |
| `requested_access_methods` | array | Yes | One or more additional access methods to issue. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Access Grant

**Slug:** `SEAM_CREATE_ACCESS_GRANT`

Grant an existing or new user identity access to spaces, devices, or access-control entrances, requesting PIN, card, mobile-key, or cloud-key methods.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Human-readable name for the access grant. |
| `ends_at` | string | No | ISO 8601 end time, including a timezone offset; must be in the future and after starts_at. |
| `space_ids` | array | No | Existing space UUIDs to grant access to. |
| `starts_at` | string | No | ISO 8601 start time, including a timezone offset. |
| `device_ids` | array | No | Standalone device UUIDs to grant access to. |
| `space_keys` | array | No | Existing unique space keys to grant access to. |
| `user_identity` | object | No | New identity to create and grant access to. Provide this or user_identity_id, but not both. The object cannot be empty; include full_name, email_address, phone_number, or user_identity_key. |
| `reservation_key` | string | No | Reservation key associated with this access grant. |
| `access_grant_key` | string | No | Unique key for this access grant within the workspace. |
| `acs_entrance_ids` | array | No | Access-control entrance UUIDs to grant access to. |
| `user_identity_id` | string | No | Existing user identity UUID. Provide this or user_identity, but not both. |
| `customization_profile_id` | string | No | Customization profile UUID to apply to the grant and its access methods. |
| `requested_access_methods` | array | Yes | One or more PIN, card, mobile-key, or cloud-key methods Seam should issue. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Access Grant

**Slug:** `SEAM_DELETE_ACCESS_GRANT`

Permanently revoke and delete an access grant by UUID, removing the access it manages.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `access_grant_id` | string | Yes | UUID of the access grant to permanently revoke and delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Access Grant

**Slug:** `SEAM_GET_ACCESS_GRANT`

Get one access grant by its Seam UUID or unique workspace key.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `access_grant_id` | string | No | UUID of the access grant to retrieve. Provide exactly one identifier. |
| `access_grant_key` | string | No | Unique workspace key of the access grant. Provide exactly one identifier. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Access Grants

**Slug:** `SEAM_LIST_ACCESS_GRANTS`

List access grants in the workspace, optionally filtered by space, device, entrance, user identity, reservation, customer, key, or IDs; returns one cursor-controlled page.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum grants to return in this page. Seam documents no verified upper bound. |
| `space_id` | string | No | Space UUID to filter grants by. |
| `device_id` | string | No | Device UUID to filter grants by. |
| `page_cursor` | string | No | Opaque next-page cursor returned by a previous call. |
| `customer_key` | string | No | Customer key to filter grants by. |
| `acs_system_id` | string | No | Access-control system UUID to filter grants by. |
| `access_code_id` | string | No | Access code UUID to filter grants by. |
| `acs_entrance_id` | string | No | Access-control entrance UUID to filter grants by. |
| `reservation_key` | string | No | Reservation key to filter grants by. |
| `access_grant_ids` | array | No | Access grant UUIDs to retrieve. |
| `access_grant_key` | string | No | Filter by access grant key. Explicitly pass null to find grants without a key; omit this field to avoid filtering by key. |
| `user_identity_id` | string | No | User identity UUID to filter grants by. |
| `without_access_grant_key` | boolean | No | Set true to return only grants without an access grant key. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Action Attempts

**Slug:** `SEAM_LIST_ACTION_ATTEMPTS`

Inspect asynchronous Seam operation status, errors, and results in bulk by action-attempt IDs or by device, returning one cursor-controlled page.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum action attempts to return in this page. |
| `device_id` | string | No | Device UUID to filter action attempts by. |
| `page_cursor` | string | No | Opaque next-page cursor returned by a previous call. |
| `action_attempt_ids` | array | No | Action-attempt UUIDs to inspect together. Use these to poll statuses returned by prior mutations. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Connected Accounts

**Slug:** `SEAM_LIST_CONNECTED_ACCOUNTS`

List and search provider accounts connected to the workspace, optionally filtering by space, customer, user, or metadata; returns one cursor-controlled page.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum connected accounts to return in this page; must be greater than zero. |
| `search` | string | No | Partial match across account ID or type, customer key, metadata, username, email, or phone. |
| `space_id` | string | No | Space UUID to filter connected accounts by. |
| `page_cursor` | string | No | Opaque next-page cursor returned by a previous call. |
| `customer_key` | string | No | Customer key to filter connected accounts by. |
| `custom_metadata_has` | object | No | Metadata key-value pairs that each returned connected account must contain. Values may be strings or booleans. |
| `user_identifier_key` | string | No | Internal user identifier key to filter connected accounts by. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Devices

**Slug:** `SEAM_LIST_DEVICES`

List and search devices in the workspace, optionally filtering by account, space, IDs, type, manufacturer, customer, creation time, or metadata; returns one cursor-controlled page.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum devices to return in this page. Seam documents no verified upper bound. |
| `search` | string | No | Partial match across device ID, account ID, display name, metadata, or location. UUID prefixes must be at least 4 characters. |
| `space_id` | string | No | Space UUID to filter by. |
| `device_ids` | array | No | Device UUIDs to retrieve. |
| `device_type` | string | No | Single Seam device type key to filter by. |
| `page_cursor` | string | No | Opaque next-page cursor returned by a previous call. |
| `customer_key` | string | No | Customer key to filter by. |
| `device_types` | array | No | Seam device type keys to filter by. Do not combine with device_type. |
| `manufacturer` | string | No | Documented Seam manufacturer key to filter by. |
| `created_before` | string | No | ISO 8601 timestamp; return devices created before it. |
| `connect_webview_id` | string | No | Connect Webview UUID to filter by. |
| `custom_metadata_has` | object | No | Metadata key/value pairs that returned devices must contain. |
| `user_identifier_key` | string | No | Your internal user identifier key to filter by. |
| `connected_account_id` | string | No | Connected account UUID to filter by. |
| `connected_account_ids` | array | No | Connected account UUIDs to filter by. Do not combine with connected_account_id. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Spaces

**Slug:** `SEAM_LIST_SPACES`

List and search spaces in the workspace by name, key, or customer, returning one cursor-controlled page of grantable locations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum spaces to return in this page. Seam documents no verified upper bound. |
| `search` | string | No | Partial match across space name, space key, or customer key. |
| `space_key` | string | No | Exact unique space key to filter by. |
| `page_cursor` | string | No | Opaque next-page cursor returned by a previous call. |
| `customer_key` | string | No | Customer key to filter spaces by. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Access Grant

**Slug:** `SEAM_UPDATE_ACCESS_GRANT`

Update an access grant's name or validity window by UUID or unique workspace key. Provide at least one of name, starts_at, or ends_at.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | New display name; null clears the name. At least one update field is required across name, starts_at, and ends_at. |
| `ends_at` | string | No | New ISO 8601 end time; null clears the end time. At least one update field is required across name, starts_at, and ends_at. |
| `starts_at` | string | No | New ISO 8601 start time. At least one update field is required across name, starts_at, and ends_at. |
| `access_grant_id` | string | No | Grant UUID. Leave unset when identifying the grant by key; do not send both identifiers. |
| `access_grant_key` | string | No | Grant key. Leave unset when identifying the grant by UUID; do not send both identifiers. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
