@workos/openapi-spec 0.1.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/open-api-spec.yaml +694 -608
  2. package/package.json +1 -1
  3. package/types.d.ts +285 -75
@@ -2,9 +2,8 @@ openapi: 3.1.1
2
2
  paths:
3
3
  /api_keys/validations:
4
4
  post:
5
- operationId: ApiKeysController_validateApiKey
6
- summary: Validate API key
7
5
  description: Validate an API key value and return the API key object if valid.
6
+ operationId: ApiKeysController_validateApiKey
8
7
  parameters: []
9
8
  requestBody:
10
9
  required: true
@@ -34,15 +33,15 @@ paths:
34
33
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
35
34
  required:
36
35
  - message
36
+ summary: Validate API key
37
37
  tags:
38
38
  - api_keys
39
39
  /api_keys/{id}:
40
40
  delete:
41
- operationId: ApiKeysController_delete
42
- summary: Delete an API key
43
41
  description: >-
44
42
  Permanently deletes an API key. This action cannot be undone. Once
45
43
  deleted, any requests using this API key will fail authentication.
44
+ operationId: ApiKeysController_delete
46
45
  parameters:
47
46
  - name: id
48
47
  required: true
@@ -67,13 +66,13 @@ paths:
67
66
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
68
67
  required:
69
68
  - message
69
+ summary: Delete an API key
70
70
  tags:
71
71
  - api_keys
72
72
  /audit_logs/actions:
73
73
  get:
74
- operationId: AuditLogValidatorsController_list
75
- summary: List Actions
76
74
  description: Get a list of all Audit Log actions in the current environment.
75
+ operationId: AuditLogValidatorsController_list
77
76
  parameters:
78
77
  - name: before
79
78
  required: false
@@ -110,13 +109,7 @@ paths:
110
109
  in: query
111
110
  description: Order the results by the creation time.
112
111
  schema:
113
- default: desc
114
- example: desc
115
- enum:
116
- - normal
117
- - desc
118
- - asc
119
- type: string
112
+ $ref: '#/components/schemas/PaginationOrder'
120
113
  responses:
121
114
  '200':
122
115
  description: OK
@@ -190,16 +183,16 @@ paths:
190
183
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
191
184
  required:
192
185
  - message
186
+ summary: List Actions
193
187
  tags:
194
188
  - audit-logs
195
189
  /audit_logs/actions/{actionName}/schemas:
196
190
  post:
197
- operationId: AuditLogValidatorVersionsController_create
198
- summary: Create Schema
199
191
  description: >-
200
192
  Creates a new Audit Log schema used to validate the payload of incoming
201
193
  Audit Log Events. If the `action` does not exist, it will also be
202
194
  created.
195
+ operationId: AuditLogValidatorVersionsController_create
203
196
  parameters:
204
197
  - name: actionName
205
198
  required: true
@@ -234,14 +227,14 @@ paths:
234
227
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
235
228
  required:
236
229
  - message
230
+ summary: Create Schema
237
231
  tags:
238
232
  - audit-logs
239
233
  get:
240
- operationId: AuditLogValidatorVersionsController_schemas
241
- summary: List Schemas
242
234
  description: >-
243
235
  Get a list of all schemas for the Audit Logs action identified by
244
236
  `:name`.
237
+ operationId: AuditLogValidatorVersionsController_schemas
245
238
  parameters:
246
239
  - name: actionName
247
240
  required: true
@@ -285,13 +278,7 @@ paths:
285
278
  in: query
286
279
  description: Order the results by the creation time.
287
280
  schema:
288
- default: desc
289
- example: desc
290
- enum:
291
- - normal
292
- - desc
293
- - asc
294
- type: string
281
+ $ref: '#/components/schemas/PaginationOrder'
295
282
  responses:
296
283
  '200':
297
284
  description: OK
@@ -365,12 +352,11 @@ paths:
365
352
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
366
353
  required:
367
354
  - message
355
+ summary: List Schemas
368
356
  tags:
369
357
  - audit-logs
370
358
  /audit_logs/events:
371
359
  post:
372
- operationId: AuditLogEventsController_create
373
- summary: Create Event
374
360
  description: >-
375
361
  Create an Audit Log Event.
376
362
 
@@ -392,6 +378,7 @@ paths:
392
378
 
393
379
  Idempotency keys expire after 24 hours. The API will generate a new
394
380
  response if you submit a request with an expired key.
381
+ operationId: AuditLogEventsController_create
395
382
  parameters:
396
383
  - name: idempotency-key
397
384
  in: header
@@ -539,15 +526,15 @@ paths:
539
526
  message: Too many requests.
540
527
  code: rate_limit_exceeded
541
528
  description: ''
529
+ summary: Create Event
542
530
  tags:
543
531
  - audit-logs
544
532
  /audit_logs/exports:
545
533
  post:
546
- operationId: AuditLogExportsController_exports
547
- summary: Create Export
548
534
  description: >-
549
535
  Create an Audit Log Export. Exports are scoped to a single organization
550
536
  within a specified date range.
537
+ operationId: AuditLogExportsController_exports
551
538
  parameters: []
552
539
  requestBody:
553
540
  required: true
@@ -605,16 +592,16 @@ paths:
605
592
  example:
606
593
  message: Invalid date range
607
594
  code: invalid_audit_log_export_range_date
595
+ summary: Create Export
608
596
  tags:
609
597
  - audit-logs
610
598
  /audit_logs/exports/{auditLogExportId}:
611
599
  get:
612
- operationId: AuditLogExportsController_export
613
- summary: Get Export
614
600
  description: >-
615
601
  Get an Audit Log Export. The URL will expire after 10 minutes. If the
616
602
  export is needed again at a later time, refetching the export will
617
603
  regenerate the URL.
604
+ operationId: AuditLogExportsController_export
618
605
  parameters:
619
606
  - name: auditLogExportId
620
607
  required: true
@@ -654,13 +641,13 @@ paths:
654
641
  message: >-
655
642
  Audit Log Export not found:
656
643
  'audit_log_export_01GBZK5MP7TD1YCFQHFR22180V'.
644
+ summary: Get Export
657
645
  tags:
658
646
  - audit-logs
659
647
  /auth/challenges/{id}/verify:
660
648
  post:
661
- operationId: AuthenticationChallengesController_verify
662
- summary: Verify Challenge
663
649
  description: Verifies an Authentication Challenge.
650
+ operationId: AuthenticationChallengesController_verify
664
651
  parameters:
665
652
  - name: id
666
653
  required: true
@@ -734,16 +721,16 @@ paths:
734
721
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
735
722
  required:
736
723
  - message
724
+ summary: Verify Challenge
737
725
  tags:
738
726
  - multi-factor-auth.challenges
739
727
  /auth/factors/enroll:
740
728
  post:
741
- operationId: AuthenticationFactorsController_create
742
- summary: Enroll Factor
743
729
  description: >-
744
730
  Enrolls an Authentication Factor to be used as an additional factor of
745
731
  authentication. The returned ID should be used to create an
746
732
  authentication Challenge.
733
+ operationId: AuthenticationFactorsController_create
747
734
  parameters: []
748
735
  requestBody:
749
736
  required: true
@@ -798,13 +785,13 @@ paths:
798
785
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
799
786
  required:
800
787
  - message
788
+ summary: Enroll Factor
801
789
  tags:
802
790
  - multi-factor-auth
803
791
  /auth/factors/{id}:
804
792
  get:
805
- operationId: AuthenticationFactorsController_get
806
- summary: Get Factor
807
793
  description: Gets an Authentication Factor.
794
+ operationId: AuthenticationFactorsController_get
808
795
  parameters:
809
796
  - name: id
810
797
  required: true
@@ -843,12 +830,12 @@ paths:
843
830
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
844
831
  required:
845
832
  - message
833
+ summary: Get Factor
846
834
  tags:
847
835
  - multi-factor-auth
848
836
  delete:
849
- operationId: AuthenticationFactorsController_delete
850
- summary: Delete Factor
851
837
  description: Permanently deletes an Authentication Factor. It cannot be undone.
838
+ operationId: AuthenticationFactorsController_delete
852
839
  parameters:
853
840
  - name: id
854
841
  required: true
@@ -875,13 +862,13 @@ paths:
875
862
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
876
863
  required:
877
864
  - message
865
+ summary: Delete Factor
878
866
  tags:
879
867
  - multi-factor-auth
880
868
  /auth/factors/{id}/challenge:
881
869
  post:
882
- operationId: AuthenticationFactorsController_challenge
883
- summary: Challenge Factor
884
870
  description: Creates a Challenge for an Authentication Factor.
871
+ operationId: AuthenticationFactorsController_challenge
885
872
  parameters:
886
873
  - name: id
887
874
  required: true
@@ -929,12 +916,11 @@ paths:
929
916
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
930
917
  required:
931
918
  - message
919
+ summary: Challenge Factor
932
920
  tags:
933
921
  - multi-factor-auth
934
922
  /authkit/oauth2/complete:
935
923
  post:
936
- operationId: ExternalAuthController_completeLogin
937
- summary: Complete external authentication
938
924
  description: >-
939
925
  Completes an external authentication flow and returns control to
940
926
  AuthKit. This endpoint is used with [Standalone
@@ -961,6 +947,7 @@ paths:
961
947
  If you provide a new `id` with an `email` that already belongs to an
962
948
  existing user, the request will fail with an error as email addresses
963
949
  are unique to a user.
950
+ operationId: ExternalAuthController_completeLogin
964
951
  parameters: []
965
952
  requestBody:
966
953
  required: true
@@ -1076,16 +1063,16 @@ paths:
1076
1063
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
1077
1064
  required:
1078
1065
  - message
1066
+ summary: Complete external authentication
1079
1067
  tags:
1080
1068
  - workos-connect
1081
1069
  /authorization/organization_memberships/{organization_membership_id}/check:
1082
1070
  post:
1083
- operationId: AuthorizationController_check
1084
- summary: Check authorization
1085
1071
  description: >-
1086
1072
  Check if an organization membership has a specific permission on a
1087
1073
  resource. Supports identification by resource_id OR by
1088
1074
  resource_external_id + resource_type_slug.
1075
+ operationId: AuthorizationController_check
1089
1076
  parameters:
1090
1077
  - name: organization_membership_id
1091
1078
  required: true
@@ -1146,6 +1133,7 @@ paths:
1146
1133
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
1147
1134
  required:
1148
1135
  - message
1136
+ summary: Check authorization
1149
1137
  tags:
1150
1138
  - authorization
1151
1139
  x-mutually-exclusive-body-groups: &ref_3
@@ -1159,8 +1147,6 @@ paths:
1159
1147
  - resource_type_slug
1160
1148
  /authorization/organization_memberships/{organization_membership_id}/resources:
1161
1149
  get:
1162
- operationId: AuthorizationController_listResourcesForMembership
1163
- summary: List resources for organization membership
1164
1150
  description: >-
1165
1151
  Returns all child resources of a parent resource where the organization
1166
1152
  membership has a specific permission. This is useful for resource
@@ -1171,6 +1157,7 @@ paths:
1171
1157
  You must provide either `parent_resource_id` or both
1172
1158
  `parent_resource_external_id` and `parent_resource_type_slug` to
1173
1159
  identify the parent resource.
1160
+ operationId: AuthorizationController_listResourcesForMembership
1174
1161
  parameters:
1175
1162
  - name: organization_membership_id
1176
1163
  required: true
@@ -1224,13 +1211,7 @@ paths:
1224
1211
  reversed cursor semantics where `before` fetches older records and
1225
1212
  `after` fetches newer records). Defaults to descending.
1226
1213
  schema:
1227
- default: desc
1228
- example: desc
1229
- enum:
1230
- - normal
1231
- - desc
1232
- - asc
1233
- type: string
1214
+ $ref: '#/components/schemas/PaginationOrder'
1234
1215
  - name: permission_slug
1235
1216
  required: true
1236
1217
  in: query
@@ -1338,6 +1319,7 @@ paths:
1338
1319
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
1339
1320
  required:
1340
1321
  - message
1322
+ summary: List resources for organization membership
1341
1323
  tags:
1342
1324
  - authorization
1343
1325
  x-mutually-exclusive-parameter-groups:
@@ -1351,12 +1333,11 @@ paths:
1351
1333
  - parent_resource_external_id
1352
1334
  /authorization/organization_memberships/{organization_membership_id}/resources/{resource_id}/permissions:
1353
1335
  get:
1354
- operationId: AuthorizationController_listEffectivePermissions
1355
- summary: List effective permissions for an organization membership on a resource
1356
1336
  description: >-
1357
1337
  Returns all permissions the organization membership effectively has on a
1358
1338
  resource, including permissions inherited through roles assigned to
1359
1339
  ancestor resources.
1340
+ operationId: AuthorizationController_listEffectivePermissions
1360
1341
  parameters:
1361
1342
  - name: organization_membership_id
1362
1343
  required: true
@@ -1417,13 +1398,7 @@ paths:
1417
1398
  reversed cursor semantics where `before` fetches older records and
1418
1399
  `after` fetches newer records). Defaults to descending.
1419
1400
  schema:
1420
- default: desc
1421
- example: desc
1422
- enum:
1423
- - normal
1424
- - desc
1425
- - asc
1426
- type: string
1401
+ $ref: '#/components/schemas/PaginationOrder'
1427
1402
  responses:
1428
1403
  '200':
1429
1404
  description: OK
@@ -1470,18 +1445,16 @@ paths:
1470
1445
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
1471
1446
  required:
1472
1447
  - message
1448
+ summary: List effective permissions for an organization membership on a resource
1473
1449
  tags:
1474
1450
  - authorization
1475
1451
  /authorization/organization_memberships/{organization_membership_id}/resources/{resource_type_slug}/{external_id}/permissions:
1476
1452
  get:
1477
- operationId: AuthorizationController_listEffectivePermissionsByExternalId
1478
- summary: >-
1479
- List effective permissions for an organization membership on a resource
1480
- by external ID
1481
1453
  description: >-
1482
1454
  Returns all permissions the organization membership effectively has on a
1483
1455
  resource identified by its external ID, including permissions inherited
1484
1456
  through roles assigned to ancestor resources.
1457
+ operationId: AuthorizationController_listEffectivePermissionsByExternalId
1485
1458
  parameters:
1486
1459
  - name: organization_membership_id
1487
1460
  required: true
@@ -1549,13 +1522,7 @@ paths:
1549
1522
  reversed cursor semantics where `before` fetches older records and
1550
1523
  `after` fetches newer records). Defaults to descending.
1551
1524
  schema:
1552
- default: desc
1553
- example: desc
1554
- enum:
1555
- - normal
1556
- - desc
1557
- - asc
1558
- type: string
1525
+ $ref: '#/components/schemas/PaginationOrder'
1559
1526
  responses:
1560
1527
  '200':
1561
1528
  description: OK
@@ -1602,16 +1569,18 @@ paths:
1602
1569
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
1603
1570
  required:
1604
1571
  - message
1572
+ summary: >-
1573
+ List effective permissions for an organization membership on a resource
1574
+ by external ID
1605
1575
  tags:
1606
1576
  - authorization
1607
1577
  /authorization/organization_memberships/{organization_membership_id}/role_assignments:
1608
1578
  get:
1609
- operationId: AuthorizationRoleAssignmentsController_listRoleAssignments
1610
- summary: List role assignments
1611
1579
  description: >-
1612
1580
  List all role assignments for an organization membership. This returns
1613
1581
  all roles that have been assigned to the user on resources, including
1614
1582
  organization-level and sub-resource roles.
1583
+ operationId: AuthorizationRoleAssignmentsController_listRoleAssignments
1615
1584
  parameters:
1616
1585
  - name: organization_membership_id
1617
1586
  required: true
@@ -1665,12 +1634,27 @@ paths:
1665
1634
  reversed cursor semantics where `before` fetches older records and
1666
1635
  `after` fetches newer records). Defaults to descending.
1667
1636
  schema:
1668
- default: desc
1669
- example: desc
1670
- enum:
1671
- - normal
1672
- - desc
1673
- - asc
1637
+ $ref: '#/components/schemas/PaginationOrder'
1638
+ - name: resource_id
1639
+ required: false
1640
+ in: query
1641
+ description: Filter assignments by the ID of the resource.
1642
+ schema:
1643
+ example: authz_resource_01HXYZ123456789ABCDEFGH
1644
+ type: string
1645
+ - name: resource_external_id
1646
+ required: false
1647
+ in: query
1648
+ description: Filter assignments by the external ID of the resource.
1649
+ schema:
1650
+ example: project-ext-456
1651
+ type: string
1652
+ - name: resource_type_slug
1653
+ required: false
1654
+ in: query
1655
+ description: Filter assignments by the slug of the resource type.
1656
+ schema:
1657
+ example: project
1674
1658
  type: string
1675
1659
  responses:
1676
1660
  '200':
@@ -1678,7 +1662,7 @@ paths:
1678
1662
  content:
1679
1663
  application/json:
1680
1664
  schema:
1681
- $ref: '#/components/schemas/RoleAssignmentList'
1665
+ $ref: '#/components/schemas/UserRoleAssignmentList'
1682
1666
  '403':
1683
1667
  description: Forbidden
1684
1668
  content:
@@ -1705,12 +1689,12 @@ paths:
1705
1689
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
1706
1690
  required:
1707
1691
  - message
1692
+ summary: List role assignments
1708
1693
  tags:
1709
1694
  - authorization
1710
1695
  post:
1711
- operationId: AuthorizationRoleAssignmentsController_assignRole
1712
- summary: Assign a role
1713
1696
  description: Assign a role to an organization membership on a specific resource.
1697
+ operationId: AuthorizationRoleAssignmentsController_assignRole
1714
1698
  parameters:
1715
1699
  - name: organization_membership_id
1716
1700
  required: true
@@ -1730,10 +1714,11 @@ paths:
1730
1714
  content:
1731
1715
  application/json:
1732
1716
  schema:
1733
- $ref: '#/components/schemas/RoleAssignment'
1717
+ $ref: '#/components/schemas/UserRoleAssignment'
1734
1718
  example:
1735
1719
  object: role_assignment
1736
1720
  id: role_assignment_01HXYZ123456789ABCDEFGH
1721
+ organization_membership_id: om_01HXYZ123456789ABCDEFGHIJ
1737
1722
  role:
1738
1723
  slug: editor
1739
1724
  resource:
@@ -1782,6 +1767,7 @@ paths:
1782
1767
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
1783
1768
  required:
1784
1769
  - message
1770
+ summary: Assign a role
1785
1771
  tags:
1786
1772
  - authorization
1787
1773
  x-mutually-exclusive-body-groups: &ref_4
@@ -1794,9 +1780,8 @@ paths:
1794
1780
  - resource_external_id
1795
1781
  - resource_type_slug
1796
1782
  delete:
1797
- operationId: AuthorizationRoleAssignmentsController_removeRoleByCriteria
1798
- summary: Remove a role assignment
1799
1783
  description: Remove a role assignment by role slug and resource.
1784
+ operationId: AuthorizationRoleAssignmentsController_removeRoleByCriteria
1800
1785
  parameters:
1801
1786
  - name: organization_membership_id
1802
1787
  required: true
@@ -1853,6 +1838,7 @@ paths:
1853
1838
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
1854
1839
  required:
1855
1840
  - message
1841
+ summary: Remove a role assignment
1856
1842
  tags:
1857
1843
  - authorization
1858
1844
  x-mutually-exclusive-body-groups: &ref_5
@@ -1866,9 +1852,8 @@ paths:
1866
1852
  - resource_type_slug
1867
1853
  /authorization/organization_memberships/{organization_membership_id}/role_assignments/{role_assignment_id}:
1868
1854
  delete:
1869
- operationId: AuthorizationRoleAssignmentsController_removeRoleById
1870
- summary: Remove a role assignment by ID
1871
1855
  description: Remove a role assignment using its ID.
1856
+ operationId: AuthorizationRoleAssignmentsController_removeRoleById
1872
1857
  parameters:
1873
1858
  - name: organization_membership_id
1874
1859
  required: true
@@ -1913,13 +1898,13 @@ paths:
1913
1898
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
1914
1899
  required:
1915
1900
  - message
1901
+ summary: Remove a role assignment by ID
1916
1902
  tags:
1917
1903
  - authorization
1918
1904
  /authorization/organizations/{organizationId}/roles:
1919
1905
  post:
1920
- operationId: AuthorizationOrganizationRolesController_create
1921
- summary: Create a custom role
1922
1906
  description: Create a new custom role for this organization.
1907
+ operationId: AuthorizationOrganizationRolesController_create
1923
1908
  parameters:
1924
1909
  - name: organizationId
1925
1910
  required: true
@@ -2085,14 +2070,14 @@ paths:
2085
2070
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
2086
2071
  required:
2087
2072
  - message
2073
+ summary: Create a custom role
2088
2074
  tags:
2089
2075
  - authorization
2090
2076
  get:
2091
- operationId: AuthorizationOrganizationRolesController_list
2092
- summary: List custom roles
2093
2077
  description: >-
2094
2078
  Get a list of all roles that apply to an organization. This includes
2095
2079
  both environment roles and custom roles, returned in priority order.
2080
+ operationId: AuthorizationOrganizationRolesController_list
2096
2081
  parameters:
2097
2082
  - name: organizationId
2098
2083
  required: true
@@ -2134,15 +2119,15 @@ paths:
2134
2119
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
2135
2120
  required:
2136
2121
  - message
2122
+ summary: List custom roles
2137
2123
  tags:
2138
2124
  - authorization
2139
2125
  /authorization/organizations/{organizationId}/roles/{slug}:
2140
2126
  get:
2141
- operationId: AuthorizationOrganizationRolesController_get
2142
- summary: Get a custom role
2143
2127
  description: >-
2144
2128
  Retrieve a role that applies to an organization by its slug. This can
2145
2129
  return either an environment role or a custom role.
2130
+ operationId: AuthorizationOrganizationRolesController_get
2146
2131
  parameters:
2147
2132
  - name: organizationId
2148
2133
  required: true
@@ -2258,14 +2243,14 @@ paths:
2258
2243
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
2259
2244
  required:
2260
2245
  - message
2246
+ summary: Get a custom role
2261
2247
  tags:
2262
2248
  - authorization
2263
2249
  patch:
2264
- operationId: AuthorizationOrganizationRolesController_update
2265
- summary: Update a custom role
2266
2250
  description: >-
2267
2251
  Update an existing custom role. Only the fields provided in the request
2268
2252
  body will be updated.
2253
+ operationId: AuthorizationOrganizationRolesController_update
2269
2254
  parameters:
2270
2255
  - name: organizationId
2271
2256
  required: true
@@ -2419,12 +2404,12 @@ paths:
2419
2404
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
2420
2405
  required:
2421
2406
  - message
2407
+ summary: Update a custom role
2422
2408
  tags:
2423
2409
  - authorization
2424
2410
  delete:
2425
- operationId: AuthorizationOrganizationRolesController_delete
2426
- summary: Delete a custom role
2427
2411
  description: Delete an existing custom role.
2412
+ operationId: AuthorizationOrganizationRolesController_delete
2428
2413
  parameters:
2429
2414
  - name: organizationId
2430
2415
  required: true
@@ -2522,13 +2507,13 @@ paths:
2522
2507
  required:
2523
2508
  - code
2524
2509
  - message
2510
+ summary: Delete a custom role
2525
2511
  tags:
2526
2512
  - authorization
2527
2513
  /authorization/organizations/{organizationId}/roles/{slug}/permissions:
2528
2514
  put:
2529
- operationId: AuthorizationOrganizationRolePermissionsController_setPermissions
2530
- summary: Set permissions for a custom role
2531
2515
  description: Replace all permissions on a custom role with the provided list.
2516
+ operationId: AuthorizationOrganizationRolePermissionsController_setPermissions
2532
2517
  parameters:
2533
2518
  - name: organizationId
2534
2519
  required: true
@@ -2665,14 +2650,14 @@ paths:
2665
2650
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
2666
2651
  required:
2667
2652
  - message
2653
+ summary: Set permissions for a custom role
2668
2654
  tags:
2669
2655
  - authorization
2670
2656
  post:
2671
- operationId: AuthorizationOrganizationRolePermissionsController_addPermission
2672
- summary: Add a permission to a custom role
2673
2657
  description: >-
2674
2658
  Add a single permission to a custom role. If the permission is already
2675
2659
  assigned to the role, this operation has no effect.
2660
+ operationId: AuthorizationOrganizationRolePermissionsController_addPermission
2676
2661
  parameters:
2677
2662
  - name: organizationId
2678
2663
  required: true
@@ -2825,13 +2810,13 @@ paths:
2825
2810
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
2826
2811
  required:
2827
2812
  - message
2813
+ summary: Add a permission to a custom role
2828
2814
  tags:
2829
2815
  - authorization
2830
2816
  /authorization/organizations/{organizationId}/roles/{slug}/permissions/{permissionSlug}:
2831
2817
  delete:
2832
- operationId: AuthorizationOrganizationRolePermissionsController_removePermission
2833
- summary: Remove a permission from a custom role
2834
2818
  description: Remove a single permission from a custom role by its slug.
2819
+ operationId: AuthorizationOrganizationRolePermissionsController_removePermission
2835
2820
  parameters:
2836
2821
  - name: organizationId
2837
2822
  required: true
@@ -2887,17 +2872,17 @@ paths:
2887
2872
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
2888
2873
  required:
2889
2874
  - message
2875
+ summary: Remove a permission from a custom role
2890
2876
  tags:
2891
2877
  - authorization
2892
2878
  /authorization/organizations/{organization_id}/resources/{resource_type_slug}/{external_id}:
2893
2879
  get:
2894
- operationId: AuthorizationResourcesByExternalIdController_getByExternalId
2895
- summary: Get a resource by external ID
2896
2880
  description: >-
2897
2881
  Retrieve the details of an authorization resource by its external ID,
2898
2882
  organization, and resource type. This is useful when you only have the
2899
2883
  external ID from your system and need to fetch the full resource
2900
2884
  details.
2885
+ operationId: AuthorizationResourcesByExternalIdController_getByExternalId
2901
2886
  parameters:
2902
2887
  - name: organization_id
2903
2888
  required: true
@@ -2953,12 +2938,12 @@ paths:
2953
2938
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
2954
2939
  required:
2955
2940
  - message
2941
+ summary: Get a resource by external ID
2956
2942
  tags:
2957
2943
  - authorization
2958
2944
  patch:
2959
- operationId: AuthorizationResourcesByExternalIdController_updateByExternalId
2960
- summary: Update a resource by external ID
2961
2945
  description: Update an existing authorization resource using its external ID.
2946
+ operationId: AuthorizationResourcesByExternalIdController_updateByExternalId
2962
2947
  parameters:
2963
2948
  - name: organization_id
2964
2949
  required: true
@@ -3132,6 +3117,7 @@ paths:
3132
3117
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
3133
3118
  required:
3134
3119
  - message
3120
+ summary: Update a resource by external ID
3135
3121
  tags:
3136
3122
  - authorization
3137
3123
  x-mutually-exclusive-body-groups: &ref_0
@@ -3144,11 +3130,10 @@ paths:
3144
3130
  - parent_resource_external_id
3145
3131
  - parent_resource_type_slug
3146
3132
  delete:
3147
- operationId: AuthorizationResourcesByExternalIdController_deleteByExternalId
3148
- summary: Delete an authorization resource by external ID
3149
3133
  description: >-
3150
3134
  Delete an authorization resource by organization, resource type, and
3151
3135
  external ID. This also deletes all descendant resources.
3136
+ operationId: AuthorizationResourcesByExternalIdController_deleteByExternalId
3152
3137
  parameters:
3153
3138
  - name: organization_id
3154
3139
  required: true
@@ -3264,18 +3249,18 @@ paths:
3264
3249
  required:
3265
3250
  - code
3266
3251
  - message
3252
+ summary: Delete an authorization resource by external ID
3267
3253
  tags:
3268
3254
  - authorization
3269
3255
  /authorization/organizations/{organization_id}/resources/{resource_type_slug}/{external_id}/organization_memberships:
3270
3256
  get:
3271
- operationId: >-
3272
- AuthorizationResourcesByExternalIdController_listOrganizationMembershipsForResourceByExternalId
3273
- summary: List memberships for a resource by external ID
3274
3257
  description: >-
3275
3258
  Returns all organization memberships that have a specific permission on
3276
3259
  a resource, using the resource's external ID. This is useful for
3277
3260
  answering "Who can access this resource?" when you only have the
3278
3261
  external ID.
3262
+ operationId: >-
3263
+ AuthorizationResourcesByExternalIdController_listOrganizationMembershipsForResourceByExternalId
3279
3264
  parameters:
3280
3265
  - name: organization_id
3281
3266
  required: true
@@ -3343,13 +3328,7 @@ paths:
3343
3328
  reversed cursor semantics where `before` fetches older records and
3344
3329
  `after` fetches newer records). Defaults to descending.
3345
3330
  schema:
3346
- default: desc
3347
- example: desc
3348
- enum:
3349
- - normal
3350
- - desc
3351
- - asc
3352
- type: string
3331
+ $ref: '#/components/schemas/PaginationOrder'
3353
3332
  - name: permission_slug
3354
3333
  required: true
3355
3334
  in: query
@@ -3437,13 +3416,132 @@ paths:
3437
3416
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
3438
3417
  required:
3439
3418
  - message
3419
+ summary: List memberships for a resource by external ID
3420
+ tags:
3421
+ - authorization
3422
+ /authorization/organizations/{organization_id}/resources/{resource_type_slug}/{external_id}/role_assignments:
3423
+ get:
3424
+ description: >-
3425
+ List all role assignments granted on a resource, identified by its
3426
+ external ID. Each assignment includes the organization membership it was
3427
+ granted to.
3428
+ operationId: >-
3429
+ AuthorizationRoleAssignmentsController_listRoleAssignmentsForResourceByExternalId
3430
+ parameters:
3431
+ - name: organization_id
3432
+ required: true
3433
+ in: path
3434
+ description: The ID of the organization that owns the resource.
3435
+ schema:
3436
+ type: string
3437
+ example: org_01EHZNVPK3SFK441A1RGBFSHRT
3438
+ - name: resource_type_slug
3439
+ required: true
3440
+ in: path
3441
+ description: The slug of the resource type.
3442
+ schema:
3443
+ type: string
3444
+ example: project
3445
+ - name: external_id
3446
+ required: true
3447
+ in: path
3448
+ description: An identifier you provide to reference the resource in your system.
3449
+ schema:
3450
+ type: string
3451
+ example: proj-456
3452
+ - name: before
3453
+ required: false
3454
+ in: query
3455
+ description: >-
3456
+ An object ID that defines your place in the list. When the ID is not
3457
+ present, you are at the end of the list. For example, if you make a
3458
+ list request and receive 100 objects, ending with `"obj_123"`, your
3459
+ subsequent call can include `before="obj_123"` to fetch a new batch
3460
+ of objects before `"obj_123"`.
3461
+ schema:
3462
+ example: xxx_01HXYZ123456789ABCDEFGHIJ
3463
+ type: string
3464
+ - name: after
3465
+ required: false
3466
+ in: query
3467
+ description: >-
3468
+ An object ID that defines your place in the list. When the ID is not
3469
+ present, you are at the end of the list. For example, if you make a
3470
+ list request and receive 100 objects, ending with `"obj_123"`, your
3471
+ subsequent call can include `after="obj_123"` to fetch a new batch
3472
+ of objects after `"obj_123"`.
3473
+ schema:
3474
+ example: xxx_01HXYZ987654321KJIHGFEDCBA
3475
+ type: string
3476
+ - name: limit
3477
+ required: false
3478
+ in: query
3479
+ description: >-
3480
+ Upper limit on the number of objects to return, between `1` and
3481
+ `100`.
3482
+ schema:
3483
+ minimum: 1
3484
+ maximum: 100
3485
+ default: 10
3486
+ example: 10
3487
+ type: integer
3488
+ - name: order
3489
+ required: false
3490
+ in: query
3491
+ description: >-
3492
+ Order the results by the creation time. Supported values are `"asc"`
3493
+ (ascending), `"desc"` (descending), and `"normal"` (descending with
3494
+ reversed cursor semantics where `before` fetches older records and
3495
+ `after` fetches newer records). Defaults to descending.
3496
+ schema:
3497
+ $ref: '#/components/schemas/PaginationOrder'
3498
+ - name: role_slug
3499
+ required: false
3500
+ in: query
3501
+ description: Filter assignments by the slug of the role.
3502
+ schema:
3503
+ example: editor
3504
+ type: string
3505
+ responses:
3506
+ '200':
3507
+ description: OK
3508
+ content:
3509
+ application/json:
3510
+ schema:
3511
+ $ref: '#/components/schemas/UserRoleAssignmentList'
3512
+ '403':
3513
+ description: Forbidden
3514
+ content:
3515
+ application/json:
3516
+ schema:
3517
+ type: object
3518
+ properties:
3519
+ message:
3520
+ type: string
3521
+ description: A human-readable description of the error.
3522
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
3523
+ required:
3524
+ - message
3525
+ '404':
3526
+ description: Not Found
3527
+ content:
3528
+ application/json:
3529
+ schema:
3530
+ type: object
3531
+ properties:
3532
+ message:
3533
+ type: string
3534
+ description: A human-readable description of the error.
3535
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
3536
+ required:
3537
+ - message
3538
+ summary: List role assignments for a resource by external ID
3440
3539
  tags:
3441
3540
  - authorization
3442
3541
  /authorization/permissions:
3443
3542
  get:
3444
- operationId: AuthorizationPermissionsController_list
3445
- summary: List permissions
3446
3543
  description: Get a list of all permissions in your WorkOS environment.
3544
+ operationId: AuthorizationPermissionsController_list
3447
3545
  parameters:
3448
3546
  - name: before
3449
3547
  required: false
@@ -3490,13 +3588,7 @@ paths:
3490
3588
  reversed cursor semantics where `before` fetches older records and
3491
3589
  `after` fetches newer records). Defaults to descending.
3492
3590
  schema:
3493
- default: desc
3494
- example: desc
3495
- enum:
3496
- - normal
3497
- - desc
3498
- - asc
3499
- type: string
3591
+ $ref: '#/components/schemas/PaginationOrder'
3500
3592
  responses:
3501
3593
  '200':
3502
3594
  description: OK
@@ -3517,14 +3609,14 @@ paths:
3517
3609
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
3518
3610
  required:
3519
3611
  - message
3612
+ summary: List permissions
3520
3613
  tags:
3521
3614
  - permissions
3522
3615
  post:
3523
- operationId: AuthorizationPermissionsController_create
3524
- summary: Create a permission
3525
3616
  description: >-
3526
3617
  Create a new permission in your WorkOS environment. The permission can
3527
3618
  then be assigned to environment roles and custom roles.
3619
+ operationId: AuthorizationPermissionsController_create
3528
3620
  parameters: []
3529
3621
  requestBody:
3530
3622
  required: true
@@ -3662,13 +3754,13 @@ paths:
3662
3754
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
3663
3755
  required:
3664
3756
  - message
3757
+ summary: Create a permission
3665
3758
  tags:
3666
3759
  - permissions
3667
3760
  /authorization/permissions/{slug}:
3668
3761
  get:
3669
- operationId: AuthorizationPermissionsController_find
3670
- summary: Get a permission
3671
3762
  description: Retrieve a permission by its unique slug.
3763
+ operationId: AuthorizationPermissionsController_find
3672
3764
  parameters:
3673
3765
  - name: slug
3674
3766
  required: true
@@ -3700,14 +3792,14 @@ paths:
3700
3792
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
3701
3793
  required:
3702
3794
  - message
3795
+ summary: Get a permission
3703
3796
  tags:
3704
3797
  - permissions
3705
3798
  patch:
3706
- operationId: AuthorizationPermissionsController_update
3707
- summary: Update a permission
3708
3799
  description: >-
3709
3800
  Update an existing permission. Only the fields provided in the request
3710
3801
  body will be updated.
3802
+ operationId: AuthorizationPermissionsController_update
3711
3803
  parameters:
3712
3804
  - name: slug
3713
3805
  required: true
@@ -3771,12 +3863,12 @@ paths:
3771
3863
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
3772
3864
  required:
3773
3865
  - message
3866
+ summary: Update a permission
3774
3867
  tags:
3775
3868
  - permissions
3776
3869
  delete:
3777
- operationId: AuthorizationPermissionsController_delete
3778
- summary: Delete a permission
3779
3870
  description: Delete an existing permission. System permissions cannot be deleted.
3871
+ operationId: AuthorizationPermissionsController_delete
3780
3872
  parameters:
3781
3873
  - name: slug
3782
3874
  required: true
@@ -3817,13 +3909,13 @@ paths:
3817
3909
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
3818
3910
  required:
3819
3911
  - message
3912
+ summary: Delete a permission
3820
3913
  tags:
3821
3914
  - permissions
3822
3915
  /authorization/resources:
3823
3916
  get:
3824
- operationId: AuthorizationResourcesController_list
3825
- summary: List resources
3826
3917
  description: Get a paginated list of authorization resources.
3918
+ operationId: AuthorizationResourcesController_list
3827
3919
  parameters:
3828
3920
  - name: before
3829
3921
  required: false
@@ -3870,13 +3962,7 @@ paths:
3870
3962
  reversed cursor semantics where `before` fetches older records and
3871
3963
  `after` fetches newer records). Defaults to descending.
3872
3964
  schema:
3873
- default: desc
3874
- example: desc
3875
- enum:
3876
- - normal
3877
- - desc
3878
- - asc
3879
- type: string
3965
+ $ref: '#/components/schemas/PaginationOrder'
3880
3966
  - name: organization_id
3881
3967
  required: false
3882
3968
  in: query
@@ -3926,13 +4012,6 @@ paths:
3926
4012
  schema:
3927
4013
  type: string
3928
4014
  example: ext-workspace-123
3929
- - name: search
3930
- required: false
3931
- in: query
3932
- description: Search resources by name.
3933
- schema:
3934
- type: string
3935
- example: Website Redesign
3936
4015
  responses:
3937
4016
  '200':
3938
4017
  description: OK
@@ -3966,6 +4045,7 @@ paths:
3966
4045
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
3967
4046
  required:
3968
4047
  - message
4048
+ summary: List resources
3969
4049
  tags:
3970
4050
  - authorization
3971
4051
  x-mutually-exclusive-parameter-groups:
@@ -3978,9 +4058,8 @@ paths:
3978
4058
  - parent_resource_type_slug
3979
4059
  - parent_external_id
3980
4060
  post:
3981
- operationId: AuthorizationResourcesController_create
3982
- summary: Create an authorization resource
3983
4061
  description: Create a new authorization resource.
4062
+ operationId: AuthorizationResourcesController_create
3984
4063
  parameters: []
3985
4064
  requestBody:
3986
4065
  required: true
@@ -4163,6 +4242,7 @@ paths:
4163
4242
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
4164
4243
  required:
4165
4244
  - message
4245
+ summary: Create an authorization resource
4166
4246
  tags:
4167
4247
  - authorization
4168
4248
  x-mutually-exclusive-body-groups: &ref_6
@@ -4176,9 +4256,8 @@ paths:
4176
4256
  - parent_resource_type_slug
4177
4257
  /authorization/resources/{resource_id}:
4178
4258
  get:
4179
- operationId: AuthorizationResourcesController_findById
4180
- summary: Get a resource
4181
4259
  description: Retrieve the details of an authorization resource by its ID.
4260
+ operationId: AuthorizationResourcesController_findById
4182
4261
  parameters:
4183
4262
  - name: resource_id
4184
4263
  required: true
@@ -4233,12 +4312,12 @@ paths:
4233
4312
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
4234
4313
  required:
4235
4314
  - message
4315
+ summary: Get a resource
4236
4316
  tags:
4237
4317
  - authorization
4238
4318
  patch:
4239
- operationId: AuthorizationResourcesController_update
4240
- summary: Update a resource
4241
4319
  description: Update an existing authorization resource.
4320
+ operationId: AuthorizationResourcesController_update
4242
4321
  parameters:
4243
4322
  - name: resource_id
4244
4323
  required: true
@@ -4398,13 +4477,13 @@ paths:
4398
4477
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
4399
4478
  required:
4400
4479
  - message
4480
+ summary: Update a resource
4401
4481
  tags:
4402
4482
  - authorization
4403
4483
  x-mutually-exclusive-body-groups: *ref_0
4404
4484
  delete:
4405
- operationId: AuthorizationResourcesController_delete
4406
- summary: Delete an authorization resource
4407
4485
  description: Delete an authorization resource and all its descendants.
4486
+ operationId: AuthorizationResourcesController_delete
4408
4487
  parameters:
4409
4488
  - name: resource_id
4410
4489
  required: true
@@ -4506,16 +4585,16 @@ paths:
4506
4585
  required:
4507
4586
  - code
4508
4587
  - message
4588
+ summary: Delete an authorization resource
4509
4589
  tags:
4510
4590
  - authorization
4511
4591
  /authorization/resources/{resource_id}/organization_memberships:
4512
4592
  get:
4513
- operationId: AuthorizationResourcesController_listOrganizationMembershipsForResource
4514
- summary: List organization memberships for resource
4515
4593
  description: >-
4516
4594
  Returns all organization memberships that have a specific permission on
4517
4595
  a resource instance. This is useful for answering "Who can access this
4518
4596
  resource?".
4597
+ operationId: AuthorizationResourcesController_listOrganizationMembershipsForResource
4519
4598
  parameters:
4520
4599
  - name: resource_id
4521
4600
  required: true
@@ -4569,13 +4648,7 @@ paths:
4569
4648
  reversed cursor semantics where `before` fetches older records and
4570
4649
  `after` fetches newer records). Defaults to descending.
4571
4650
  schema:
4572
- default: desc
4573
- example: desc
4574
- enum:
4575
- - normal
4576
- - desc
4577
- - asc
4578
- type: string
4651
+ $ref: '#/components/schemas/PaginationOrder'
4579
4652
  - name: permission_slug
4580
4653
  required: true
4581
4654
  in: query
@@ -4663,13 +4736,116 @@ paths:
4663
4736
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
4664
4737
  required:
4665
4738
  - message
4739
+ summary: List organization memberships for resource
4740
+ tags:
4741
+ - authorization
4742
+ /authorization/resources/{resource_id}/role_assignments:
4743
+ get:
4744
+ description: >-
4745
+ List all role assignments granted on a specific resource instance. Each
4746
+ assignment includes the organization membership it was granted to.
4747
+ operationId: AuthorizationRoleAssignmentsController_listRoleAssignmentsForResource
4748
+ parameters:
4749
+ - name: resource_id
4750
+ required: true
4751
+ in: path
4752
+ description: The ID of the authorization resource.
4753
+ schema:
4754
+ type: string
4755
+ example: authz_resource_01HXYZ123456789ABCDEFGHIJ
4756
+ - name: before
4757
+ required: false
4758
+ in: query
4759
+ description: >-
4760
+ An object ID that defines your place in the list. When the ID is not
4761
+ present, you are at the end of the list. For example, if you make a
4762
+ list request and receive 100 objects, ending with `"obj_123"`, your
4763
+ subsequent call can include `before="obj_123"` to fetch a new batch
4764
+ of objects before `"obj_123"`.
4765
+ schema:
4766
+ example: xxx_01HXYZ123456789ABCDEFGHIJ
4767
+ type: string
4768
+ - name: after
4769
+ required: false
4770
+ in: query
4771
+ description: >-
4772
+ An object ID that defines your place in the list. When the ID is not
4773
+ present, you are at the end of the list. For example, if you make a
4774
+ list request and receive 100 objects, ending with `"obj_123"`, your
4775
+ subsequent call can include `after="obj_123"` to fetch a new batch
4776
+ of objects after `"obj_123"`.
4777
+ schema:
4778
+ example: xxx_01HXYZ987654321KJIHGFEDCBA
4779
+ type: string
4780
+ - name: limit
4781
+ required: false
4782
+ in: query
4783
+ description: >-
4784
+ Upper limit on the number of objects to return, between `1` and
4785
+ `100`.
4786
+ schema:
4787
+ minimum: 1
4788
+ maximum: 100
4789
+ default: 10
4790
+ example: 10
4791
+ type: integer
4792
+ - name: order
4793
+ required: false
4794
+ in: query
4795
+ description: >-
4796
+ Order the results by the creation time. Supported values are `"asc"`
4797
+ (ascending), `"desc"` (descending), and `"normal"` (descending with
4798
+ reversed cursor semantics where `before` fetches older records and
4799
+ `after` fetches newer records). Defaults to descending.
4800
+ schema:
4801
+ $ref: '#/components/schemas/PaginationOrder'
4802
+ - name: role_slug
4803
+ required: false
4804
+ in: query
4805
+ description: Filter assignments by the slug of the role.
4806
+ schema:
4807
+ example: editor
4808
+ type: string
4809
+ responses:
4810
+ '200':
4811
+ description: OK
4812
+ content:
4813
+ application/json:
4814
+ schema:
4815
+ $ref: '#/components/schemas/UserRoleAssignmentList'
4816
+ '403':
4817
+ description: Forbidden
4818
+ content:
4819
+ application/json:
4820
+ schema:
4821
+ type: object
4822
+ properties:
4823
+ message:
4824
+ type: string
4825
+ description: A human-readable description of the error.
4826
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
4827
+ required:
4828
+ - message
4829
+ '404':
4830
+ description: Not Found
4831
+ content:
4832
+ application/json:
4833
+ schema:
4834
+ type: object
4835
+ properties:
4836
+ message:
4837
+ type: string
4838
+ description: A human-readable description of the error.
4839
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
4840
+ required:
4841
+ - message
4842
+ summary: List role assignments for a resource
4666
4843
  tags:
4667
4844
  - authorization
4668
4845
  /authorization/roles:
4669
4846
  post:
4670
- operationId: AuthorizationRolesController_create
4671
- summary: Create an environment role
4672
4847
  description: Create a new environment role.
4848
+ operationId: AuthorizationRolesController_create
4673
4849
  parameters: []
4674
4850
  requestBody:
4675
4851
  required: true
@@ -4828,12 +5004,12 @@ paths:
4828
5004
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
4829
5005
  required:
4830
5006
  - message
5007
+ summary: Create an environment role
4831
5008
  tags:
4832
5009
  - authorization
4833
5010
  get:
4834
- operationId: AuthorizationRolesController_list
4835
- summary: List environment roles
4836
5011
  description: List all environment roles in priority order.
5012
+ operationId: AuthorizationRolesController_list
4837
5013
  parameters: []
4838
5014
  responses:
4839
5015
  '200':
@@ -4855,13 +5031,13 @@ paths:
4855
5031
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
4856
5032
  required:
4857
5033
  - message
5034
+ summary: List environment roles
4858
5035
  tags:
4859
5036
  - authorization
4860
5037
  /authorization/roles/{slug}:
4861
5038
  get:
4862
- operationId: AuthorizationRolesController_get
4863
- summary: Get an environment role
4864
5039
  description: Get an environment role by its slug.
5040
+ operationId: AuthorizationRolesController_get
4865
5041
  parameters:
4866
5042
  - name: slug
4867
5043
  required: true
@@ -4903,12 +5079,12 @@ paths:
4903
5079
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
4904
5080
  required:
4905
5081
  - message
5082
+ summary: Get an environment role
4906
5083
  tags:
4907
5084
  - authorization
4908
5085
  patch:
4909
- operationId: AuthorizationRolesController_update
4910
- summary: Update an environment role
4911
5086
  description: Update an existing environment role.
5087
+ operationId: AuthorizationRolesController_update
4912
5088
  parameters:
4913
5089
  - name: slug
4914
5090
  required: true
@@ -5055,13 +5231,13 @@ paths:
5055
5231
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
5056
5232
  required:
5057
5233
  - message
5234
+ summary: Update an environment role
5058
5235
  tags:
5059
5236
  - authorization
5060
5237
  /authorization/roles/{slug}/permissions:
5061
5238
  put:
5062
- operationId: AuthorizationRolePermissionsController_setPermissions
5063
- summary: Set permissions for an environment role
5064
5239
  description: Replace all permissions on an environment role with the provided list.
5240
+ operationId: AuthorizationRolePermissionsController_setPermissions
5065
5241
  parameters:
5066
5242
  - name: slug
5067
5243
  required: true
@@ -5210,14 +5386,14 @@ paths:
5210
5386
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
5211
5387
  required:
5212
5388
  - message
5389
+ summary: Set permissions for an environment role
5213
5390
  tags:
5214
5391
  - authorization
5215
5392
  post:
5216
- operationId: AuthorizationRolePermissionsController_addPermission
5217
- summary: Add a permission to an environment role
5218
5393
  description: >-
5219
5394
  Add a single permission to an environment role. If the permission is
5220
5395
  already assigned to the role, this operation has no effect.
5396
+ operationId: AuthorizationRolePermissionsController_addPermission
5221
5397
  parameters:
5222
5398
  - name: slug
5223
5399
  required: true
@@ -5363,15 +5539,15 @@ paths:
5363
5539
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
5364
5540
  required:
5365
5541
  - message
5542
+ summary: Add a permission to an environment role
5366
5543
  tags:
5367
5544
  - authorization
5368
5545
  /connect/applications:
5369
5546
  get:
5370
- operationId: ApplicationsController_list
5371
- summary: List Connect Applications
5372
5547
  description: >-
5373
5548
  List all Connect Applications in the current environment with optional
5374
5549
  filtering.
5550
+ operationId: ApplicationsController_list
5375
5551
  parameters:
5376
5552
  - name: before
5377
5553
  required: false
@@ -5418,13 +5594,7 @@ paths:
5418
5594
  reversed cursor semantics where `before` fetches older records and
5419
5595
  `after` fetches newer records). Defaults to descending.
5420
5596
  schema:
5421
- default: desc
5422
- example: desc
5423
- enum:
5424
- - normal
5425
- - desc
5426
- - asc
5427
- type: string
5597
+ $ref: '#/components/schemas/PaginationOrder'
5428
5598
  - name: organization_id
5429
5599
  required: false
5430
5600
  in: query
@@ -5452,14 +5622,14 @@ paths:
5452
5622
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
5453
5623
  required:
5454
5624
  - message
5625
+ summary: List Connect Applications
5455
5626
  tags:
5456
5627
  - applications
5457
5628
  post:
5458
- operationId: ApplicationsController_create
5459
- summary: Create a Connect Application
5460
5629
  description: >-
5461
5630
  Create a new Connect Application. Supports both OAuth and
5462
5631
  Machine-to-Machine (M2M) application types.
5632
+ operationId: ApplicationsController_create
5463
5633
  parameters: []
5464
5634
  requestBody:
5465
5635
  required: true
@@ -5502,13 +5672,13 @@ paths:
5502
5672
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
5503
5673
  required:
5504
5674
  - message
5675
+ summary: Create a Connect Application
5505
5676
  tags:
5506
5677
  - applications
5507
5678
  /connect/applications/{id}:
5508
5679
  get:
5509
- operationId: ApplicationsController_find
5510
- summary: Get a Connect Application
5511
5680
  description: Retrieve details for a specific Connect Application by ID or client ID.
5681
+ operationId: ApplicationsController_find
5512
5682
  parameters:
5513
5683
  - name: id
5514
5684
  required: true
@@ -5537,15 +5707,15 @@ paths:
5537
5707
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
5538
5708
  required:
5539
5709
  - message
5710
+ summary: Get a Connect Application
5540
5711
  tags:
5541
5712
  - applications
5542
5713
  put:
5543
- operationId: ApplicationsController_update
5544
- summary: Update a Connect Application
5545
5714
  description: >-
5546
5715
  Update an existing Connect Application. For OAuth applications, you can
5547
5716
  update redirect URIs. For all applications, you can update the name,
5548
5717
  description, and scopes.
5718
+ operationId: ApplicationsController_update
5549
5719
  parameters:
5550
5720
  - name: id
5551
5721
  required: true
@@ -5593,12 +5763,12 @@ paths:
5593
5763
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
5594
5764
  required:
5595
5765
  - message
5766
+ summary: Update a Connect Application
5596
5767
  tags:
5597
5768
  - applications
5598
5769
  delete:
5599
- operationId: ApplicationsController_delete
5600
- summary: Delete a Connect Application
5601
5770
  description: Delete an existing Connect Application.
5771
+ operationId: ApplicationsController_delete
5602
5772
  parameters:
5603
5773
  - name: id
5604
5774
  required: true
@@ -5623,13 +5793,13 @@ paths:
5623
5793
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
5624
5794
  required:
5625
5795
  - message
5796
+ summary: Delete a Connect Application
5626
5797
  tags:
5627
5798
  - applications
5628
5799
  /connect/applications/{id}/client_secrets:
5629
5800
  get:
5630
- operationId: ApplicationCredentialsController_list
5631
- summary: List Client Secrets for a Connect Application
5632
5801
  description: List all client secrets associated with a Connect Application.
5802
+ operationId: ApplicationCredentialsController_list
5633
5803
  parameters:
5634
5804
  - name: id
5635
5805
  required: true
@@ -5700,12 +5870,12 @@ paths:
5700
5870
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
5701
5871
  required:
5702
5872
  - message
5873
+ summary: List Client Secrets for a Connect Application
5703
5874
  tags:
5704
5875
  - application.client-secrets
5705
5876
  post:
5706
- operationId: ApplicationCredentialsController_create
5707
- summary: Create a new client secret for a Connect Application
5708
5877
  description: Create new secrets for a Connect Application.
5878
+ operationId: ApplicationCredentialsController_create
5709
5879
  parameters:
5710
5880
  - name: id
5711
5881
  required: true
@@ -5753,13 +5923,13 @@ paths:
5753
5923
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
5754
5924
  required:
5755
5925
  - message
5926
+ summary: Create a new client secret for a Connect Application
5756
5927
  tags:
5757
5928
  - application.client-secrets
5758
5929
  /connect/client_secrets/{id}:
5759
5930
  delete:
5760
- operationId: ApplicationCredentialsController_delete
5761
- summary: Delete a Client Secret
5762
5931
  description: Delete (revoke) an existing client secret.
5932
+ operationId: ApplicationCredentialsController_delete
5763
5933
  parameters:
5764
5934
  - name: id
5765
5935
  required: true
@@ -5784,15 +5954,15 @@ paths:
5784
5954
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
5785
5955
  required:
5786
5956
  - message
5957
+ summary: Delete a Client Secret
5787
5958
  tags:
5788
5959
  - application.client-secrets
5789
5960
  /connections:
5790
- get:
5791
- operationId: ConnectionsController_list
5792
- summary: List Connections
5961
+ get:
5793
5962
  description: >-
5794
5963
  Get a list of all of your existing connections matching the criteria
5795
5964
  specified.
5965
+ operationId: ConnectionsController_list
5796
5966
  parameters:
5797
5967
  - name: before
5798
5968
  required: false
@@ -5829,13 +5999,7 @@ paths:
5829
5999
  in: query
5830
6000
  description: Order the results by the creation time.
5831
6001
  schema:
5832
- default: desc
5833
- example: desc
5834
- enum:
5835
- - normal
5836
- - desc
5837
- - asc
5838
- type: string
6002
+ $ref: '#/components/schemas/PaginationOrder'
5839
6003
  - name: connection_type
5840
6004
  required: false
5841
6005
  in: query
@@ -5946,13 +6110,13 @@ paths:
5946
6110
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
5947
6111
  required:
5948
6112
  - message
6113
+ summary: List Connections
5949
6114
  tags:
5950
6115
  - connections
5951
6116
  /connections/{id}:
5952
6117
  get:
5953
- operationId: ConnectionsController_find
5954
- summary: Get a Connection
5955
6118
  description: Get the details of an existing connection.
6119
+ operationId: ConnectionsController_find
5956
6120
  parameters:
5957
6121
  - name: id
5958
6122
  required: true
@@ -5994,12 +6158,12 @@ paths:
5994
6158
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
5995
6159
  required:
5996
6160
  - message
6161
+ summary: Get a Connection
5997
6162
  tags:
5998
6163
  - connections
5999
6164
  delete:
6000
- operationId: ConnectionsController_delete
6001
- summary: Delete a Connection
6002
6165
  description: Permanently deletes an existing connection. It cannot be undone.
6166
+ operationId: ConnectionsController_delete
6003
6167
  parameters:
6004
6168
  - name: id
6005
6169
  required: true
@@ -6039,16 +6203,16 @@ paths:
6039
6203
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
6040
6204
  required:
6041
6205
  - message
6206
+ summary: Delete a Connection
6042
6207
  tags:
6043
6208
  - connections
6044
6209
  /data-integrations/{slug}/authorize:
6045
6210
  post:
6046
- operationId: DataIntegrationsController_getDataIntegrationAuthorizeUrl
6047
- summary: Get authorization URL
6048
6211
  description: >-
6049
6212
  Generates an OAuth authorization URL to initiate the connection flow for
6050
6213
  a user. Redirect the user to the returned URL to begin the OAuth flow
6051
6214
  with the third-party provider.
6215
+ operationId: DataIntegrationsController_getDataIntegrationAuthorizeUrl
6052
6216
  parameters:
6053
6217
  - name: slug
6054
6218
  required: true
@@ -6131,16 +6295,16 @@ paths:
6131
6295
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
6132
6296
  required:
6133
6297
  - message
6298
+ summary: Get authorization URL
6134
6299
  tags:
6135
6300
  - pipes
6136
6301
  /data-integrations/{slug}/token:
6137
6302
  post:
6138
- operationId: DataIntegrationsController_getUserlandUserToken
6139
- summary: Get an access token for a connected account
6140
6303
  description: >-
6141
6304
  Fetches a valid OAuth access token for a user's connected account.
6142
6305
  WorkOS automatically handles token refresh, ensuring you always receive
6143
6306
  a valid, non-expired token.
6307
+ operationId: DataIntegrationsController_getUserlandUserToken
6144
6308
  parameters:
6145
6309
  - name: slug
6146
6310
  required: true
@@ -6204,15 +6368,15 @@ paths:
6204
6368
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
6205
6369
  required:
6206
6370
  - message
6371
+ summary: Get an access token for a connected account
6207
6372
  tags:
6208
6373
  - pipes
6209
6374
  /directories:
6210
6375
  get:
6211
- operationId: DirectoriesController_list
6212
- summary: List Directories
6213
6376
  description: >-
6214
6377
  Get a list of all of your existing directories matching the criteria
6215
6378
  specified.
6379
+ operationId: DirectoriesController_list
6216
6380
  parameters:
6217
6381
  - name: before
6218
6382
  required: false
@@ -6249,13 +6413,7 @@ paths:
6249
6413
  in: query
6250
6414
  description: Order the results by the creation time.
6251
6415
  schema:
6252
- default: desc
6253
- example: desc
6254
- enum:
6255
- - normal
6256
- - desc
6257
- - asc
6258
- type: string
6416
+ $ref: '#/components/schemas/PaginationOrder'
6259
6417
  - name: organization_id
6260
6418
  required: false
6261
6419
  in: query
@@ -6311,13 +6469,13 @@ paths:
6311
6469
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
6312
6470
  required:
6313
6471
  - message
6472
+ summary: List Directories
6314
6473
  tags:
6315
6474
  - directories
6316
6475
  /directories/{id}:
6317
6476
  get:
6318
- operationId: DirectoriesController_find
6319
- summary: Get a Directory
6320
6477
  description: Get the details of an existing directory.
6478
+ operationId: DirectoriesController_find
6321
6479
  parameters:
6322
6480
  - name: id
6323
6481
  required: true
@@ -6359,12 +6517,12 @@ paths:
6359
6517
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
6360
6518
  required:
6361
6519
  - message
6520
+ summary: Get a Directory
6362
6521
  tags:
6363
6522
  - directories
6364
6523
  delete:
6365
- operationId: DirectoriesController_deleteDirectory
6366
- summary: Delete a Directory
6367
6524
  description: Permanently deletes an existing directory. It cannot be undone.
6525
+ operationId: DirectoriesController_deleteDirectory
6368
6526
  parameters:
6369
6527
  - name: id
6370
6528
  required: true
@@ -6394,15 +6552,15 @@ paths:
6394
6552
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
6395
6553
  required:
6396
6554
  - message
6555
+ summary: Delete a Directory
6397
6556
  tags:
6398
6557
  - directories
6399
6558
  /directory_groups:
6400
6559
  get:
6401
- operationId: DirectoryGroupsController_list
6402
- summary: List Directory Groups
6403
6560
  description: >-
6404
6561
  Get a list of all of existing directory groups matching the criteria
6405
6562
  specified.
6563
+ operationId: DirectoryGroupsController_list
6406
6564
  parameters:
6407
6565
  - name: before
6408
6566
  required: false
@@ -6449,13 +6607,7 @@ paths:
6449
6607
  reversed cursor semantics where `before` fetches older records and
6450
6608
  `after` fetches newer records). Defaults to descending.
6451
6609
  schema:
6452
- default: desc
6453
- example: desc
6454
- enum:
6455
- - normal
6456
- - desc
6457
- - asc
6458
- type: string
6610
+ $ref: '#/components/schemas/PaginationOrder'
6459
6611
  - name: directory
6460
6612
  required: false
6461
6613
  in: query
@@ -6520,13 +6672,13 @@ paths:
6520
6672
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
6521
6673
  required:
6522
6674
  - message
6675
+ summary: List Directory Groups
6523
6676
  tags:
6524
6677
  - directory-groups
6525
6678
  /directory_groups/{id}:
6526
6679
  get:
6527
- operationId: DirectoryGroupsController_find
6528
- summary: Get a Directory Group
6529
6680
  description: Get the details of an existing Directory Group.
6681
+ operationId: DirectoryGroupsController_find
6530
6682
  parameters:
6531
6683
  - name: id
6532
6684
  required: true
@@ -6568,15 +6720,15 @@ paths:
6568
6720
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
6569
6721
  required:
6570
6722
  - message
6723
+ summary: Get a Directory Group
6571
6724
  tags:
6572
6725
  - directory-groups
6573
6726
  /directory_users:
6574
6727
  get:
6575
- operationId: DirectoryUsersController_list
6576
- summary: List Directory Users
6577
6728
  description: >-
6578
6729
  Get a list of all of existing Directory Users matching the criteria
6579
6730
  specified.
6731
+ operationId: DirectoryUsersController_list
6580
6732
  parameters:
6581
6733
  - name: before
6582
6734
  required: false
@@ -6623,13 +6775,7 @@ paths:
6623
6775
  reversed cursor semantics where `before` fetches older records and
6624
6776
  `after` fetches newer records). Defaults to descending.
6625
6777
  schema:
6626
- default: desc
6627
- example: desc
6628
- enum:
6629
- - normal
6630
- - desc
6631
- - asc
6632
- type: string
6778
+ $ref: '#/components/schemas/PaginationOrder'
6633
6779
  - name: directory
6634
6780
  required: false
6635
6781
  in: query
@@ -6701,13 +6847,13 @@ paths:
6701
6847
  schema:
6702
6848
  type: string
6703
6849
  const: Ratelimited
6850
+ summary: List Directory Users
6704
6851
  tags:
6705
6852
  - directory-users
6706
6853
  /directory_users/{id}:
6707
6854
  get:
6708
- operationId: DirectoryUsersController_find
6709
- summary: Get a Directory User
6710
6855
  description: Get the details of an existing Directory User.
6856
+ operationId: DirectoryUsersController_find
6711
6857
  parameters:
6712
6858
  - name: id
6713
6859
  required: true
@@ -6749,13 +6895,13 @@ paths:
6749
6895
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
6750
6896
  required:
6751
6897
  - message
6898
+ summary: Get a Directory User
6752
6899
  tags:
6753
6900
  - directory-users
6754
6901
  /events:
6755
6902
  get:
6756
- operationId: EventsController_list
6757
- summary: List events
6758
6903
  description: List events for the current environment.
6904
+ operationId: EventsController_list
6759
6905
  parameters:
6760
6906
  - name: before
6761
6907
  required: false
@@ -6802,13 +6948,7 @@ paths:
6802
6948
  reversed cursor semantics where `before` fetches older records and
6803
6949
  `after` fetches newer records). Defaults to descending.
6804
6950
  schema:
6805
- default: desc
6806
- example: desc
6807
- enum:
6808
- - normal
6809
- - desc
6810
- - asc
6811
- type: string
6951
+ $ref: '#/components/schemas/PaginationOrder'
6812
6952
  - name: events
6813
6953
  required: false
6814
6954
  in: query
@@ -6898,15 +7038,15 @@ paths:
6898
7038
  required:
6899
7039
  - errors
6900
7040
  - message
7041
+ summary: List events
6901
7042
  tags:
6902
7043
  - events
6903
7044
  /feature-flags:
6904
7045
  get:
6905
- operationId: FeatureFlagsController_list
6906
- summary: List feature flags
6907
7046
  description: >-
6908
7047
  Get a list of all of your existing feature flags matching the criteria
6909
7048
  specified.
7049
+ operationId: FeatureFlagsController_list
6910
7050
  parameters:
6911
7051
  - name: before
6912
7052
  required: false
@@ -6943,13 +7083,7 @@ paths:
6943
7083
  in: query
6944
7084
  description: Order the results by the creation time.
6945
7085
  schema:
6946
- default: desc
6947
- example: desc
6948
- enum:
6949
- - normal
6950
- - desc
6951
- - asc
6952
- type: string
7086
+ $ref: '#/components/schemas/PaginationOrder'
6953
7087
  responses:
6954
7088
  '200':
6955
7089
  description: OK
@@ -7002,13 +7136,13 @@ paths:
7002
7136
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7003
7137
  required:
7004
7138
  - message
7139
+ summary: List feature flags
7005
7140
  tags:
7006
7141
  - feature-flags
7007
7142
  /feature-flags/{slug}:
7008
7143
  get:
7009
- operationId: FeatureFlagsController_findBySlug
7010
- summary: Get a feature flag
7011
7144
  description: Get the details of an existing feature flag by its slug.
7145
+ operationId: FeatureFlagsController_findBySlug
7012
7146
  parameters:
7013
7147
  - name: slug
7014
7148
  required: true
@@ -7037,13 +7171,13 @@ paths:
7037
7171
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7038
7172
  required:
7039
7173
  - message
7174
+ summary: Get a feature flag
7040
7175
  tags:
7041
7176
  - feature-flags
7042
7177
  /feature-flags/{slug}/disable:
7043
7178
  put:
7044
- operationId: FeatureFlagsController_disableFlag
7045
- summary: Disable a feature flag
7046
7179
  description: Disables a feature flag in the current environment.
7180
+ operationId: FeatureFlagsController_disableFlag
7047
7181
  parameters:
7048
7182
  - name: slug
7049
7183
  required: true
@@ -7167,13 +7301,13 @@ paths:
7167
7301
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7168
7302
  required:
7169
7303
  - message
7304
+ summary: Disable a feature flag
7170
7305
  tags:
7171
7306
  - feature-flags
7172
7307
  /feature-flags/{slug}/enable:
7173
7308
  put:
7174
- operationId: FeatureFlagsController_enableFlag
7175
- summary: Enable a feature flag
7176
7309
  description: Enables a feature flag in the current environment.
7310
+ operationId: FeatureFlagsController_enableFlag
7177
7311
  parameters:
7178
7312
  - name: slug
7179
7313
  required: true
@@ -7297,15 +7431,15 @@ paths:
7297
7431
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7298
7432
  required:
7299
7433
  - message
7434
+ summary: Enable a feature flag
7300
7435
  tags:
7301
7436
  - feature-flags
7302
7437
  /feature-flags/{slug}/targets/{resourceId}:
7303
7438
  post:
7304
- operationId: FlagTargetsController_createTarget
7305
- summary: Add a feature flag target
7306
7439
  description: >-
7307
7440
  Enables a feature flag for a specific target in the current environment.
7308
7441
  Currently, supported targets include users and organizations.
7442
+ operationId: FlagTargetsController_createTarget
7309
7443
  parameters:
7310
7444
  - name: resourceId
7311
7445
  required: true
@@ -7369,15 +7503,15 @@ paths:
7369
7503
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7370
7504
  required:
7371
7505
  - message
7506
+ summary: Add a feature flag target
7372
7507
  tags:
7373
7508
  - feature-flags.targets
7374
7509
  delete:
7375
- operationId: FlagTargetsController_deleteTarget
7376
- summary: Remove a feature flag target
7377
7510
  description: >-
7378
7511
  Removes a target from the feature flag's target list in the current
7379
7512
  environment. Currently, supported targets include users and
7380
7513
  organizations.
7514
+ operationId: FlagTargetsController_deleteTarget
7381
7515
  parameters:
7382
7516
  - name: resourceId
7383
7517
  required: true
@@ -7441,13 +7575,13 @@ paths:
7441
7575
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7442
7576
  required:
7443
7577
  - message
7578
+ summary: Remove a feature flag target
7444
7579
  tags:
7445
7580
  - feature-flags.targets
7446
7581
  /organization_domains:
7447
7582
  post:
7448
- operationId: OrganizationDomainsController_create
7449
- summary: Create an Organization Domain
7450
7583
  description: Creates a new Organization Domain.
7584
+ operationId: OrganizationDomainsController_create
7451
7585
  parameters: []
7452
7586
  requestBody:
7453
7587
  required: true
@@ -7540,13 +7674,13 @@ paths:
7540
7674
  required:
7541
7675
  - code
7542
7676
  - message
7677
+ summary: Create an Organization Domain
7543
7678
  tags:
7544
7679
  - organization-domains
7545
7680
  /organization_domains/{id}:
7546
7681
  get:
7547
- operationId: OrganizationDomainsController_get
7548
- summary: Get an Organization Domain
7549
7682
  description: Get the details of an existing organization domain.
7683
+ operationId: OrganizationDomainsController_get
7550
7684
  parameters:
7551
7685
  - name: id
7552
7686
  required: true
@@ -7575,12 +7709,12 @@ paths:
7575
7709
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7576
7710
  required:
7577
7711
  - message
7712
+ summary: Get an Organization Domain
7578
7713
  tags:
7579
7714
  - organization-domains
7580
7715
  delete:
7581
- operationId: OrganizationDomainsController_delete
7582
- summary: Delete an Organization Domain
7583
7716
  description: Permanently deletes an organization domain. It cannot be undone.
7717
+ operationId: OrganizationDomainsController_delete
7584
7718
  parameters:
7585
7719
  - name: id
7586
7720
  required: true
@@ -7605,13 +7739,13 @@ paths:
7605
7739
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7606
7740
  required:
7607
7741
  - message
7742
+ summary: Delete an Organization Domain
7608
7743
  tags:
7609
7744
  - organization-domains
7610
7745
  /organization_domains/{id}/verify:
7611
7746
  post:
7612
- operationId: OrganizationDomainsController_verify
7613
- summary: Verify an Organization Domain
7614
7747
  description: Initiates verification process for an Organization Domain.
7748
+ operationId: OrganizationDomainsController_verify
7615
7749
  parameters:
7616
7750
  - name: id
7617
7751
  required: true
@@ -7645,15 +7779,15 @@ paths:
7645
7779
  required:
7646
7780
  - code
7647
7781
  - message
7782
+ summary: Verify an Organization Domain
7648
7783
  tags:
7649
7784
  - organization-domains
7650
7785
  /organizations:
7651
7786
  get:
7652
- operationId: OrganizationsController_list
7653
- summary: List Organizations
7654
7787
  description: >-
7655
7788
  Get a list of all of your existing organizations matching the criteria
7656
7789
  specified.
7790
+ operationId: OrganizationsController_list
7657
7791
  parameters:
7658
7792
  - name: before
7659
7793
  required: false
@@ -7700,13 +7834,7 @@ paths:
7700
7834
  reversed cursor semantics where `before` fetches older records and
7701
7835
  `after` fetches newer records). Defaults to descending.
7702
7836
  schema:
7703
- default: desc
7704
- example: desc
7705
- enum:
7706
- - normal
7707
- - desc
7708
- - asc
7709
- type: string
7837
+ $ref: '#/components/schemas/PaginationOrder'
7710
7838
  - name: domains
7711
7839
  required: false
7712
7840
  in: query
@@ -7750,12 +7878,12 @@ paths:
7750
7878
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7751
7879
  required:
7752
7880
  - message
7881
+ summary: List Organizations
7753
7882
  tags:
7754
7883
  - organizations
7755
7884
  post:
7756
- operationId: OrganizationsController_create
7757
- summary: Create an Organization
7758
7885
  description: Creates a new organization in the current environment.
7886
+ operationId: OrganizationsController_create
7759
7887
  parameters: []
7760
7888
  requestBody:
7761
7889
  required: true
@@ -7852,15 +7980,15 @@ paths:
7852
7980
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7853
7981
  required:
7854
7982
  - message
7983
+ summary: Create an Organization
7855
7984
  tags:
7856
7985
  - organizations
7857
7986
  /organizations/external_id/{external_id}:
7858
7987
  get:
7859
- operationId: OrganizationsController_getByExternalId
7860
- summary: Get an Organization by External ID
7861
7988
  description: >-
7862
7989
  Get the details of an existing organization by an [external
7863
7990
  identifier](/authkit/metadata/external-identifiers).
7991
+ operationId: OrganizationsController_getByExternalId
7864
7992
  parameters:
7865
7993
  - name: external_id
7866
7994
  required: true
@@ -7889,13 +8017,13 @@ paths:
7889
8017
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7890
8018
  required:
7891
8019
  - message
8020
+ summary: Get an Organization by External ID
7892
8021
  tags:
7893
8022
  - organizations
7894
8023
  /organizations/{id}:
7895
8024
  get:
7896
- operationId: OrganizationsController_find
7897
- summary: Get an Organization
7898
8025
  description: Get the details of an existing organization.
8026
+ operationId: OrganizationsController_find
7899
8027
  parameters:
7900
8028
  - name: id
7901
8029
  required: true
@@ -7924,12 +8052,12 @@ paths:
7924
8052
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7925
8053
  required:
7926
8054
  - message
8055
+ summary: Get an Organization
7927
8056
  tags:
7928
8057
  - organizations
7929
8058
  put:
7930
- operationId: OrganizationsController_updateOrganization
7931
- summary: Update an Organization
7932
8059
  description: Updates an organization in the current environment.
8060
+ operationId: OrganizationsController_updateOrganization
7933
8061
  parameters:
7934
8062
  - name: id
7935
8063
  required: true
@@ -8073,14 +8201,14 @@ paths:
8073
8201
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
8074
8202
  required:
8075
8203
  - message
8204
+ summary: Update an Organization
8076
8205
  tags:
8077
8206
  - organizations
8078
8207
  delete:
8079
- operationId: OrganizationsController_deleteOrganization
8080
- summary: Delete an Organization
8081
8208
  description: >-
8082
8209
  Permanently deletes an organization in the current environment. It
8083
8210
  cannot be undone.
8211
+ operationId: OrganizationsController_deleteOrganization
8084
8212
  parameters:
8085
8213
  - name: id
8086
8214
  required: true
@@ -8107,15 +8235,15 @@ paths:
8107
8235
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
8108
8236
  required:
8109
8237
  - message
8238
+ summary: Delete an Organization
8110
8239
  tags:
8111
8240
  - organizations
8112
8241
  /organizations/{id}/audit_log_configuration:
8113
8242
  get:
8114
- operationId: OrganizationsController_getAuditLogConfiguration
8115
- summary: Get Audit Log Configuration
8116
8243
  description: >-
8117
8244
  Get the unified view of audit log trail and stream configuration for an
8118
8245
  organization.
8246
+ operationId: OrganizationsController_getAuditLogConfiguration
8119
8247
  parameters:
8120
8248
  - name: id
8121
8249
  required: true
@@ -8144,13 +8272,13 @@ paths:
8144
8272
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
8145
8273
  required:
8146
8274
  - message
8275
+ summary: Get Audit Log Configuration
8147
8276
  tags:
8148
8277
  - organizations
8149
8278
  /organizations/{id}/audit_logs_retention:
8150
8279
  get:
8151
- operationId: AuditLogsRetentionController_auditLogsRetention
8152
- summary: Get Retention
8153
8280
  description: Get the configured event retention period for the given Organization.
8281
+ operationId: AuditLogsRetentionController_auditLogsRetention
8154
8282
  parameters:
8155
8283
  - name: id
8156
8284
  required: true
@@ -8179,12 +8307,12 @@ paths:
8179
8307
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
8180
8308
  required:
8181
8309
  - message
8310
+ summary: Get Retention
8182
8311
  tags:
8183
8312
  - audit-logs
8184
8313
  put:
8185
- operationId: AuditLogsRetentionController_updateAuditLogsRetention
8186
- summary: Set Retention
8187
8314
  description: Set the event retention period for the given Organization.
8315
+ operationId: AuditLogsRetentionController_updateAuditLogsRetention
8188
8316
  parameters:
8189
8317
  - name: id
8190
8318
  required: true
@@ -8232,13 +8360,13 @@ paths:
8232
8360
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
8233
8361
  required:
8234
8362
  - message
8363
+ summary: Set Retention
8235
8364
  tags:
8236
8365
  - audit-logs
8237
8366
  /organizations/{organizationId}/api_keys:
8238
8367
  get:
8239
- operationId: OrganizationApiKeysController_list
8240
- summary: List API keys for an organization
8241
8368
  description: Get a list of all API keys for an organization.
8369
+ operationId: OrganizationApiKeysController_list
8242
8370
  parameters:
8243
8371
  - name: organizationId
8244
8372
  required: true
@@ -8282,13 +8410,7 @@ paths:
8282
8410
  in: query
8283
8411
  description: Order the results by the creation time.
8284
8412
  schema:
8285
- default: desc
8286
- example: desc
8287
- enum:
8288
- - normal
8289
- - desc
8290
- - asc
8291
- type: string
8413
+ $ref: '#/components/schemas/PaginationOrder'
8292
8414
  responses:
8293
8415
  '200':
8294
8416
  description: OK
@@ -8309,12 +8431,12 @@ paths:
8309
8431
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
8310
8432
  required:
8311
8433
  - message
8434
+ summary: List API keys for an organization
8312
8435
  tags:
8313
8436
  - organizations.api_keys
8314
8437
  post:
8315
- operationId: OrganizationApiKeysController_create
8316
- summary: Create an API key for an organization
8317
8438
  description: Create a new API key for an organization.
8439
+ operationId: OrganizationApiKeysController_create
8318
8440
  parameters:
8319
8441
  - name: organizationId
8320
8442
  required: true
@@ -8380,13 +8502,13 @@ paths:
8380
8502
  required:
8381
8503
  - message
8382
8504
  - errors
8505
+ summary: Create an API key for an organization
8383
8506
  tags:
8384
8507
  - organizations.api_keys
8385
8508
  /organizations/{organizationId}/feature-flags:
8386
8509
  get:
8387
- operationId: OrganizationFeatureFlagsController_list
8388
- summary: List enabled feature flags for an organization
8389
8510
  description: Get a list of all enabled feature flags for an organization.
8511
+ operationId: OrganizationFeatureFlagsController_list
8390
8512
  parameters:
8391
8513
  - name: organizationId
8392
8514
  required: true
@@ -8430,13 +8552,7 @@ paths:
8430
8552
  in: query
8431
8553
  description: Order the results by the creation time.
8432
8554
  schema:
8433
- default: desc
8434
- example: desc
8435
- enum:
8436
- - normal
8437
- - desc
8438
- - asc
8439
- type: string
8555
+ $ref: '#/components/schemas/PaginationOrder'
8440
8556
  responses:
8441
8557
  '200':
8442
8558
  description: OK
@@ -8457,13 +8573,13 @@ paths:
8457
8573
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
8458
8574
  required:
8459
8575
  - message
8576
+ summary: List enabled feature flags for an organization
8460
8577
  tags:
8461
8578
  - organizations.feature-flags
8462
8579
  /organizations/{organizationId}/groups:
8463
8580
  post:
8464
- operationId: GroupsController_create
8465
- summary: Create a group
8466
8581
  description: Create a new group within an organization.
8582
+ operationId: GroupsController_create
8467
8583
  parameters:
8468
8584
  - name: organizationId
8469
8585
  required: true
@@ -8543,13 +8659,13 @@ paths:
8543
8659
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
8544
8660
  required:
8545
8661
  - message
8662
+ summary: Create a group
8546
8663
  tags:
8547
8664
  - groups
8548
8665
  x-feature-flag: user-groups-enabled
8549
8666
  get:
8550
- operationId: GroupsController_list
8551
- summary: List groups
8552
8667
  description: Get a paginated list of groups within an organization.
8668
+ operationId: GroupsController_list
8553
8669
  parameters:
8554
8670
  - name: organizationId
8555
8671
  required: true
@@ -8603,13 +8719,7 @@ paths:
8603
8719
  reversed cursor semantics where `before` fetches older records and
8604
8720
  `after` fetches newer records). Defaults to descending.
8605
8721
  schema:
8606
- default: desc
8607
- example: desc
8608
- enum:
8609
- - normal
8610
- - desc
8611
- - asc
8612
- type: string
8722
+ $ref: '#/components/schemas/PaginationOrder'
8613
8723
  responses:
8614
8724
  '200':
8615
8725
  description: OK
@@ -8643,14 +8753,14 @@ paths:
8643
8753
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
8644
8754
  required:
8645
8755
  - message
8756
+ summary: List groups
8646
8757
  tags:
8647
8758
  - groups
8648
8759
  x-feature-flag: user-groups-enabled
8649
8760
  /organizations/{organizationId}/groups/{groupId}:
8650
8761
  get:
8651
- operationId: GroupsController_get
8652
- summary: Get a group
8653
8762
  description: Retrieve a group by its ID within an organization.
8763
+ operationId: GroupsController_get
8654
8764
  parameters:
8655
8765
  - name: organizationId
8656
8766
  required: true
@@ -8699,15 +8809,15 @@ paths:
8699
8809
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
8700
8810
  required:
8701
8811
  - message
8812
+ summary: Get a group
8702
8813
  tags:
8703
8814
  - groups
8704
8815
  x-feature-flag: user-groups-enabled
8705
8816
  patch:
8706
- operationId: GroupsController_update
8707
- summary: Update a group
8708
8817
  description: >-
8709
8818
  Update an existing group. Only the fields provided in the request body
8710
8819
  will be updated.
8820
+ operationId: GroupsController_update
8711
8821
  parameters:
8712
8822
  - name: organizationId
8713
8823
  required: true
@@ -8794,13 +8904,13 @@ paths:
8794
8904
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
8795
8905
  required:
8796
8906
  - message
8907
+ summary: Update a group
8797
8908
  tags:
8798
8909
  - groups
8799
8910
  x-feature-flag: user-groups-enabled
8800
8911
  delete:
8801
- operationId: GroupsController_delete
8802
- summary: Delete a group
8803
8912
  description: Delete a group from an organization.
8913
+ operationId: GroupsController_delete
8804
8914
  parameters:
8805
8915
  - name: organizationId
8806
8916
  required: true
@@ -8845,14 +8955,14 @@ paths:
8845
8955
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
8846
8956
  required:
8847
8957
  - message
8958
+ summary: Delete a group
8848
8959
  tags:
8849
8960
  - groups
8850
8961
  x-feature-flag: user-groups-enabled
8851
8962
  /organizations/{organizationId}/groups/{groupId}/organization-memberships:
8852
8963
  post:
8853
- operationId: GroupMembershipsController_addMember
8854
- summary: Add a member to a Group
8855
8964
  description: Add an organization membership to a group.
8965
+ operationId: GroupMembershipsController_addMember
8856
8966
  parameters:
8857
8967
  - name: organizationId
8858
8968
  required: true
@@ -8881,6 +8991,25 @@ paths:
8881
8991
  application/json:
8882
8992
  schema:
8883
8993
  $ref: '#/components/schemas/Group'
8994
+ '400':
8995
+ description: Bad Request
8996
+ content:
8997
+ application/json:
8998
+ schema:
8999
+ type: object
9000
+ properties:
9001
+ code:
9002
+ type: string
9003
+ description: The error code identifying the type of error.
9004
+ example: group_membership_limit_exceeded
9005
+ const: group_membership_limit_exceeded
9006
+ message:
9007
+ type: string
9008
+ description: A human-readable description of the error.
9009
+ example: Request could not be processed.
9010
+ required:
9011
+ - code
9012
+ - message
8884
9013
  '403':
8885
9014
  description: Forbidden
8886
9015
  content:
@@ -8920,13 +9049,13 @@ paths:
8920
9049
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
8921
9050
  required:
8922
9051
  - message
9052
+ summary: Add a member to a Group
8923
9053
  tags:
8924
9054
  - groups
8925
9055
  x-feature-flag: user-groups-enabled
8926
9056
  get:
8927
- operationId: GroupMembershipsController_listMembers
8928
- summary: List Group members
8929
9057
  description: Get a list of organization memberships in a group.
9058
+ operationId: GroupMembershipsController_listMembers
8930
9059
  parameters:
8931
9060
  - name: organizationId
8932
9061
  required: true
@@ -8987,13 +9116,7 @@ paths:
8987
9116
  reversed cursor semantics where `before` fetches older records and
8988
9117
  `after` fetches newer records). Defaults to descending.
8989
9118
  schema:
8990
- default: desc
8991
- example: desc
8992
- enum:
8993
- - normal
8994
- - desc
8995
- - asc
8996
- type: string
9119
+ $ref: '#/components/schemas/PaginationOrder'
8997
9120
  responses:
8998
9121
  '200':
8999
9122
  description: OK
@@ -9028,14 +9151,14 @@ paths:
9028
9151
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
9029
9152
  required:
9030
9153
  - message
9154
+ summary: List Group members
9031
9155
  tags:
9032
9156
  - groups
9033
9157
  x-feature-flag: user-groups-enabled
9034
9158
  /organizations/{organizationId}/groups/{groupId}/organization-memberships/{omId}:
9035
9159
  delete:
9036
- operationId: GroupMembershipsController_removeMember
9037
- summary: Remove a member from a Group
9038
9160
  description: Remove an organization membership from a group.
9161
+ operationId: GroupMembershipsController_removeMember
9039
9162
  parameters:
9040
9163
  - name: organizationId
9041
9164
  required: true
@@ -9087,14 +9210,14 @@ paths:
9087
9210
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
9088
9211
  required:
9089
9212
  - message
9213
+ summary: Remove a member from a Group
9090
9214
  tags:
9091
9215
  - groups
9092
9216
  x-feature-flag: user-groups-enabled
9093
9217
  /portal/generate_link:
9094
9218
  post:
9095
- operationId: PortalSessionsController_create
9096
- summary: Generate a Portal Link
9097
9219
  description: Generate a Portal Link scoped to an Organization.
9220
+ operationId: PortalSessionsController_create
9098
9221
  parameters: []
9099
9222
  requestBody:
9100
9223
  required: true
@@ -9161,13 +9284,13 @@ paths:
9161
9284
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
9162
9285
  required:
9163
9286
  - message
9287
+ summary: Generate a Portal Link
9164
9288
  tags:
9165
9289
  - admin-portal
9166
9290
  /radar/attempts:
9167
9291
  post:
9168
- operationId: RadarStandaloneController_assess
9169
- summary: Create an attempt
9170
9292
  description: Assess a request for risk using the Radar engine and receive a verdict.
9293
+ operationId: RadarStandaloneController_assess
9171
9294
  parameters: []
9172
9295
  requestBody:
9173
9296
  required: true
@@ -9249,16 +9372,16 @@ paths:
9249
9372
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
9250
9373
  required:
9251
9374
  - message
9375
+ summary: Create an attempt
9252
9376
  tags:
9253
9377
  - radar
9254
9378
  /radar/attempts/{id}:
9255
9379
  put:
9256
- operationId: RadarStandaloneController_updateRadarAttempt
9257
- summary: Update a Radar attempt
9258
9380
  description: >-
9259
9381
  You may optionally inform Radar that an authentication attempt or
9260
9382
  challenge was successful using this endpoint. Some Radar controls depend
9261
9383
  on tracking recent successful attempts, such as impossible travel.
9384
+ operationId: RadarStandaloneController_updateRadarAttempt
9262
9385
  parameters:
9263
9386
  - name: id
9264
9387
  required: true
@@ -9315,13 +9438,13 @@ paths:
9315
9438
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
9316
9439
  required:
9317
9440
  - message
9441
+ summary: Update a Radar attempt
9318
9442
  tags:
9319
9443
  - radar
9320
9444
  /radar/lists/{type}/{action}:
9321
9445
  post:
9322
- operationId: RadarStandaloneController_updateRadarList
9323
- summary: Add an entry to a Radar list
9324
9446
  description: Add an entry to a Radar list.
9447
+ operationId: RadarStandaloneController_updateRadarList
9325
9448
  parameters:
9326
9449
  - name: type
9327
9450
  required: true
@@ -9390,12 +9513,12 @@ paths:
9390
9513
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
9391
9514
  required:
9392
9515
  - message
9516
+ summary: Add an entry to a Radar list
9393
9517
  tags:
9394
9518
  - radar
9395
9519
  delete:
9396
- operationId: RadarStandaloneController_deleteRadarListEntry
9397
- summary: Remove an entry from a Radar list
9398
9520
  description: Remove an entry from a Radar list.
9521
+ operationId: RadarStandaloneController_deleteRadarListEntry
9399
9522
  parameters:
9400
9523
  - name: type
9401
9524
  required: true
@@ -9468,14 +9591,13 @@ paths:
9468
9591
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
9469
9592
  required:
9470
9593
  - message
9594
+ summary: Remove an entry from a Radar list
9471
9595
  tags:
9472
9596
  - radar
9473
9597
  /sso/authorize:
9474
9598
  get:
9475
- operationId: SsoController_authorize
9476
- summary: Initiate SSO
9477
9599
  description: Initiates the single sign-on flow.
9478
- security: []
9600
+ operationId: SsoController_authorize
9479
9601
  parameters:
9480
9602
  - name: provider_scopes
9481
9603
  required: false
@@ -9633,8 +9755,8 @@ paths:
9633
9755
  description: >-
9634
9756
  Can be used to pre-fill the username/email address field of the IdP
9635
9757
  sign-in page for the user, if you know their username ahead of time.
9636
- Currently supported for OAuth, OpenID Connect, Okta, and Entra ID
9637
- connections.
9758
+ Currently supported for OAuth, OpenID Connect, Okta, Entra ID, and
9759
+ custom SAML connections.
9638
9760
  - name: nonce
9639
9761
  required: false
9640
9762
  in: query
@@ -9658,15 +9780,16 @@ paths:
9658
9780
  type: string
9659
9781
  format: uri
9660
9782
  description: ''
9783
+ security: []
9784
+ summary: Initiate SSO
9661
9785
  tags:
9662
9786
  - sso
9663
9787
  /sso/jwks/{clientId}:
9664
9788
  get:
9665
- operationId: SsoController_jsonWebKeySet
9666
- summary: Get JWKS
9667
9789
  description: >-
9668
9790
  Returns the JSON Web Key Set (JWKS) containing the public keys used for
9669
9791
  verifying access tokens.
9792
+ operationId: SsoController_jsonWebKeySet
9670
9793
  parameters:
9671
9794
  - name: clientId
9672
9795
  required: true
@@ -9698,14 +9821,11 @@ paths:
9698
9821
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
9699
9822
  required:
9700
9823
  - message
9824
+ summary: Get JWKS
9701
9825
  tags:
9702
9826
  - user-management.session-tokens
9703
9827
  /sso/logout:
9704
9828
  get:
9705
- operationId: SsoController_logout
9706
- summary: Logout Redirect
9707
- servers:
9708
- - url: https://auth.workos.com
9709
9829
  description: >-
9710
9830
  Logout allows to sign out a user from your application by triggering the
9711
9831
  identity provider sign out flow. This `GET` endpoint should be a
@@ -9716,7 +9836,7 @@ paths:
9716
9836
  Before redirecting to this endpoint, you need to generate a short-lived
9717
9837
  logout token using the [Logout
9718
9838
  Authorize](/reference/sso/logout/authorize) endpoint.
9719
- security: []
9839
+ operationId: SsoController_logout
9720
9840
  parameters:
9721
9841
  - name: token
9722
9842
  required: true
@@ -9751,18 +9871,19 @@ paths:
9751
9871
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
9752
9872
  required:
9753
9873
  - message
9874
+ security: []
9875
+ servers:
9876
+ - url: https://auth.workos.com
9877
+ summary: Logout Redirect
9754
9878
  tags:
9755
9879
  - sso
9756
9880
  /sso/logout/authorize:
9757
9881
  post:
9758
- operationId: SsoController_logoutAuthorize
9759
- summary: Logout Authorize
9760
- servers:
9761
- - url: https://auth.workos.com
9762
9882
  description: >-
9763
9883
  You should call this endpoint from your server to generate a logout
9764
9884
  token which is required for the [Logout Redirect](/reference/sso/logout)
9765
9885
  endpoint.
9886
+ operationId: SsoController_logoutAuthorize
9766
9887
  parameters: []
9767
9888
  requestBody:
9768
9889
  required: true
@@ -9831,14 +9952,13 @@ paths:
9831
9952
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
9832
9953
  required:
9833
9954
  - message
9955
+ servers:
9956
+ - url: https://auth.workos.com
9957
+ summary: Logout Authorize
9834
9958
  tags:
9835
9959
  - sso
9836
9960
  /sso/profile:
9837
9961
  get:
9838
- operationId: SsoController_getProfile
9839
- summary: Get a User Profile
9840
- security:
9841
- - access_token: []
9842
9962
  description: >-
9843
9963
  Exchange an access token for a user's [Profile](/reference/sso/profile).
9844
9964
  Because this profile is returned in the [Get a Profile and Token
@@ -9846,6 +9966,7 @@ paths:
9846
9966
  usually does not need to call this endpoint. It is available for any
9847
9967
  authentication flows that require an additional endpoint to retrieve a
9848
9968
  user's profile.
9969
+ operationId: SsoController_getProfile
9849
9970
  parameters: []
9850
9971
  responses:
9851
9972
  '200':
@@ -9879,17 +10000,18 @@ paths:
9879
10000
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
9880
10001
  required:
9881
10002
  - message
10003
+ security:
10004
+ - access_token: []
10005
+ summary: Get a User Profile
9882
10006
  tags:
9883
10007
  - sso
9884
10008
  /sso/token:
9885
10009
  post:
9886
- operationId: SsoController_token
9887
- summary: Get a Profile and Token
9888
10010
  description: >-
9889
10011
  Get an access token along with the user
9890
10012
  [Profile](/reference/sso/profile) using the code passed to your
9891
10013
  [Redirect URI](/reference/sso/get-authorization-url/redirect-uri).
9892
- security: []
10014
+ operationId: SsoController_token
9893
10015
  parameters:
9894
10016
  - name: client_id
9895
10017
  required: true
@@ -10015,15 +10137,16 @@ paths:
10015
10137
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
10016
10138
  required:
10017
10139
  - message
10140
+ security: []
10141
+ summary: Get a Profile and Token
10018
10142
  tags:
10019
10143
  - sso
10020
10144
  /user_management/authenticate:
10021
10145
  post:
10022
- operationId: UserlandSessionsController_authenticate
10023
- summary: Authenticate
10024
10146
  description: >-
10025
10147
  Authenticate a user with a specified [authentication
10026
10148
  method](/reference/authkit/authentication).
10149
+ operationId: UserlandSessionsController_authenticate[0]
10027
10150
  parameters: []
10028
10151
  requestBody:
10029
10152
  required: true
@@ -11052,16 +11175,15 @@ paths:
11052
11175
  required:
11053
11176
  - code
11054
11177
  - message
11178
+ summary: Authenticate
11055
11179
  tags:
11056
11180
  - user-management.authentication
11057
11181
  /user_management/authorize:
11058
11182
  get:
11059
- operationId: UserlandSsoController_authorize
11060
- summary: Get an authorization URL
11061
11183
  description: >-
11062
11184
  Generates an OAuth 2.0 authorization URL to authenticate a user with
11063
11185
  AuthKit or SSO.
11064
- security: []
11186
+ operationId: UserlandSsoController_authorize
11065
11187
  parameters:
11066
11188
  - name: code_challenge_method
11067
11189
  required: false
@@ -11239,19 +11361,19 @@ paths:
11239
11361
  type: string
11240
11362
  format: uri
11241
11363
  description: ''
11364
+ security: []
11365
+ summary: Get an authorization URL
11242
11366
  tags:
11243
11367
  - user-management.authentication
11244
11368
  /user_management/authorize/device:
11245
11369
  post:
11246
- operationId: UserlandSsoController_deviceAuthorization
11247
- summary: Get device authorization URL
11248
11370
  description: >-
11249
11371
  Initiates the CLI Auth flow by requesting a device code and verification
11250
11372
  URLs. This endpoint implements the OAuth 2.0 Device Authorization Flow
11251
11373
  ([RFC 8628](https://datatracker.ietf.org/doc/html/rfc8628)) and is
11252
11374
  designed for command-line applications or other devices with limited
11253
11375
  input capabilities.
11254
- security: []
11376
+ operationId: UserlandSsoController_deviceAuthorization
11255
11377
  parameters: []
11256
11378
  requestBody:
11257
11379
  required: true
@@ -11309,15 +11431,16 @@ paths:
11309
11431
  required:
11310
11432
  - error
11311
11433
  - error_description
11434
+ security: []
11435
+ summary: Get device authorization URL
11312
11436
  tags:
11313
11437
  - user-management.authentication
11314
11438
  /user_management/cors_origins:
11315
11439
  post:
11316
- operationId: CorsOriginsController_createCorsOrigin
11317
- summary: Create a CORS origin
11318
11440
  description: >-
11319
11441
  Creates a new CORS origin for the current environment. CORS origins
11320
11442
  allow browser-based applications to make requests to the WorkOS API.
11443
+ operationId: CorsOriginsController_createCorsOrigin
11321
11444
  parameters: []
11322
11445
  requestBody:
11323
11446
  required: true
@@ -11370,15 +11493,15 @@ paths:
11370
11493
  example: origin
11371
11494
  constraints:
11372
11495
  type: object
11496
+ summary: Create a CORS origin
11373
11497
  tags:
11374
11498
  - user-management.cors-origins
11375
11499
  /user_management/email_verification/{id}:
11376
11500
  get:
11377
- operationId: UserlandUsersController_getEmailVerification
11378
- summary: Get an email verification code
11379
11501
  description: >-
11380
11502
  Get the details of an existing email verification code that can be used
11381
11503
  to send an email to a user for verification.
11504
+ operationId: UserlandUsersController_getEmailVerification
11382
11505
  parameters:
11383
11506
  - name: id
11384
11507
  required: true
@@ -11407,13 +11530,13 @@ paths:
11407
11530
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11408
11531
  required:
11409
11532
  - message
11533
+ summary: Get an email verification code
11410
11534
  tags:
11411
11535
  - user-management.users
11412
11536
  /user_management/invitations:
11413
11537
  get:
11414
- operationId: UserlandUserInvitesController_list
11415
- summary: List invitations
11416
11538
  description: Get a list of all of invitations matching the criteria specified.
11539
+ operationId: UserlandUserInvitesController_list
11417
11540
  parameters:
11418
11541
  - name: before
11419
11542
  required: false
@@ -11460,13 +11583,7 @@ paths:
11460
11583
  reversed cursor semantics where `before` fetches older records and
11461
11584
  `after` fetches newer records). Defaults to descending.
11462
11585
  schema:
11463
- default: desc
11464
- example: desc
11465
- enum:
11466
- - normal
11467
- - desc
11468
- - asc
11469
- type: string
11586
+ $ref: '#/components/schemas/PaginationOrder'
11470
11587
  - name: organization_id
11471
11588
  required: false
11472
11589
  in: query
@@ -11481,6 +11598,7 @@ paths:
11481
11598
  in: query
11482
11599
  description: The email address of the recipient.
11483
11600
  schema:
11601
+ format: email
11484
11602
  example: marcelina.davis@example.com
11485
11603
  type: string
11486
11604
  responses:
@@ -11549,12 +11667,12 @@ paths:
11549
11667
  required:
11550
11668
  - code
11551
11669
  - message
11670
+ summary: List invitations
11552
11671
  tags:
11553
11672
  - user-management.invitations
11554
11673
  post:
11555
- operationId: UserlandUserInvitesController_create
11556
- summary: Send an invitation
11557
11674
  description: Sends an invitation email to the recipient.
11675
+ operationId: UserlandUserInvitesController_create
11558
11676
  parameters: []
11559
11677
  requestBody:
11560
11678
  required: true
@@ -11705,14 +11823,14 @@ paths:
11705
11823
  required:
11706
11824
  - code
11707
11825
  - message
11826
+ summary: Send an invitation
11708
11827
  tags:
11709
11828
  - user-management.invitations
11710
11829
  x-sends-email: true
11711
11830
  /user_management/invitations/by_token/{token}:
11712
11831
  get:
11713
- operationId: UserlandUserInvitesController_getByToken
11714
- summary: Find an invitation by token
11715
11832
  description: Retrieve an existing invitation using the token.
11833
+ operationId: UserlandUserInvitesController_getByToken
11716
11834
  parameters:
11717
11835
  - name: token
11718
11836
  required: true
@@ -11741,13 +11859,13 @@ paths:
11741
11859
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11742
11860
  required:
11743
11861
  - message
11862
+ summary: Find an invitation by token
11744
11863
  tags:
11745
11864
  - user-management.invitations
11746
11865
  /user_management/invitations/{id}:
11747
11866
  get:
11748
- operationId: UserlandUserInvitesController_get
11749
- summary: Get an invitation
11750
11867
  description: Get the details of an existing invitation.
11868
+ operationId: UserlandUserInvitesController_get
11751
11869
  parameters:
11752
11870
  - name: id
11753
11871
  required: true
@@ -11776,15 +11894,15 @@ paths:
11776
11894
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11777
11895
  required:
11778
11896
  - message
11897
+ summary: Get an invitation
11779
11898
  tags:
11780
11899
  - user-management.invitations
11781
11900
  /user_management/invitations/{id}/accept:
11782
11901
  post:
11783
- operationId: UserlandUserInvitesController_accept
11784
- summary: Accept an invitation
11785
11902
  description: >-
11786
11903
  Accepts an invitation and, if linked to an organization, activates the
11787
11904
  user's membership in that organization.
11905
+ operationId: UserlandUserInvitesController_accept
11788
11906
  parameters:
11789
11907
  - name: id
11790
11908
  required: true
@@ -11946,15 +12064,15 @@ paths:
11946
12064
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11947
12065
  required:
11948
12066
  - message
12067
+ summary: Accept an invitation
11949
12068
  tags:
11950
12069
  - user-management.invitations
11951
12070
  /user_management/invitations/{id}/resend:
11952
12071
  post:
11953
- operationId: UserlandUserInvitesController_resend
11954
- summary: Resend an invitation
11955
12072
  description: >-
11956
12073
  Resends an invitation email to the recipient. The invitation must be in
11957
12074
  a pending state.
12075
+ operationId: UserlandUserInvitesController_resend
11958
12076
  parameters:
11959
12077
  - name: id
11960
12078
  required: true
@@ -12050,14 +12168,14 @@ paths:
12050
12168
  required:
12051
12169
  - code
12052
12170
  - message
12171
+ summary: Resend an invitation
12053
12172
  tags:
12054
12173
  - user-management.invitations
12055
12174
  x-sends-email: true
12056
12175
  /user_management/invitations/{id}/revoke:
12057
12176
  post:
12058
- operationId: UserlandUserInvitesController_revoke
12059
- summary: Revoke an invitation
12060
12177
  description: Revokes an existing invitation.
12178
+ operationId: UserlandUserInvitesController_revoke
12061
12179
  parameters:
12062
12180
  - name: id
12063
12181
  required: true
@@ -12205,13 +12323,13 @@ paths:
12205
12323
  required:
12206
12324
  - code
12207
12325
  - message
12326
+ summary: Revoke an invitation
12208
12327
  tags:
12209
12328
  - user-management.invitations
12210
12329
  /user_management/jwt_template:
12211
12330
  get:
12212
- operationId: JwtTemplatesController_getJwtTemplate
12213
- summary: Get JWT template
12214
12331
  description: Get the JWT template for the current environment.
12332
+ operationId: JwtTemplatesController_getJwtTemplate
12215
12333
  parameters: []
12216
12334
  responses:
12217
12335
  '200':
@@ -12233,12 +12351,12 @@ paths:
12233
12351
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
12234
12352
  required:
12235
12353
  - message
12354
+ summary: Get JWT template
12236
12355
  tags:
12237
12356
  - user-management.jwt-template
12238
12357
  put:
12239
- operationId: JwtTemplatesController_updateJwtTemplate
12240
- summary: Update JWT template
12241
12358
  description: Update the JWT template for the current environment.
12359
+ operationId: JwtTemplatesController_updateJwtTemplate
12242
12360
  parameters: []
12243
12361
  requestBody:
12244
12362
  required: true
@@ -12272,17 +12390,17 @@ paths:
12272
12390
  required:
12273
12391
  - code
12274
12392
  - message
12393
+ summary: Update JWT template
12275
12394
  tags:
12276
12395
  - user-management.jwt-template
12277
12396
  /user_management/magic_auth:
12278
12397
  post:
12279
- operationId: UserlandMagicAuthController_sendMagicAuthCodeAndReturn
12280
- summary: Create a Magic Auth code
12281
12398
  description: >-
12282
12399
  Creates a one-time authentication code that can be sent to the user's
12283
12400
  email address. The code expires in 10 minutes. To verify the code,
12284
12401
  [authenticate the user with Magic
12285
12402
  Auth](/reference/authkit/authentication/magic-auth).
12403
+ operationId: UserlandMagicAuthController_sendMagicAuthCodeAndReturn
12286
12404
  parameters: []
12287
12405
  requestBody:
12288
12406
  required: true
@@ -12379,17 +12497,17 @@ paths:
12379
12497
  required:
12380
12498
  - code
12381
12499
  - message
12500
+ summary: Create a Magic Auth code
12382
12501
  tags:
12383
12502
  - user-management.magic-auth
12384
12503
  x-sends-email: true
12385
12504
  /user_management/magic_auth/{id}:
12386
12505
  get:
12387
- operationId: UserlandMagicAuthController_get
12388
- summary: Get Magic Auth code details
12389
12506
  description: >-
12390
12507
  Get the details of an existing [Magic
12391
12508
  Auth](/reference/authkit/magic-auth) code that can be used to send an
12392
12509
  email to a user for authentication.
12510
+ operationId: UserlandMagicAuthController_get
12393
12511
  parameters:
12394
12512
  - name: id
12395
12513
  required: true
@@ -12418,17 +12536,17 @@ paths:
12418
12536
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
12419
12537
  required:
12420
12538
  - message
12539
+ summary: Get Magic Auth code details
12421
12540
  tags:
12422
12541
  - user-management.magic-auth
12423
12542
  /user_management/organization_memberships:
12424
12543
  get:
12425
- operationId: UserlandUserOrganizationMembershipsController_list
12426
- summary: List organization memberships
12427
12544
  description: >-
12428
12545
  Get a list of all organization memberships matching the criteria
12429
12546
  specified. At least one of `user_id` or `organization_id` must be
12430
12547
  provided. By default only active memberships are returned. Use the
12431
12548
  `statuses` parameter to filter by other statuses.
12549
+ operationId: UserlandUserOrganizationMembershipsController_list
12432
12550
  parameters:
12433
12551
  - name: before
12434
12552
  required: false
@@ -12475,13 +12593,7 @@ paths:
12475
12593
  reversed cursor semantics where `before` fetches older records and
12476
12594
  `after` fetches newer records). Defaults to descending.
12477
12595
  schema:
12478
- default: desc
12479
- example: desc
12480
- enum:
12481
- - normal
12482
- - desc
12483
- - asc
12484
- type: string
12596
+ $ref: '#/components/schemas/PaginationOrder'
12485
12597
  - name: organization_id
12486
12598
  required: false
12487
12599
  in: query
@@ -12624,11 +12736,10 @@ paths:
12624
12736
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
12625
12737
  required:
12626
12738
  - message
12739
+ summary: List organization memberships
12627
12740
  tags:
12628
12741
  - user-management.organization-membership
12629
12742
  post:
12630
- operationId: UserlandUserOrganizationMembershipsController_create
12631
- summary: Create an organization membership
12632
12743
  description: >-
12633
12744
  Creates a new `active` organization membership for the given
12634
12745
  organization and user.
@@ -12637,6 +12748,7 @@ paths:
12637
12748
  Calling this API with an organization and user that match an `inactive`
12638
12749
  organization membership will activate the membership with the specified
12639
12750
  role(s).
12751
+ operationId: UserlandUserOrganizationMembershipsController_create
12640
12752
  parameters: []
12641
12753
  requestBody:
12642
12754
  required: true
@@ -12836,6 +12948,7 @@ paths:
12836
12948
  - message
12837
12949
  - code
12838
12950
  - role_slug
12951
+ summary: Create an organization membership
12839
12952
  tags:
12840
12953
  - user-management.organization-membership
12841
12954
  x-mutually-exclusive-body-groups: &ref_9
@@ -12848,9 +12961,8 @@ paths:
12848
12961
  - role_slugs
12849
12962
  /user_management/organization_memberships/{id}:
12850
12963
  get:
12851
- operationId: UserlandUserOrganizationMembershipsController_get
12852
- summary: Get an organization membership
12853
12964
  description: Get the details of an existing organization membership.
12965
+ operationId: UserlandUserOrganizationMembershipsController_get
12854
12966
  parameters:
12855
12967
  - name: id
12856
12968
  required: true
@@ -12879,14 +12991,14 @@ paths:
12879
12991
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
12880
12992
  required:
12881
12993
  - message
12994
+ summary: Get an organization membership
12882
12995
  tags:
12883
12996
  - user-management.organization-membership
12884
12997
  delete:
12885
- operationId: UserlandUserOrganizationMembershipsController_delete
12886
- summary: Delete an organization membership
12887
12998
  description: >-
12888
12999
  Permanently deletes an existing organization membership. It cannot be
12889
13000
  undone.
13001
+ operationId: UserlandUserOrganizationMembershipsController_delete
12890
13002
  parameters:
12891
13003
  - name: id
12892
13004
  required: true
@@ -12911,12 +13023,12 @@ paths:
12911
13023
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
12912
13024
  required:
12913
13025
  - message
13026
+ summary: Delete an organization membership
12914
13027
  tags:
12915
13028
  - user-management.organization-membership
12916
13029
  put:
12917
- operationId: UserlandUserOrganizationMembershipsController_update
12918
- summary: Update an organization membership
12919
13030
  description: Update the details of an existing organization membership.
13031
+ operationId: UserlandUserOrganizationMembershipsController_update
12920
13032
  parameters:
12921
13033
  - name: id
12922
13034
  required: true
@@ -13020,6 +13132,7 @@ paths:
13020
13132
  - message
13021
13133
  - code
13022
13134
  - role_slug
13135
+ summary: Update an organization membership
13023
13136
  tags:
13024
13137
  - user-management.organization-membership
13025
13138
  x-mutually-exclusive-body-groups: &ref_10
@@ -13032,8 +13145,6 @@ paths:
13032
13145
  - role_slugs
13033
13146
  /user_management/organization_memberships/{id}/deactivate:
13034
13147
  put:
13035
- operationId: UserlandUserOrganizationMembershipsController_deactivate
13036
- summary: Deactivate an organization membership
13037
13148
  description: >-
13038
13149
  Deactivates an `active` organization membership. Emits an
13039
13150
  [organization_membership.updated](/events/organization-membership) event
@@ -13051,6 +13162,7 @@ paths:
13051
13162
  See the [membership management
13052
13163
  documentation](/authkit/users-organizations/organizations/membership-management)
13053
13164
  for additional details.
13165
+ operationId: UserlandUserOrganizationMembershipsController_deactivate
13054
13166
  parameters:
13055
13167
  - name: id
13056
13168
  required: true
@@ -13201,12 +13313,11 @@ paths:
13201
13313
  required:
13202
13314
  - code
13203
13315
  - message
13316
+ summary: Deactivate an organization membership
13204
13317
  tags:
13205
13318
  - user-management.organization-membership
13206
13319
  /user_management/organization_memberships/{id}/reactivate:
13207
13320
  put:
13208
- operationId: UserlandUserOrganizationMembershipsController_reactivate
13209
- summary: Reactivate an organization membership
13210
13321
  description: >-
13211
13322
  Reactivates an `inactive` organization membership, retaining the
13212
13323
  pre-existing role(s). Emits an
@@ -13224,6 +13335,7 @@ paths:
13224
13335
  See the [membership management
13225
13336
  documentation](/authkit/users-organizations/organizations/membership-management)
13226
13337
  for additional details.
13338
+ operationId: UserlandUserOrganizationMembershipsController_reactivate
13227
13339
  parameters:
13228
13340
  - name: id
13229
13341
  required: true
@@ -13292,13 +13404,13 @@ paths:
13292
13404
  required:
13293
13405
  - code
13294
13406
  - message
13407
+ summary: Reactivate an organization membership
13295
13408
  tags:
13296
13409
  - user-management.organization-membership
13297
13410
  /user_management/organization_memberships/{omId}/groups:
13298
13411
  get:
13299
- operationId: OrganizationMembershipGroupsController_listGroups
13300
- summary: List groups
13301
13412
  description: Get a list of groups that an organization membership belongs to.
13413
+ operationId: OrganizationMembershipGroupsController_listGroups
13302
13414
  parameters:
13303
13415
  - name: omId
13304
13416
  required: true
@@ -13352,13 +13464,7 @@ paths:
13352
13464
  reversed cursor semantics where `before` fetches older records and
13353
13465
  `after` fetches newer records). Defaults to descending.
13354
13466
  schema:
13355
- default: desc
13356
- example: desc
13357
- enum:
13358
- - normal
13359
- - desc
13360
- - asc
13361
- type: string
13467
+ $ref: '#/components/schemas/PaginationOrder'
13362
13468
  responses:
13363
13469
  '200':
13364
13470
  description: OK
@@ -13379,14 +13485,14 @@ paths:
13379
13485
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
13380
13486
  required:
13381
13487
  - message
13488
+ summary: List groups
13382
13489
  tags:
13383
13490
  - user-management.organization-membership.groups
13384
13491
  x-feature-flag: user-groups-enabled
13385
13492
  /user_management/password_reset:
13386
13493
  post:
13387
- operationId: UserlandUsersController_createPasswordResetToken
13388
- summary: Create a password reset token
13389
13494
  description: Creates a one-time token that can be used to reset a user's password.
13495
+ operationId: UserlandUsersController_createPasswordResetToken
13390
13496
  parameters: []
13391
13497
  requestBody:
13392
13498
  required: true
@@ -13486,17 +13592,17 @@ paths:
13486
13592
  required:
13487
13593
  - code
13488
13594
  - message
13595
+ summary: Create a password reset token
13489
13596
  tags:
13490
13597
  - user-management.users
13491
13598
  x-sends-email: true
13492
13599
  /user_management/password_reset/confirm:
13493
13600
  post:
13494
- operationId: UserlandUsersController_resetPassword
13495
- summary: Reset the password
13496
13601
  description: >-
13497
13602
  Sets a new password using the `token` query parameter from the link that
13498
13603
  the user received. Successfully resetting the password will verify a
13499
13604
  user's email, if it hasn't been verified yet.
13605
+ operationId: UserlandUsersController_resetPassword[0]
13500
13606
  parameters: []
13501
13607
  requestBody:
13502
13608
  required: true
@@ -13601,15 +13707,15 @@ paths:
13601
13707
  required:
13602
13708
  - code
13603
13709
  - message
13710
+ summary: Reset the password
13604
13711
  tags:
13605
13712
  - user-management.users
13606
13713
  /user_management/password_reset/{id}:
13607
13714
  get:
13608
- operationId: UserlandUsersController_getPasswordReset
13609
- summary: Get a password reset token
13610
13715
  description: >-
13611
13716
  Get the details of an existing password reset token that can be used to
13612
13717
  reset a user's password.
13718
+ operationId: UserlandUsersController_getPasswordReset
13613
13719
  parameters:
13614
13720
  - name: id
13615
13721
  required: true
@@ -13638,13 +13744,13 @@ paths:
13638
13744
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
13639
13745
  required:
13640
13746
  - message
13747
+ summary: Get a password reset token
13641
13748
  tags:
13642
13749
  - user-management.users
13643
13750
  /user_management/redirect_uris:
13644
13751
  post:
13645
- operationId: RedirectUrisController_create
13646
- summary: Create a redirect URI
13647
13752
  description: Creates a new redirect URI for an environment.
13753
+ operationId: RedirectUrisController_create
13648
13754
  parameters: []
13649
13755
  requestBody:
13650
13756
  required: true
@@ -13711,14 +13817,13 @@ paths:
13711
13817
  - message
13712
13818
  example:
13713
13819
  message: Redirect URI 'https://example.com/callback' already exists.
13820
+ summary: Create a redirect URI
13714
13821
  tags:
13715
13822
  - user-management.redirect-uris
13716
13823
  /user_management/sessions/logout:
13717
13824
  get:
13718
- operationId: UserlandSessionsController_logout
13719
- summary: Logout
13720
- security: []
13721
13825
  description: Logout a user from the current [session](/reference/authkit/session).
13826
+ operationId: UserlandSessionsController_logout
13722
13827
  parameters:
13723
13828
  - name: session_id
13724
13829
  required: true
@@ -13764,13 +13869,14 @@ paths:
13764
13869
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
13765
13870
  required:
13766
13871
  - message
13872
+ security: []
13873
+ summary: Logout
13767
13874
  tags:
13768
13875
  - user-management.authentication
13769
13876
  /user_management/sessions/revoke:
13770
13877
  post:
13771
- operationId: UserlandSessionsController_revokeSession
13772
- summary: Revoke Session
13773
13878
  description: Revoke a [user session](/reference/authkit/session).
13879
+ operationId: UserlandSessionsController_revokeSession
13774
13880
  parameters: []
13775
13881
  requestBody:
13776
13882
  required: true
@@ -13794,15 +13900,15 @@ paths:
13794
13900
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
13795
13901
  required:
13796
13902
  - message
13903
+ summary: Revoke Session
13797
13904
  tags:
13798
13905
  - user-management.authentication
13799
13906
  /user_management/users:
13800
13907
  get:
13801
- operationId: UserlandUsersController_list
13802
- summary: List users
13803
13908
  description: >-
13804
13909
  Get a list of all of your existing users matching the criteria
13805
13910
  specified.
13911
+ operationId: UserlandUsersController_list[0]
13806
13912
  parameters:
13807
13913
  - name: before
13808
13914
  required: false
@@ -13849,13 +13955,7 @@ paths:
13849
13955
  reversed cursor semantics where `before` fetches older records and
13850
13956
  `after` fetches newer records). Defaults to descending.
13851
13957
  schema:
13852
- default: desc
13853
- example: desc
13854
- enum:
13855
- - normal
13856
- - desc
13857
- - asc
13858
- type: string
13958
+ $ref: '#/components/schemas/PaginationOrder'
13859
13959
  - name: organization
13860
13960
  required: false
13861
13961
  in: query
@@ -13900,12 +14000,12 @@ paths:
13900
14000
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
13901
14001
  required:
13902
14002
  - message
14003
+ summary: List users
13903
14004
  tags:
13904
14005
  - user-management.users
13905
14006
  post:
13906
- operationId: UserlandUsersController_create
13907
- summary: Create a user
13908
14007
  description: Create a new user in the current environment.
14008
+ operationId: UserlandUsersController_create[0]
13909
14009
  parameters: []
13910
14010
  requestBody:
13911
14011
  required: true
@@ -14082,6 +14182,7 @@ paths:
14082
14182
  required:
14083
14183
  - code
14084
14184
  - message
14185
+ summary: Create a user
14085
14186
  tags:
14086
14187
  - user-management.users
14087
14188
  x-mutually-exclusive-body-groups: &ref_11
@@ -14095,11 +14196,10 @@ paths:
14095
14196
  - password_hash_type
14096
14197
  /user_management/users/external_id/{external_id}:
14097
14198
  get:
14098
- operationId: UserlandUsersController_getByExternalId
14099
- summary: Get a user by external ID
14100
14199
  description: >-
14101
14200
  Get the details of an existing user by an [external
14102
14201
  identifier](/authkit/metadata/external-identifiers).
14202
+ operationId: UserlandUsersController_getByExternalId
14103
14203
  parameters:
14104
14204
  - name: external_id
14105
14205
  required: true
@@ -14128,15 +14228,15 @@ paths:
14128
14228
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
14129
14229
  required:
14130
14230
  - message
14231
+ summary: Get a user by external ID
14131
14232
  tags:
14132
14233
  - user-management.users
14133
14234
  /user_management/users/{id}:
14134
14235
  put:
14135
- operationId: UserlandUsersController_update
14136
- summary: Update a user
14137
14236
  description: >-
14138
14237
  Updates properties of a user. The omitted properties will be left
14139
14238
  unchanged.
14239
+ operationId: UserlandUsersController_update[0]
14140
14240
  parameters:
14141
14241
  - name: id
14142
14242
  required: true
@@ -14357,6 +14457,7 @@ paths:
14357
14457
  required:
14358
14458
  - code
14359
14459
  - message
14460
+ summary: Update a user
14360
14461
  tags:
14361
14462
  - user-management.users
14362
14463
  x-mutually-exclusive-body-groups: &ref_14
@@ -14369,9 +14470,8 @@ paths:
14369
14470
  - password_hash
14370
14471
  - password_hash_type
14371
14472
  get:
14372
- operationId: UserlandUsersController_get
14373
- summary: Get a user
14374
14473
  description: Get the details of an existing user.
14474
+ operationId: UserlandUsersController_get[0]
14375
14475
  parameters:
14376
14476
  - name: id
14377
14477
  required: true
@@ -14400,14 +14500,14 @@ paths:
14400
14500
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
14401
14501
  required:
14402
14502
  - message
14503
+ summary: Get a user
14403
14504
  tags:
14404
14505
  - user-management.users
14405
14506
  delete:
14406
- operationId: UserlandUsersController_delete
14407
- summary: Delete a user
14408
14507
  description: >-
14409
14508
  Permanently deletes a user in the current environment. It cannot be
14410
14509
  undone.
14510
+ operationId: UserlandUsersController_delete[0]
14411
14511
  parameters:
14412
14512
  - name: id
14413
14513
  required: true
@@ -14432,13 +14532,13 @@ paths:
14432
14532
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
14433
14533
  required:
14434
14534
  - message
14535
+ summary: Delete a user
14435
14536
  tags:
14436
14537
  - user-management.users
14437
14538
  /user_management/users/{id}/email_change/confirm:
14438
14539
  post:
14439
- operationId: UserlandUsersController_confirmEmailChange
14440
- summary: Confirm email change
14441
14540
  description: Confirms an email change using the one-time code received by the user.
14541
+ operationId: UserlandUsersController_confirmEmailChange
14442
14542
  parameters:
14443
14543
  - name: id
14444
14544
  required: true
@@ -14723,15 +14823,15 @@ paths:
14723
14823
  required:
14724
14824
  - code
14725
14825
  - message
14826
+ summary: Confirm email change
14726
14827
  tags:
14727
14828
  - user-management.users
14728
14829
  /user_management/users/{id}/email_change/send:
14729
14830
  post:
14730
- operationId: UserlandUsersController_sendEmailChange
14731
- summary: Send email change code
14732
14831
  description: >-
14733
14832
  Sends an email that contains a one-time code used to change a user's
14734
14833
  email address.
14834
+ operationId: UserlandUsersController_sendEmailChange
14735
14835
  parameters:
14736
14836
  - name: id
14737
14837
  required: true
@@ -14867,14 +14967,14 @@ paths:
14867
14967
  required:
14868
14968
  - code
14869
14969
  - message
14970
+ summary: Send email change code
14870
14971
  tags:
14871
14972
  - user-management.users
14872
14973
  x-sends-email: true
14873
14974
  /user_management/users/{id}/email_verification/confirm:
14874
14975
  post:
14875
- operationId: UserlandUsersController_emailVerification
14876
- summary: Verify email
14877
14976
  description: Verifies an email address using the one-time code received by the user.
14977
+ operationId: UserlandUsersController_emailVerification[0]
14878
14978
  parameters:
14879
14979
  - name: id
14880
14980
  required: true
@@ -14990,15 +15090,15 @@ paths:
14990
15090
  required:
14991
15091
  - code
14992
15092
  - message
15093
+ summary: Verify email
14993
15094
  tags:
14994
15095
  - user-management.users
14995
15096
  /user_management/users/{id}/email_verification/send:
14996
15097
  post:
14997
- operationId: UserlandUsersController_sendVerificationEmail
14998
- summary: Send verification email
14999
15098
  description: >-
15000
15099
  Sends an email that contains a one-time code used to verify a user’s
15001
15100
  email address.
15101
+ operationId: UserlandUsersController_sendVerificationEmail[0]
15002
15102
  parameters:
15003
15103
  - name: id
15004
15104
  required: true
@@ -15065,17 +15165,17 @@ paths:
15065
15165
  required:
15066
15166
  - code
15067
15167
  - message
15168
+ summary: Send verification email
15068
15169
  tags:
15069
15170
  - user-management.users
15070
15171
  /user_management/users/{id}/identities:
15071
15172
  get:
15072
- operationId: UserlandUserIdentitiesController_get
15073
- summary: Get user identities
15074
15173
  description: >-
15075
15174
  Get a list of identities associated with the user. A user can have
15076
15175
  multiple associated identities after going through [identity
15077
15176
  linking](/authkit/identity-linking). Currently only OAuth identities are
15078
15177
  supported. More provider types may be added in the future.
15178
+ operationId: UserlandUserIdentitiesController_get
15079
15179
  parameters:
15080
15180
  - name: id
15081
15181
  required: true
@@ -15140,13 +15240,13 @@ paths:
15140
15240
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
15141
15241
  required:
15142
15242
  - message
15243
+ summary: Get user identities
15143
15244
  tags:
15144
15245
  - user-management.users
15145
15246
  /user_management/users/{id}/sessions:
15146
15247
  get:
15147
- operationId: UserlandUserSessionsController_list
15148
- summary: List sessions
15149
15248
  description: Get a list of all active sessions for a specific user.
15249
+ operationId: UserlandUserSessionsController_list
15150
15250
  parameters:
15151
15251
  - name: id
15152
15252
  required: true
@@ -15200,13 +15300,7 @@ paths:
15200
15300
  reversed cursor semantics where `before` fetches older records and
15201
15301
  `after` fetches newer records). Defaults to descending.
15202
15302
  schema:
15203
- default: desc
15204
- example: desc
15205
- enum:
15206
- - normal
15207
- - desc
15208
- - asc
15209
- type: string
15303
+ $ref: '#/components/schemas/PaginationOrder'
15210
15304
  responses:
15211
15305
  '200':
15212
15306
  description: OK
@@ -15407,13 +15501,13 @@ paths:
15407
15501
  required:
15408
15502
  - code
15409
15503
  - message
15504
+ summary: List sessions
15410
15505
  tags:
15411
15506
  - user-management.users
15412
15507
  /user_management/users/{userId}/api_keys:
15413
15508
  get:
15414
- operationId: UserApiKeysController_list
15415
- summary: List API keys for a user
15416
15509
  description: Get a list of API keys owned by a specific user.
15510
+ operationId: UserApiKeysController_list
15417
15511
  parameters:
15418
15512
  - name: userId
15419
15513
  required: true
@@ -15457,13 +15551,7 @@ paths:
15457
15551
  in: query
15458
15552
  description: Order the results by the creation time.
15459
15553
  schema:
15460
- default: desc
15461
- example: desc
15462
- enum:
15463
- - normal
15464
- - desc
15465
- - asc
15466
- type: string
15554
+ $ref: '#/components/schemas/PaginationOrder'
15467
15555
  - name: organization_id
15468
15556
  required: false
15469
15557
  in: query
@@ -15494,15 +15582,15 @@ paths:
15494
15582
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
15495
15583
  required:
15496
15584
  - message
15585
+ summary: List API keys for a user
15497
15586
  tags:
15498
15587
  - api_keys
15499
15588
  x-feature-flag: user-api-keys
15500
15589
  post:
15501
- operationId: UserApiKeysController_create
15502
- summary: Create an API key for a user
15503
15590
  description: >-
15504
15591
  Create a new API key owned by a user. The user must have an active
15505
15592
  membership in the specified organization.
15593
+ operationId: UserApiKeysController_create
15506
15594
  parameters:
15507
15595
  - name: userId
15508
15596
  required: true
@@ -15581,17 +15669,17 @@ paths:
15581
15669
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
15582
15670
  required:
15583
15671
  - message
15672
+ summary: Create an API key for a user
15584
15673
  tags:
15585
15674
  - api_keys
15586
15675
  x-feature-flag: user-api-keys
15587
15676
  /user_management/users/{userId}/feature-flags:
15588
15677
  get:
15589
- operationId: UserlandUserFeatureFlagsController_list
15590
- summary: List enabled feature flags for a user
15591
15678
  description: >-
15592
15679
  Get a list of all enabled feature flags for the provided user. This
15593
15680
  includes feature flags enabled specifically for the user as well as any
15594
15681
  organizations that the user is a member of.
15682
+ operationId: UserlandUserFeatureFlagsController_list
15595
15683
  parameters:
15596
15684
  - name: userId
15597
15685
  required: true
@@ -15635,13 +15723,7 @@ paths:
15635
15723
  in: query
15636
15724
  description: Order the results by the creation time.
15637
15725
  schema:
15638
- default: desc
15639
- example: desc
15640
- enum:
15641
- - normal
15642
- - desc
15643
- - asc
15644
- type: string
15726
+ $ref: '#/components/schemas/PaginationOrder'
15645
15727
  responses:
15646
15728
  '200':
15647
15729
  description: OK
@@ -15662,13 +15744,13 @@ paths:
15662
15744
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
15663
15745
  required:
15664
15746
  - message
15747
+ summary: List enabled feature flags for a user
15665
15748
  tags:
15666
15749
  - user-management.users.feature-flags
15667
15750
  /user_management/users/{user_id}/authorized_applications:
15668
15751
  get:
15669
- operationId: AuthorizedApplicationsController_list
15670
- summary: List authorized applications
15671
15752
  description: Get a list of all Connect applications that the user has authorized.
15753
+ operationId: AuthorizedApplicationsController_list
15672
15754
  parameters:
15673
15755
  - name: user_id
15674
15756
  required: true
@@ -15722,13 +15804,7 @@ paths:
15722
15804
  reversed cursor semantics where `before` fetches older records and
15723
15805
  `after` fetches newer records). Defaults to descending.
15724
15806
  schema:
15725
- default: desc
15726
- example: desc
15727
- enum:
15728
- - normal
15729
- - desc
15730
- - asc
15731
- type: string
15807
+ $ref: '#/components/schemas/PaginationOrder'
15732
15808
  responses:
15733
15809
  '200':
15734
15810
  description: OK
@@ -15762,13 +15838,13 @@ paths:
15762
15838
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
15763
15839
  required:
15764
15840
  - message
15841
+ summary: List authorized applications
15765
15842
  tags:
15766
15843
  - user-management.users.authorized-applications
15767
15844
  /user_management/users/{user_id}/authorized_applications/{application_id}:
15768
15845
  delete:
15769
- operationId: AuthorizedApplicationsController_delete
15770
- summary: Delete an authorized application
15771
15846
  description: Delete an existing Authorized Connect Application.
15847
+ operationId: AuthorizedApplicationsController_delete
15772
15848
  parameters:
15773
15849
  - name: application_id
15774
15850
  required: true
@@ -15800,15 +15876,15 @@ paths:
15800
15876
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
15801
15877
  required:
15802
15878
  - message
15879
+ summary: Delete an authorized application
15803
15880
  tags:
15804
15881
  - user-management.users.authorized-applications
15805
15882
  /user_management/users/{user_id}/connected_accounts/{slug}:
15806
15883
  get:
15807
- operationId: DataIntegrationsUserManagementController_getUserDataInstallation
15808
- summary: Get a connected account
15809
15884
  description: >-
15810
15885
  Retrieves a user's [connected
15811
15886
  account](/reference/pipes/connected-account) for a specific provider.
15887
+ operationId: DataIntegrationsUserManagementController_getUserDataInstallation
15812
15888
  parameters:
15813
15889
  - name: user_id
15814
15890
  required: true
@@ -15857,15 +15933,15 @@ paths:
15857
15933
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
15858
15934
  required:
15859
15935
  - message
15936
+ summary: Get a connected account
15860
15937
  tags:
15861
15938
  - user-management.data-providers
15862
15939
  delete:
15863
- operationId: DataIntegrationsUserManagementController_deleteUserDataInstallation
15864
- summary: Delete a connected account
15865
15940
  description: >-
15866
15941
  Disconnects WorkOS's account for the user, including removing any stored
15867
15942
  access and refresh tokens. The user will need to reauthorize if they
15868
15943
  want to reconnect. This does not revoke access on the provider side.
15944
+ operationId: DataIntegrationsUserManagementController_deleteUserDataInstallation
15869
15945
  parameters:
15870
15946
  - name: user_id
15871
15947
  required: true
@@ -15910,17 +15986,17 @@ paths:
15910
15986
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
15911
15987
  required:
15912
15988
  - message
15989
+ summary: Delete a connected account
15913
15990
  tags:
15914
15991
  - user-management.data-providers
15915
15992
  /user_management/users/{user_id}/data_providers:
15916
15993
  get:
15917
- operationId: DataIntegrationsUserManagementController_getUserDataIntegrations
15918
- summary: List providers
15919
15994
  description: >-
15920
15995
  Retrieves a list of available providers and the user's connection status
15921
15996
  for each. Returns all providers configured for your environment, along
15922
15997
  with the user's [connected account](/reference/pipes/connected-account)
15923
15998
  information where applicable.
15999
+ operationId: DataIntegrationsUserManagementController_getUserDataIntegrations
15924
16000
  parameters:
15925
16001
  - name: user_id
15926
16002
  required: true
@@ -15962,15 +16038,15 @@ paths:
15962
16038
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
15963
16039
  required:
15964
16040
  - message
16041
+ summary: List providers
15965
16042
  tags:
15966
16043
  - user-management.data-providers
15967
16044
  /user_management/users/{userlandUserId}/auth_factors:
15968
16045
  post:
15969
- operationId: UserlandUserAuthenticationFactorsController_create
15970
- summary: Enroll an authentication factor
15971
16046
  description: >-
15972
16047
  Enrolls a user in a new [authentication
15973
16048
  factor](/reference/authkit/mfa/authentication-factor).
16049
+ operationId: UserlandUserAuthenticationFactorsController_create[0]
15974
16050
  parameters:
15975
16051
  - name: userlandUserId
15976
16052
  required: true
@@ -16006,14 +16082,14 @@ paths:
16006
16082
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
16007
16083
  required:
16008
16084
  - message
16085
+ summary: Enroll an authentication factor
16009
16086
  tags:
16010
16087
  - user-management.multi-factor-authentication
16011
16088
  get:
16012
- operationId: UserlandUserAuthenticationFactorsController_list
16013
- summary: List authentication factors
16014
16089
  description: >-
16015
16090
  Lists the [authentication
16016
16091
  factors](/reference/authkit/mfa/authentication-factor) for a user.
16092
+ operationId: UserlandUserAuthenticationFactorsController_list[0]
16017
16093
  parameters:
16018
16094
  - name: userlandUserId
16019
16095
  required: true
@@ -16057,13 +16133,7 @@ paths:
16057
16133
  in: query
16058
16134
  description: Order the results by the creation time.
16059
16135
  schema:
16060
- default: desc
16061
- example: desc
16062
- enum:
16063
- - normal
16064
- - desc
16065
- - asc
16066
- type: string
16136
+ $ref: '#/components/schemas/PaginationOrder'
16067
16137
  responses:
16068
16138
  '200':
16069
16139
  description: OK
@@ -16084,13 +16154,13 @@ paths:
16084
16154
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
16085
16155
  required:
16086
16156
  - message
16157
+ summary: List authentication factors
16087
16158
  tags:
16088
16159
  - user-management.multi-factor-authentication
16089
16160
  /webhook_endpoints:
16090
16161
  get:
16091
- operationId: WebhookEndpointsController_list
16092
- summary: List Webhook Endpoints
16093
16162
  description: Get a list of all of your existing webhook endpoints.
16163
+ operationId: WebhookEndpointsController_list
16094
16164
  parameters:
16095
16165
  - name: before
16096
16166
  required: false
@@ -16137,13 +16207,7 @@ paths:
16137
16207
  reversed cursor semantics where `before` fetches older records and
16138
16208
  `after` fetches newer records). Defaults to descending.
16139
16209
  schema:
16140
- default: desc
16141
- example: desc
16142
- enum:
16143
- - normal
16144
- - desc
16145
- - asc
16146
- type: string
16210
+ $ref: '#/components/schemas/PaginationOrder'
16147
16211
  responses:
16148
16212
  '200':
16149
16213
  description: List of webhook endpoints.
@@ -16151,12 +16215,12 @@ paths:
16151
16215
  application/json:
16152
16216
  schema:
16153
16217
  $ref: '#/components/schemas/WebhookEndpointList'
16218
+ summary: List Webhook Endpoints
16154
16219
  tags:
16155
16220
  - webhooks
16156
16221
  post:
16157
- operationId: WebhookEndpointsController_create
16158
- summary: Create a Webhook Endpoint
16159
16222
  description: Create a new webhook endpoint to receive event notifications.
16223
+ operationId: WebhookEndpointsController_create
16160
16224
  parameters: []
16161
16225
  requestBody:
16162
16226
  required: true
@@ -16244,13 +16308,13 @@ paths:
16244
16308
  - code
16245
16309
  - message
16246
16310
  - errors
16311
+ summary: Create a Webhook Endpoint
16247
16312
  tags:
16248
16313
  - webhooks
16249
16314
  /webhook_endpoints/{id}:
16250
16315
  patch:
16251
- operationId: WebhookEndpointsController_update
16252
- summary: Update a Webhook Endpoint
16253
16316
  description: Update the properties of an existing webhook endpoint.
16317
+ operationId: WebhookEndpointsController_update
16254
16318
  parameters:
16255
16319
  - name: id
16256
16320
  required: true
@@ -16364,12 +16428,12 @@ paths:
16364
16428
  - code
16365
16429
  - message
16366
16430
  - errors
16431
+ summary: Update a Webhook Endpoint
16367
16432
  tags:
16368
16433
  - webhooks
16369
16434
  delete:
16370
- operationId: WebhookEndpointsController_delete
16371
- summary: Delete a Webhook Endpoint
16372
16435
  description: Delete an existing webhook endpoint.
16436
+ operationId: WebhookEndpointsController_delete
16373
16437
  parameters:
16374
16438
  - name: id
16375
16439
  required: true
@@ -16400,15 +16464,15 @@ paths:
16400
16464
  required:
16401
16465
  - code
16402
16466
  - message
16467
+ summary: Delete a Webhook Endpoint
16403
16468
  tags:
16404
16469
  - webhooks
16405
16470
  /widgets/token:
16406
16471
  post:
16407
- operationId: WidgetsPublicController_issueWidgetSessionToken
16408
- summary: Generate a widget token
16409
16472
  description: >-
16410
16473
  Generate a widget token scoped to an organization and user with the
16411
16474
  specified scopes.
16475
+ operationId: WidgetsPublicController_issueWidgetSessionToken
16412
16476
  parameters: []
16413
16477
  requestBody:
16414
16478
  required: true
@@ -16481,6 +16545,7 @@ paths:
16481
16545
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
16482
16546
  required:
16483
16547
  - message
16548
+ summary: Generate a widget token
16484
16549
  tags:
16485
16550
  - widgets
16486
16551
  info:
@@ -16703,6 +16768,14 @@ components:
16703
16768
  example: sk_example_1234567890abcdef
16704
16769
  required:
16705
16770
  - value
16771
+ PaginationOrder:
16772
+ type: string
16773
+ enum:
16774
+ - normal
16775
+ - desc
16776
+ - asc
16777
+ example: desc
16778
+ default: desc
16706
16779
  RedirectUriDto:
16707
16780
  type: object
16708
16781
  properties:
@@ -17078,6 +17151,7 @@ components:
17078
17151
  description: The metadata schema for the actor.
17079
17152
  $ref: '#/components/schemas/AuditLogSchemaActorDto'
17080
17153
  targets:
17154
+ minItems: 1
17081
17155
  description: The list of targets for the schema.
17082
17156
  type: array
17083
17157
  items:
@@ -17529,6 +17603,7 @@ components:
17529
17603
  external_id:
17530
17604
  type: string
17531
17605
  maxLength: 128
17606
+ pattern: ^[\x00-\x7F]+$
17532
17607
  description: An external identifier for the resource.
17533
17608
  example: my-workspace-01
17534
17609
  name:
@@ -17785,6 +17860,7 @@ components:
17785
17860
  - string
17786
17861
  - 'null'
17787
17862
  maxLength: 128
17863
+ pattern: ^[\x00-\x7F]+$
17788
17864
  example: ext_12345
17789
17865
  description: An external identifier for the Organization.
17790
17866
  required:
@@ -17840,6 +17916,7 @@ components:
17840
17916
  - string
17841
17917
  - 'null'
17842
17918
  maxLength: 128
17919
+ pattern: ^[\x00-\x7F]+$
17843
17920
  example: 2fe01467-f7ea-4dd2-8b79-c2b4f56d0191
17844
17921
  description: An external identifier for the Organization.
17845
17922
  SsoIntentOptions:
@@ -17929,6 +18006,7 @@ components:
17929
18006
  maxItems: 20
17930
18007
  items:
17931
18008
  type: string
18009
+ format: email
17932
18010
  type: array
17933
18011
  required:
17934
18012
  - organization
@@ -17975,6 +18053,7 @@ components:
17975
18053
  properties:
17976
18054
  email:
17977
18055
  type: string
18056
+ format: email
17978
18057
  description: The email address to send the magic code to.
17979
18058
  example: marcelina.davis@example.com
17980
18059
  invitation_token:
@@ -17988,6 +18067,7 @@ components:
17988
18067
  properties:
17989
18068
  email:
17990
18069
  type: string
18070
+ format: email
17991
18071
  description: The email address of the recipient.
17992
18072
  example: marcelina.davis@example.com
17993
18073
  organization_id:
@@ -18368,6 +18448,7 @@ components:
18368
18448
  properties:
18369
18449
  email:
18370
18450
  type: string
18451
+ format: email
18371
18452
  description: The email address of the user.
18372
18453
  example: marcelina.davis@example.com
18373
18454
  first_name:
@@ -18406,6 +18487,7 @@ components:
18406
18487
  - string
18407
18488
  - 'null'
18408
18489
  maxLength: 128
18490
+ pattern: ^[\x00-\x7F]+$
18409
18491
  description: The external ID of the user.
18410
18492
  example: f1ffa2b2-c20b-4d39-be5c-212726e11222
18411
18493
  required:
@@ -18492,6 +18574,7 @@ components:
18492
18574
  properties:
18493
18575
  email:
18494
18576
  type: string
18577
+ format: email
18495
18578
  description: The email address of the user.
18496
18579
  example: marcelina.davis@example.com
18497
18580
  first_name:
@@ -18523,6 +18606,7 @@ components:
18523
18606
  - string
18524
18607
  - 'null'
18525
18608
  maxLength: 128
18609
+ pattern: ^[\x00-\x7F]+$
18526
18610
  description: The external ID of the user.
18527
18611
  example: f1ffa2b2-c20b-4d39-be5c-212726e11222
18528
18612
  locale:
@@ -18613,6 +18697,7 @@ components:
18613
18697
  properties:
18614
18698
  email:
18615
18699
  type: string
18700
+ format: email
18616
18701
  description: The email address of the user requesting a password reset.
18617
18702
  example: marcelina.davis@example.com
18618
18703
  required:
@@ -19865,7 +19950,7 @@ components:
19865
19950
  required:
19866
19951
  - slug
19867
19952
  description: The primary role assigned to the user.
19868
- RoleAssignment:
19953
+ UserRoleAssignment:
19869
19954
  type: object
19870
19955
  properties:
19871
19956
  object:
@@ -19876,6 +19961,10 @@ components:
19876
19961
  type: string
19877
19962
  description: Unique identifier of the role assignment.
19878
19963
  example: role_assignment_01HXYZ123456789ABCDEFGH
19964
+ organization_membership_id:
19965
+ type: string
19966
+ description: The ID of the organization membership the role is assigned to.
19967
+ example: om_01HXYZ123456789ABCDEFGHIJ
19879
19968
  role:
19880
19969
  $ref: '#/components/schemas/SlimRole'
19881
19970
  description: The role included in the assignment.
@@ -19900,7 +19989,7 @@ components:
19900
19989
  - id
19901
19990
  - external_id
19902
19991
  - resource_type_slug
19903
- description: The resource to which the role is assigned.
19992
+ description: The resource the role is assigned on.
19904
19993
  created_at:
19905
19994
  format: date-time
19906
19995
  type: string
@@ -19914,11 +20003,12 @@ components:
19914
20003
  required:
19915
20004
  - object
19916
20005
  - id
20006
+ - organization_membership_id
19917
20007
  - role
19918
20008
  - resource
19919
20009
  - created_at
19920
20010
  - updated_at
19921
- RoleAssignmentList:
20011
+ UserRoleAssignmentList:
19922
20012
  type: object
19923
20013
  properties:
19924
20014
  object:
@@ -19928,7 +20018,7 @@ components:
19928
20018
  data:
19929
20019
  type: array
19930
20020
  items:
19931
- $ref: '#/components/schemas/RoleAssignment'
20021
+ $ref: '#/components/schemas/UserRoleAssignment'
19932
20022
  description: The list of records for the current page.
19933
20023
  list_metadata:
19934
20024
  type: object
@@ -21302,6 +21392,14 @@ components:
21302
21392
  - custom_attributes
21303
21393
  - created_at
21304
21394
  - updated_at
21395
+ VaultByokKeyProvider:
21396
+ type: string
21397
+ enum:
21398
+ - AWS_KMS
21399
+ - GCP_KMS
21400
+ - AZURE_KEY_VAULT
21401
+ example: AWS_KMS
21402
+ description: The external key provider used for BYOK.
21305
21403
  WaitlistUser:
21306
21404
  type: object
21307
21405
  properties:
@@ -28598,13 +28696,7 @@ components:
28598
28696
  description: The unique identifier of the organization.
28599
28697
  example: org_01EHT88Z8J8795GZNQ4ZP1J81T
28600
28698
  key_provider:
28601
- type: string
28602
- enum:
28603
- - AWS_KMS
28604
- - GCP_KMS
28605
- - AZURE_KEY_VAULT
28606
- description: The external key provider used for BYOK.
28607
- example: AWS_KMS
28699
+ $ref: '#/components/schemas/VaultByokKeyProvider'
28608
28700
  required:
28609
28701
  - organization_id
28610
28702
  - key_provider
@@ -28643,13 +28735,7 @@ components:
28643
28735
  description: The unique identifier of the organization.
28644
28736
  example: org_01EHT88Z8J8795GZNQ4ZP1J81T
28645
28737
  key_provider:
28646
- type: string
28647
- enum:
28648
- - AWS_KMS
28649
- - GCP_KMS
28650
- - AZURE_KEY_VAULT
28651
- description: The external key provider used for BYOK.
28652
- example: AWS_KMS
28738
+ $ref: '#/components/schemas/VaultByokKeyProvider'
28653
28739
  verified:
28654
28740
  type: boolean
28655
28741
  description: >-