ENT-4372-review#1482
ENT-4372-review#1482swaroopAkkineniWorkos merged 3 commits intoENT-4372-list-memberships-for-resourcefrom
Conversation
98a8d3c
into
ENT-4372-list-memberships-for-resource
Greptile OverviewGreptile SummaryThis PR refactors organization membership types to separate authorization and user-management concerns. It extracts base interfaces ( Key changes:
Breaking change concern: Confidence Score: 3/5
Important Files Changed
Sequence DiagramsequenceDiagram
participant Client
participant Authorization
participant API as WorkOS API
participant Deserializer as AuthorizationOrganizationMembership<br/>Deserializer
Client->>Authorization: listMembershipsForResource(options)
Authorization->>API: GET /authorization/resources/{id}/organization_memberships
API-->>Authorization: AuthorizationOrganizationMembershipListResponse
Authorization->>Deserializer: deserializeAuthorizationOrganizationMembership()
Deserializer-->>Authorization: AuthorizationOrganizationMembership[]
Authorization-->>Client: AuthorizationOrganizationMembershipList
Note over Deserializer: Maps API response fields:<br/>organization_name -> organizationName<br/>user_id -> userId<br/>organization_id -> organizationId
Last reviewed commit: d607e0a |
| export interface OrganizationMembership extends BaseOrganizationMembership { | ||
| organizationName: string; | ||
| role: RoleResponse; | ||
| roles?: RoleResponse[]; | ||
| } |
There was a problem hiding this comment.
Making organizationName and role required (non-optional) is a breaking change. Existing code that uses OrganizationMembership may not expect these fields to always be present. Check that all usages of this type handle these fields as required, or consider keeping them optional for backward compatibility.
No description provided.