Skip to content

Commit 4fa5e27

Browse files
chore(backend): Added types to webhook json for waitlist entry (clerk#5148)
Co-authored-by: panteliselef <panteliselef@outlook.com>
1 parent 1b19f06 commit 4fa5e27

File tree

7 files changed

+36
-1
lines changed

7 files changed

+36
-1
lines changed

.changeset/green-starfishes-hear.md

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
---
2+
'@clerk/backend': minor
3+
---
4+
5+
Add waitlist entry types
6+
- `WaitlistEntryJSON`
7+
- `WaitlistEntryWebhookEvent`
8+
9+
Update `WebhookEvent` to include `WaitlistEntryWebhookEvent`

.changeset/tender-suits-rush.md

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@clerk/nextjs": patch
3+
---
4+
5+
Re-export `WaitlistEntryJSON` from `@clerk/nextjs/server`.

packages/backend/src/api/resources/JSON.ts

+12
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ export const ObjectType = {
3434
SignUpAttempt: 'sign_up_attempt',
3535
SmsMessage: 'sms_message',
3636
User: 'user',
37+
WaitlistEntry: 'waitlist_entry',
3738
Web3Wallet: 'web3_wallet',
3839
Token: 'token',
3940
TotalCount: 'total_count',
@@ -382,6 +383,17 @@ export interface VerificationJSON extends ClerkResourceJSON {
382383
message?: string | null;
383384
}
384385

386+
export interface WaitlistEntryJSON extends ClerkResourceJSON {
387+
created_at: number;
388+
email_address: string;
389+
id: string;
390+
invitation: InvitationJSON | null;
391+
is_locked: boolean;
392+
object: typeof ObjectType.WaitlistEntry;
393+
status: string;
394+
updated_at: number;
395+
}
396+
385397
export interface Web3WalletJSON extends ClerkResourceJSON {
386398
object: typeof ObjectType.Web3Wallet;
387399
web3_wallet: string;

packages/backend/src/api/resources/Webhooks.ts

+5-1
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import type {
1010
SessionJSON,
1111
SMSMessageJSON,
1212
UserJSON,
13+
WaitlistEntryJSON,
1314
} from './JSON';
1415

1516
type Webhook<EvtType, Data> = { type: EvtType; object: 'event'; data: Data };
@@ -52,6 +53,8 @@ export type PermissionWebhookEvent = Webhook<
5253
PermissionJSON
5354
>;
5455

56+
export type WaitlistEntryWebhookEvent = Webhook<'waitlistEntry.created' | 'waitlistEntry.updated', WaitlistEntryJSON>;
57+
5558
export type WebhookEvent =
5659
| UserWebhookEvent
5760
| SessionWebhookEvent
@@ -62,6 +65,7 @@ export type WebhookEvent =
6265
| OrganizationMembershipWebhookEvent
6366
| OrganizationInvitationWebhookEvent
6467
| RoleWebhookEvent
65-
| PermissionWebhookEvent;
68+
| PermissionWebhookEvent
69+
| WaitlistEntryWebhookEvent;
6670

6771
export type WebhookEventType = WebhookEvent['type'];

packages/backend/src/api/resources/index.ts

+1
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ export type {
4646
SessionWebhookEvent,
4747
SMSWebhookEvent,
4848
UserWebhookEvent,
49+
WaitlistEntryWebhookEvent,
4950
WebhookEvent,
5051
WebhookEventType,
5152
} from './Webhooks';

packages/backend/src/index.ts

+2
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@ export type {
8080
SMSMessageJSON,
8181
UserJSON,
8282
VerificationJSON,
83+
WaitlistEntryJSON,
8384
Web3WalletJSON,
8485
DeletedObjectJSON,
8586
PaginatedResponseJSON,
@@ -126,6 +127,7 @@ export type {
126127
SessionWebhookEvent,
127128
SMSWebhookEvent,
128129
UserWebhookEvent,
130+
WaitlistEntryWebhookEvent,
129131
WebhookEvent,
130132
WebhookEventType,
131133
} from './api/resources/Webhooks';

packages/nextjs/src/server/index.ts

+2
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ export type {
2020
SessionJSON,
2121
SMSMessageJSON,
2222
UserJSON,
23+
WaitlistEntryJSON,
2324
WebhookEvent,
2425
WebhookEventType,
2526
UserWebhookEvent,
@@ -32,6 +33,7 @@ export type {
3233
RoleWebhookEvent,
3334
SessionWebhookEvent,
3435
SMSWebhookEvent,
36+
WaitlistEntryWebhookEvent,
3537
} from '@clerk/backend';
3638

3739
/**

0 commit comments

Comments
 (0)