Skip to content

Commit 2feaa59

Browse files
authored
feat: Sync with Seam API via 23426e04fbcdbc31c76276dc56676aa667229ad8 (#2777)
1 parent a5afe61 commit 2feaa59

6 files changed

Lines changed: 100 additions & 3 deletions

File tree

src/lib/seam/connect/internal/schemas.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ export {
3939
custom_metadata_input,
4040
customer,
4141
customer_data,
42+
customer_portal,
4243
customer_portal_theme,
4344
device_capability_flags,
4445
device_metadata,
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
import { z } from 'zod'
2+
3+
export const customer_portal = z
4+
.object({
5+
url: z.string().url().describe('URL for the customer portal.'),
6+
customer_key: z.string().describe('Customer key for the customer portal.'),
7+
expires_at: z
8+
.string()
9+
.datetime()
10+
.describe('Date and time at which the customer portal link expires.'),
11+
workspace_id: z
12+
.string()
13+
.uuid()
14+
.describe(
15+
'ID of the [workspace](https://docs.seam.co/latest/core-concepts/workspaces) associated with the customer portal.',
16+
),
17+
created_at: z
18+
.string()
19+
.datetime()
20+
.describe('Date and time at which the customer portal link was created.'),
21+
})
22+
.describe(
23+
`
24+
---
25+
route_path: /customers
26+
---
27+
Represents a Customer Portal. Customer Portal is a hosted, customizable interface for managing device access. It enables you to embed secure, pre-authenticated access flows into your product—either by sharing a link with users or embedding a view in an iframe.
28+
29+
With Customer Portal, you no longer need to build out frontend experiences for physical access, thermostats, and sensors. Instead, you can ship enterprise-grade access control experiences in a fraction of the time, while maintaining your product's branding and user experience.
30+
31+
Seam hosts these flows, handling everything from account connection and device mapping to full-featured device control.
32+
`,
33+
)
34+
35+
export type CustomerPortal = z.infer<typeof customer_portal>
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1+
export * from './customer-portal.js'
12
export * from './magic-link.js'

src/lib/seam/connect/openapi.ts

Lines changed: 45 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -51570,10 +51570,52 @@ export default {
5157051570
'application/json': {
5157151571
schema: {
5157251572
properties: {
51573+
customer_portal: {
51574+
description:
51575+
"Represents a Customer Portal. Customer Portal is a hosted, customizable interface for managing device access. It enables you to embed secure, pre-authenticated access flows into your product—either by sharing a link with users or embedding a view in an iframe.\n\nWith Customer Portal, you no longer need to build out frontend experiences for physical access, thermostats, and sensors. Instead, you can ship enterprise-grade access control experiences in a fraction of the time, while maintaining your product's branding and user experience.\n\nSeam hosts these flows, handling everything from account connection and device mapping to full-featured device control.",
51576+
properties: {
51577+
created_at: {
51578+
description:
51579+
'Date and time at which the customer portal link was created.',
51580+
format: 'date-time',
51581+
type: 'string',
51582+
},
51583+
customer_key: {
51584+
description: 'Customer key for the customer portal.',
51585+
type: 'string',
51586+
},
51587+
expires_at: {
51588+
description:
51589+
'Date and time at which the customer portal link expires.',
51590+
format: 'date-time',
51591+
type: 'string',
51592+
},
51593+
url: {
51594+
description: 'URL for the customer portal.',
51595+
format: 'uri',
51596+
type: 'string',
51597+
},
51598+
workspace_id: {
51599+
description:
51600+
'ID of the [workspace](https://docs.seam.co/latest/core-concepts/workspaces) associated with the customer portal.',
51601+
format: 'uuid',
51602+
type: 'string',
51603+
},
51604+
},
51605+
required: [
51606+
'url',
51607+
'customer_key',
51608+
'expires_at',
51609+
'workspace_id',
51610+
'created_at',
51611+
],
51612+
type: 'object',
51613+
'x-route-path': '/customers',
51614+
},
5157351615
magic_link: { $ref: '#/components/schemas/magic_link' },
5157451616
ok: { type: 'boolean' },
5157551617
},
51576-
required: ['magic_link', 'ok'],
51618+
required: ['customer_portal', 'magic_link', 'ok'],
5157751619
type: 'object',
5157851620
},
5157951621
},
@@ -51592,8 +51634,8 @@ export default {
5159251634
tags: [],
5159351635
'x-fern-sdk-group-name': ['customers'],
5159451636
'x-fern-sdk-method-name': 'create_portal',
51595-
'x-fern-sdk-return-value': 'magic_link',
51596-
'x-response-key': 'magic_link',
51637+
'x-fern-sdk-return-value': 'customer_portal',
51638+
'x-response-key': 'customer_portal',
5159751639
'x-title': 'Create Customer Portal',
5159851640
},
5159951641
},

src/lib/seam/connect/route-types.ts

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36891,6 +36891,23 @@ export type Routes = {
3689136891

3689236892
With Customer Portal, you no longer need to build out frontend experiences for physical access, thermostats, and sensors. Instead, you can ship enterprise-grade access control experiences in a fraction of the time, while maintaining your product's branding and user experience.
3689336893

36894+
Seam hosts these flows, handling everything from account connection and device mapping to full-featured device control. */
36895+
customer_portal: {
36896+
/** URL for the customer portal. */
36897+
url: string
36898+
/** Customer key for the customer portal. */
36899+
customer_key: string
36900+
/** Date and time at which the customer portal link expires. */
36901+
expires_at: string
36902+
/** ID of the [workspace](https://docs.seam.co/latest/core-concepts/workspaces) associated with the customer portal. */
36903+
workspace_id: string
36904+
/** Date and time at which the customer portal link was created. */
36905+
created_at: string
36906+
}
36907+
/** Represents a Customer Portal. Customer Portal is a hosted, customizable interface for managing device access. It enables you to embed secure, pre-authenticated access flows into your product—either by sharing a link with users or embedding a view in an iframe.
36908+
36909+
With Customer Portal, you no longer need to build out frontend experiences for physical access, thermostats, and sensors. Instead, you can ship enterprise-grade access control experiences in a fraction of the time, while maintaining your product's branding and user experience.
36910+
3689436911
Seam hosts these flows, handling everything from account connection and device mapping to full-featured device control. */
3689536912
magic_link: {
3689636913
/** URL for the magic link. */

src/lib/seam/connect/schemas.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ export {
1717
connect_webview,
1818
connected_account,
1919
custom_metadata,
20+
customer_portal,
2021
customization_profile,
2122
device,
2223
device_provider,

0 commit comments

Comments
 (0)