diff --git a/codegen/layouts/api-endpoint.hbs b/codegen/layouts/api-endpoint.hbs
index 7d9a80813..b99a376f7 100644
--- a/codegen/layouts/api-endpoint.hbs
+++ b/codegen/layouts/api-endpoint.hbs
@@ -9,6 +9,10 @@
- [Examples](#examples)
{{/if}}
+{{#if this.isDeprecated}}
+{{> deprecated-warning}}
+
+{{/if}}
{{{description}}}
{{#with primaryCodeSample}}
diff --git a/codegen/lib/layout/api-endpoint.ts b/codegen/lib/layout/api-endpoint.ts
index b76f4a7ba..af71416a8 100644
--- a/codegen/lib/layout/api-endpoint.ts
+++ b/codegen/lib/layout/api-endpoint.ts
@@ -40,6 +40,8 @@ export interface ApiEndpointLayoutContext {
workspaceScope: SeamWorkspaceScope
isAlpha: boolean
alphaMessage: string | undefined
+ isDeprecated: boolean
+ deprecationMessage: string
request: {
preferredMethod: string
parameters: ApiEndpointParameter[]
@@ -124,6 +126,8 @@ export function setEndpointLayoutContext(
file.workspaceScope = endpoint.workspaceScope
file.isAlpha = (metadata.alpha ?? '').length > 0
file.alphaMessage = metadata.alpha
+ file.isDeprecated = endpoint.isDeprecated
+ file.deprecationMessage = endpoint.deprecationMessage
file.authMethods = endpoint.authMethods
.filter(
diff --git a/docs/api/_blueprint.json b/docs/api/_blueprint.json
index f45c210b1..3a62467a2 100644
--- a/docs/api/_blueprint.json
+++ b/docs/api/_blueprint.json
@@ -9414,7 +9414,7 @@
"path": "/acs/credential_pools/list",
"parentPath": "/acs/credential_pools",
"description": "Returns a list of all credential pools.",
- "isDeprecated": false,
+ "isDeprecated": true,
"deprecationMessage": "Use `/user_identities/enrollment_automations/list` instead.",
"isUndocumented": true,
"undocumentedMessage": "Replaced by enrollment automations.",
@@ -9462,7 +9462,7 @@
],
"parentPath": "/acs",
"isUndocumented": true,
- "isDeprecated": false,
+ "isDeprecated": true,
"isDraft": false
},
{
@@ -9476,7 +9476,7 @@
"path": "/acs/credential_provisioning_automations/launch",
"parentPath": "/acs/credential_provisioning_automations",
"description": "Launches a credential provisioning automation.",
- "isDeprecated": false,
+ "isDeprecated": true,
"deprecationMessage": "Use `/user_identities/enrollment_automations/launch` instead.",
"isUndocumented": true,
"undocumentedMessage": "Replaced by enrollment automations.",
@@ -9579,7 +9579,7 @@
],
"parentPath": "/acs",
"isUndocumented": true,
- "isDeprecated": false,
+ "isDeprecated": true,
"isDraft": false
},
{
@@ -31770,7 +31770,7 @@
"path": "/devices/delete",
"parentPath": "/devices",
"description": "Deletes a specified [device](../core-concepts/devices/README.md).",
- "isDeprecated": false,
+ "isDeprecated": true,
"deprecationMessage": "Deleting a device is no longer supported and will be removed.",
"isUndocumented": true,
"undocumentedMessage": "Deleting a device is no longer supported and will be removed.",
@@ -44320,7 +44320,7 @@
"path": "/locks/get",
"parentPath": "/locks",
"description": "Returns a specified [lock](https://docs.seam.co/latest/capability-guides/smart-locks).",
- "isDeprecated": false,
+ "isDeprecated": true,
"deprecationMessage": "Use `/devices/get` instead.",
"isUndocumented": false,
"undocumentedMessage": "",
@@ -58528,7 +58528,7 @@
"path": "/thermostats/get",
"parentPath": "/thermostats",
"description": "Returns a specified [thermostat](https://docs.seam.co/latest/capability-guides/thermostats). **Deprecated:** Will be removed. Use `/devices/get` instead.",
- "isDeprecated": false,
+ "isDeprecated": true,
"deprecationMessage": "Use `/devices/get` instead.",
"isUndocumented": true,
"undocumentedMessage": "Will be removed.",
diff --git a/docs/api/_report.md b/docs/api/_report.md
index 65ec89d7a..1537b3d3c 100644
--- a/docs/api/_report.md
+++ b/docs/api/_report.md
@@ -517,6 +517,11 @@ These items have been marked as draft.
These items are deprecated.
+### Routes
+
+- `/acs/credential_pools`: No deprecated message provided
+- `/acs/credential_provisioning_automations`: No deprecated message provided
+
### Resources
- `acs_credential_pool`: Not used.
@@ -539,6 +544,14 @@ These items are deprecated.
- `unmanaged_acs_user.email`: use email_address.
- `workspace.connect_partner_name`: Use `company_name` instead.
+### Endpoints
+
+- `/acs/credential_pools/list`: Use `/user_identities/enrollment_automations/list` instead.
+- `/acs/credential_provisioning_automations/launch`: Use `/user_identities/enrollment_automations/launch` instead.
+- `/devices/delete`: Deleting a device is no longer supported and will be removed.
+- `/locks/get`: Use `/devices/get` instead.
+- `/thermostats/get`: Use `/devices/get` instead.
+
### Endpoint parameters
- `/access_codes/create`
diff --git a/docs/api/customers/create_portal.md b/docs/api/customers/create_portal.md
index 57b094758..370f0218e 100644
--- a/docs/api/customers/create_portal.md
+++ b/docs/api/customers/create_portal.md
@@ -1,324 +1,378 @@
# Create Customer Portal
-
{% hint style="info" %}
**Early Access Preview.** The customers API is currently in Alpha. We're actively developing it and seeking early feedback at [support@seam.co](mailto:support@seam.co). Expect breaking changes as we refine the design.
{% endhint %}
-* [Request Parameters](create_portal.md#request-parameters)
-* [Response](create_portal.md#response)
+- [Request Parameters](#request-parameters)
+- [Response](#response)
Creates a new customer portal magic link with configurable features.
+
Authentication Methods
-* API key
-* Personal access token\
- Must also include the `seam-workspace` header in the request.
+- 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).
-
## Request Parameters
-**`customer_data`** _Object_
+**`customer_data`** *Object*
-access_grants List
+access_grants List
List of access grants.
-***
+---
+
+
-bookings List
+bookings List
List of bookings.
-***
+---
+
+
-buildings List
+buildings List
List of buildings.
-***
+---
+
+
-common_areas List
+common_areas List
List of shared common areas.
-***
+---
+
+
-customer_key String
+customer_key String
Your unique identifier for the customer.
-***
+---
+
+
-facilities List
+facilities List
List of gym or fitness facilities.
-***
+---
+
+
-guests List
+guests List
List of guests.
-***
+---
+
+
-listings List
+listings List
List of property listings.
-***
+---
+
+
-properties List
+properties List
List of short-term rental properties.
-***
+---
+
+
-property_listings List
+property_listings List
List of property listings.
-***
+---
+
+
-reservations List
+reservations List
List of reservations.
-***
+---
+
+
-residents List
+residents List
List of residents.
-***
+---
+
+
-rooms List
+rooms List
List of hotel or hospitality rooms.
-***
+---
+
+
-sites List
+sites List
List of general sites or areas.
-***
+---
+
+
-spaces List
+spaces List
List of general spaces or areas.
-***
+---
+
+
-staff_members List
+staff_members List
List of staff members.
-***
+---
+
+
-tenants List
+tenants List
List of tenants.
-***
+---
+
+
-units List
+units List
List of multi-family residential units.
-***
+---
+
+
-user_identities List
+user_identities List
List of user identities.
-***
+---
+
+
-users List
+users List
List of users.
-***
+---
-**`customization_profile_id`** _String_
+
+**`customization_profile_id`** *String*
The ID of the customization profile to use for the portal.
-***
+---
-**`features`** _Object_
+**`features`** *Object*
-configure Object
+configure Object
Configuration for the configure feature.
-***
+---
+
+
-connect Object
+connect Object
Configuration for the connect accounts feature.
-***
+---
+
+
-manage Object
+manage Object
Configuration for the manage feature.
-***
+---
+
-
-manage_devices Object
+
-### Configuration for the manage devices feature.
+manage_devices Object
-### deprecated: Use `manage` instead.
+Configuration for the manage devices feature.
+---
+deprecated: Use `manage` instead.
+---
-***
+---
+
+
-organize Object
+organize Object
Configuration for the organize feature.
-***
+---
+
-**`is_embedded`** _Boolean_
+**`is_embedded`** *Boolean*
Whether the portal is embedded in another application.
-***
+---
-**`landing_page`** _Object_
+**`landing_page`** *Object*
Configuration for the landing page when the portal loads.
-manage Object
-
-
+manage Object
-***
+---
-**`locale`** _String_
+
+**`locale`** *String*
The locale to use for the portal.
-***
+---
+
## Response
{% hint style="success" %}
-Returns: [**magic\_link**](../unstable_partner/building_blocks/)
+Returns:
+**[magic\_link](./../unstable_partner/building_blocks)**
+
{% endhint %}
+
{% tabs %}
{% tab title="JSON" %}
+
+
+
```json
{
"building_block_type": "connect_accounts",
diff --git a/docs/api/locks/get.md b/docs/api/locks/get.md
index 8ca3c401a..b29938ed6 100644
--- a/docs/api/locks/get.md
+++ b/docs/api/locks/get.md
@@ -3,6 +3,10 @@
- [Request Parameters](#request-parameters)
- [Response](#response)
+{% hint style="warning" %}
+**Deprecated**. Use `/devices/get` instead.
+{% endhint %}
+
Returns a specified [lock](https://docs.seam.co/latest/capability-guides/smart-locks).
diff --git a/package-lock.json b/package-lock.json
index 0c4217b91..610325be2 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -12,7 +12,7 @@
"@metalsmith/metadata": "^0.3.0",
"@prettier/plugin-php": "^0.23.0",
"@prettier/plugin-ruby": "^4.0.4",
- "@seamapi/blueprint": "^0.51.3",
+ "@seamapi/blueprint": "^0.51.4",
"@seamapi/smith": "^0.5.2",
"@seamapi/types": "1.656.0",
"@types/command-exists": "^1.2.3",
@@ -935,9 +935,9 @@
"license": "MIT"
},
"node_modules/@seamapi/blueprint": {
- "version": "0.51.3",
- "resolved": "https://registry.npmjs.org/@seamapi/blueprint/-/blueprint-0.51.3.tgz",
- "integrity": "sha512-P3uNO6pvhjV+LsEXO4xv4XheiiM+b5bgzaMNFLpj8PTefarjL8hqlVPdr7Nakzz1rw6TbDCzdi1jCbbN22h0vA==",
+ "version": "0.51.4",
+ "resolved": "https://registry.npmjs.org/@seamapi/blueprint/-/blueprint-0.51.4.tgz",
+ "integrity": "sha512-rBep6DonDzcAjk4WTwxfRt6DL4LQ35EbOFql0tzKc9DIdXx781pGqsQwLo34l4vHIri4E/U6dkzcOllul0xJUQ==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -945,8 +945,8 @@
"zod": "^3.23.8"
},
"engines": {
- "node": ">=18.12.0",
- "npm": ">= 9.0.0"
+ "node": ">=20.9.0",
+ "npm": ">=10.1.0"
}
},
"node_modules/@seamapi/smith": {
diff --git a/package.json b/package.json
index c817db085..50792a276 100644
--- a/package.json
+++ b/package.json
@@ -30,7 +30,7 @@
"@metalsmith/metadata": "^0.3.0",
"@prettier/plugin-php": "^0.23.0",
"@prettier/plugin-ruby": "^4.0.4",
- "@seamapi/blueprint": "^0.51.3",
+ "@seamapi/blueprint": "^0.51.4",
"@seamapi/smith": "^0.5.2",
"@seamapi/types": "1.656.0",
"@types/command-exists": "^1.2.3",