@workos/openapi-spec 0.62.0 → 0.63.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.
@@ -2292,7 +2292,10 @@ paths:
2292
2292
  description: >-
2293
2293
  Returns all permissions the organization membership effectively has on a
2294
2294
  resource, including permissions inherited through roles assigned to
2295
- ancestor resources.
2295
+ ancestor resources. Results are not filtered by the resource type: a
2296
+ permission is returned whenever a check for it on this resource would be
2297
+ authorized, and each permission is labeled with the resource type it is
2298
+ declared on.
2296
2299
  operationId: AuthorizationController_listEffectivePermissions
2297
2300
  parameters:
2298
2301
  - name: organization_membership_id
@@ -2409,7 +2412,10 @@ paths:
2409
2412
  description: >-
2410
2413
  Returns all permissions the organization membership effectively has on a
2411
2414
  resource identified by its external ID, including permissions inherited
2412
- through roles assigned to ancestor resources.
2415
+ through roles assigned to ancestor resources. Results are not filtered
2416
+ by the resource type: a permission is returned whenever a check for it
2417
+ on this resource would be authorized, and each permission is labeled
2418
+ with the resource type it is declared on.
2413
2419
  operationId: AuthorizationController_listEffectivePermissionsByExternalId
2414
2420
  parameters:
2415
2421
  - name: organization_membership_id
@@ -7701,7 +7707,6 @@ paths:
7701
7707
  summary: Upsert an API key for a connected account
7702
7708
  tags:
7703
7709
  - pipes
7704
- x-feature-flag: pipes-api-keys
7705
7710
  /data-integrations/{slug}/authorize:
7706
7711
  post:
7707
7712
  description: >-
@@ -8032,7 +8037,6 @@ paths:
8032
8037
  summary: Vend credentials for a connected account
8033
8038
  tags:
8034
8039
  - pipes
8035
- x-feature-flag: pipes-api-keys
8036
8040
  /data-integrations/{slug}/token:
8037
8041
  post:
8038
8042
  description: >-
@@ -8711,7 +8715,7 @@ paths:
8711
8715
  schema:
8712
8716
  $ref: '#/components/schemas/PaginationOrder'
8713
8717
  - name: events
8714
- required: false
8718
+ required: true
8715
8719
  in: query
8716
8720
  description: >-
8717
8721
  Filter events by one or more event types (e.g.
@@ -10617,6 +10621,13 @@ paths:
10617
10621
  `after` fetches newer records).
10618
10622
  schema:
10619
10623
  $ref: '#/components/schemas/PaginationOrder'
10624
+ - name: search
10625
+ required: false
10626
+ in: query
10627
+ description: Search groups by name or by group ID.
10628
+ schema:
10629
+ example: Engineering
10630
+ type: string
10620
10631
  responses:
10621
10632
  '200':
10622
10633
  description: OK
@@ -11201,37 +11212,25 @@ paths:
11201
11212
  summary: List authorized applications
11202
11213
  tags:
11203
11214
  - organizations.authorized-applications
11204
- /portal/generate_link:
11205
- post:
11206
- description: Generate a Portal Link scoped to an Organization.
11207
- operationId: PortalSessionsController_create
11208
- parameters: []
11209
- requestBody:
11210
- required: true
11211
- content:
11212
- application/json:
11213
- schema:
11214
- $ref: '#/components/schemas/GenerateLinkDto'
11215
+ /organizations/{organization_id}/it_contacts:
11216
+ get:
11217
+ description: Get the IT contacts for an organization.
11218
+ operationId: ItContactsController_list
11219
+ parameters:
11220
+ - name: organization_id
11221
+ required: true
11222
+ in: path
11223
+ description: The ID of the organization.
11224
+ schema:
11225
+ type: string
11226
+ example: org_01EHWNCE74X7JSDV0X3SZ3KJNY
11215
11227
  responses:
11216
- '201':
11217
- description: Created
11218
- content:
11219
- application/json:
11220
- schema:
11221
- $ref: '#/components/schemas/PortalLinkResponse'
11222
- '400':
11223
- description: Bad Request
11228
+ '200':
11229
+ description: OK
11224
11230
  content:
11225
11231
  application/json:
11226
11232
  schema:
11227
- type: object
11228
- properties:
11229
- message:
11230
- type: string
11231
- description: A human-readable description of the error.
11232
- example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11233
- required:
11234
- - message
11233
+ $ref: '#/components/schemas/ItContactList'
11235
11234
  '403':
11236
11235
  description: Forbidden
11237
11236
  content:
@@ -11258,86 +11257,38 @@ paths:
11258
11257
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11259
11258
  required:
11260
11259
  - message
11261
- '422':
11262
- description: Unprocessable Entity
11263
- content:
11264
- application/json:
11265
- schema:
11266
- type: object
11267
- properties:
11268
- message:
11269
- type: string
11270
- description: A human-readable description of the error.
11271
- example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11272
- required:
11273
- - message
11274
- summary: Generate a Portal Link
11260
+ summary: List IT contacts
11275
11261
  tags:
11276
- - admin-portal
11277
- /radar/attempts:
11262
+ - organizations.it-contacts
11278
11263
  post:
11279
- description: Assess a request for risk using the Radar engine and receive a verdict.
11280
- operationId: RadarStandaloneController_assess
11281
- parameters: []
11264
+ description: >-
11265
+ Add an IT contact to an organization. No Admin Portal invitation is
11266
+ sent, though the contact is notified if the organization has a
11267
+ connection certificate nearing expiry.
11268
+ operationId: ItContactsController_create
11269
+ parameters:
11270
+ - name: organization_id
11271
+ required: true
11272
+ in: path
11273
+ description: The ID of the organization.
11274
+ schema:
11275
+ type: string
11276
+ example: org_01EHWNCE74X7JSDV0X3SZ3KJNY
11282
11277
  requestBody:
11283
11278
  required: true
11284
11279
  content:
11285
11280
  application/json:
11286
11281
  schema:
11287
- type: object
11288
- properties:
11289
- ip_address:
11290
- type: string
11291
- description: The IP address of the request to assess.
11292
- example: 49.78.240.97
11293
- user_agent:
11294
- type: string
11295
- description: The user agent string of the request to assess.
11296
- example: Mozilla/5.0
11297
- email:
11298
- type: string
11299
- format: email
11300
- description: The email address of the user making the request.
11301
- example: user@example.com
11302
- auth_method:
11303
- type: string
11304
- enum:
11305
- - Password
11306
- - Passkey
11307
- - Authenticator
11308
- - SMS_OTP
11309
- - Email_OTP
11310
- - Social
11311
- - SSO
11312
- - Other
11313
- description: The authentication method being used.
11314
- example: Password
11315
- action:
11316
- description: The action being performed.
11317
- example: sign-in
11318
- type: string
11319
- enum:
11320
- - sign-up
11321
- - sign-in
11322
- signals_id:
11323
- type: string
11324
- description: An optional Radar signals ID for the request.
11325
- example: 01JBS0GN92GC2RJQS4X9DBPQ2A
11326
- required:
11327
- - ip_address
11328
- - user_agent
11329
- - email
11330
- - auth_method
11331
- - action
11282
+ $ref: '#/components/schemas/CreateItContactDto'
11332
11283
  responses:
11333
- '200':
11334
- description: OK
11284
+ '201':
11285
+ description: Created
11335
11286
  content:
11336
11287
  application/json:
11337
11288
  schema:
11338
- $ref: '#/components/schemas/RadarStandaloneResponse'
11339
- '400':
11340
- description: Standalone radar is not enabled.
11289
+ $ref: '#/components/schemas/ItContact'
11290
+ '403':
11291
+ description: Forbidden
11341
11292
  content:
11342
11293
  application/json:
11343
11294
  schema:
@@ -11349,48 +11300,8 @@ paths:
11349
11300
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11350
11301
  required:
11351
11302
  - message
11352
- summary: Create an attempt
11353
- tags:
11354
- - radar
11355
- /radar/attempts/{id}:
11356
- put:
11357
- description: >-
11358
- You may optionally inform Radar that an authentication attempt or
11359
- challenge was successful using this endpoint. Some Radar controls depend
11360
- on tracking recent successful attempts, such as impossible travel.
11361
- operationId: RadarStandaloneController_updateRadarAttempt
11362
- parameters:
11363
- - name: id
11364
- required: true
11365
- in: path
11366
- description: The unique identifier of the Radar attempt to update.
11367
- schema:
11368
- example: radar_att_01HZBC6N1EB1ZY7KG32X
11369
- type: string
11370
- requestBody:
11371
- required: true
11372
- content:
11373
- application/json:
11374
- schema:
11375
- type: object
11376
- properties:
11377
- challenge_status:
11378
- type: string
11379
- description: Set to `"success"` to mark the challenge as completed.
11380
- example: success
11381
- const: success
11382
- attempt_status:
11383
- type: string
11384
- description: >-
11385
- Set to `"success"` to mark the authentication attempt as
11386
- successful.
11387
- example: success
11388
- const: success
11389
- responses:
11390
- '204':
11391
- description: Radar attempt updated.
11392
- '400':
11393
- description: Bad Request
11303
+ '404':
11304
+ description: Not Found
11394
11305
  content:
11395
11306
  application/json:
11396
11307
  schema:
@@ -11402,148 +11313,759 @@ paths:
11402
11313
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11403
11314
  required:
11404
11315
  - message
11405
- '404':
11406
- description: Not Found
11316
+ '409':
11317
+ description: The email address is already an IT contact of the organization.
11407
11318
  content:
11408
11319
  application/json:
11409
11320
  schema:
11410
11321
  type: object
11411
11322
  properties:
11323
+ code:
11324
+ type: string
11325
+ description: The error code identifying the type of error.
11326
+ example: it_contact_already_exists
11327
+ const: it_contact_already_exists
11412
11328
  message:
11413
11329
  type: string
11414
11330
  description: A human-readable description of the error.
11415
- example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11331
+ example: Request could not be processed.
11416
11332
  required:
11333
+ - code
11417
11334
  - message
11418
- summary: Update a Radar attempt
11419
- tags:
11420
- - radar
11421
- /radar/lists/{type}/{action}:
11422
- post:
11423
- description: Add an entry to a Radar list.
11424
- operationId: RadarStandaloneController_updateRadarList
11425
- parameters:
11426
- - name: type
11427
- required: true
11428
- in: path
11429
- description: The type of the Radar list (e.g. ip_address, domain, email).
11430
- schema:
11431
- type: string
11432
- enum:
11433
- - ip_address
11434
- - domain
11435
- - email
11436
- - device
11437
- - user_agent
11438
- - device_fingerprint
11439
- - country
11440
- example: ip_address
11441
- - name: action
11442
- required: true
11443
- in: path
11444
- description: >-
11445
- The list action indicating whether to add the entry to the allow or
11446
- block list.
11447
- schema:
11448
- type: string
11449
- enum:
11450
- - block
11451
- - allow
11452
- example: block
11453
- requestBody:
11454
- required: true
11455
- content:
11456
- application/json:
11457
- schema:
11458
- type: object
11459
- properties:
11460
- entry:
11461
- type: string
11462
- description: >-
11463
- The value to add to the list. Must match the format of the
11464
- list type (e.g. a valid IP address for `ip_address`, a valid
11465
- email for `email`).
11466
- example: 198.51.100.42
11467
- required:
11468
- - entry
11469
- responses:
11470
- '200':
11471
- description: Entry already present in the list.
11335
+ '422':
11336
+ description: Unprocessable Entity
11472
11337
  content:
11473
11338
  application/json:
11474
11339
  schema:
11475
- $ref: '#/components/schemas/RadarListEntryAlreadyPresentResponse'
11476
- '201':
11477
- description: Created
11478
- '204':
11479
- description: Entry successfully added to the list.
11480
- '400':
11481
- description: Bad Request
11340
+ type: object
11341
+ properties:
11342
+ message:
11343
+ type: string
11344
+ description: A human-readable description of the error.
11345
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11346
+ required:
11347
+ - message
11348
+ '503':
11349
+ description: ''
11482
11350
  content:
11483
11351
  application/json:
11484
11352
  schema:
11485
11353
  type: object
11486
11354
  properties:
11355
+ code:
11356
+ type: string
11357
+ description: The error code identifying the type of error.
11358
+ example: concurrent_request
11359
+ const: concurrent_request
11487
11360
  message:
11488
11361
  type: string
11489
11362
  description: A human-readable description of the error.
11490
- example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11363
+ example: Request could not be processed.
11491
11364
  required:
11365
+ - code
11492
11366
  - message
11493
- summary: Add an entry to a Radar list
11367
+ summary: Create an IT contact
11494
11368
  tags:
11495
- - radar
11369
+ - organizations.it-contacts
11370
+ /organizations/{organization_id}/it_contacts/{contact_id}:
11496
11371
  delete:
11497
- description: Remove an entry from a Radar list.
11498
- operationId: RadarStandaloneController_deleteRadarListEntry
11372
+ description: >-
11373
+ Remove an IT contact from an organization and revoke the contact's
11374
+ active setup links.
11375
+ operationId: ItContactsController_delete
11499
11376
  parameters:
11500
- - name: type
11377
+ - name: organization_id
11501
11378
  required: true
11502
11379
  in: path
11503
- description: The type of the Radar list (e.g. ip_address, domain, email).
11380
+ description: The ID of the organization.
11504
11381
  schema:
11505
11382
  type: string
11506
- enum:
11507
- - ip_address
11508
- - domain
11509
- - email
11510
- - device
11511
- - user_agent
11512
- - device_fingerprint
11513
- - country
11514
- example: ip_address
11515
- - name: action
11383
+ example: org_01EHWNCE74X7JSDV0X3SZ3KJNY
11384
+ - name: contact_id
11516
11385
  required: true
11517
11386
  in: path
11518
- description: >-
11519
- The list action indicating whether to remove the entry from the
11520
- allow or block list.
11387
+ description: The ID of the IT contact.
11521
11388
  schema:
11522
11389
  type: string
11523
- enum:
11524
- - block
11525
- - allow
11526
- example: block
11527
- requestBody:
11528
- required: true
11529
- content:
11530
- application/json:
11531
- schema:
11532
- type: object
11533
- properties:
11534
- entry:
11535
- type: string
11536
- description: >-
11537
- The value to remove from the list. Must match an existing
11538
- entry.
11539
- example: 198.51.100.42
11540
- required:
11541
- - entry
11390
+ example: it_contact_01HXYZ123456789ABCDEFGHIJ
11542
11391
  responses:
11543
11392
  '204':
11544
- description: Radar list updated.
11545
- '400':
11546
- description: Bad Request
11393
+ description: No Content
11394
+ '403':
11395
+ description: Forbidden
11396
+ content:
11397
+ application/json:
11398
+ schema:
11399
+ type: object
11400
+ properties:
11401
+ message:
11402
+ type: string
11403
+ description: A human-readable description of the error.
11404
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11405
+ required:
11406
+ - message
11407
+ '404':
11408
+ description: Not Found
11409
+ content:
11410
+ application/json:
11411
+ schema:
11412
+ type: object
11413
+ properties:
11414
+ message:
11415
+ type: string
11416
+ description: A human-readable description of the error.
11417
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11418
+ required:
11419
+ - message
11420
+ '503':
11421
+ description: ''
11422
+ content:
11423
+ application/json:
11424
+ schema:
11425
+ type: object
11426
+ properties:
11427
+ code:
11428
+ type: string
11429
+ description: The error code identifying the type of error.
11430
+ example: concurrent_request
11431
+ const: concurrent_request
11432
+ message:
11433
+ type: string
11434
+ description: A human-readable description of the error.
11435
+ example: Request could not be processed.
11436
+ required:
11437
+ - code
11438
+ - message
11439
+ summary: Delete an IT contact
11440
+ tags:
11441
+ - organizations.it-contacts
11442
+ /organizations/{organization_id}/it_contacts/{contact_id}/invite:
11443
+ post:
11444
+ description: >-
11445
+ Create an Admin Portal setup link and email it to the IT contact. An
11446
+ organization can have at most one active invitation.
11447
+ operationId: ItContactsController_invite
11448
+ parameters:
11449
+ - name: organization_id
11450
+ required: true
11451
+ in: path
11452
+ description: The ID of the organization.
11453
+ schema:
11454
+ type: string
11455
+ example: org_01EHWNCE74X7JSDV0X3SZ3KJNY
11456
+ - name: contact_id
11457
+ required: true
11458
+ in: path
11459
+ description: The ID of the IT contact.
11460
+ schema:
11461
+ type: string
11462
+ example: it_contact_01HXYZ123456789ABCDEFGHIJ
11463
+ requestBody:
11464
+ required: true
11465
+ content:
11466
+ application/json:
11467
+ schema:
11468
+ $ref: '#/components/schemas/InviteItContactDto'
11469
+ responses:
11470
+ '204':
11471
+ description: No Content
11472
+ '403':
11473
+ description: Forbidden
11474
+ content:
11475
+ application/json:
11476
+ schema:
11477
+ type: object
11478
+ properties:
11479
+ message:
11480
+ type: string
11481
+ description: A human-readable description of the error.
11482
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11483
+ required:
11484
+ - message
11485
+ '404':
11486
+ description: Not Found
11487
+ content:
11488
+ application/json:
11489
+ schema:
11490
+ type: object
11491
+ properties:
11492
+ message:
11493
+ type: string
11494
+ description: A human-readable description of the error.
11495
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11496
+ required:
11497
+ - message
11498
+ '409':
11499
+ description: >-
11500
+ Another IT contact invitation is already active for the
11501
+ organization.
11502
+ content:
11503
+ application/json:
11504
+ schema:
11505
+ type: object
11506
+ properties:
11507
+ code:
11508
+ type: string
11509
+ description: The error code identifying the type of error.
11510
+ example: it_contact_invitation_already_active
11511
+ const: it_contact_invitation_already_active
11512
+ message:
11513
+ type: string
11514
+ description: A human-readable description of the error.
11515
+ example: Request could not be processed.
11516
+ required:
11517
+ - code
11518
+ - message
11519
+ '422':
11520
+ description: Unprocessable Entity
11521
+ content:
11522
+ application/json:
11523
+ schema:
11524
+ type: object
11525
+ properties:
11526
+ message:
11527
+ type: string
11528
+ description: A human-readable description of the error.
11529
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11530
+ required:
11531
+ - message
11532
+ '503':
11533
+ description: ''
11534
+ content:
11535
+ application/json:
11536
+ schema:
11537
+ type: object
11538
+ properties:
11539
+ code:
11540
+ type: string
11541
+ description: The error code identifying the type of error.
11542
+ example: concurrent_request
11543
+ const: concurrent_request
11544
+ message:
11545
+ type: string
11546
+ description: A human-readable description of the error.
11547
+ example: Request could not be processed.
11548
+ required:
11549
+ - code
11550
+ - message
11551
+ summary: Invite an IT contact
11552
+ tags:
11553
+ - organizations.it-contacts
11554
+ x-sends-email: true
11555
+ /organizations/{organization_id}/it_contacts/{contact_id}/revoke:
11556
+ post:
11557
+ description: Revoke the organization's active Admin Portal invitation.
11558
+ operationId: ItContactsController_revoke
11559
+ parameters:
11560
+ - name: organization_id
11561
+ required: true
11562
+ in: path
11563
+ description: The ID of the organization.
11564
+ schema:
11565
+ type: string
11566
+ example: org_01EHWNCE74X7JSDV0X3SZ3KJNY
11567
+ - name: contact_id
11568
+ required: true
11569
+ in: path
11570
+ description: The ID of the IT contact.
11571
+ schema:
11572
+ type: string
11573
+ example: it_contact_01HXYZ123456789ABCDEFGHIJ
11574
+ responses:
11575
+ '204':
11576
+ description: No Content
11577
+ '403':
11578
+ description: Forbidden
11579
+ content:
11580
+ application/json:
11581
+ schema:
11582
+ type: object
11583
+ properties:
11584
+ message:
11585
+ type: string
11586
+ description: A human-readable description of the error.
11587
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11588
+ required:
11589
+ - message
11590
+ '404':
11591
+ description: Not Found
11592
+ content:
11593
+ application/json:
11594
+ schema:
11595
+ type: object
11596
+ properties:
11597
+ message:
11598
+ type: string
11599
+ description: A human-readable description of the error.
11600
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11601
+ required:
11602
+ - message
11603
+ '503':
11604
+ description: ''
11605
+ content:
11606
+ application/json:
11607
+ schema:
11608
+ type: object
11609
+ properties:
11610
+ code:
11611
+ type: string
11612
+ description: The error code identifying the type of error.
11613
+ example: concurrent_request
11614
+ const: concurrent_request
11615
+ message:
11616
+ type: string
11617
+ description: A human-readable description of the error.
11618
+ example: Request could not be processed.
11619
+ required:
11620
+ - code
11621
+ - message
11622
+ summary: Revoke an IT contact's invitation
11623
+ tags:
11624
+ - organizations.it-contacts
11625
+ /platform/teams:
11626
+ post:
11627
+ description: >-
11628
+ Creates a team along with its default project, a staging environment,
11629
+ and a production environment. An admin invitation is sent to
11630
+ `admin_email`, onboarding is marked complete with AuthKit enabled, and
11631
+ the calling platform is authorized to act inside the team.
11632
+ operationId: TeamsController_createTeam
11633
+ parameters: []
11634
+ requestBody:
11635
+ required: true
11636
+ content:
11637
+ application/json:
11638
+ schema:
11639
+ $ref: '#/components/schemas/CreateTeamDto'
11640
+ responses:
11641
+ '201':
11642
+ description: Created
11643
+ content:
11644
+ application/json:
11645
+ schema:
11646
+ $ref: '#/components/schemas/Team'
11647
+ '409':
11648
+ description: ''
11649
+ content:
11650
+ application/json:
11651
+ schema:
11652
+ type: object
11653
+ properties:
11654
+ code:
11655
+ type: string
11656
+ description: The error code identifying the type of error.
11657
+ example: user_already_exists
11658
+ const: user_already_exists
11659
+ message:
11660
+ type: string
11661
+ description: A human-readable description of the error.
11662
+ example: Request could not be processed.
11663
+ required:
11664
+ - code
11665
+ - message
11666
+ '422':
11667
+ description: Unprocessable Entity
11668
+ content:
11669
+ application/json:
11670
+ schema:
11671
+ type: object
11672
+ properties:
11673
+ message:
11674
+ type: string
11675
+ description: A human-readable description of the error.
11676
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11677
+ required:
11678
+ - message
11679
+ summary: Create a team
11680
+ tags:
11681
+ - platform.teams
11682
+ /platform/teams/{team_id}:
11683
+ get:
11684
+ description: >-
11685
+ Returns a team, and doubles as a health check on the platform's access
11686
+ to it. Read `production_state` before attempting to create a production
11687
+ environment.
11688
+ operationId: TeamsController_getTeam
11689
+ parameters:
11690
+ - name: team_id
11691
+ required: true
11692
+ in: path
11693
+ description: The ID of the team.
11694
+ schema:
11695
+ type: string
11696
+ example: team_01JX9AN6E02HAG2Q2CKGC1XT5W
11697
+ responses:
11698
+ '200':
11699
+ description: OK
11700
+ content:
11701
+ application/json:
11702
+ schema:
11703
+ $ref: '#/components/schemas/Team'
11704
+ '404':
11705
+ description: Not Found
11706
+ content:
11707
+ application/json:
11708
+ schema:
11709
+ type: object
11710
+ properties:
11711
+ code:
11712
+ type: string
11713
+ description: The error code identifying the type of error.
11714
+ example: team_not_found
11715
+ const: team_not_found
11716
+ message:
11717
+ type: string
11718
+ description: A human-readable description of the error.
11719
+ example: Request could not be processed.
11720
+ required:
11721
+ - code
11722
+ - message
11723
+ summary: Get a team
11724
+ tags:
11725
+ - platform.teams
11726
+ /portal/generate_link:
11727
+ post:
11728
+ description: Generate a Portal Link scoped to an Organization.
11729
+ operationId: PortalSessionsController_create
11730
+ parameters: []
11731
+ requestBody:
11732
+ required: true
11733
+ content:
11734
+ application/json:
11735
+ schema:
11736
+ $ref: '#/components/schemas/GenerateLinkDto'
11737
+ responses:
11738
+ '201':
11739
+ description: Created
11740
+ content:
11741
+ application/json:
11742
+ schema:
11743
+ $ref: '#/components/schemas/PortalLinkResponse'
11744
+ '400':
11745
+ description: Bad Request
11746
+ content:
11747
+ application/json:
11748
+ schema:
11749
+ type: object
11750
+ properties:
11751
+ message:
11752
+ type: string
11753
+ description: A human-readable description of the error.
11754
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11755
+ required:
11756
+ - message
11757
+ '403':
11758
+ description: Forbidden
11759
+ content:
11760
+ application/json:
11761
+ schema:
11762
+ type: object
11763
+ properties:
11764
+ message:
11765
+ type: string
11766
+ description: A human-readable description of the error.
11767
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11768
+ required:
11769
+ - message
11770
+ '404':
11771
+ description: Not Found
11772
+ content:
11773
+ application/json:
11774
+ schema:
11775
+ type: object
11776
+ properties:
11777
+ message:
11778
+ type: string
11779
+ description: A human-readable description of the error.
11780
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11781
+ required:
11782
+ - message
11783
+ '422':
11784
+ description: Unprocessable Entity
11785
+ content:
11786
+ application/json:
11787
+ schema:
11788
+ type: object
11789
+ properties:
11790
+ message:
11791
+ type: string
11792
+ description: A human-readable description of the error.
11793
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11794
+ required:
11795
+ - message
11796
+ summary: Generate a Portal Link
11797
+ tags:
11798
+ - admin-portal
11799
+ /radar/attempts:
11800
+ post:
11801
+ description: Assess a request for risk using the Radar engine and receive a verdict.
11802
+ operationId: RadarStandaloneController_assess
11803
+ parameters: []
11804
+ requestBody:
11805
+ required: true
11806
+ content:
11807
+ application/json:
11808
+ schema:
11809
+ type: object
11810
+ properties:
11811
+ ip_address:
11812
+ type: string
11813
+ description: The IP address of the request to assess.
11814
+ example: 49.78.240.97
11815
+ user_agent:
11816
+ type: string
11817
+ description: The user agent string of the request to assess.
11818
+ example: Mozilla/5.0
11819
+ email:
11820
+ type: string
11821
+ format: email
11822
+ description: The email address of the user making the request.
11823
+ example: user@example.com
11824
+ auth_method:
11825
+ type: string
11826
+ enum:
11827
+ - Password
11828
+ - Passkey
11829
+ - Authenticator
11830
+ - SMS_OTP
11831
+ - Email_OTP
11832
+ - Social
11833
+ - SSO
11834
+ - Other
11835
+ description: The authentication method being used.
11836
+ example: Password
11837
+ action:
11838
+ description: The action being performed.
11839
+ example: sign-in
11840
+ type: string
11841
+ enum:
11842
+ - sign-up
11843
+ - sign-in
11844
+ signals_id:
11845
+ type: string
11846
+ description: An optional Radar signals ID for the request.
11847
+ example: 01JBS0GN92GC2RJQS4X9DBPQ2A
11848
+ required:
11849
+ - ip_address
11850
+ - user_agent
11851
+ - email
11852
+ - auth_method
11853
+ - action
11854
+ responses:
11855
+ '200':
11856
+ description: OK
11857
+ content:
11858
+ application/json:
11859
+ schema:
11860
+ $ref: '#/components/schemas/RadarStandaloneResponse'
11861
+ '400':
11862
+ description: Standalone radar is not enabled.
11863
+ content:
11864
+ application/json:
11865
+ schema:
11866
+ type: object
11867
+ properties:
11868
+ message:
11869
+ type: string
11870
+ description: A human-readable description of the error.
11871
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11872
+ required:
11873
+ - message
11874
+ summary: Create an attempt
11875
+ tags:
11876
+ - radar
11877
+ /radar/attempts/{id}:
11878
+ put:
11879
+ description: >-
11880
+ You may optionally inform Radar that an authentication attempt or
11881
+ challenge was successful using this endpoint. Some Radar controls depend
11882
+ on tracking recent successful attempts, such as impossible travel.
11883
+ operationId: RadarStandaloneController_updateRadarAttempt
11884
+ parameters:
11885
+ - name: id
11886
+ required: true
11887
+ in: path
11888
+ description: The unique identifier of the Radar attempt to update.
11889
+ schema:
11890
+ example: radar_att_01HZBC6N1EB1ZY7KG32X
11891
+ type: string
11892
+ requestBody:
11893
+ required: true
11894
+ content:
11895
+ application/json:
11896
+ schema:
11897
+ type: object
11898
+ properties:
11899
+ challenge_status:
11900
+ type: string
11901
+ description: Set to `"success"` to mark the challenge as completed.
11902
+ example: success
11903
+ const: success
11904
+ attempt_status:
11905
+ type: string
11906
+ description: >-
11907
+ Set to `"success"` to mark the authentication attempt as
11908
+ successful.
11909
+ example: success
11910
+ const: success
11911
+ responses:
11912
+ '204':
11913
+ description: Radar attempt updated.
11914
+ '400':
11915
+ description: Bad Request
11916
+ content:
11917
+ application/json:
11918
+ schema:
11919
+ type: object
11920
+ properties:
11921
+ message:
11922
+ type: string
11923
+ description: A human-readable description of the error.
11924
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11925
+ required:
11926
+ - message
11927
+ '404':
11928
+ description: Not Found
11929
+ content:
11930
+ application/json:
11931
+ schema:
11932
+ type: object
11933
+ properties:
11934
+ message:
11935
+ type: string
11936
+ description: A human-readable description of the error.
11937
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
11938
+ required:
11939
+ - message
11940
+ summary: Update a Radar attempt
11941
+ tags:
11942
+ - radar
11943
+ /radar/lists/{type}/{action}:
11944
+ post:
11945
+ description: Add an entry to a Radar list.
11946
+ operationId: RadarStandaloneController_updateRadarList
11947
+ parameters:
11948
+ - name: type
11949
+ required: true
11950
+ in: path
11951
+ description: The type of the Radar list (e.g. ip_address, domain, email).
11952
+ schema:
11953
+ type: string
11954
+ enum:
11955
+ - ip_address
11956
+ - domain
11957
+ - email
11958
+ - device
11959
+ - user_agent
11960
+ - device_fingerprint
11961
+ - country
11962
+ example: ip_address
11963
+ - name: action
11964
+ required: true
11965
+ in: path
11966
+ description: >-
11967
+ The list action indicating whether to add the entry to the allow or
11968
+ block list.
11969
+ schema:
11970
+ type: string
11971
+ enum:
11972
+ - block
11973
+ - allow
11974
+ example: block
11975
+ requestBody:
11976
+ required: true
11977
+ content:
11978
+ application/json:
11979
+ schema:
11980
+ type: object
11981
+ properties:
11982
+ entry:
11983
+ type: string
11984
+ description: >-
11985
+ The value to add to the list. Must match the format of the
11986
+ list type (e.g. a valid IP address for `ip_address`, a valid
11987
+ email for `email`).
11988
+ example: 198.51.100.42
11989
+ required:
11990
+ - entry
11991
+ responses:
11992
+ '200':
11993
+ description: Entry already present in the list.
11994
+ content:
11995
+ application/json:
11996
+ schema:
11997
+ $ref: '#/components/schemas/RadarListEntryAlreadyPresentResponse'
11998
+ '201':
11999
+ description: Created
12000
+ '204':
12001
+ description: Entry successfully added to the list.
12002
+ '400':
12003
+ description: Bad Request
12004
+ content:
12005
+ application/json:
12006
+ schema:
12007
+ type: object
12008
+ properties:
12009
+ message:
12010
+ type: string
12011
+ description: A human-readable description of the error.
12012
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
12013
+ required:
12014
+ - message
12015
+ summary: Add an entry to a Radar list
12016
+ tags:
12017
+ - radar
12018
+ delete:
12019
+ description: Remove an entry from a Radar list.
12020
+ operationId: RadarStandaloneController_deleteRadarListEntry
12021
+ parameters:
12022
+ - name: type
12023
+ required: true
12024
+ in: path
12025
+ description: The type of the Radar list (e.g. ip_address, domain, email).
12026
+ schema:
12027
+ type: string
12028
+ enum:
12029
+ - ip_address
12030
+ - domain
12031
+ - email
12032
+ - device
12033
+ - user_agent
12034
+ - device_fingerprint
12035
+ - country
12036
+ example: ip_address
12037
+ - name: action
12038
+ required: true
12039
+ in: path
12040
+ description: >-
12041
+ The list action indicating whether to remove the entry from the
12042
+ allow or block list.
12043
+ schema:
12044
+ type: string
12045
+ enum:
12046
+ - block
12047
+ - allow
12048
+ example: block
12049
+ requestBody:
12050
+ required: true
12051
+ content:
12052
+ application/json:
12053
+ schema:
12054
+ type: object
12055
+ properties:
12056
+ entry:
12057
+ type: string
12058
+ description: >-
12059
+ The value to remove from the list. Must match an existing
12060
+ entry.
12061
+ example: 198.51.100.42
12062
+ required:
12063
+ - entry
12064
+ responses:
12065
+ '204':
12066
+ description: Radar list updated.
12067
+ '400':
12068
+ description: Bad Request
11547
12069
  content:
11548
12070
  application/json:
11549
12071
  schema:
@@ -12017,9 +12539,11 @@ paths:
12017
12539
  example: sk_example_123456789
12018
12540
  type: string
12019
12541
  - name: code
12020
- required: true
12542
+ required: false
12021
12543
  in: query
12022
- description: The authorization code received from the authorization callback.
12544
+ description: >-
12545
+ The authorization code received from the authorization callback.
12546
+ Required when `grant_type` is `authorization_code`.
12023
12547
  schema:
12024
12548
  example: authorization_code_value
12025
12549
  type: string
@@ -12029,14 +12553,16 @@ paths:
12029
12553
  description: The grant type for the token request.
12030
12554
  schema:
12031
12555
  example: authorization_code
12556
+ enum:
12557
+ - authorization_code
12558
+ - urn:ietf:params:oauth:grant-type:token-exchange
12032
12559
  type: string
12033
- const: authorization_code
12034
12560
  requestBody:
12035
12561
  required: true
12036
12562
  content:
12037
12563
  application/json:
12038
12564
  schema:
12039
- $ref: '#/components/schemas/TokenQueryDto'
12565
+ $ref: '#/components/schemas/TokenBodyDto'
12040
12566
  responses:
12041
12567
  '200':
12042
12568
  description: OK
@@ -17129,25 +17655,6 @@ paths:
17129
17655
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
17130
17656
  required:
17131
17657
  - message
17132
- '409':
17133
- description: ''
17134
- content:
17135
- application/json:
17136
- schema:
17137
- type: object
17138
- properties:
17139
- code:
17140
- type: string
17141
- description: The error code identifying the type of error.
17142
- example: user_deletion_not_allowed
17143
- const: user_deletion_not_allowed
17144
- message:
17145
- type: string
17146
- description: A human-readable description of the error.
17147
- example: Request could not be processed.
17148
- required:
17149
- - code
17150
- - message
17151
17658
  summary: Delete a user
17152
17659
  tags:
17153
17660
  - user-management.users
@@ -18763,95 +19270,551 @@ paths:
18763
19270
  message:
18764
19271
  type: string
18765
19272
  description: A human-readable description of the error.
18766
- example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
19273
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
19274
+ required:
19275
+ - message
19276
+ summary: Update a connected account
19277
+ tags:
19278
+ - user-management.data-providers
19279
+ x-feature-flag: pipes-management-api
19280
+ /user_management/users/{user_id}/data_providers:
19281
+ get:
19282
+ description: >-
19283
+ Retrieves a list of available providers and the user's connection status
19284
+ for each. Returns all providers configured for your environment, along
19285
+ with the user's [connected account](/reference/pipes/connected-account)
19286
+ information where applicable.
19287
+ operationId: DataIntegrationsUserManagementController_getUserDataIntegrations
19288
+ parameters:
19289
+ - name: user_id
19290
+ required: true
19291
+ in: path
19292
+ description: >-
19293
+ A [User](/reference/authkit/user) identifier to list providers and
19294
+ connected accounts for.
19295
+ schema:
19296
+ example: user_01EHZNVPK3SFK441A1RGBFSHRT
19297
+ type: string
19298
+ - name: organization_id
19299
+ required: false
19300
+ in: query
19301
+ description: >-
19302
+ An [Organization](/reference/organization) identifier. Optional
19303
+ parameter to filter connections for a specific organization.
19304
+ schema:
19305
+ example: org_01EHZNVPK3SFK441A1RGBFSHRT
19306
+ type: string
19307
+ responses:
19308
+ '200':
19309
+ description: The list of data providers was retrieved successfully.
19310
+ content:
19311
+ application/json:
19312
+ schema:
19313
+ $ref: '#/components/schemas/DataIntegrationsListResponse'
19314
+ '401':
19315
+ description: The request is missing a valid API key.
19316
+ '404':
19317
+ description: The user or organization was not found.
19318
+ content:
19319
+ application/json:
19320
+ schema:
19321
+ type: object
19322
+ properties:
19323
+ message:
19324
+ type: string
19325
+ description: A human-readable description of the error.
19326
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
19327
+ required:
19328
+ - message
19329
+ summary: List providers for a user
19330
+ tags:
19331
+ - user-management.data-providers
19332
+ /user_management/users/{userlandUserId}/auth_factors:
19333
+ post:
19334
+ description: >-
19335
+ Enrolls a user in a new [authentication
19336
+ factor](/reference/authkit/mfa/authentication-factor).
19337
+ operationId: UserlandUserAuthenticationFactorsController_create[0]
19338
+ parameters:
19339
+ - name: userlandUserId
19340
+ required: true
19341
+ in: path
19342
+ description: The ID of the [user](/reference/authkit/user).
19343
+ schema:
19344
+ example: user_01E4ZCR3C56J083X43JQXF3JK5
19345
+ type: string
19346
+ requestBody:
19347
+ required: true
19348
+ content:
19349
+ application/json:
19350
+ schema:
19351
+ $ref: '#/components/schemas/EnrollUserlandUserAuthenticationFactorDto'
19352
+ responses:
19353
+ '201':
19354
+ description: Created
19355
+ content:
19356
+ application/json:
19357
+ schema:
19358
+ $ref: >-
19359
+ #/components/schemas/UserlandUserAuthenticationFactorEnrollResponse
19360
+ '422':
19361
+ description: Unprocessable Entity
19362
+ content:
19363
+ application/json:
19364
+ schema:
19365
+ type: object
19366
+ properties:
19367
+ message:
19368
+ type: string
19369
+ description: A human-readable description of the error.
19370
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
19371
+ required:
19372
+ - message
19373
+ summary: Enroll an authentication factor
19374
+ tags:
19375
+ - user-management.multi-factor-authentication
19376
+ get:
19377
+ description: >-
19378
+ Lists the [authentication
19379
+ factors](/reference/authkit/mfa/authentication-factor) for a user.
19380
+ operationId: UserlandUserAuthenticationFactorsController_list[0]
19381
+ parameters:
19382
+ - name: userlandUserId
19383
+ required: true
19384
+ in: path
19385
+ description: The ID of the [user](/reference/authkit/user).
19386
+ schema:
19387
+ example: user_01E4ZCR3C56J083X43JQXF3JK5
19388
+ type: string
19389
+ - name: before
19390
+ required: false
19391
+ in: query
19392
+ description: >-
19393
+ An object ID that defines your place in the list. When the ID is not
19394
+ present, you are at the end of the list.
19395
+ schema:
19396
+ example: obj_1234567890
19397
+ type: string
19398
+ - name: after
19399
+ required: false
19400
+ in: query
19401
+ description: >-
19402
+ An object ID that defines your place in the list. When the ID is not
19403
+ present, you are at the end of the list.
19404
+ schema:
19405
+ example: obj_1234567890
19406
+ type: string
19407
+ - name: limit
19408
+ required: false
19409
+ in: query
19410
+ description: >-
19411
+ Upper limit on the number of objects to return, between `1` and
19412
+ `100`.
19413
+ schema:
19414
+ minimum: 1
19415
+ maximum: 100
19416
+ default: 10
19417
+ example: 10
19418
+ type: integer
19419
+ - name: order
19420
+ required: false
19421
+ in: query
19422
+ description: Order the results by the creation time.
19423
+ schema:
19424
+ $ref: '#/components/schemas/PaginationOrder'
19425
+ responses:
19426
+ '200':
19427
+ description: OK
19428
+ content:
19429
+ application/json:
19430
+ schema:
19431
+ $ref: '#/components/schemas/UserlandUserAuthenticationFactorList'
19432
+ '422':
19433
+ description: Unprocessable Entity
19434
+ content:
19435
+ application/json:
19436
+ schema:
19437
+ type: object
19438
+ properties:
19439
+ message:
19440
+ type: string
19441
+ description: A human-readable description of the error.
19442
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
19443
+ required:
19444
+ - message
19445
+ summary: List authentication factors
19446
+ tags:
19447
+ - user-management.multi-factor-authentication
19448
+ /user_management/waitlist_entries/{id}:
19449
+ delete:
19450
+ description: >-
19451
+ Removes the entry from the waitlist. An invitation created by approving
19452
+ the entry stays valid, so revoke that invitation to withdraw access.
19453
+ operationId: WaitlistEntriesController_delete
19454
+ parameters:
19455
+ - name: id
19456
+ required: true
19457
+ in: path
19458
+ description: The unique ID of the waitlist entry.
19459
+ schema:
19460
+ example: wl_user_01E4ZCR3C56J083X43JQXF3JK5
19461
+ type: string
19462
+ responses:
19463
+ '204':
19464
+ description: No Content
19465
+ '404':
19466
+ description: Not Found
19467
+ content:
19468
+ application/json:
19469
+ schema:
19470
+ type: object
19471
+ properties:
19472
+ message:
19473
+ type: string
19474
+ description: A human-readable description of the error.
19475
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
19476
+ required:
19477
+ - message
19478
+ summary: Delete a waitlist entry
19479
+ tags:
19480
+ - user-management.waitlists
19481
+ /user_management/waitlist_entries/{id}/approve:
19482
+ post:
19483
+ description: >-
19484
+ Approve a waitlist entry and send the resulting user invitation email.
19485
+ Also reverses a denial: a denied entry can be approved.
19486
+ operationId: WaitlistEntriesController_approve
19487
+ parameters:
19488
+ - name: id
19489
+ required: true
19490
+ in: path
19491
+ description: The unique ID of the waitlist entry.
19492
+ schema:
19493
+ example: wl_user_01E4ZCR3C56J083X43JQXF3JK5
19494
+ type: string
19495
+ responses:
19496
+ '200':
19497
+ description: OK
19498
+ content:
19499
+ application/json:
19500
+ schema:
19501
+ type: object
19502
+ properties:
19503
+ id:
19504
+ type: string
19505
+ description: The unique ID of the waitlist entry.
19506
+ example: wl_user_01E4ZCR3C56J083X43JQXF3JK5
19507
+ email:
19508
+ type: string
19509
+ description: The email address of the user on the waitlist.
19510
+ example: marcelina.davis@example.com
19511
+ state:
19512
+ type: string
19513
+ enum:
19514
+ - pending
19515
+ - approved
19516
+ - denied
19517
+ description: The state of the waitlist entry.
19518
+ example: approved
19519
+ approved_at:
19520
+ format: date-time
19521
+ type:
19522
+ - string
19523
+ - 'null'
19524
+ description: >-
19525
+ The timestamp when the entry was approved, or null if not
19526
+ yet approved.
19527
+ example: '2026-01-15T12:00:00.000Z'
19528
+ additional_fields:
19529
+ type: object
19530
+ additionalProperties:
19531
+ type: string
19532
+ description: >-
19533
+ Additional fields submitted when the user joined the
19534
+ waitlist. Values are user-provided — treat them as
19535
+ untrusted input when rendering or exporting.
19536
+ example:
19537
+ company: Example Corp
19538
+ waitlist_id:
19539
+ type:
19540
+ - string
19541
+ - 'null'
19542
+ description: The unique ID of the waitlist the entry belongs to.
19543
+ example: waitlist_01E4ZCR3C56J083X43JQXF3JK5
19544
+ created_at:
19545
+ format: date-time
19546
+ type: string
19547
+ description: An ISO 8601 timestamp.
19548
+ example: '2026-01-15T12:00:00.000Z'
19549
+ updated_at:
19550
+ format: date-time
19551
+ type: string
19552
+ description: An ISO 8601 timestamp.
19553
+ example: '2026-01-15T12:00:00.000Z'
19554
+ object:
19555
+ type: string
19556
+ description: Distinguishes the Waitlist Entry object.
19557
+ const: waitlist_entry
19558
+ required:
19559
+ - id
19560
+ - email
19561
+ - state
19562
+ - approved_at
19563
+ - created_at
19564
+ - updated_at
19565
+ - object
19566
+ x-inline-with-overrides: true
19567
+ '404':
19568
+ description: Not Found
19569
+ content:
19570
+ application/json:
19571
+ schema:
19572
+ type: object
19573
+ properties:
19574
+ message:
19575
+ type: string
19576
+ description: A human-readable description of the error.
19577
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
19578
+ required:
19579
+ - message
19580
+ '422':
19581
+ description: Unprocessable Entity
19582
+ content:
19583
+ application/json:
19584
+ schema:
19585
+ oneOf:
19586
+ - type: object
19587
+ properties:
19588
+ code:
19589
+ type: string
19590
+ description: The error code identifying the type of error.
19591
+ example: invalid_state
19592
+ const: invalid_state
19593
+ message:
19594
+ type: string
19595
+ description: A human-readable description of the error.
19596
+ example: Request could not be processed.
19597
+ required:
19598
+ - code
19599
+ - message
19600
+ - type: object
19601
+ properties:
19602
+ code:
19603
+ type: string
19604
+ description: The error code identifying the type of error.
19605
+ example: invitation_email_not_sent
19606
+ const: invitation_email_not_sent
19607
+ message:
19608
+ type: string
19609
+ description: A human-readable description of the error.
19610
+ example: Request could not be processed.
19611
+ required:
19612
+ - code
19613
+ - message
19614
+ summary: Approve a waitlist entry
19615
+ tags:
19616
+ - user-management.waitlists
19617
+ x-sends-email: true
19618
+ /user_management/waitlist_entries/{id}/deny:
19619
+ post:
19620
+ description: >-
19621
+ Deny a pending waitlist entry. A denial can be reversed by approving the
19622
+ entry.
19623
+ operationId: WaitlistEntriesController_deny
19624
+ parameters:
19625
+ - name: id
19626
+ required: true
19627
+ in: path
19628
+ description: The unique ID of the waitlist entry.
19629
+ schema:
19630
+ example: wl_user_01E4ZCR3C56J083X43JQXF3JK5
19631
+ type: string
19632
+ responses:
19633
+ '200':
19634
+ description: OK
19635
+ content:
19636
+ application/json:
19637
+ schema:
19638
+ type: object
19639
+ properties:
19640
+ id:
19641
+ type: string
19642
+ description: The unique ID of the waitlist entry.
19643
+ example: wl_user_01E4ZCR3C56J083X43JQXF3JK5
19644
+ email:
19645
+ type: string
19646
+ description: The email address of the user on the waitlist.
19647
+ example: marcelina.davis@example.com
19648
+ state:
19649
+ type: string
19650
+ enum:
19651
+ - pending
19652
+ - approved
19653
+ - denied
19654
+ description: The state of the waitlist entry.
19655
+ example: denied
19656
+ approved_at:
19657
+ format: date-time
19658
+ type:
19659
+ - string
19660
+ - 'null'
19661
+ description: >-
19662
+ The timestamp when the entry was approved, or null if not
19663
+ yet approved.
19664
+ example: null
19665
+ additional_fields:
19666
+ type: object
19667
+ additionalProperties:
19668
+ type: string
19669
+ description: >-
19670
+ Additional fields submitted when the user joined the
19671
+ waitlist. Values are user-provided — treat them as
19672
+ untrusted input when rendering or exporting.
19673
+ example:
19674
+ company: Example Corp
19675
+ waitlist_id:
19676
+ type:
19677
+ - string
19678
+ - 'null'
19679
+ description: The unique ID of the waitlist the entry belongs to.
19680
+ example: waitlist_01E4ZCR3C56J083X43JQXF3JK5
19681
+ created_at:
19682
+ format: date-time
19683
+ type: string
19684
+ description: An ISO 8601 timestamp.
19685
+ example: '2026-01-15T12:00:00.000Z'
19686
+ updated_at:
19687
+ format: date-time
19688
+ type: string
19689
+ description: An ISO 8601 timestamp.
19690
+ example: '2026-01-15T12:00:00.000Z'
19691
+ object:
19692
+ type: string
19693
+ description: Distinguishes the Waitlist Entry object.
19694
+ const: waitlist_entry
19695
+ required:
19696
+ - id
19697
+ - email
19698
+ - state
19699
+ - approved_at
19700
+ - created_at
19701
+ - updated_at
19702
+ - object
19703
+ x-inline-with-overrides: true
19704
+ '404':
19705
+ description: Not Found
19706
+ content:
19707
+ application/json:
19708
+ schema:
19709
+ type: object
19710
+ properties:
19711
+ message:
19712
+ type: string
19713
+ description: A human-readable description of the error.
19714
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
19715
+ required:
19716
+ - message
19717
+ '422':
19718
+ description: Unprocessable Entity
19719
+ content:
19720
+ application/json:
19721
+ schema:
19722
+ type: object
19723
+ properties:
19724
+ code:
19725
+ type: string
19726
+ description: The error code identifying the type of error.
19727
+ example: invalid_state
19728
+ const: invalid_state
19729
+ message:
19730
+ type: string
19731
+ description: A human-readable description of the error.
19732
+ example: Request could not be processed.
18767
19733
  required:
19734
+ - code
18768
19735
  - message
18769
- summary: Update a connected account
19736
+ summary: Deny a waitlist entry
18770
19737
  tags:
18771
- - user-management.data-providers
18772
- x-feature-flag: pipes-management-api
18773
- /user_management/users/{user_id}/data_providers:
19738
+ - user-management.waitlists
19739
+ /user_management/waitlists:
18774
19740
  get:
18775
- description: >-
18776
- Retrieves a list of available providers and the user's connection status
18777
- for each. Returns all providers configured for your environment, along
18778
- with the user's [connected account](/reference/pipes/connected-account)
18779
- information where applicable.
18780
- operationId: DataIntegrationsUserManagementController_getUserDataIntegrations
18781
- parameters:
18782
- - name: user_id
18783
- required: true
18784
- in: path
18785
- description: >-
18786
- A [User](/reference/authkit/user) identifier to list providers and
18787
- connected accounts for.
18788
- schema:
18789
- example: user_01EHZNVPK3SFK441A1RGBFSHRT
18790
- type: string
18791
- - name: organization_id
18792
- required: false
18793
- in: query
18794
- description: >-
18795
- An [Organization](/reference/organization) identifier. Optional
18796
- parameter to filter connections for a specific organization.
18797
- schema:
18798
- example: org_01EHZNVPK3SFK441A1RGBFSHRT
18799
- type: string
19741
+ description: Get a list of the waitlists in the environment.
19742
+ operationId: WaitlistsController_list
19743
+ parameters: []
18800
19744
  responses:
18801
19745
  '200':
18802
- description: The list of data providers was retrieved successfully.
18803
- content:
18804
- application/json:
18805
- schema:
18806
- $ref: '#/components/schemas/DataIntegrationsListResponse'
18807
- '401':
18808
- description: The request is missing a valid API key.
18809
- '404':
18810
- description: The user or organization was not found.
19746
+ description: OK
18811
19747
  content:
18812
19748
  application/json:
18813
19749
  schema:
18814
19750
  type: object
18815
19751
  properties:
18816
- message:
19752
+ object:
18817
19753
  type: string
18818
- description: A human-readable description of the error.
18819
- example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
19754
+ description: Indicates this is a list response.
19755
+ const: list
19756
+ data:
19757
+ type: array
19758
+ items:
19759
+ $ref: '#/components/schemas/Waitlist'
19760
+ description: The list of records for the current page.
19761
+ list_metadata:
19762
+ type: object
19763
+ properties:
19764
+ before:
19765
+ type:
19766
+ - string
19767
+ - 'null'
19768
+ description: >-
19769
+ An object ID that defines your place in the list. When
19770
+ the ID is not present, you are at the start of the
19771
+ list.
19772
+ example: null
19773
+ after:
19774
+ type:
19775
+ - string
19776
+ - 'null'
19777
+ description: >-
19778
+ An object ID that defines your place in the list. When
19779
+ the ID is not present, you are at the end of the list.
19780
+ example: null
19781
+ required:
19782
+ - before
19783
+ - after
19784
+ description: >-
19785
+ Pagination cursors for navigating between pages of
19786
+ results.
18820
19787
  required:
18821
- - message
18822
- summary: List providers for a user
19788
+ - object
19789
+ - data
19790
+ - list_metadata
19791
+ x-inline-with-overrides: true
19792
+ summary: List waitlists
18823
19793
  tags:
18824
- - user-management.data-providers
18825
- /user_management/users/{userlandUserId}/auth_factors:
18826
- post:
18827
- description: >-
18828
- Enrolls a user in a new [authentication
18829
- factor](/reference/authkit/mfa/authentication-factor).
18830
- operationId: UserlandUserAuthenticationFactorsController_create[0]
19794
+ - user-management.waitlists
19795
+ /user_management/waitlists/{id}:
19796
+ get:
19797
+ description: Get the details of an existing waitlist.
19798
+ operationId: WaitlistsController_find
18831
19799
  parameters:
18832
- - name: userlandUserId
19800
+ - name: id
18833
19801
  required: true
18834
19802
  in: path
18835
- description: The ID of the [user](/reference/authkit/user).
19803
+ description: >-
19804
+ The unique ID of the waitlist, or the literal `default` for the
19805
+ environment's default waitlist.
18836
19806
  schema:
18837
- example: user_01E4ZCR3C56J083X43JQXF3JK5
18838
19807
  type: string
18839
- requestBody:
18840
- required: true
18841
- content:
18842
- application/json:
18843
- schema:
18844
- $ref: '#/components/schemas/EnrollUserlandUserAuthenticationFactorDto'
19808
+ example: waitlist_01E4ZCR3C56J083X43JQXF3JK5
18845
19809
  responses:
18846
- '201':
18847
- description: Created
19810
+ '200':
19811
+ description: OK
18848
19812
  content:
18849
19813
  application/json:
18850
19814
  schema:
18851
- $ref: >-
18852
- #/components/schemas/UserlandUserAuthenticationFactorEnrollResponse
18853
- '422':
18854
- description: Unprocessable Entity
19815
+ $ref: '#/components/schemas/Waitlist'
19816
+ '404':
19817
+ description: Not Found
18855
19818
  content:
18856
19819
  application/json:
18857
19820
  schema:
@@ -18863,39 +19826,46 @@ paths:
18863
19826
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
18864
19827
  required:
18865
19828
  - message
18866
- summary: Enroll an authentication factor
19829
+ summary: Get a waitlist
18867
19830
  tags:
18868
- - user-management.multi-factor-authentication
19831
+ - user-management.waitlists
19832
+ /user_management/waitlists/{id}/entries:
18869
19833
  get:
18870
- description: >-
18871
- Lists the [authentication
18872
- factors](/reference/authkit/mfa/authentication-factor) for a user.
18873
- operationId: UserlandUserAuthenticationFactorsController_list[0]
19834
+ description: Get a list of entries on a waitlist matching the criteria specified.
19835
+ operationId: WaitlistsController_listEntries
18874
19836
  parameters:
18875
- - name: userlandUserId
19837
+ - name: id
18876
19838
  required: true
18877
19839
  in: path
18878
- description: The ID of the [user](/reference/authkit/user).
19840
+ description: >-
19841
+ The unique ID of the waitlist, or the literal `default` for the
19842
+ environment's default waitlist.
18879
19843
  schema:
18880
- example: user_01E4ZCR3C56J083X43JQXF3JK5
18881
19844
  type: string
19845
+ example: waitlist_01E4ZCR3C56J083X43JQXF3JK5
18882
19846
  - name: before
18883
19847
  required: false
18884
19848
  in: query
18885
19849
  description: >-
18886
19850
  An object ID that defines your place in the list. When the ID is not
18887
- present, you are at the end of the list.
19851
+ present, you are at the end of the list. For example, if you make a
19852
+ list request and receive 100 objects, ending with `"obj_123"`, your
19853
+ subsequent call can include `before="obj_123"` to fetch a new batch
19854
+ of objects before `"obj_123"`.
18888
19855
  schema:
18889
- example: obj_1234567890
19856
+ example: xxx_01HXYZ123456789ABCDEFGHIJ
18890
19857
  type: string
18891
19858
  - name: after
18892
19859
  required: false
18893
19860
  in: query
18894
19861
  description: >-
18895
19862
  An object ID that defines your place in the list. When the ID is not
18896
- present, you are at the end of the list.
19863
+ present, you are at the end of the list. For example, if you make a
19864
+ list request and receive 100 objects, ending with `"obj_123"`, your
19865
+ subsequent call can include `after="obj_123"` to fetch a new batch
19866
+ of objects after `"obj_123"`.
18897
19867
  schema:
18898
- example: obj_1234567890
19868
+ example: xxx_01HXYZ987654321KJIHGFEDCBA
18899
19869
  type: string
18900
19870
  - name: limit
18901
19871
  required: false
@@ -18912,18 +19882,144 @@ paths:
18912
19882
  - name: order
18913
19883
  required: false
18914
19884
  in: query
18915
- description: Order the results by the creation time.
19885
+ description: >-
19886
+ Order the results by the creation time. Supported values are `"asc"`
19887
+ (ascending), `"desc"` (descending), and `"normal"` (descending with
19888
+ reversed cursor semantics where `before` fetches older records and
19889
+ `after` fetches newer records).
18916
19890
  schema:
18917
19891
  $ref: '#/components/schemas/PaginationOrder'
19892
+ - name: state
19893
+ required: false
19894
+ in: query
19895
+ description: Filter waitlist entries by their state.
19896
+ schema:
19897
+ example: pending
19898
+ enum:
19899
+ - pending
19900
+ - approved
19901
+ - denied
19902
+ type: string
19903
+ - name: email
19904
+ required: false
19905
+ in: query
19906
+ description: Filter waitlist entries by their exact email address.
19907
+ schema:
19908
+ example: marcelina.davis@example.com
19909
+ type: string
18918
19910
  responses:
18919
19911
  '200':
18920
19912
  description: OK
18921
19913
  content:
18922
19914
  application/json:
18923
19915
  schema:
18924
- $ref: '#/components/schemas/UserlandUserAuthenticationFactorList'
19916
+ allOf:
19917
+ - type: object
19918
+ properties:
19919
+ object:
19920
+ type: string
19921
+ description: Indicates this is a list response.
19922
+ const: list
19923
+ list_metadata:
19924
+ type: object
19925
+ properties:
19926
+ before:
19927
+ type:
19928
+ - string
19929
+ - 'null'
19930
+ description: >-
19931
+ An object ID that defines your place in the list.
19932
+ When the ID is not present, you are at the start
19933
+ of the list.
19934
+ example: wl_user_01HXYZ123456789ABCDEFGHIJ
19935
+ after:
19936
+ type:
19937
+ - string
19938
+ - 'null'
19939
+ description: >-
19940
+ An object ID that defines your place in the list.
19941
+ When the ID is not present, you are at the end of
19942
+ the list.
19943
+ example: wl_user_01HXYZ987654321KJIHGFEDCBA
19944
+ required:
19945
+ - before
19946
+ - after
19947
+ description: >-
19948
+ Pagination cursors for navigating between pages of
19949
+ results.
19950
+ - type: object
19951
+ properties:
19952
+ data:
19953
+ type: array
19954
+ description: The list of records for the current page.
19955
+ items:
19956
+ $ref: '#/components/schemas/WaitlistEntry'
19957
+ '404':
19958
+ description: Not Found
19959
+ content:
19960
+ application/json:
19961
+ schema:
19962
+ type: object
19963
+ properties:
19964
+ message:
19965
+ type: string
19966
+ description: A human-readable description of the error.
19967
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
19968
+ required:
19969
+ - message
18925
19970
  '422':
18926
19971
  description: Unprocessable Entity
19972
+ content:
19973
+ application/json:
19974
+ schema:
19975
+ type: object
19976
+ properties:
19977
+ code:
19978
+ type: string
19979
+ description: The error code identifying the type of error.
19980
+ example: invalid_request_parameters
19981
+ const: invalid_request_parameters
19982
+ message:
19983
+ type: string
19984
+ description: A human-readable description of the error.
19985
+ example: Validation failed.
19986
+ required:
19987
+ - code
19988
+ - message
19989
+ summary: List waitlist entries
19990
+ tags:
19991
+ - user-management.waitlists
19992
+ post:
19993
+ description: >-
19994
+ Add an email address to the waitlist. Creating an entry is idempotent
19995
+ per email address: a request for an email address already on the
19996
+ waitlist returns the existing entry.
19997
+ operationId: WaitlistsController_createEntry
19998
+ parameters:
19999
+ - name: id
20000
+ required: true
20001
+ in: path
20002
+ description: >-
20003
+ The unique ID of the waitlist, or the literal `default` for the
20004
+ environment's default waitlist.
20005
+ schema:
20006
+ type: string
20007
+ example: waitlist_01E4ZCR3C56J083X43JQXF3JK5
20008
+ requestBody:
20009
+ required: true
20010
+ content:
20011
+ application/json:
20012
+ schema:
20013
+ $ref: '#/components/schemas/CreateWaitlistEntryDto'
20014
+ responses:
20015
+ '201':
20016
+ description: Created
20017
+ content:
20018
+ application/json:
20019
+ schema:
20020
+ $ref: '#/components/schemas/WaitlistEntry'
20021
+ '404':
20022
+ description: Not Found
18927
20023
  content:
18928
20024
  application/json:
18929
20025
  schema:
@@ -18935,9 +20031,44 @@ paths:
18935
20031
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
18936
20032
  required:
18937
20033
  - message
18938
- summary: List authentication factors
20034
+ '422':
20035
+ description: Unprocessable Entity
20036
+ content:
20037
+ application/json:
20038
+ schema:
20039
+ oneOf:
20040
+ - type: object
20041
+ properties:
20042
+ code:
20043
+ type: string
20044
+ description: The error code identifying the type of error.
20045
+ example: user_already_exists
20046
+ const: user_already_exists
20047
+ message:
20048
+ type: string
20049
+ description: A human-readable description of the error.
20050
+ example: Request could not be processed.
20051
+ required:
20052
+ - code
20053
+ - message
20054
+ - type: object
20055
+ properties:
20056
+ code:
20057
+ type: string
20058
+ description: The error code identifying the type of error.
20059
+ example: invalid_request_parameters
20060
+ const: invalid_request_parameters
20061
+ message:
20062
+ type: string
20063
+ description: A human-readable description of the error.
20064
+ example: Validation failed.
20065
+ required:
20066
+ - code
20067
+ - message
20068
+ summary: Create a waitlist entry
18939
20069
  tags:
18940
- - user-management.multi-factor-authentication
20070
+ - user-management.waitlists
20071
+ x-sends-email: true
18941
20072
  /vault/v1/keys/data-key:
18942
20073
  post:
18943
20074
  description: Generate an isolated encryption key for local encryption operations.
@@ -19815,12 +20946,16 @@ tags:
19815
20946
  description: Manage authorized applications for organizations.
19816
20947
  - name: organizations.feature-flags
19817
20948
  description: Manage organization-scoped feature flags.
20949
+ - name: organizations.it-contacts
20950
+ description: Manage IT contacts for organizations.
19818
20951
  - name: permissions
19819
20952
  description: Manage permissions.
19820
20953
  - name: pipes
19821
20954
  description: Data integration endpoints.
19822
20955
  - name: pipes.provider
19823
20956
  description: Manage organization-scoped provider configurations.
20957
+ - name: platform.teams
20958
+ description: Manage teams for platforms.
19824
20959
  - name: radar
19825
20960
  description: Radar fraud detection.
19826
20961
  - name: sso
@@ -19853,6 +20988,8 @@ tags:
19853
20988
  description: Manage authorized applications for users.
19854
20989
  - name: user-management.users.feature-flags
19855
20990
  description: Manage user-scoped feature flags.
20991
+ - name: user-management.waitlists
20992
+ description: Manage waitlists and waitlist entries.
19856
20993
  - name: vault
19857
20994
  description: Vault data encryption endpoints.
19858
20995
  - name: webhooks
@@ -21121,6 +22258,37 @@ components:
21121
22258
  example: '2030-01-01T00:00:00.000Z'
21122
22259
  required:
21123
22260
  - name
22261
+ CreateItContactDto:
22262
+ type: object
22263
+ properties:
22264
+ email:
22265
+ type: string
22266
+ format: email
22267
+ description: The email address of the IT contact.
22268
+ example: it-contact@example.com
22269
+ required:
22270
+ - email
22271
+ InviteItContactDto:
22272
+ type: object
22273
+ properties:
22274
+ intents:
22275
+ type: array
22276
+ description: The Admin Portal features that the IT contact can configure.
22277
+ example:
22278
+ - sso
22279
+ - directory_sync
22280
+ uniqueItems: true
22281
+ minItems: 1
22282
+ items:
22283
+ type: string
22284
+ enum:
22285
+ - sso
22286
+ - directory_sync
22287
+ - log_streams
22288
+ - domain_verification
22289
+ - bring_your_own_key
22290
+ required:
22291
+ - intents
21124
22292
  OrganizationDomainDataDto:
21125
22293
  type: object
21126
22294
  properties:
@@ -21157,6 +22325,7 @@ components:
21157
22325
  `domain_data`.
21158
22326
  example:
21159
22327
  - example.com
22328
+ deprecated: true
21160
22329
  type: array
21161
22330
  items:
21162
22331
  type: string
@@ -21687,6 +22856,23 @@ components:
21687
22856
  example: https://example.com/callback
21688
22857
  required:
21689
22858
  - uri
22859
+ CreateTeamDto:
22860
+ type: object
22861
+ properties:
22862
+ admin_email:
22863
+ type: string
22864
+ format: email
22865
+ description: >-
22866
+ The email address of the person who will administer the team. An
22867
+ invitation is sent to this address.
22868
+ example: alice@example.com
22869
+ name:
22870
+ type: string
22871
+ description: Name of the team.
22872
+ example: Example Team
22873
+ required:
22874
+ - admin_email
22875
+ - name
21690
22876
  EnrollUserlandUserAuthenticationFactorDto:
21691
22877
  type: object
21692
22878
  properties:
@@ -22515,6 +23701,37 @@ components:
22515
23701
  example: session_01H93ZY4F80QPBEZ1R5B2SHQG8
22516
23702
  required:
22517
23703
  - session_id
23704
+ CreateWaitlistEntryDto:
23705
+ type: object
23706
+ properties:
23707
+ email:
23708
+ type: string
23709
+ format: email
23710
+ description: The email address of the user joining the waitlist.
23711
+ example: marcelina.davis@example.com
23712
+ additional_fields:
23713
+ type: object
23714
+ description: >-
23715
+ Object containing additional key/value pairs collected with the
23716
+ waitlist entry. Values are user-provided — treat them as untrusted
23717
+ input when rendering or exporting.
23718
+ additionalProperties:
23719
+ type: string
23720
+ maxLength: 600
23721
+ maxProperties: 50
23722
+ example:
23723
+ company: Example Corp
23724
+ send_confirmation_email:
23725
+ type: boolean
23726
+ description: >-
23727
+ Whether to send the waitlist confirmation email to the user.
23728
+ Defaults to `false`. No email is sent when the waitlist confirmation
23729
+ email is disabled in the environment, even if
23730
+ `send_confirmation_email` is `true`.
23731
+ default: false
23732
+ example: false
23733
+ required:
23734
+ - email
22518
23735
  CreateWebhookEndpointDto:
22519
23736
  type: object
22520
23737
  properties:
@@ -22694,7 +23911,7 @@ components:
22694
23911
  required:
22695
23912
  - organization_id
22696
23913
  - user_id
22697
- TokenQueryDto:
23914
+ TokenBodyDto:
22698
23915
  type: object
22699
23916
  properties:
22700
23917
  client_id:
@@ -22707,17 +23924,43 @@ components:
22707
23924
  example: sk_example_123456789
22708
23925
  code:
22709
23926
  type: string
22710
- description: The authorization code received from the authorization callback.
23927
+ description: >-
23928
+ The authorization code received from the authorization callback.
23929
+ Required when `grant_type` is `authorization_code`.
22711
23930
  example: authorization_code_value
22712
23931
  grant_type:
22713
23932
  type: string
22714
23933
  description: The grant type for the token request.
23934
+ enum:
23935
+ - authorization_code
23936
+ - urn:ietf:params:oauth:grant-type:token-exchange
22715
23937
  example: authorization_code
22716
- const: authorization_code
23938
+ subject_token:
23939
+ type: string
23940
+ description: >-
23941
+ The OIDC ID token to exchange. Required when `grant_type` is
23942
+ `urn:ietf:params:oauth:grant-type:token-exchange`. Must be sent in
23943
+ the request body.
23944
+ example: eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjMifQ.example
23945
+ subject_token_type:
23946
+ type: string
23947
+ description: >-
23948
+ The type of the subject token. Required when `grant_type` is
23949
+ `urn:ietf:params:oauth:grant-type:token-exchange`. Must be sent in
23950
+ the request body.
23951
+ example: urn:ietf:params:oauth:token-type:id_token
23952
+ const: urn:ietf:params:oauth:token-type:id_token
23953
+ organization_id:
23954
+ type: string
23955
+ description: >-
23956
+ The ID of the organization whose connection the subject token is
23957
+ validated against. Required when `grant_type` is
23958
+ `urn:ietf:params:oauth:grant-type:token-exchange`. Must be sent in
23959
+ the request body.
23960
+ example: org_01EHQMYV6MBK39QC5PZXHY59C3
22717
23961
  required:
22718
23962
  - client_id
22719
23963
  - client_secret
22720
- - code
22721
23964
  - grant_type
22722
23965
  Actor:
22723
23966
  description: The user or API key that performed an action.
@@ -26060,17 +27303,13 @@ components:
26060
27303
  WaitlistUser:
26061
27304
  type: object
26062
27305
  properties:
26063
- object:
26064
- type: string
26065
- description: Distinguishes the Waitlist User object.
26066
- const: waitlist_user
26067
27306
  id:
26068
27307
  type: string
26069
- description: The unique ID of the Waitlist User.
27308
+ description: The unique ID of the waitlist entry.
26070
27309
  example: wl_user_01E4ZCR3C56J083X43JQXF3JK5
26071
27310
  email:
26072
27311
  type: string
26073
- description: The email address of the Waitlist User.
27312
+ description: The email address of the user on the waitlist.
26074
27313
  example: marcelina.davis@example.com
26075
27314
  state:
26076
27315
  type: string
@@ -26078,7 +27317,7 @@ components:
26078
27317
  - pending
26079
27318
  - approved
26080
27319
  - denied
26081
- description: The state of the Waitlist User.
27320
+ description: The state of the waitlist entry.
26082
27321
  example: pending
26083
27322
  approved_at:
26084
27323
  format: date-time
@@ -26086,14 +27325,24 @@ components:
26086
27325
  - string
26087
27326
  - 'null'
26088
27327
  description: >-
26089
- The timestamp when the Waitlist User was approved, or null if not
26090
- yet approved.
27328
+ The timestamp when the entry was approved, or null if not yet
27329
+ approved.
26091
27330
  example: null
27331
+ additional_fields:
27332
+ type: object
27333
+ additionalProperties:
27334
+ type: string
27335
+ description: >-
27336
+ Additional fields submitted when the user joined the waitlist.
27337
+ Values are user-provided — treat them as untrusted input when
27338
+ rendering or exporting.
27339
+ example:
27340
+ company: Example Corp
26092
27341
  waitlist_id:
26093
27342
  type:
26094
27343
  - string
26095
27344
  - 'null'
26096
- description: The unique ID of the Waitlist that the Waitlist User joined.
27345
+ description: The unique ID of the waitlist the entry belongs to.
26097
27346
  example: waitlist_01E4ZCR3C56J083X43JQXF3JK5
26098
27347
  created_at:
26099
27348
  format: date-time
@@ -26105,14 +27354,18 @@ components:
26105
27354
  type: string
26106
27355
  description: An ISO 8601 timestamp.
26107
27356
  example: '2026-01-15T12:00:00.000Z'
27357
+ object:
27358
+ type: string
27359
+ description: Distinguishes the Waitlist User object.
27360
+ const: waitlist_user
26108
27361
  required:
26109
- - object
26110
27362
  - id
26111
27363
  - email
26112
27364
  - state
26113
27365
  - approved_at
26114
27366
  - created_at
26115
27367
  - updated_at
27368
+ - object
26116
27369
  EventSchema:
26117
27370
  allOf:
26118
27371
  - type: object
@@ -35580,6 +36833,78 @@ components:
35580
36833
  - created_at
35581
36834
  - updated_at
35582
36835
  - value
36836
+ ItContact:
36837
+ type: object
36838
+ properties:
36839
+ object:
36840
+ type: string
36841
+ description: The IT Contact object.
36842
+ example: it_contact
36843
+ const: it_contact
36844
+ id:
36845
+ type: string
36846
+ description: The unique ID of the IT Contact.
36847
+ example: it_contact_01HXYZ123456789ABCDEFGHIJ
36848
+ email:
36849
+ type: string
36850
+ format: email
36851
+ description: The email address of the IT Contact.
36852
+ example: it-contact@example.com
36853
+ created_at:
36854
+ format: date-time
36855
+ type: string
36856
+ description: An ISO 8601 timestamp.
36857
+ example: '2026-01-15T12:00:00.000Z'
36858
+ updated_at:
36859
+ format: date-time
36860
+ type: string
36861
+ description: An ISO 8601 timestamp.
36862
+ example: '2026-01-15T12:00:00.000Z'
36863
+ required:
36864
+ - object
36865
+ - id
36866
+ - email
36867
+ - created_at
36868
+ - updated_at
36869
+ ItContactList:
36870
+ type: object
36871
+ properties:
36872
+ object:
36873
+ type: string
36874
+ description: Indicates this is a list response.
36875
+ const: list
36876
+ data:
36877
+ type: array
36878
+ items:
36879
+ $ref: '#/components/schemas/ItContact'
36880
+ description: The list of records for the current page.
36881
+ list_metadata:
36882
+ type: object
36883
+ properties:
36884
+ before:
36885
+ type:
36886
+ - string
36887
+ - 'null'
36888
+ description: >-
36889
+ An object ID that defines your place in the list. When the ID is
36890
+ not present, you are at the start of the list.
36891
+ example: it_contact_01HXYZ123456789ABCDEFGHIJ
36892
+ after:
36893
+ type:
36894
+ - string
36895
+ - 'null'
36896
+ description: >-
36897
+ An object ID that defines your place in the list. When the ID is
36898
+ not present, you are at the end of the list.
36899
+ example: it_contact_01HXYZ987654321KJIHGFEDCBA
36900
+ required:
36901
+ - before
36902
+ - after
36903
+ description: Pagination cursors for navigating between pages of results.
36904
+ required:
36905
+ - object
36906
+ - data
36907
+ - list_metadata
35583
36908
  Organization:
35584
36909
  type: object
35585
36910
  properties:
@@ -37204,6 +38529,61 @@ components:
37204
38529
  - default
37205
38530
  - created_at
37206
38531
  - updated_at
38532
+ Team:
38533
+ type: object
38534
+ properties:
38535
+ object:
38536
+ type: string
38537
+ description: Distinguishes the team object.
38538
+ const: team
38539
+ id:
38540
+ type: string
38541
+ description: Unique identifier of the team.
38542
+ example: team_01JX9AN6E02HAG2Q2CKGC1XT5W
38543
+ name:
38544
+ type: string
38545
+ description: The name of the team.
38546
+ example: Example Team
38547
+ production_state:
38548
+ type: string
38549
+ enum:
38550
+ - Active
38551
+ - Inactive
38552
+ - Suspended
38553
+ - Deleting
38554
+ description: >-
38555
+ Whether the team can host production environments. `Active` means
38556
+ billing is set up. `Inactive` means a team admin must add a payment
38557
+ method in the WorkOS Dashboard. `Suspended` and `Deleting` mean the
38558
+ team can't be provisioned into.
38559
+ example: Active
38560
+ production_enabled_at:
38561
+ type:
38562
+ - string
38563
+ - 'null'
38564
+ format: date-time
38565
+ description: >-
38566
+ The timestamp when production was enabled for the team, or `null` if
38567
+ it never has been.
38568
+ example: '2024-01-01T00:00:00.000Z'
38569
+ created_at:
38570
+ type: string
38571
+ format: date-time
38572
+ description: The timestamp when the team was created.
38573
+ example: '2024-01-01T00:00:00.000Z'
38574
+ updated_at:
38575
+ type: string
38576
+ format: date-time
38577
+ description: The timestamp when the team was last updated.
38578
+ example: '2024-01-01T00:00:00.000Z'
38579
+ required:
38580
+ - object
38581
+ - id
38582
+ - name
38583
+ - production_state
38584
+ - production_enabled_at
38585
+ - created_at
38586
+ - updated_at
37207
38587
  UserlandUserAuthenticationFactorList:
37208
38588
  type: object
37209
38589
  properties:
@@ -38133,6 +39513,98 @@ components:
38133
39513
  - user_code
38134
39514
  - verification_uri
38135
39515
  - expires_in
39516
+ Waitlist:
39517
+ type: object
39518
+ properties:
39519
+ object:
39520
+ type: string
39521
+ description: Distinguishes the Waitlist object.
39522
+ const: waitlist
39523
+ id:
39524
+ type: string
39525
+ description: The unique ID of the Waitlist.
39526
+ example: waitlist_01E4ZCR3C56J083X43JQXF3JK5
39527
+ created_at:
39528
+ format: date-time
39529
+ type: string
39530
+ description: An ISO 8601 timestamp.
39531
+ example: '2026-01-15T12:00:00.000Z'
39532
+ updated_at:
39533
+ format: date-time
39534
+ type: string
39535
+ description: An ISO 8601 timestamp.
39536
+ example: '2026-01-15T12:00:00.000Z'
39537
+ required:
39538
+ - object
39539
+ - id
39540
+ - created_at
39541
+ - updated_at
39542
+ WaitlistEntry:
39543
+ type: object
39544
+ properties:
39545
+ id:
39546
+ type: string
39547
+ description: The unique ID of the waitlist entry.
39548
+ example: wl_user_01E4ZCR3C56J083X43JQXF3JK5
39549
+ email:
39550
+ type: string
39551
+ description: The email address of the user on the waitlist.
39552
+ example: marcelina.davis@example.com
39553
+ state:
39554
+ type: string
39555
+ enum:
39556
+ - pending
39557
+ - approved
39558
+ - denied
39559
+ description: The state of the waitlist entry.
39560
+ example: pending
39561
+ approved_at:
39562
+ format: date-time
39563
+ type:
39564
+ - string
39565
+ - 'null'
39566
+ description: >-
39567
+ The timestamp when the entry was approved, or null if not yet
39568
+ approved.
39569
+ example: null
39570
+ additional_fields:
39571
+ type: object
39572
+ additionalProperties:
39573
+ type: string
39574
+ description: >-
39575
+ Additional fields submitted when the user joined the waitlist.
39576
+ Values are user-provided — treat them as untrusted input when
39577
+ rendering or exporting.
39578
+ example:
39579
+ company: Example Corp
39580
+ waitlist_id:
39581
+ type:
39582
+ - string
39583
+ - 'null'
39584
+ description: The unique ID of the waitlist the entry belongs to.
39585
+ example: waitlist_01E4ZCR3C56J083X43JQXF3JK5
39586
+ created_at:
39587
+ format: date-time
39588
+ type: string
39589
+ description: An ISO 8601 timestamp.
39590
+ example: '2026-01-15T12:00:00.000Z'
39591
+ updated_at:
39592
+ format: date-time
39593
+ type: string
39594
+ description: An ISO 8601 timestamp.
39595
+ example: '2026-01-15T12:00:00.000Z'
39596
+ object:
39597
+ type: string
39598
+ description: Distinguishes the Waitlist Entry object.
39599
+ const: waitlist_entry
39600
+ required:
39601
+ - id
39602
+ - email
39603
+ - state
39604
+ - approved_at
39605
+ - created_at
39606
+ - updated_at
39607
+ - object
38136
39608
  WebhookEndpointJson:
38137
39609
  type: object
38138
39610
  properties: