@workos/openapi-spec 0.3.0 → 0.4.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 +1075 -58
  2. package/package.json +1 -1
  3. package/types.d.ts +1262 -127
@@ -5833,6 +5833,7 @@ paths:
5833
5833
  value.
5834
5834
  example: abc123
5835
5835
  last_used_at:
5836
+ format: date-time
5836
5837
  type:
5837
5838
  - string
5838
5839
  - 'null'
@@ -9326,26 +9327,12 @@ paths:
9326
9327
  description: The authentication method being used.
9327
9328
  example: Password
9328
9329
  action:
9330
+ description: The action being performed.
9331
+ example: sign-in
9329
9332
  type: string
9330
9333
  enum:
9331
- - login
9332
- - signup
9333
9334
  - sign-up
9334
9335
  - sign-in
9335
- - sign_up
9336
- - sign_in
9337
- - sign in
9338
- - sign up
9339
- description: The action being performed.
9340
- example: login
9341
- device_fingerprint:
9342
- type: string
9343
- description: An optional device fingerprint for the request.
9344
- example: fp_abc123
9345
- bot_score:
9346
- type: string
9347
- description: An optional bot detection score for the request.
9348
- example: '0.1'
9349
9336
  required:
9350
9337
  - ip_address
9351
9338
  - user_agent
@@ -9821,6 +9808,7 @@ paths:
9821
9808
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
9822
9809
  required:
9823
9810
  - message
9811
+ security: []
9824
9812
  summary: Get JWKS
9825
9813
  tags:
9826
9814
  - user-management.session-tokens
@@ -16157,6 +16145,432 @@ paths:
16157
16145
  summary: List authentication factors
16158
16146
  tags:
16159
16147
  - user-management.multi-factor-authentication
16148
+ /vault/v1/keys/data-key:
16149
+ post:
16150
+ description: Generate an isolated encryption key for local encryption operations.
16151
+ operationId: JumpWireWeb.KeyController.create_data_key
16152
+ parameters: []
16153
+ requestBody:
16154
+ content:
16155
+ application/json:
16156
+ schema:
16157
+ $ref: '#/components/schemas/CreateDataKeyRequest'
16158
+ description: Data key request.
16159
+ required: true
16160
+ responses:
16161
+ '200':
16162
+ content:
16163
+ application/json:
16164
+ schema:
16165
+ $ref: '#/components/schemas/CreateDataKeyResponse'
16166
+ description: Data key.
16167
+ '400':
16168
+ content:
16169
+ application/json:
16170
+ schema:
16171
+ $ref: '#/components/schemas/Error'
16172
+ description: Bad request.
16173
+ '422':
16174
+ content:
16175
+ application/json:
16176
+ schema:
16177
+ $ref: '#/components/schemas/Error'
16178
+ description: Validation error.
16179
+ summary: Create a data key
16180
+ tags:
16181
+ - vault
16182
+ /vault/v1/keys/decrypt:
16183
+ post:
16184
+ description: Decrypt a previously encrypted data key from WorkOS Vault.
16185
+ operationId: JumpWireWeb.KeyController.decrypt
16186
+ parameters: []
16187
+ requestBody:
16188
+ content:
16189
+ application/json:
16190
+ schema:
16191
+ $ref: '#/components/schemas/DecryptRequest'
16192
+ description: Decrypt request.
16193
+ required: true
16194
+ responses:
16195
+ '200':
16196
+ content:
16197
+ application/json:
16198
+ schema:
16199
+ $ref: '#/components/schemas/DecryptResponse'
16200
+ description: Decrypted key.
16201
+ '400':
16202
+ content:
16203
+ application/json:
16204
+ schema:
16205
+ $ref: '#/components/schemas/Error'
16206
+ description: Bad request.
16207
+ summary: Decrypt a data key
16208
+ tags:
16209
+ - vault
16210
+ /vault/v1/keys/rekey:
16211
+ post:
16212
+ description: Decrypt an existing data key and re-encrypt it under a new key context.
16213
+ operationId: JumpWireWeb.KeyController.rekey
16214
+ parameters: []
16215
+ requestBody:
16216
+ content:
16217
+ application/json:
16218
+ schema:
16219
+ $ref: '#/components/schemas/RekeyRequest'
16220
+ description: Rekey request.
16221
+ required: true
16222
+ responses:
16223
+ '200':
16224
+ content:
16225
+ application/json:
16226
+ schema:
16227
+ $ref: '#/components/schemas/CreateDataKeyResponse'
16228
+ description: Re-encrypted key.
16229
+ '400':
16230
+ content:
16231
+ application/json:
16232
+ schema:
16233
+ $ref: '#/components/schemas/Error'
16234
+ description: Bad request.
16235
+ '422':
16236
+ content:
16237
+ application/json:
16238
+ schema:
16239
+ $ref: '#/components/schemas/Error'
16240
+ description: Validation error.
16241
+ summary: Re-encrypt a data key
16242
+ tags:
16243
+ - vault
16244
+ /vault/v1/kv:
16245
+ get:
16246
+ description: List all encrypted objects with cursor-based pagination.
16247
+ operationId: JumpWireWeb.DataVaultController.index
16248
+ parameters:
16249
+ - description: Upper limit on the number of objects to return.
16250
+ in: query
16251
+ name: limit
16252
+ required: false
16253
+ schema:
16254
+ default: 10
16255
+ example: 10
16256
+ minimum: 1
16257
+ type: integer
16258
+ - description: Cursor for the previous page of results.
16259
+ in: query
16260
+ name: before
16261
+ required: false
16262
+ schema:
16263
+ example: b21f3a8c-7e4d-4b1a-9c5e-2d8f6a7b3c4e
16264
+ type: string
16265
+ - description: Cursor for the next page of results.
16266
+ in: query
16267
+ name: after
16268
+ required: false
16269
+ schema:
16270
+ example: a10e2b7d-6c3f-4a2b-8d1e-3f9a5b8c7d6e
16271
+ type: string
16272
+ - description: Sort direction for results.
16273
+ in: query
16274
+ name: order
16275
+ required: false
16276
+ schema:
16277
+ enum:
16278
+ - asc
16279
+ - desc
16280
+ example: desc
16281
+ type: string
16282
+ - description: Filter results by name or structured search JSON.
16283
+ in: query
16284
+ name: search
16285
+ required: false
16286
+ schema:
16287
+ example: my-secret
16288
+ type: string
16289
+ - description: ISO 8601 timestamp to filter by last modified time.
16290
+ in: query
16291
+ name: updatedAfter
16292
+ required: false
16293
+ schema:
16294
+ example: '2024-01-01T00:00:00Z'
16295
+ format: date-time
16296
+ type: string
16297
+ responses:
16298
+ '200':
16299
+ content:
16300
+ application/json:
16301
+ schema:
16302
+ $ref: '#/components/schemas/ObjectListResponse'
16303
+ description: Object list.
16304
+ '400':
16305
+ content:
16306
+ application/json:
16307
+ schema:
16308
+ $ref: '#/components/schemas/Error'
16309
+ description: Bad request.
16310
+ summary: List objects
16311
+ tags:
16312
+ - vault
16313
+ post:
16314
+ description: Encrypt and store a new key-value object.
16315
+ operationId: JumpWireWeb.DataVaultController.create
16316
+ parameters: []
16317
+ requestBody:
16318
+ content:
16319
+ application/json:
16320
+ schema:
16321
+ $ref: '#/components/schemas/CreateObjectRequest'
16322
+ description: Create object.
16323
+ required: true
16324
+ responses:
16325
+ '201':
16326
+ content:
16327
+ application/json:
16328
+ schema:
16329
+ $ref: '#/components/schemas/ObjectMetadata'
16330
+ description: Object created.
16331
+ '400':
16332
+ content:
16333
+ application/json:
16334
+ schema:
16335
+ $ref: '#/components/schemas/Error'
16336
+ description: Bad request.
16337
+ '409':
16338
+ content:
16339
+ application/json:
16340
+ schema:
16341
+ $ref: '#/components/schemas/Error'
16342
+ description: Conflict.
16343
+ '422':
16344
+ content:
16345
+ application/json:
16346
+ schema:
16347
+ $ref: '#/components/schemas/Error'
16348
+ description: Validation error.
16349
+ summary: Create an object
16350
+ tags:
16351
+ - vault
16352
+ /vault/v1/kv/name/{name}:
16353
+ get:
16354
+ description: Fetch and decrypt an object by its unique name.
16355
+ operationId: JumpWireWeb.DataVaultController.show_by_name
16356
+ parameters:
16357
+ - description: Unique name of the object.
16358
+ in: path
16359
+ name: name
16360
+ required: true
16361
+ schema:
16362
+ example: my-secret
16363
+ type: string
16364
+ responses:
16365
+ '200':
16366
+ content:
16367
+ application/json:
16368
+ schema:
16369
+ $ref: '#/components/schemas/Object'
16370
+ description: Object.
16371
+ '400':
16372
+ content:
16373
+ application/json:
16374
+ schema:
16375
+ $ref: '#/components/schemas/Error'
16376
+ description: Bad request.
16377
+ '404':
16378
+ content:
16379
+ application/json:
16380
+ schema:
16381
+ $ref: '#/components/schemas/Error'
16382
+ description: Not found.
16383
+ summary: Read an object by name
16384
+ tags:
16385
+ - vault
16386
+ /vault/v1/kv/{id}:
16387
+ delete:
16388
+ description: Delete an encrypted object.
16389
+ operationId: JumpWireWeb.DataVaultController.delete
16390
+ parameters:
16391
+ - description: Unique identifier of the object.
16392
+ in: path
16393
+ name: id
16394
+ required: true
16395
+ schema:
16396
+ example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
16397
+ type: string
16398
+ - description: Expected current version for optimistic locking.
16399
+ in: query
16400
+ name: version_check
16401
+ required: false
16402
+ schema:
16403
+ example: c3d4e5f6-7890-abcd-ef12-34567890abcd
16404
+ type: string
16405
+ responses:
16406
+ '200':
16407
+ content:
16408
+ application/json:
16409
+ schema:
16410
+ $ref: '#/components/schemas/DeleteObjectResponse'
16411
+ description: Deletion result.
16412
+ '404':
16413
+ content:
16414
+ application/json:
16415
+ schema:
16416
+ $ref: '#/components/schemas/Error'
16417
+ description: Not found.
16418
+ '409':
16419
+ content:
16420
+ application/json:
16421
+ schema:
16422
+ $ref: '#/components/schemas/Error'
16423
+ description: Version mismatch.
16424
+ '500':
16425
+ content:
16426
+ application/json:
16427
+ schema:
16428
+ $ref: '#/components/schemas/Error'
16429
+ description: Internal error.
16430
+ summary: Delete an object
16431
+ tags:
16432
+ - vault
16433
+ get:
16434
+ description: Fetch and decrypt an object by its unique identifier.
16435
+ operationId: JumpWireWeb.DataVaultController.show_by_id
16436
+ parameters:
16437
+ - description: Unique identifier of the object.
16438
+ in: path
16439
+ name: id
16440
+ required: true
16441
+ schema:
16442
+ example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
16443
+ type: string
16444
+ responses:
16445
+ '200':
16446
+ content:
16447
+ application/json:
16448
+ schema:
16449
+ $ref: '#/components/schemas/Object'
16450
+ description: Object.
16451
+ '400':
16452
+ content:
16453
+ application/json:
16454
+ schema:
16455
+ $ref: '#/components/schemas/Error'
16456
+ description: Bad request.
16457
+ '404':
16458
+ content:
16459
+ application/json:
16460
+ schema:
16461
+ $ref: '#/components/schemas/Error'
16462
+ description: Not found.
16463
+ summary: Read an object by ID
16464
+ tags:
16465
+ - vault
16466
+ put:
16467
+ description: Update the value of an existing encrypted object.
16468
+ operationId: JumpWireWeb.DataVaultController.update
16469
+ parameters:
16470
+ - description: Unique identifier of the object.
16471
+ in: path
16472
+ name: id
16473
+ required: true
16474
+ schema:
16475
+ example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
16476
+ type: string
16477
+ requestBody:
16478
+ content:
16479
+ application/json:
16480
+ schema:
16481
+ $ref: '#/components/schemas/UpdateObjectRequest'
16482
+ description: Update object.
16483
+ required: true
16484
+ responses:
16485
+ '201':
16486
+ content:
16487
+ application/json:
16488
+ schema:
16489
+ $ref: '#/components/schemas/ObjectWithoutValue'
16490
+ description: Object updated.
16491
+ '400':
16492
+ content:
16493
+ application/json:
16494
+ schema:
16495
+ $ref: '#/components/schemas/Error'
16496
+ description: Bad request.
16497
+ '409':
16498
+ content:
16499
+ application/json:
16500
+ schema:
16501
+ $ref: '#/components/schemas/Error'
16502
+ description: Version mismatch.
16503
+ summary: Update an object
16504
+ tags:
16505
+ - vault
16506
+ /vault/v1/kv/{id}/metadata:
16507
+ get:
16508
+ description: Fetch metadata for an object without decrypting it.
16509
+ operationId: JumpWireWeb.DataVaultController.describe
16510
+ parameters:
16511
+ - description: Unique identifier of the object.
16512
+ in: path
16513
+ name: id
16514
+ required: true
16515
+ schema:
16516
+ example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
16517
+ type: string
16518
+ responses:
16519
+ '200':
16520
+ content:
16521
+ application/json:
16522
+ schema:
16523
+ $ref: '#/components/schemas/ObjectWithoutValue'
16524
+ description: Object metadata.
16525
+ '400':
16526
+ content:
16527
+ application/json:
16528
+ schema:
16529
+ $ref: '#/components/schemas/Error'
16530
+ description: Bad request.
16531
+ '404':
16532
+ content:
16533
+ application/json:
16534
+ schema:
16535
+ $ref: '#/components/schemas/Error'
16536
+ description: Not found.
16537
+ summary: Describe an object
16538
+ tags:
16539
+ - vault
16540
+ /vault/v1/kv/{id}/versions:
16541
+ get:
16542
+ description: Retrieve all versions for a specific object.
16543
+ operationId: JumpWireWeb.DataVaultController.versions
16544
+ parameters:
16545
+ - description: Unique identifier of the object.
16546
+ in: path
16547
+ name: id
16548
+ required: true
16549
+ schema:
16550
+ example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
16551
+ type: string
16552
+ responses:
16553
+ '200':
16554
+ content:
16555
+ application/json:
16556
+ schema:
16557
+ $ref: '#/components/schemas/VersionListResponse'
16558
+ description: Version list.
16559
+ '400':
16560
+ content:
16561
+ application/json:
16562
+ schema:
16563
+ $ref: '#/components/schemas/Error'
16564
+ description: Bad request.
16565
+ '404':
16566
+ content:
16567
+ application/json:
16568
+ schema:
16569
+ $ref: '#/components/schemas/Error'
16570
+ description: Not found.
16571
+ summary: List object versions
16572
+ tags:
16573
+ - vault
16160
16574
  /webhook_endpoints:
16161
16575
  get:
16162
16576
  description: Get a list of all of your existing webhook endpoints.
@@ -16636,6 +17050,8 @@ tags:
16636
17050
  description: Manage authorized applications for users.
16637
17051
  - name: user-management.users.feature-flags
16638
17052
  description: Manage user-scoped feature flags.
17053
+ - name: vault
17054
+ description: Vault data encryption endpoints.
16639
17055
  - name: webhooks
16640
17056
  description: Manage webhooks.
16641
17057
  - name: widgets
@@ -17792,6 +18208,13 @@ components:
17792
18208
  type: array
17793
18209
  items:
17794
18210
  type: string
18211
+ expires_at:
18212
+ format: date-time
18213
+ type: string
18214
+ description: >-
18215
+ The timestamp when the API key should expire. Must be a future
18216
+ timestamp. If omitted, the key does not expire.
18217
+ example: '2030-01-01T00:00:00.000Z'
17795
18218
  required:
17796
18219
  - name
17797
18220
  OrganizationDomainDataDto:
@@ -18439,6 +18862,13 @@ components:
18439
18862
  type: array
18440
18863
  items:
18441
18864
  type: string
18865
+ expires_at:
18866
+ format: date-time
18867
+ type: string
18868
+ description: >-
18869
+ The timestamp when the API key should expire. Must be a future
18870
+ timestamp. If omitted, the key does not expire.
18871
+ example: '2030-01-01T00:00:00.000Z'
18442
18872
  required:
18443
18873
  - name
18444
18874
  - organization_id
@@ -18834,6 +19264,9 @@ components:
18834
19264
  - permission.created
18835
19265
  - permission.deleted
18836
19266
  - permission.updated
19267
+ - pipes.connected_account.connected
19268
+ - pipes.connected_account.disconnected
19269
+ - pipes.connected_account.reauthorization_needed
18837
19270
  - session.created
18838
19271
  - session.revoked
18839
19272
  - waitlist_user.approved
@@ -18873,53 +19306,415 @@ components:
18873
19306
  properties:
18874
19307
  organization_id:
18875
19308
  type: string
18876
- description: The ID of the organization to scope the widget session to.
18877
- example: org_01EHZNVPK3SFK441A1RGBFSHRT
18878
- user_id:
19309
+ description: The ID of the organization to scope the widget session to.
19310
+ example: org_01EHZNVPK3SFK441A1RGBFSHRT
19311
+ user_id:
19312
+ type: string
19313
+ description: The ID of the user to issue the widget session token for.
19314
+ example: user_01E4ZCR3C56J083X43JQXF3JK5
19315
+ scopes:
19316
+ type: array
19317
+ description: The scopes to grant the widget session.
19318
+ items:
19319
+ type: string
19320
+ enum:
19321
+ - widgets:users-table:manage
19322
+ - widgets:domain-verification:manage
19323
+ - widgets:sso:manage
19324
+ - widgets:api-keys:manage
19325
+ - widgets:dsync:manage
19326
+ - widgets:audit-log-streaming:manage
19327
+ example:
19328
+ - widgets:users-table:manage
19329
+ required:
19330
+ - organization_id
19331
+ TokenQueryDto:
19332
+ type: object
19333
+ properties:
19334
+ client_id:
19335
+ type: string
19336
+ description: The client ID of the WorkOS environment.
19337
+ example: client_01HZBC6N1EB1ZY7KG32X
19338
+ client_secret:
19339
+ type: string
19340
+ description: The client secret of the WorkOS environment.
19341
+ example: sk_example_123456789
19342
+ code:
19343
+ type: string
19344
+ description: The authorization code received from the authorization callback.
19345
+ example: authorization_code_value
19346
+ grant_type:
19347
+ type: string
19348
+ description: The grant type for the token request.
19349
+ example: authorization_code
19350
+ const: authorization_code
19351
+ required:
19352
+ - client_id
19353
+ - client_secret
19354
+ - code
19355
+ - grant_type
19356
+ Actor:
19357
+ description: The user or API key that performed an action.
19358
+ properties:
19359
+ id:
19360
+ description: Unique identifier of the actor.
19361
+ example: key_01K8ZYT4AWJ6XP0E0S8CTBHE3P
19362
+ type: string
19363
+ name:
19364
+ description: Display name of the actor.
19365
+ example: My API Key
19366
+ type: string
19367
+ required:
19368
+ - id
19369
+ - name
19370
+ title: Actor
19371
+ type: object
19372
+ CreateDataKeyRequest:
19373
+ properties:
19374
+ context:
19375
+ additionalProperties:
19376
+ maxLength: 500
19377
+ type: string
19378
+ description: Map of values used to determine the encryption key.
19379
+ example:
19380
+ organization_id: org_01K8ZYT4AWJ6XP0E0S8CTBHE3P
19381
+ maxProperties: 10
19382
+ type: object
19383
+ required:
19384
+ - context
19385
+ title: CreateDataKeyRequest
19386
+ type: object
19387
+ CreateDataKeyResponse:
19388
+ properties:
19389
+ context:
19390
+ additionalProperties:
19391
+ type: string
19392
+ description: Map of values used to determine the encryption key.
19393
+ example:
19394
+ organization_id: org_01K8ZYT4AWJ6XP0E0S8CTBHE3P
19395
+ type: object
19396
+ data_key:
19397
+ description: Base64-encoded data encryption key.
19398
+ example: DR9idtey9MpMrA1VRFrz30HB1yNgL2PoHZyjAkFeWgg=
19399
+ type: string
19400
+ encrypted_keys:
19401
+ description: Base64-encoded encrypted data key blob.
19402
+ example: >-
19403
+ V09TLkVLTS52MQBiZjUxY2NlYy03OGI0LTUyMDAtYjM4My0zNTczMGU3MWVmNjEBATEBJGJmNjVlMzI2LTQzYTAtNGIyMC04OGM0LTA3ZmYzZGU1NDM0YwF0YmY2NWUzMjYtNDNhMC00YjIwLTg4YzQtMDdmZjNkZTU0MzRj
19404
+ type: string
19405
+ id:
19406
+ description: Unique identifier for the generated data key.
19407
+ example: bf51ccec-78b4-5200-b383-35730e71ef61
19408
+ type: string
19409
+ required:
19410
+ - id
19411
+ - data_key
19412
+ - encrypted_keys
19413
+ - context
19414
+ title: CreateDataKeyResponse
19415
+ type: object
19416
+ CreateObjectRequest:
19417
+ properties:
19418
+ key_context:
19419
+ additionalProperties:
19420
+ maxLength: 500
19421
+ type: string
19422
+ description: Map of values used to determine the encryption key.
19423
+ example:
19424
+ organization_id: org_01K8ZYT4AWJ6XP0E0S8CTBHE3P
19425
+ maxProperties: 10
19426
+ type: object
19427
+ name:
19428
+ description: Unique name for the object.
19429
+ example: my-secret
19430
+ maxLength: 200
19431
+ type: string
19432
+ value:
19433
+ description: Plaintext data to encrypt and store.
19434
+ example: s3cr3t-v4lu3
19435
+ type: string
19436
+ required:
19437
+ - name
19438
+ - value
19439
+ - key_context
19440
+ title: CreateObjectRequest
19441
+ type: object
19442
+ DecryptRequest:
19443
+ properties:
19444
+ keys:
19445
+ description: Base64-encoded encrypted data key to decrypt.
19446
+ example: >-
19447
+ V09TLkVLTS52MQBiZjUxY2NlYy03OGI0LTUyMDAtYjM4My0zNTczMGU3MWVmNjEBATEBJGJmNjVlMzI2LTQzYTAtNGIyMC04OGM0LTA3ZmYzZGU1NDM0YwF0YmY2NWUzMjYtNDNhMC00YjIwLTg4YzQtMDdmZjNkZTU0MzRj
19448
+ type: string
19449
+ required:
19450
+ - keys
19451
+ title: DecryptRequest
19452
+ type: object
19453
+ DecryptResponse:
19454
+ properties:
19455
+ data_key:
19456
+ description: Base64-encoded decrypted data key.
19457
+ example: DR9idtey9MpMrA1VRFrz30HB1yNgL2PoHZyjAkFeWgg=
19458
+ type: string
19459
+ id:
19460
+ description: Unique identifier of the decrypted data key.
19461
+ example: bf51ccec-78b4-5200-b383-35730e71ef61
19462
+ type: string
19463
+ required:
19464
+ - id
19465
+ - data_key
19466
+ title: DecryptResponse
19467
+ type: object
19468
+ DeleteObjectResponse:
19469
+ properties:
19470
+ name:
19471
+ description: Name of the deleted object.
19472
+ example: my-secret
19473
+ type: string
19474
+ success:
19475
+ description: Whether the deletion succeeded.
19476
+ example: true
19477
+ type: boolean
19478
+ required:
19479
+ - success
19480
+ - name
19481
+ title: DeleteObjectResponse
19482
+ type: object
19483
+ Error:
19484
+ description: Error response body.
19485
+ properties:
19486
+ error:
19487
+ description: A human-readable description of the error.
19488
+ example: Invalid request parameters.
19489
+ type: string
19490
+ required:
19491
+ - error
19492
+ title: Error
19493
+ type: object
19494
+ ListMetadata:
19495
+ description: Cursor-based pagination metadata.
19496
+ properties:
19497
+ after:
19498
+ description: Cursor for the next page of results.
19499
+ example: b21f3a8c-7e4d-4b1a-9c5e-2d8f6a7b3c4e
19500
+ type:
19501
+ - string
19502
+ - 'null'
19503
+ before:
19504
+ description: Cursor for the previous page of results.
19505
+ example: a10e2b7d-6c3f-4a2b-8d1e-3f9a5b8c7d6e
19506
+ type:
19507
+ - string
19508
+ - 'null'
19509
+ title: ListMetadata
19510
+ type: object
19511
+ Object:
19512
+ description: An encrypted object with its decrypted value and metadata.
19513
+ properties:
19514
+ id:
19515
+ description: Unique identifier of the object.
19516
+ example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
19517
+ type: string
19518
+ metadata:
19519
+ $ref: '#/components/schemas/ObjectMetadata'
19520
+ name:
19521
+ description: Unique name of the object.
19522
+ example: my-secret
19523
+ type: string
19524
+ value:
19525
+ description: Decrypted plaintext value.
19526
+ example: s3cr3t-v4lu3
19527
+ type: string
19528
+ required:
19529
+ - id
19530
+ - name
19531
+ - value
19532
+ - metadata
19533
+ title: Object
19534
+ type: object
19535
+ ObjectListResponse:
19536
+ properties:
19537
+ data:
19538
+ description: List of object summaries.
19539
+ items:
19540
+ $ref: '#/components/schemas/ObjectSummary'
19541
+ type: array
19542
+ list_metadata:
19543
+ $ref: '#/components/schemas/ListMetadata'
19544
+ required:
19545
+ - data
19546
+ - list_metadata
19547
+ title: ObjectListResponse
19548
+ type: object
19549
+ ObjectMetadata:
19550
+ description: Metadata for a stored encrypted object.
19551
+ properties:
19552
+ context:
19553
+ additionalProperties:
19554
+ type: string
19555
+ description: Map of values used to determine the encryption key.
19556
+ example:
19557
+ organization_id: org_01K8ZYT4AWJ6XP0E0S8CTBHE3P
19558
+ type: object
19559
+ environment_id:
19560
+ description: Environment the object belongs to.
19561
+ example: environment_01K8ZYT4AWJ6XP0E0S8CTBHE3P
19562
+ type: string
19563
+ id:
19564
+ description: Unique identifier of the object.
19565
+ example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
19566
+ type: string
19567
+ key_id:
19568
+ description: Encryption key identifier.
19569
+ example: bf65e326-43a0-4b20-88c4-07ff3de5434c
19570
+ type: string
19571
+ updated_at:
19572
+ description: Timestamp of the last update.
19573
+ example: '2024-06-15T10:30:00Z'
19574
+ format: date-time
19575
+ type: string
19576
+ updated_by:
19577
+ $ref: '#/components/schemas/Actor'
19578
+ version_id:
19579
+ description: Current version identifier of the object.
19580
+ example: c3d4e5f6-7890-abcd-ef12-34567890abcd
19581
+ type:
19582
+ - string
19583
+ - 'null'
19584
+ required:
19585
+ - id
19586
+ - environment_id
19587
+ - key_id
19588
+ - updated_by
19589
+ - updated_at
19590
+ - context
19591
+ title: ObjectMetadata
19592
+ type: object
19593
+ ObjectSummary:
19594
+ description: Summary of an encrypted object returned in list responses.
19595
+ properties:
19596
+ id:
19597
+ description: Unique identifier of the object.
19598
+ example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
19599
+ type: string
19600
+ name:
19601
+ description: Unique name of the object.
19602
+ example: my-secret
19603
+ type: string
19604
+ updated_at:
19605
+ description: Timestamp of the last update.
19606
+ example: '2024-06-15T10:30:00Z'
19607
+ format: date-time
19608
+ type:
19609
+ - string
19610
+ - 'null'
19611
+ required:
19612
+ - id
19613
+ - name
19614
+ title: ObjectSummary
19615
+ type: object
19616
+ ObjectVersion:
19617
+ description: A static snapshot of an encrypted object.
19618
+ properties:
19619
+ created_at:
19620
+ description: Timestamp when the version was created.
19621
+ example: '2024-06-15T10:30:00Z'
19622
+ format: date-time
19623
+ type: string
19624
+ current_version:
19625
+ description: Whether this is the active version.
19626
+ example: true
19627
+ type: boolean
19628
+ etag:
19629
+ description: Hash of the object value.
19630
+ example: d41d8cd98f00b204e9800998ecf8427e
19631
+ type: string
19632
+ id:
19633
+ description: Unique identifier of the version.
19634
+ example: c3d4e5f6-7890-abcd-ef12-34567890abcd
19635
+ type: string
19636
+ size:
19637
+ description: Number of bytes of stored data.
19638
+ example: 256
19639
+ type: integer
19640
+ required:
19641
+ - id
19642
+ - created_at
19643
+ - current_version
19644
+ - size
19645
+ - etag
19646
+ title: ObjectVersion
19647
+ type: object
19648
+ ObjectWithoutValue:
19649
+ description: An encrypted object's metadata (value excluded).
19650
+ properties:
19651
+ id:
19652
+ description: Unique identifier of the object.
19653
+ example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
19654
+ type: string
19655
+ metadata:
19656
+ $ref: '#/components/schemas/ObjectMetadata'
19657
+ name:
19658
+ description: Unique name of the object.
19659
+ example: my-secret
18879
19660
  type: string
18880
- description: The ID of the user to issue the widget session token for.
18881
- example: user_01E4ZCR3C56J083X43JQXF3JK5
18882
- scopes:
18883
- type: array
18884
- description: The scopes to grant the widget session.
18885
- items:
19661
+ required:
19662
+ - id
19663
+ - name
19664
+ - metadata
19665
+ title: ObjectWithoutValue
19666
+ type: object
19667
+ RekeyRequest:
19668
+ properties:
19669
+ context:
19670
+ additionalProperties:
19671
+ maxLength: 500
18886
19672
  type: string
18887
- enum:
18888
- - widgets:users-table:manage
18889
- - widgets:domain-verification:manage
18890
- - widgets:sso:manage
18891
- - widgets:api-keys:manage
18892
- - widgets:dsync:manage
18893
- - widgets:audit-log-streaming:manage
19673
+ description: Map of values used to determine the new encryption key.
18894
19674
  example:
18895
- - widgets:users-table:manage
19675
+ organization_id: org_01K8ZYT4AWJ6XP0E0S8CTBHE3P
19676
+ maxProperties: 10
19677
+ type: object
19678
+ encrypted_keys:
19679
+ description: Base64-encoded encrypted data key blob to re-encrypt.
19680
+ example: >-
19681
+ V09TLkVLTS52MQBiZjUxY2NlYy03OGI0LTUyMDAtYjM4My0zNTczMGU3MWVmNjEBATEBJGJmNjVlMzI2LTQzYTAtNGIyMC04OGM0LTA3ZmYzZGU1NDM0YwF0YmY2NWUzMjYtNDNhMC00YjIwLTg4YzQtMDdmZjNkZTU0MzRj
19682
+ type: string
18896
19683
  required:
18897
- - organization_id
18898
- TokenQueryDto:
19684
+ - encrypted_keys
19685
+ - context
19686
+ title: RekeyRequest
18899
19687
  type: object
19688
+ UpdateObjectRequest:
18900
19689
  properties:
18901
- client_id:
18902
- type: string
18903
- description: The client ID of the WorkOS environment.
18904
- example: client_01HZBC6N1EB1ZY7KG32X
18905
- client_secret:
18906
- type: string
18907
- description: The client secret of the WorkOS environment.
18908
- example: sk_example_123456789
18909
- code:
18910
- type: string
18911
- description: The authorization code received from the authorization callback.
18912
- example: authorization_code_value
18913
- grant_type:
19690
+ value:
19691
+ description: New plaintext value.
19692
+ example: upd4t3d-v4lu3
18914
19693
  type: string
18915
- description: The grant type for the token request.
18916
- example: authorization_code
18917
- const: authorization_code
19694
+ version_check:
19695
+ description: ID of the expected current version for optimistic locking.
19696
+ example: c3d4e5f6-7890-abcd-ef12-34567890abcd
19697
+ type:
19698
+ - string
19699
+ - 'null'
18918
19700
  required:
18919
- - client_id
18920
- - client_secret
18921
- - code
18922
- - grant_type
19701
+ - value
19702
+ title: UpdateObjectRequest
19703
+ type: object
19704
+ VersionListResponse:
19705
+ properties:
19706
+ data:
19707
+ description: List of object versions.
19708
+ items:
19709
+ $ref: '#/components/schemas/ObjectVersion'
19710
+ type: array
19711
+ list_metadata:
19712
+ $ref: '#/components/schemas/ListMetadata'
19713
+ required:
19714
+ - data
19715
+ - list_metadata
19716
+ title: VersionListResponse
19717
+ type: object
18923
19718
  ExternalAuthCompleteResponse:
18924
19719
  type: object
18925
19720
  properties:
@@ -18999,6 +19794,15 @@ components:
18999
19794
  format: date-time
19000
19795
  description: Timestamp of when the API Key was last used.
19001
19796
  example: null
19797
+ expires_at:
19798
+ type:
19799
+ - string
19800
+ - 'null'
19801
+ format: date-time
19802
+ description: >-
19803
+ Timestamp when the API Key expires. Null means the key does not
19804
+ expire.
19805
+ example: null
19002
19806
  permissions:
19003
19807
  type: array
19004
19808
  items:
@@ -19024,6 +19828,7 @@ components:
19024
19828
  - name
19025
19829
  - obfuscated_value
19026
19830
  - last_used_at
19831
+ - expires_at
19027
19832
  - permissions
19028
19833
  - created_at
19029
19834
  - updated_at
@@ -19317,6 +20122,7 @@ components:
19317
20122
  description: A hint showing the last few characters of the secret value.
19318
20123
  example: abc123
19319
20124
  last_used_at:
20125
+ format: date-time
19320
20126
  type:
19321
20127
  - string
19322
20128
  - 'null'
@@ -21392,6 +22198,74 @@ components:
21392
22198
  - custom_attributes
21393
22199
  - created_at
21394
22200
  - updated_at
22201
+ PipesConnectedAccount:
22202
+ type: object
22203
+ properties:
22204
+ object:
22205
+ type: string
22206
+ description: The connected account object.
22207
+ example: connected_account
22208
+ const: connected_account
22209
+ id:
22210
+ type: string
22211
+ description: The unique ID of the connected account.
22212
+ example: data_installation_01EHZNVPK3SFK441A1RGBFSHRT
22213
+ data_integration_id:
22214
+ type: string
22215
+ description: The unique ID of the data integration.
22216
+ example: data_integration_01EHZNVPK3SFK441A1RGBFSHRT
22217
+ provider_slug:
22218
+ type: string
22219
+ description: The provider slug for this connected account.
22220
+ example: github
22221
+ user_id:
22222
+ type:
22223
+ - string
22224
+ - 'null'
22225
+ description: The ID of the User the connected account belongs to.
22226
+ example: user_01EHZNVPK3SFK441A1RGBFSHRT
22227
+ organization_id:
22228
+ type:
22229
+ - string
22230
+ - 'null'
22231
+ description: The ID of the Organization the connected account belongs to.
22232
+ example: org_01EHWNCE74X7JSDV0X3SZ3KJNY
22233
+ scopes:
22234
+ type: array
22235
+ items:
22236
+ type: string
22237
+ description: The OAuth scopes granted for this connected account.
22238
+ example:
22239
+ - repo
22240
+ - user:email
22241
+ state:
22242
+ type: string
22243
+ enum:
22244
+ - connected
22245
+ - needs_reauthorization
22246
+ description: The state of the connected account.
22247
+ example: connected
22248
+ created_at:
22249
+ format: date-time
22250
+ type: string
22251
+ description: An ISO 8601 timestamp.
22252
+ example: '2026-01-15T12:00:00.000Z'
22253
+ updated_at:
22254
+ format: date-time
22255
+ type: string
22256
+ description: An ISO 8601 timestamp.
22257
+ example: '2026-01-15T12:00:00.000Z'
22258
+ required:
22259
+ - object
22260
+ - id
22261
+ - data_integration_id
22262
+ - provider_slug
22263
+ - user_id
22264
+ - organization_id
22265
+ - scopes
22266
+ - state
22267
+ - created_at
22268
+ - updated_at
21395
22269
  VaultByokKeyProvider:
21396
22270
  type: string
21397
22271
  enum:
@@ -21744,6 +22618,15 @@ components:
21744
22618
  - 'null'
21745
22619
  description: The timestamp when the API key was last used.
21746
22620
  example: '2026-01-15T12:00:00.000Z'
22621
+ expires_at:
22622
+ type:
22623
+ - string
22624
+ - 'null'
22625
+ format: date-time
22626
+ description: >-
22627
+ Timestamp when the API Key expires. Null means the key
22628
+ does not expire.
22629
+ example: null
21747
22630
  permissions:
21748
22631
  type: array
21749
22632
  items:
@@ -21860,6 +22743,15 @@ components:
21860
22743
  - 'null'
21861
22744
  description: The timestamp when the API key was last used.
21862
22745
  example: '2026-01-15T12:00:00.000Z'
22746
+ expires_at:
22747
+ type:
22748
+ - string
22749
+ - 'null'
22750
+ format: date-time
22751
+ description: >-
22752
+ Timestamp when the API Key expires. Null means the key
22753
+ does not expire.
22754
+ example: null
21863
22755
  permissions:
21864
22756
  type: array
21865
22757
  items:
@@ -28110,6 +29002,93 @@ components:
28110
29002
  - data
28111
29003
  - created_at
28112
29004
  - object
29005
+ - type: object
29006
+ properties:
29007
+ id:
29008
+ type: string
29009
+ description: Unique identifier for the event.
29010
+ example: event_01EHZNVPK3SFK441A1RGBFSHRT
29011
+ event:
29012
+ type: string
29013
+ const: pipes.connected_account.connected
29014
+ data:
29015
+ $ref: '#/components/schemas/PipesConnectedAccount'
29016
+ description: The event payload.
29017
+ created_at:
29018
+ format: date-time
29019
+ type: string
29020
+ description: An ISO 8601 timestamp.
29021
+ example: '2026-01-15T12:00:00.000Z'
29022
+ context:
29023
+ $ref: '#/components/schemas/EventContextDto'
29024
+ object:
29025
+ type: string
29026
+ description: Distinguishes the Event object.
29027
+ const: event
29028
+ required:
29029
+ - id
29030
+ - event
29031
+ - data
29032
+ - created_at
29033
+ - object
29034
+ - type: object
29035
+ properties:
29036
+ id:
29037
+ type: string
29038
+ description: Unique identifier for the event.
29039
+ example: event_01EHZNVPK3SFK441A1RGBFSHRT
29040
+ event:
29041
+ type: string
29042
+ const: pipes.connected_account.disconnected
29043
+ data:
29044
+ $ref: '#/components/schemas/PipesConnectedAccount'
29045
+ description: The event payload.
29046
+ created_at:
29047
+ format: date-time
29048
+ type: string
29049
+ description: An ISO 8601 timestamp.
29050
+ example: '2026-01-15T12:00:00.000Z'
29051
+ context:
29052
+ $ref: '#/components/schemas/EventContextDto'
29053
+ object:
29054
+ type: string
29055
+ description: Distinguishes the Event object.
29056
+ const: event
29057
+ required:
29058
+ - id
29059
+ - event
29060
+ - data
29061
+ - created_at
29062
+ - object
29063
+ - type: object
29064
+ properties:
29065
+ id:
29066
+ type: string
29067
+ description: Unique identifier for the event.
29068
+ example: event_01EHZNVPK3SFK441A1RGBFSHRT
29069
+ event:
29070
+ type: string
29071
+ const: pipes.connected_account.reauthorization_needed
29072
+ data:
29073
+ $ref: '#/components/schemas/PipesConnectedAccount'
29074
+ description: The event payload.
29075
+ created_at:
29076
+ format: date-time
29077
+ type: string
29078
+ description: An ISO 8601 timestamp.
29079
+ example: '2026-01-15T12:00:00.000Z'
29080
+ context:
29081
+ $ref: '#/components/schemas/EventContextDto'
29082
+ object:
29083
+ type: string
29084
+ description: Distinguishes the Event object.
29085
+ const: event
29086
+ required:
29087
+ - id
29088
+ - event
29089
+ - data
29090
+ - created_at
29091
+ - object
28113
29092
  - type: object
28114
29093
  properties:
28115
29094
  id:
@@ -29652,6 +30631,15 @@ components:
29652
30631
  format: date-time
29653
30632
  description: Timestamp of when the API Key was last used.
29654
30633
  example: null
30634
+ expires_at:
30635
+ type:
30636
+ - string
30637
+ - 'null'
30638
+ format: date-time
30639
+ description: >-
30640
+ Timestamp when the API Key expires. Null means the key does not
30641
+ expire.
30642
+ example: null
29655
30643
  permissions:
29656
30644
  type: array
29657
30645
  items:
@@ -29677,6 +30665,7 @@ components:
29677
30665
  - name
29678
30666
  - obfuscated_value
29679
30667
  - last_used_at
30668
+ - expires_at
29680
30669
  - permissions
29681
30670
  - created_at
29682
30671
  - updated_at
@@ -29761,6 +30750,15 @@ components:
29761
30750
  format: date-time
29762
30751
  description: Timestamp of when the API Key was last used.
29763
30752
  example: null
30753
+ expires_at:
30754
+ type:
30755
+ - string
30756
+ - 'null'
30757
+ format: date-time
30758
+ description: >-
30759
+ Timestamp when the API Key expires. Null means the key does not
30760
+ expire.
30761
+ example: '2030-01-01T00:00:00.000Z'
29764
30762
  permissions:
29765
30763
  type: array
29766
30764
  items:
@@ -29790,6 +30788,7 @@ components:
29790
30788
  - name
29791
30789
  - obfuscated_value
29792
30790
  - last_used_at
30791
+ - expires_at
29793
30792
  - permissions
29794
30793
  - created_at
29795
30794
  - updated_at
@@ -30446,9 +31445,7 @@ components:
30446
31445
  enum:
30447
31446
  - bot_detection
30448
31447
  - brute_force_attack
30449
- - credential_stuffing
30450
31448
  - domain_sign_up_rate_limit
30451
- - ip_sign_up_rate_limit
30452
31449
  - impossible_travel
30453
31450
  - repeat_sign_up
30454
31451
  - stale_account
@@ -30860,6 +31857,15 @@ components:
30860
31857
  format: date-time
30861
31858
  description: Timestamp of when the API Key was last used.
30862
31859
  example: null
31860
+ expires_at:
31861
+ type:
31862
+ - string
31863
+ - 'null'
31864
+ format: date-time
31865
+ description: >-
31866
+ Timestamp when the API Key expires. Null means the key does not
31867
+ expire.
31868
+ example: null
30863
31869
  permissions:
30864
31870
  type: array
30865
31871
  items:
@@ -30885,6 +31891,7 @@ components:
30885
31891
  - name
30886
31892
  - obfuscated_value
30887
31893
  - last_used_at
31894
+ - expires_at
30888
31895
  - permissions
30889
31896
  - created_at
30890
31897
  - updated_at
@@ -30974,6 +31981,15 @@ components:
30974
31981
  format: date-time
30975
31982
  description: Timestamp of when the API Key was last used.
30976
31983
  example: null
31984
+ expires_at:
31985
+ type:
31986
+ - string
31987
+ - 'null'
31988
+ format: date-time
31989
+ description: >-
31990
+ Timestamp when the API Key expires. Null means the key does not
31991
+ expire.
31992
+ example: '2030-01-01T00:00:00.000Z'
30977
31993
  permissions:
30978
31994
  type: array
30979
31995
  items:
@@ -31003,6 +32019,7 @@ components:
31003
32019
  - name
31004
32020
  - obfuscated_value
31005
32021
  - last_used_at
32022
+ - expires_at
31006
32023
  - permissions
31007
32024
  - created_at
31008
32025
  - updated_at
@@ -31531,7 +32548,7 @@ components:
31531
32548
  - VMwareSAML
31532
32549
  - XeroOAuth
31533
32550
  description: The type of SSO connection.
31534
- example: GoogleOAuth
32551
+ example: OktaSAML
31535
32552
  idp_id:
31536
32553
  type: string
31537
32554
  description: The user's unique identifier from the identity provider.