diff --git a/workos/types/events/__init__.py b/workos/types/events/__init__.py index d14d00d6..ba6f15ba 100644 --- a/workos/types/events/__init__.py +++ b/workos/types/events/__init__.py @@ -10,4 +10,4 @@ from .event import * from .organization_domain_verification_failed_payload import * from .previous_attributes import * -from .session_created_payload import * +from .session_payload import * diff --git a/workos/types/events/event.py b/workos/types/events/event.py index 6df63091..01cf9771 100644 --- a/workos/types/events/event.py +++ b/workos/types/events/event.py @@ -36,7 +36,10 @@ from workos.types.events.organization_domain_verification_failed_payload import ( OrganizationDomainVerificationFailedPayload, ) -from workos.types.events.session_created_payload import SessionCreatedPayload +from workos.types.events.session_payload import ( + SessionCreatedPayload, + SessionRevokedPayload, +) from workos.types.organizations.organization_common import OrganizationCommon from workos.types.organization_domains import OrganizationDomain from workos.types.roles.role import EventRole @@ -249,6 +252,10 @@ class SessionCreatedEvent(EventModel[SessionCreatedPayload]): event: Literal["session.created"] +class SessionRevokedEvent(EventModel[SessionRevokedPayload]): + event: Literal["session.revoked"] + + class UserCreatedEvent(EventModel[User]): event: Literal["user.created"] @@ -308,6 +315,7 @@ class UserUpdatedEvent(EventModel[User]): RoleDeletedEvent, RoleUpdatedEvent, SessionCreatedEvent, + SessionRevokedEvent, UserCreatedEvent, UserDeletedEvent, UserUpdatedEvent, diff --git a/workos/types/events/event_model.py b/workos/types/events/event_model.py index 24443a52..d89a7054 100644 --- a/workos/types/events/event_model.py +++ b/workos/types/events/event_model.py @@ -35,7 +35,11 @@ from workos.types.events.organization_domain_verification_failed_payload import ( OrganizationDomainVerificationFailedPayload, ) -from workos.types.events.session_created_payload import SessionCreatedPayload + +from workos.types.events.session_payload import ( + SessionCreatedPayload, + SessionRevokedPayload, +) from workos.types.organizations.organization_common import OrganizationCommon from workos.types.organization_domains import OrganizationDomain from workos.types.roles.role import EventRole @@ -81,6 +85,7 @@ OrganizationMembership, PasswordResetCommon, SessionCreatedPayload, + SessionRevokedPayload, User, ) diff --git a/workos/types/events/event_type.py b/workos/types/events/event_type.py index 79856e54..fb4027a8 100644 --- a/workos/types/events/event_type.py +++ b/workos/types/events/event_type.py @@ -50,6 +50,7 @@ "role.deleted", "role.updated", "session.created", + "session.revoked", "user.created", "user.deleted", "user.updated", diff --git a/workos/types/events/session_created_payload.py b/workos/types/events/session_payload.py similarity index 60% rename from workos/types/events/session_created_payload.py rename to workos/types/events/session_payload.py index 6604a6b3..7ab9a079 100644 --- a/workos/types/events/session_created_payload.py +++ b/workos/types/events/session_payload.py @@ -13,3 +13,15 @@ class SessionCreatedPayload(WorkOSModel): user_id: str created_at: str updated_at: str + + +class SessionRevokedPayload(WorkOSModel): + object: Literal["session"] + id: str + impersonator: Optional[Impersonator] = None + ip_address: Optional[str] = None + organization_id: Optional[str] = None + user_agent: Optional[str] = None + user_id: str + created_at: str + updated_at: str diff --git a/workos/types/webhooks/webhook.py b/workos/types/webhooks/webhook.py index afe9e9ff..bca584bd 100644 --- a/workos/types/webhooks/webhook.py +++ b/workos/types/webhooks/webhook.py @@ -36,7 +36,10 @@ from workos.types.events.organization_domain_verification_failed_payload import ( OrganizationDomainVerificationFailedPayload, ) -from workos.types.events.session_created_payload import SessionCreatedPayload +from workos.types.events.session_payload import ( + SessionCreatedPayload, + SessionRevokedPayload, +) from workos.types.organization_domains import OrganizationDomain from workos.types.organizations.organization_common import OrganizationCommon from workos.types.roles.role import EventRole @@ -255,6 +258,10 @@ class SessionCreatedWebhook(WebhookModel[SessionCreatedPayload]): event: Literal["session.created"] +class SessionRevokedWebhook(WebhookModel[SessionRevokedPayload]): + event: Literal["session.revoked"] + + class UserCreatedWebhook(WebhookModel[User]): event: Literal["user.created"] @@ -314,6 +321,7 @@ class UserUpdatedWebhook(WebhookModel[User]): RoleDeletedWebhook, RoleUpdatedWebhook, SessionCreatedWebhook, + SessionRevokedWebhook, UserCreatedWebhook, UserDeletedWebhook, UserUpdatedWebhook,