@workos/openapi-spec 0.69.0 → 0.70.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.
@@ -7024,131 +7024,1471 @@ paths:
7024
7024
  tags:
7025
7025
  - application.client-secrets
7026
7026
  /connections:
7027
+ post:
7028
+ description: >-
7029
+ Creates a new connection for an organization. Provide `saml_options` or
7030
+ `oidc_options` to configure the identity provider. When `external_id`
7031
+ matches an existing connection in the organization, that connection is
7032
+ returned instead of creating a duplicate.
7033
+ operationId: ConnectionsController_create
7034
+ parameters: []
7035
+ requestBody:
7036
+ required: true
7037
+ content:
7038
+ application/json:
7039
+ schema:
7040
+ $ref: '#/components/schemas/CreateConnectionDto'
7041
+ responses:
7042
+ '201':
7043
+ description: Created
7044
+ content:
7045
+ application/json:
7046
+ schema:
7047
+ $ref: '#/components/schemas/Connection'
7048
+ '400':
7049
+ description: Bad Request
7050
+ content:
7051
+ application/json:
7052
+ schema:
7053
+ oneOf:
7054
+ - type: object
7055
+ properties:
7056
+ code:
7057
+ type: string
7058
+ description: The error code identifying the type of error.
7059
+ example: external_id_already_in_use
7060
+ const: external_id_already_in_use
7061
+ message:
7062
+ type: string
7063
+ description: A human-readable description of the error.
7064
+ example: Request could not be processed.
7065
+ required:
7066
+ - code
7067
+ - message
7068
+ - type: object
7069
+ properties:
7070
+ code:
7071
+ type: string
7072
+ description: The error code identifying the type of error.
7073
+ example: connection_type_not_supported
7074
+ const: connection_type_not_supported
7075
+ message:
7076
+ type: string
7077
+ description: A human-readable description of the error.
7078
+ example: Request could not be processed.
7079
+ required:
7080
+ - code
7081
+ - message
7082
+ - type: object
7083
+ properties:
7084
+ code:
7085
+ type: string
7086
+ description: The error code identifying the type of error.
7087
+ example: connection_type_or_options_required
7088
+ const: connection_type_or_options_required
7089
+ message:
7090
+ type: string
7091
+ description: A human-readable description of the error.
7092
+ example: Request could not be processed.
7093
+ required:
7094
+ - code
7095
+ - message
7096
+ - type: object
7097
+ properties:
7098
+ code:
7099
+ type: string
7100
+ description: The error code identifying the type of error.
7101
+ example: connection_type_conflicts_with_options
7102
+ const: connection_type_conflicts_with_options
7103
+ message:
7104
+ type: string
7105
+ description: A human-readable description of the error.
7106
+ example: Request could not be processed.
7107
+ required:
7108
+ - code
7109
+ - message
7110
+ - type: object
7111
+ properties:
7112
+ code:
7113
+ type: string
7114
+ description: The error code identifying the type of error.
7115
+ example: both_saml_and_oidc_options_provided
7116
+ const: both_saml_and_oidc_options_provided
7117
+ message:
7118
+ type: string
7119
+ description: A human-readable description of the error.
7120
+ example: Request could not be processed.
7121
+ required:
7122
+ - code
7123
+ - message
7124
+ - type: object
7125
+ properties:
7126
+ code:
7127
+ type: string
7128
+ description: The error code identifying the type of error.
7129
+ example: ambiguous_saml_options
7130
+ const: ambiguous_saml_options
7131
+ message:
7132
+ type: string
7133
+ description: A human-readable description of the error.
7134
+ example: Request could not be processed.
7135
+ required:
7136
+ - code
7137
+ - message
7138
+ - type: object
7139
+ properties:
7140
+ code:
7141
+ type: string
7142
+ description: The error code identifying the type of error.
7143
+ example: incomplete_saml_options
7144
+ const: incomplete_saml_options
7145
+ message:
7146
+ type: string
7147
+ description: A human-readable description of the error.
7148
+ example: Request could not be processed.
7149
+ required:
7150
+ - code
7151
+ - message
7152
+ - type: object
7153
+ properties:
7154
+ code:
7155
+ type: string
7156
+ description: The error code identifying the type of error.
7157
+ example: saml_options_required
7158
+ const: saml_options_required
7159
+ message:
7160
+ type: string
7161
+ description: A human-readable description of the error.
7162
+ example: Request could not be processed.
7163
+ required:
7164
+ - code
7165
+ - message
7166
+ - type: object
7167
+ properties:
7168
+ code:
7169
+ type: string
7170
+ description: The error code identifying the type of error.
7171
+ example: oidc_options_required
7172
+ const: oidc_options_required
7173
+ message:
7174
+ type: string
7175
+ description: A human-readable description of the error.
7176
+ example: Request could not be processed.
7177
+ required:
7178
+ - code
7179
+ - message
7180
+ - type: object
7181
+ properties:
7182
+ code:
7183
+ type: string
7184
+ description: The error code identifying the type of error.
7185
+ example: invalid_certificate
7186
+ const: invalid_certificate
7187
+ message:
7188
+ type: string
7189
+ description: A human-readable description of the error.
7190
+ example: Request could not be processed.
7191
+ required:
7192
+ - code
7193
+ - message
7194
+ - type: object
7195
+ properties:
7196
+ code:
7197
+ type: string
7198
+ description: The error code identifying the type of error.
7199
+ example: client_secret_required
7200
+ const: client_secret_required
7201
+ message:
7202
+ type: string
7203
+ description: A human-readable description of the error.
7204
+ example: Request could not be processed.
7205
+ required:
7206
+ - code
7207
+ - message
7208
+ - type: object
7209
+ properties:
7210
+ code:
7211
+ type: string
7212
+ description: The error code identifying the type of error.
7213
+ example: client_secret_not_accepted
7214
+ const: client_secret_not_accepted
7215
+ message:
7216
+ type: string
7217
+ description: A human-readable description of the error.
7218
+ example: Request could not be processed.
7219
+ required:
7220
+ - code
7221
+ - message
7222
+ - type: object
7223
+ properties:
7224
+ code:
7225
+ type: string
7226
+ description: The error code identifying the type of error.
7227
+ example: key_pair_not_accepted
7228
+ const: key_pair_not_accepted
7229
+ message:
7230
+ type: string
7231
+ description: A human-readable description of the error.
7232
+ example: Request could not be processed.
7233
+ required:
7234
+ - code
7235
+ - message
7236
+ - type: object
7237
+ properties:
7238
+ code:
7239
+ type: string
7240
+ description: The error code identifying the type of error.
7241
+ example: discovery_endpoint_must_use_https
7242
+ const: discovery_endpoint_must_use_https
7243
+ message:
7244
+ type: string
7245
+ description: A human-readable description of the error.
7246
+ example: Request could not be processed.
7247
+ required:
7248
+ - code
7249
+ - message
7250
+ - type: object
7251
+ properties:
7252
+ code:
7253
+ type: string
7254
+ description: The error code identifying the type of error.
7255
+ example: token_authentication_method_not_supported
7256
+ const: token_authentication_method_not_supported
7257
+ message:
7258
+ type: string
7259
+ description: A human-readable description of the error.
7260
+ example: Request could not be processed.
7261
+ required:
7262
+ - code
7263
+ - message
7264
+ '403':
7265
+ description: Forbidden
7266
+ content:
7267
+ application/json:
7268
+ schema:
7269
+ type: object
7270
+ properties:
7271
+ message:
7272
+ type: string
7273
+ description: A human-readable description of the error.
7274
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7275
+ required:
7276
+ - message
7277
+ '404':
7278
+ description: Not Found
7279
+ content:
7280
+ application/json:
7281
+ schema:
7282
+ type: object
7283
+ properties:
7284
+ message:
7285
+ type: string
7286
+ description: A human-readable description of the error.
7287
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7288
+ required:
7289
+ - message
7290
+ '409':
7291
+ description: ''
7292
+ content:
7293
+ application/json:
7294
+ schema:
7295
+ type: object
7296
+ properties:
7297
+ code:
7298
+ type: string
7299
+ description: The error code identifying the type of error.
7300
+ example: connection_deletion_in_progress
7301
+ const: connection_deletion_in_progress
7302
+ message:
7303
+ type: string
7304
+ description: A human-readable description of the error.
7305
+ example: Request could not be processed.
7306
+ required:
7307
+ - code
7308
+ - message
7309
+ '422':
7310
+ description: Unprocessable Entity
7311
+ content:
7312
+ application/json:
7313
+ schema:
7314
+ oneOf:
7315
+ - type: object
7316
+ properties:
7317
+ message:
7318
+ type: string
7319
+ description: A human-readable description of the error.
7320
+ example: >-
7321
+ Organization not found:
7322
+ 'org_01EHQMYV6MBK39QC5PZXHY59C3'.
7323
+ required:
7324
+ - message
7325
+ - type: object
7326
+ properties:
7327
+ code:
7328
+ type: string
7329
+ description: The error code identifying the type of error.
7330
+ example: idp_metadata_fetch_failed
7331
+ const: idp_metadata_fetch_failed
7332
+ message:
7333
+ type: string
7334
+ description: A human-readable description of the error.
7335
+ example: Request could not be processed.
7336
+ required:
7337
+ - code
7338
+ - message
7339
+ - type: object
7340
+ properties:
7341
+ code:
7342
+ type: string
7343
+ description: The error code identifying the type of error.
7344
+ example: connection_could_not_be_verified
7345
+ const: connection_could_not_be_verified
7346
+ message:
7347
+ type: string
7348
+ description: A human-readable description of the error.
7349
+ example: Request could not be processed.
7350
+ required:
7351
+ - code
7352
+ - message
7353
+ - type: object
7354
+ properties:
7355
+ code:
7356
+ type: string
7357
+ description: The error code identifying the type of error.
7358
+ example: invalid_idp_sso_url
7359
+ const: invalid_idp_sso_url
7360
+ message:
7361
+ type: string
7362
+ description: A human-readable description of the error.
7363
+ example: Request could not be processed.
7364
+ required:
7365
+ - code
7366
+ - message
7367
+ summary: Create a Connection
7368
+ tags:
7369
+ - connections
7370
+ x-feature-flag: connections-api-migrations-capabilities-api
7371
+ x-mutually-exclusive-body-groups: &ref_7
7372
+ protocol_options:
7373
+ optional: false
7374
+ variants:
7375
+ saml:
7376
+ - saml_options
7377
+ oidc:
7378
+ - oidc_options
7027
7379
  get:
7028
7380
  description: >-
7029
- Get a list of all of your existing connections matching the criteria
7030
- specified.
7031
- operationId: ConnectionsController_list
7381
+ Get a list of all of your existing connections matching the criteria
7382
+ specified.
7383
+ operationId: ConnectionsController_list
7384
+ parameters:
7385
+ - name: before
7386
+ required: false
7387
+ in: query
7388
+ description: >-
7389
+ An object ID that defines your place in the list. When the ID is not
7390
+ present, you are at the end of the list.
7391
+ schema:
7392
+ example: obj_1234567890
7393
+ type: string
7394
+ - name: after
7395
+ required: false
7396
+ in: query
7397
+ description: >-
7398
+ An object ID that defines your place in the list. When the ID is not
7399
+ present, you are at the end of the list.
7400
+ schema:
7401
+ example: obj_1234567890
7402
+ type: string
7403
+ - name: limit
7404
+ required: false
7405
+ in: query
7406
+ description: >-
7407
+ Upper limit on the number of objects to return, between `1` and
7408
+ `100`.
7409
+ schema:
7410
+ minimum: 1
7411
+ maximum: 100
7412
+ default: 10
7413
+ example: 10
7414
+ type: integer
7415
+ - name: order
7416
+ required: false
7417
+ in: query
7418
+ description: Order the results by the creation time. Defaults to `normal`.
7419
+ schema:
7420
+ $ref: '#/components/schemas/PaginationOrder'
7421
+ - name: connection_type
7422
+ required: false
7423
+ in: query
7424
+ description: Filter Connections by their type.
7425
+ schema:
7426
+ example: GithubOAuth
7427
+ enum:
7428
+ - ADFSSAML
7429
+ - AdpOidc
7430
+ - AppleOAuth
7431
+ - Auth0SAML
7432
+ - AzureSAML
7433
+ - BitbucketOAuth
7434
+ - CasSAML
7435
+ - CloudflareSAML
7436
+ - ClassLinkSAML
7437
+ - CleverOIDC
7438
+ - CyberArkSAML
7439
+ - DuoSAML
7440
+ - EntraIdOIDC
7441
+ - GenericOIDC
7442
+ - GenericSAML
7443
+ - GithubOAuth
7444
+ - GitLabOAuth
7445
+ - GoogleOAuth
7446
+ - GoogleOIDC
7447
+ - GoogleSAML
7448
+ - IntuitOAuth
7449
+ - JumpCloudSAML
7450
+ - KeycloakSAML
7451
+ - LastPassSAML
7452
+ - LinkedInOAuth
7453
+ - LoginGovOidc
7454
+ - MagicLink
7455
+ - MicrosoftOAuth
7456
+ - MiniOrangeSAML
7457
+ - NetIqSAML
7458
+ - OktaOIDC
7459
+ - OktaSAML
7460
+ - OneLoginSAML
7461
+ - OracleSAML
7462
+ - PingFederateSAML
7463
+ - PingOneSAML
7464
+ - RipplingSAML
7465
+ - SalesforceSAML
7466
+ - ShibbolethGenericSAML
7467
+ - ShibbolethSAML
7468
+ - SimpleSamlPhpSAML
7469
+ - SalesforceOAuth
7470
+ - SlackOAuth
7471
+ - VercelMarketplaceOAuth
7472
+ - VercelOAuth
7473
+ - VMwareSAML
7474
+ - XeroOAuth
7475
+ type: string
7476
+ - name: domain
7477
+ required: false
7478
+ in: query
7479
+ description: Filter Connections by their associated domain.
7480
+ schema:
7481
+ example: foo-corp.com
7482
+ type: string
7483
+ - name: organization_id
7484
+ required: false
7485
+ in: query
7486
+ description: Filter Connections by their associated organization.
7487
+ schema:
7488
+ example: org_01EHWNCE74X7JSDV0X3SZ3KJNY
7489
+ type: string
7490
+ - name: search
7491
+ required: false
7492
+ in: query
7493
+ description: Searchable text to match against Connection names.
7494
+ schema:
7495
+ example: Foo Corp
7496
+ type: string
7497
+ responses:
7498
+ '200':
7499
+ description: OK
7500
+ content:
7501
+ application/json:
7502
+ schema:
7503
+ $ref: '#/components/schemas/ConnectionList'
7504
+ '403':
7505
+ description: Forbidden
7506
+ content:
7507
+ application/json:
7508
+ schema:
7509
+ type: object
7510
+ properties:
7511
+ message:
7512
+ type: string
7513
+ description: A human-readable description of the error.
7514
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7515
+ required:
7516
+ - message
7517
+ '422':
7518
+ description: Unprocessable Entity
7519
+ content:
7520
+ application/json:
7521
+ schema:
7522
+ type: object
7523
+ properties:
7524
+ message:
7525
+ type: string
7526
+ description: A human-readable description of the error.
7527
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7528
+ required:
7529
+ - message
7530
+ summary: List Connections
7531
+ tags:
7532
+ - connections
7533
+ /connections/{connectionId}/saml_idp_signing_certs:
7534
+ get:
7535
+ description: >-
7536
+ Lists every Identity Provider signing certificate on the connection,
7537
+ including expired ones, oldest first.
7538
+ operationId: SamlIdpSigningCertificatesController_list
7539
+ parameters:
7540
+ - name: connectionId
7541
+ required: true
7542
+ in: path
7543
+ description: Unique identifier for the Connection.
7544
+ schema:
7545
+ example: conn_01E4ZCR3C56J083X43JQXF3JK5
7546
+ type: string
7547
+ responses:
7548
+ '200':
7549
+ description: OK
7550
+ content:
7551
+ application/json:
7552
+ schema:
7553
+ $ref: '#/components/schemas/SamlIdpSigningCertificateList'
7554
+ '400':
7555
+ description: Bad Request
7556
+ content:
7557
+ application/json:
7558
+ schema:
7559
+ type: object
7560
+ properties:
7561
+ code:
7562
+ type: string
7563
+ description: The error code identifying the type of error.
7564
+ example: connection_is_not_saml
7565
+ const: connection_is_not_saml
7566
+ message:
7567
+ type: string
7568
+ description: A human-readable description of the error.
7569
+ example: Request could not be processed.
7570
+ required:
7571
+ - code
7572
+ - message
7573
+ '403':
7574
+ description: Forbidden
7575
+ content:
7576
+ application/json:
7577
+ schema:
7578
+ type: object
7579
+ properties:
7580
+ message:
7581
+ type: string
7582
+ description: A human-readable description of the error.
7583
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7584
+ required:
7585
+ - message
7586
+ '404':
7587
+ description: Not Found
7588
+ content:
7589
+ application/json:
7590
+ schema:
7591
+ type: object
7592
+ properties:
7593
+ message:
7594
+ type: string
7595
+ description: A human-readable description of the error.
7596
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7597
+ required:
7598
+ - message
7599
+ summary: List IdP signing certificates
7600
+ tags:
7601
+ - connections
7602
+ x-feature-flag: connections-api-migrations-capabilities-api
7603
+ post:
7604
+ description: >-
7605
+ Adds an Identity Provider signing certificate to the connection, so SAML
7606
+ responses signed with its key can be verified. Use this to import a new
7607
+ certificate ahead of an Identity Provider rotation — the existing
7608
+ certificates keep working until they are deleted or expire.
7609
+ operationId: SamlIdpSigningCertificatesController_create
7610
+ parameters:
7611
+ - name: connectionId
7612
+ required: true
7613
+ in: path
7614
+ description: Unique identifier for the Connection.
7615
+ schema:
7616
+ example: conn_01E4ZCR3C56J083X43JQXF3JK5
7617
+ type: string
7618
+ requestBody:
7619
+ required: true
7620
+ content:
7621
+ application/json:
7622
+ schema:
7623
+ $ref: '#/components/schemas/CreateSamlIdpSigningCertificateDto'
7624
+ responses:
7625
+ '201':
7626
+ description: Created
7627
+ content:
7628
+ application/json:
7629
+ schema:
7630
+ $ref: '#/components/schemas/SamlIdpSigningCertificate'
7631
+ '400':
7632
+ description: Bad Request
7633
+ content:
7634
+ application/json:
7635
+ schema:
7636
+ oneOf:
7637
+ - type: object
7638
+ properties:
7639
+ code:
7640
+ type: string
7641
+ description: The error code identifying the type of error.
7642
+ example: connection_is_not_saml
7643
+ const: connection_is_not_saml
7644
+ message:
7645
+ type: string
7646
+ description: A human-readable description of the error.
7647
+ example: Request could not be processed.
7648
+ required:
7649
+ - code
7650
+ - message
7651
+ - type: object
7652
+ properties:
7653
+ code:
7654
+ type: string
7655
+ description: The error code identifying the type of error.
7656
+ example: invalid_certificate
7657
+ const: invalid_certificate
7658
+ message:
7659
+ type: string
7660
+ description: A human-readable description of the error.
7661
+ example: Request could not be processed.
7662
+ required:
7663
+ - code
7664
+ - message
7665
+ - type: object
7666
+ properties:
7667
+ code:
7668
+ type: string
7669
+ description: The error code identifying the type of error.
7670
+ example: certificate_expired
7671
+ const: certificate_expired
7672
+ message:
7673
+ type: string
7674
+ description: A human-readable description of the error.
7675
+ example: Request could not be processed.
7676
+ required:
7677
+ - code
7678
+ - message
7679
+ '403':
7680
+ description: Forbidden
7681
+ content:
7682
+ application/json:
7683
+ schema:
7684
+ type: object
7685
+ properties:
7686
+ message:
7687
+ type: string
7688
+ description: A human-readable description of the error.
7689
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7690
+ required:
7691
+ - message
7692
+ '404':
7693
+ description: Not Found
7694
+ content:
7695
+ application/json:
7696
+ schema:
7697
+ type: object
7698
+ properties:
7699
+ message:
7700
+ type: string
7701
+ description: A human-readable description of the error.
7702
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7703
+ required:
7704
+ - message
7705
+ '422':
7706
+ description: Unprocessable Entity
7707
+ content:
7708
+ application/json:
7709
+ schema:
7710
+ type: object
7711
+ properties:
7712
+ message:
7713
+ type: string
7714
+ description: A human-readable description of the error.
7715
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7716
+ required:
7717
+ - message
7718
+ summary: Create an IdP signing certificate
7719
+ tags:
7720
+ - connections
7721
+ x-feature-flag: connections-api-migrations-capabilities-api
7722
+ /connections/{connectionId}/saml_idp_signing_certs/{certificateId}:
7723
+ delete:
7724
+ description: >-
7725
+ Removes an Identity Provider signing certificate from the connection.
7726
+ The last remaining certificate cannot be deleted. A certificate still
7727
+ published in the Identity Provider metadata may be restored by a
7728
+ metadata refresh.
7729
+ operationId: SamlIdpSigningCertificatesController_delete
7730
+ parameters:
7731
+ - name: connectionId
7732
+ required: true
7733
+ in: path
7734
+ description: Unique identifier for the Connection.
7735
+ schema:
7736
+ example: conn_01E4ZCR3C56J083X43JQXF3JK5
7737
+ type: string
7738
+ - name: certificateId
7739
+ required: true
7740
+ in: path
7741
+ description: Unique identifier for the Identity Provider signing certificate.
7742
+ schema:
7743
+ example: saml_x509_cert_01E4ZCR3C56J083X43JQXF3JK5
7744
+ type: string
7745
+ responses:
7746
+ '204':
7747
+ description: No Content
7748
+ '400':
7749
+ description: Bad Request
7750
+ content:
7751
+ application/json:
7752
+ schema:
7753
+ type: object
7754
+ properties:
7755
+ code:
7756
+ type: string
7757
+ description: The error code identifying the type of error.
7758
+ example: cannot_delete_last_certificate
7759
+ const: cannot_delete_last_certificate
7760
+ message:
7761
+ type: string
7762
+ description: A human-readable description of the error.
7763
+ example: Request could not be processed.
7764
+ required:
7765
+ - code
7766
+ - message
7767
+ '403':
7768
+ description: Forbidden
7769
+ content:
7770
+ application/json:
7771
+ schema:
7772
+ type: object
7773
+ properties:
7774
+ message:
7775
+ type: string
7776
+ description: A human-readable description of the error.
7777
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7778
+ required:
7779
+ - message
7780
+ '404':
7781
+ description: Not Found
7782
+ content:
7783
+ application/json:
7784
+ schema:
7785
+ type: object
7786
+ properties:
7787
+ message:
7788
+ type: string
7789
+ description: A human-readable description of the error.
7790
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7791
+ required:
7792
+ - message
7793
+ summary: Delete an IdP signing certificate
7794
+ tags:
7795
+ - connections
7796
+ x-feature-flag: connections-api-migrations-capabilities-api
7797
+ /connections/{connectionId}/saml_sp_encryption_certs:
7798
+ get:
7799
+ description: >-
7800
+ Lists the public certificates the Identity Provider can use to encrypt
7801
+ SAML responses sent to WorkOS, including expired ones, oldest first.
7802
+ operationId: SamlSpEncryptionCertificatesController_list
7803
+ parameters:
7804
+ - name: connectionId
7805
+ required: true
7806
+ in: path
7807
+ description: Unique identifier for the Connection.
7808
+ schema:
7809
+ example: conn_01E4ZCR3C56J083X43JQXF3JK5
7810
+ type: string
7811
+ responses:
7812
+ '200':
7813
+ description: OK
7814
+ content:
7815
+ application/json:
7816
+ schema:
7817
+ $ref: '#/components/schemas/SamlSpEncryptionCertificateList'
7818
+ '400':
7819
+ description: Bad Request
7820
+ content:
7821
+ application/json:
7822
+ schema:
7823
+ type: object
7824
+ properties:
7825
+ code:
7826
+ type: string
7827
+ description: The error code identifying the type of error.
7828
+ example: connection_is_not_saml
7829
+ const: connection_is_not_saml
7830
+ message:
7831
+ type: string
7832
+ description: A human-readable description of the error.
7833
+ example: Request could not be processed.
7834
+ required:
7835
+ - code
7836
+ - message
7837
+ '403':
7838
+ description: Forbidden
7839
+ content:
7840
+ application/json:
7841
+ schema:
7842
+ type: object
7843
+ properties:
7844
+ message:
7845
+ type: string
7846
+ description: A human-readable description of the error.
7847
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7848
+ required:
7849
+ - message
7850
+ '404':
7851
+ description: Not Found
7852
+ content:
7853
+ application/json:
7854
+ schema:
7855
+ type: object
7856
+ properties:
7857
+ message:
7858
+ type: string
7859
+ description: A human-readable description of the error.
7860
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7861
+ required:
7862
+ - message
7863
+ summary: List SP encryption certificates
7864
+ tags:
7865
+ - connections
7866
+ x-feature-flag: connections-api-migrations-capabilities-api
7867
+ post:
7868
+ description: >-
7869
+ Generates a new encryption key pair for the connection and returns its
7870
+ public certificate. WorkOS holds the private key, so the request takes
7871
+ no body — to bring your own key pairs, provide
7872
+ `saml_options.sp_encryption_key_pairs` when creating the connection
7873
+ instead. Creating a certificate appends rather than replaces: every
7874
+ active private key is tried when decrypting, which lets a rotation
7875
+ overlap the old and new certificates.
7876
+ operationId: SamlSpEncryptionCertificatesController_create
7877
+ parameters:
7878
+ - name: connectionId
7879
+ required: true
7880
+ in: path
7881
+ description: Unique identifier for the Connection.
7882
+ schema:
7883
+ example: conn_01E4ZCR3C56J083X43JQXF3JK5
7884
+ type: string
7885
+ responses:
7886
+ '201':
7887
+ description: Created
7888
+ content:
7889
+ application/json:
7890
+ schema:
7891
+ $ref: '#/components/schemas/SamlSpEncryptionCertificate'
7892
+ '400':
7893
+ description: Bad Request
7894
+ content:
7895
+ application/json:
7896
+ schema:
7897
+ oneOf:
7898
+ - type: object
7899
+ properties:
7900
+ code:
7901
+ type: string
7902
+ description: The error code identifying the type of error.
7903
+ example: connection_is_not_saml
7904
+ const: connection_is_not_saml
7905
+ message:
7906
+ type: string
7907
+ description: A human-readable description of the error.
7908
+ example: Request could not be processed.
7909
+ required:
7910
+ - code
7911
+ - message
7912
+ - type: object
7913
+ properties:
7914
+ code:
7915
+ type: string
7916
+ description: The error code identifying the type of error.
7917
+ example: key_pair_not_accepted
7918
+ const: key_pair_not_accepted
7919
+ message:
7920
+ type: string
7921
+ description: A human-readable description of the error.
7922
+ example: Request could not be processed.
7923
+ required:
7924
+ - code
7925
+ - message
7926
+ '403':
7927
+ description: Forbidden
7928
+ content:
7929
+ application/json:
7930
+ schema:
7931
+ type: object
7932
+ properties:
7933
+ message:
7934
+ type: string
7935
+ description: A human-readable description of the error.
7936
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7937
+ required:
7938
+ - message
7939
+ '404':
7940
+ description: Not Found
7941
+ content:
7942
+ application/json:
7943
+ schema:
7944
+ type: object
7945
+ properties:
7946
+ message:
7947
+ type: string
7948
+ description: A human-readable description of the error.
7949
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7950
+ required:
7951
+ - message
7952
+ '409':
7953
+ description: ''
7954
+ content:
7955
+ application/json:
7956
+ schema:
7957
+ type: object
7958
+ properties:
7959
+ code:
7960
+ type: string
7961
+ description: The error code identifying the type of error.
7962
+ example: too_many_sp_encryption_certs
7963
+ const: too_many_sp_encryption_certs
7964
+ message:
7965
+ type: string
7966
+ description: A human-readable description of the error.
7967
+ example: Request could not be processed.
7968
+ required:
7969
+ - code
7970
+ - message
7971
+ '503':
7972
+ description: ''
7973
+ content:
7974
+ application/json:
7975
+ schema:
7976
+ type: object
7977
+ properties:
7978
+ code:
7979
+ type: string
7980
+ description: The error code identifying the type of error.
7981
+ example: concurrent_request
7982
+ const: concurrent_request
7983
+ message:
7984
+ type: string
7985
+ description: A human-readable description of the error.
7986
+ example: Request could not be processed.
7987
+ required:
7988
+ - code
7989
+ - message
7990
+ summary: Create an SP encryption certificate
7991
+ tags:
7992
+ - connections
7993
+ x-feature-flag: connections-api-migrations-capabilities-api
7994
+ /connections/{connectionId}/saml_sp_encryption_certs/{certificateId}:
7995
+ delete:
7996
+ description: >-
7997
+ Removes an encryption key pair from the connection. SAML responses
7998
+ encrypted with its certificate can no longer be decrypted, so remove the
7999
+ certificate from the Identity Provider first when rotating.
8000
+ operationId: SamlSpEncryptionCertificatesController_delete
8001
+ parameters:
8002
+ - name: connectionId
8003
+ required: true
8004
+ in: path
8005
+ description: Unique identifier for the Connection.
8006
+ schema:
8007
+ example: conn_01E4ZCR3C56J083X43JQXF3JK5
8008
+ type: string
8009
+ - name: certificateId
8010
+ required: true
8011
+ in: path
8012
+ description: >-
8013
+ Unique identifier for the Service Provider encryption key pair.
8014
+ WorkOS holds the corresponding private key, which is never exposed.
8015
+ schema:
8016
+ example: saml_enc_key_pair_01E4ZCR3C56J083X43JQXF3JK5
8017
+ type: string
8018
+ responses:
8019
+ '204':
8020
+ description: No Content
8021
+ '403':
8022
+ description: Forbidden
8023
+ content:
8024
+ application/json:
8025
+ schema:
8026
+ type: object
8027
+ properties:
8028
+ message:
8029
+ type: string
8030
+ description: A human-readable description of the error.
8031
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
8032
+ required:
8033
+ - message
8034
+ '404':
8035
+ description: Not Found
8036
+ content:
8037
+ application/json:
8038
+ schema:
8039
+ type: object
8040
+ properties:
8041
+ message:
8042
+ type: string
8043
+ description: A human-readable description of the error.
8044
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
8045
+ required:
8046
+ - message
8047
+ summary: Delete an SP encryption certificate
8048
+ tags:
8049
+ - connections
8050
+ x-feature-flag: connections-api-migrations-capabilities-api
8051
+ /connections/{connectionId}/saml_sp_signing_cert:
8052
+ get:
8053
+ description: >-
8054
+ Returns the public certificate the Identity Provider can use to verify
8055
+ the signature of SAML requests sent by WorkOS. Responds with `404` when
8056
+ the connection has no request signing key pair.
8057
+ operationId: SamlSpSigningCertificatesController_get
8058
+ parameters:
8059
+ - name: connectionId
8060
+ required: true
8061
+ in: path
8062
+ description: Unique identifier for the Connection.
8063
+ schema:
8064
+ example: conn_01E4ZCR3C56J083X43JQXF3JK5
8065
+ type: string
8066
+ responses:
8067
+ '200':
8068
+ description: OK
8069
+ content:
8070
+ application/json:
8071
+ schema:
8072
+ $ref: '#/components/schemas/SamlSpSigningCertificate'
8073
+ '400':
8074
+ description: Bad Request
8075
+ content:
8076
+ application/json:
8077
+ schema:
8078
+ type: object
8079
+ properties:
8080
+ code:
8081
+ type: string
8082
+ description: The error code identifying the type of error.
8083
+ example: connection_is_not_saml
8084
+ const: connection_is_not_saml
8085
+ message:
8086
+ type: string
8087
+ description: A human-readable description of the error.
8088
+ example: Request could not be processed.
8089
+ required:
8090
+ - code
8091
+ - message
8092
+ '403':
8093
+ description: Forbidden
8094
+ content:
8095
+ application/json:
8096
+ schema:
8097
+ type: object
8098
+ properties:
8099
+ message:
8100
+ type: string
8101
+ description: A human-readable description of the error.
8102
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
8103
+ required:
8104
+ - message
8105
+ '404':
8106
+ description: Not Found
8107
+ content:
8108
+ application/json:
8109
+ schema:
8110
+ type: object
8111
+ properties:
8112
+ message:
8113
+ type: string
8114
+ description: A human-readable description of the error.
8115
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
8116
+ required:
8117
+ - message
8118
+ summary: Get the SP signing certificate
8119
+ tags:
8120
+ - connections
8121
+ x-feature-flag: connections-api-migrations-capabilities-api
8122
+ post:
8123
+ description: >-
8124
+ Generates a new request signing key pair for the connection and returns
8125
+ its public certificate. WorkOS holds the private key, so the request
8126
+ takes no body — to bring your own key pair, provide
8127
+ `saml_options.sp_signing_key_pair` when creating the connection instead.
8128
+ A connection signs with one key pair at a time: delete the existing
8129
+ certificate before creating its replacement.
8130
+ operationId: SamlSpSigningCertificatesController_create
7032
8131
  parameters:
7033
- - name: before
7034
- required: false
7035
- in: query
7036
- description: >-
7037
- An object ID that defines your place in the list. When the ID is not
7038
- present, you are at the end of the list.
8132
+ - name: connectionId
8133
+ required: true
8134
+ in: path
8135
+ description: Unique identifier for the Connection.
7039
8136
  schema:
7040
- example: obj_1234567890
8137
+ example: conn_01E4ZCR3C56J083X43JQXF3JK5
7041
8138
  type: string
7042
- - name: after
7043
- required: false
7044
- in: query
7045
- description: >-
7046
- An object ID that defines your place in the list. When the ID is not
7047
- present, you are at the end of the list.
8139
+ responses:
8140
+ '201':
8141
+ description: Created
8142
+ content:
8143
+ application/json:
8144
+ schema:
8145
+ $ref: '#/components/schemas/SamlSpSigningCertificate'
8146
+ '400':
8147
+ description: Bad Request
8148
+ content:
8149
+ application/json:
8150
+ schema:
8151
+ oneOf:
8152
+ - type: object
8153
+ properties:
8154
+ code:
8155
+ type: string
8156
+ description: The error code identifying the type of error.
8157
+ example: connection_is_not_saml
8158
+ const: connection_is_not_saml
8159
+ message:
8160
+ type: string
8161
+ description: A human-readable description of the error.
8162
+ example: Request could not be processed.
8163
+ required:
8164
+ - code
8165
+ - message
8166
+ - type: object
8167
+ properties:
8168
+ code:
8169
+ type: string
8170
+ description: The error code identifying the type of error.
8171
+ example: key_pair_not_accepted
8172
+ const: key_pair_not_accepted
8173
+ message:
8174
+ type: string
8175
+ description: A human-readable description of the error.
8176
+ example: Request could not be processed.
8177
+ required:
8178
+ - code
8179
+ - message
8180
+ - type: object
8181
+ properties:
8182
+ code:
8183
+ type: string
8184
+ description: The error code identifying the type of error.
8185
+ example: connection_type_not_supported
8186
+ const: connection_type_not_supported
8187
+ message:
8188
+ type: string
8189
+ description: A human-readable description of the error.
8190
+ example: Request could not be processed.
8191
+ required:
8192
+ - code
8193
+ - message
8194
+ '403':
8195
+ description: Forbidden
8196
+ content:
8197
+ application/json:
8198
+ schema:
8199
+ type: object
8200
+ properties:
8201
+ message:
8202
+ type: string
8203
+ description: A human-readable description of the error.
8204
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
8205
+ required:
8206
+ - message
8207
+ '404':
8208
+ description: Not Found
8209
+ content:
8210
+ application/json:
8211
+ schema:
8212
+ type: object
8213
+ properties:
8214
+ message:
8215
+ type: string
8216
+ description: A human-readable description of the error.
8217
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
8218
+ required:
8219
+ - message
8220
+ '409':
8221
+ description: ''
8222
+ content:
8223
+ application/json:
8224
+ schema:
8225
+ type: object
8226
+ properties:
8227
+ code:
8228
+ type: string
8229
+ description: The error code identifying the type of error.
8230
+ example: sp_signing_cert_already_exists
8231
+ const: sp_signing_cert_already_exists
8232
+ message:
8233
+ type: string
8234
+ description: A human-readable description of the error.
8235
+ example: Request could not be processed.
8236
+ required:
8237
+ - code
8238
+ - message
8239
+ '503':
8240
+ description: ''
8241
+ content:
8242
+ application/json:
8243
+ schema:
8244
+ type: object
8245
+ properties:
8246
+ code:
8247
+ type: string
8248
+ description: The error code identifying the type of error.
8249
+ example: concurrent_request
8250
+ const: concurrent_request
8251
+ message:
8252
+ type: string
8253
+ description: A human-readable description of the error.
8254
+ example: Request could not be processed.
8255
+ required:
8256
+ - code
8257
+ - message
8258
+ summary: Create an SP signing certificate
8259
+ tags:
8260
+ - connections
8261
+ x-feature-flag: connections-api-migrations-capabilities-api
8262
+ /connections/{connectionId}/saml_sp_signing_cert/{certificateId}:
8263
+ delete:
8264
+ description: >-
8265
+ Removes the request signing key pair from the connection, after which
8266
+ SAML requests are sent unsigned. Delete the certificate before creating
8267
+ its replacement when rotating.
8268
+ operationId: SamlSpSigningCertificatesController_delete
8269
+ parameters:
8270
+ - name: connectionId
8271
+ required: true
8272
+ in: path
8273
+ description: Unique identifier for the Connection.
7048
8274
  schema:
7049
- example: obj_1234567890
8275
+ example: conn_01E4ZCR3C56J083X43JQXF3JK5
7050
8276
  type: string
7051
- - name: limit
7052
- required: false
7053
- in: query
8277
+ - name: certificateId
8278
+ required: true
8279
+ in: path
7054
8280
  description: >-
7055
- Upper limit on the number of objects to return, between `1` and
7056
- `100`.
7057
- schema:
7058
- minimum: 1
7059
- maximum: 100
7060
- default: 10
7061
- example: 10
7062
- type: integer
7063
- - name: order
7064
- required: false
7065
- in: query
7066
- description: Order the results by the creation time. Defaults to `normal`.
7067
- schema:
7068
- $ref: '#/components/schemas/PaginationOrder'
7069
- - name: connection_type
7070
- required: false
7071
- in: query
7072
- description: Filter Connections by their type.
7073
- schema:
7074
- example: GithubOAuth
7075
- enum:
7076
- - ADFSSAML
7077
- - AdpOidc
7078
- - AppleOAuth
7079
- - Auth0SAML
7080
- - AzureSAML
7081
- - BitbucketOAuth
7082
- - CasSAML
7083
- - CloudflareSAML
7084
- - ClassLinkSAML
7085
- - CleverOIDC
7086
- - CyberArkSAML
7087
- - DuoSAML
7088
- - EntraIdOIDC
7089
- - GenericOIDC
7090
- - GenericSAML
7091
- - GithubOAuth
7092
- - GitLabOAuth
7093
- - GoogleOAuth
7094
- - GoogleOIDC
7095
- - GoogleSAML
7096
- - IntuitOAuth
7097
- - JumpCloudSAML
7098
- - KeycloakSAML
7099
- - LastPassSAML
7100
- - LinkedInOAuth
7101
- - LoginGovOidc
7102
- - MagicLink
7103
- - MicrosoftOAuth
7104
- - MiniOrangeSAML
7105
- - NetIqSAML
7106
- - OktaOIDC
7107
- - OktaSAML
7108
- - OneLoginSAML
7109
- - OracleSAML
7110
- - PingFederateSAML
7111
- - PingOneSAML
7112
- - RipplingSAML
7113
- - SalesforceSAML
7114
- - ShibbolethGenericSAML
7115
- - ShibbolethSAML
7116
- - SimpleSamlPhpSAML
7117
- - SalesforceOAuth
7118
- - SlackOAuth
7119
- - VercelMarketplaceOAuth
7120
- - VercelOAuth
7121
- - VMwareSAML
7122
- - XeroOAuth
7123
- type: string
7124
- - name: domain
7125
- required: false
7126
- in: query
7127
- description: Filter Connections by their associated domain.
7128
- schema:
7129
- example: foo-corp.com
7130
- type: string
7131
- - name: organization_id
7132
- required: false
7133
- in: query
7134
- description: Filter Connections by their associated organization.
8281
+ Unique identifier for the Service Provider signing key pair. WorkOS
8282
+ holds the corresponding private key, which is never exposed.
7135
8283
  schema:
7136
- example: org_01EHWNCE74X7JSDV0X3SZ3KJNY
8284
+ example: saml_party_trust_01E4ZCR3C56J083X43JQXF3JK5
7137
8285
  type: string
7138
- - name: search
7139
- required: false
7140
- in: query
7141
- description: Searchable text to match against Connection names.
8286
+ responses:
8287
+ '204':
8288
+ description: No Content
8289
+ '403':
8290
+ description: Forbidden
8291
+ content:
8292
+ application/json:
8293
+ schema:
8294
+ type: object
8295
+ properties:
8296
+ message:
8297
+ type: string
8298
+ description: A human-readable description of the error.
8299
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
8300
+ required:
8301
+ - message
8302
+ '404':
8303
+ description: Not Found
8304
+ content:
8305
+ application/json:
8306
+ schema:
8307
+ type: object
8308
+ properties:
8309
+ message:
8310
+ type: string
8311
+ description: A human-readable description of the error.
8312
+ example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
8313
+ required:
8314
+ - message
8315
+ summary: Delete the SP signing certificate
8316
+ tags:
8317
+ - connections
8318
+ x-feature-flag: connections-api-migrations-capabilities-api
8319
+ /connections/{id}:
8320
+ patch:
8321
+ description: >-
8322
+ Updates an existing connection. Only the provided fields are changed;
8323
+ fields that accept `null` are reset to their default behavior.
8324
+ operationId: ConnectionsController_patch
8325
+ parameters:
8326
+ - name: id
8327
+ required: true
8328
+ in: path
8329
+ description: Unique identifier for the Connection.
7142
8330
  schema:
7143
- example: Foo Corp
8331
+ example: conn_01E4ZCR3C56J083X43JQXF3JK5
7144
8332
  type: string
8333
+ requestBody:
8334
+ required: true
8335
+ content:
8336
+ application/json:
8337
+ schema:
8338
+ $ref: '#/components/schemas/PatchConnectionDto'
7145
8339
  responses:
7146
8340
  '200':
7147
8341
  description: OK
7148
8342
  content:
7149
8343
  application/json:
7150
8344
  schema:
7151
- $ref: '#/components/schemas/ConnectionList'
8345
+ $ref: '#/components/schemas/Connection'
8346
+ '400':
8347
+ description: Bad Request
8348
+ content:
8349
+ application/json:
8350
+ schema:
8351
+ oneOf:
8352
+ - type: object
8353
+ properties:
8354
+ code:
8355
+ type: string
8356
+ description: The error code identifying the type of error.
8357
+ example: external_id_already_in_use
8358
+ const: external_id_already_in_use
8359
+ message:
8360
+ type: string
8361
+ description: A human-readable description of the error.
8362
+ example: Request could not be processed.
8363
+ required:
8364
+ - code
8365
+ - message
8366
+ - type: object
8367
+ properties:
8368
+ code:
8369
+ type: string
8370
+ description: The error code identifying the type of error.
8371
+ example: connection_type_not_supported
8372
+ const: connection_type_not_supported
8373
+ message:
8374
+ type: string
8375
+ description: A human-readable description of the error.
8376
+ example: Request could not be processed.
8377
+ required:
8378
+ - code
8379
+ - message
8380
+ - type: object
8381
+ properties:
8382
+ code:
8383
+ type: string
8384
+ description: The error code identifying the type of error.
8385
+ example: connection_type_conflicts_with_options
8386
+ const: connection_type_conflicts_with_options
8387
+ message:
8388
+ type: string
8389
+ description: A human-readable description of the error.
8390
+ example: Request could not be processed.
8391
+ required:
8392
+ - code
8393
+ - message
8394
+ - type: object
8395
+ properties:
8396
+ code:
8397
+ type: string
8398
+ description: The error code identifying the type of error.
8399
+ example: both_saml_and_oidc_options_provided
8400
+ const: both_saml_and_oidc_options_provided
8401
+ message:
8402
+ type: string
8403
+ description: A human-readable description of the error.
8404
+ example: Request could not be processed.
8405
+ required:
8406
+ - code
8407
+ - message
8408
+ - type: object
8409
+ properties:
8410
+ code:
8411
+ type: string
8412
+ description: The error code identifying the type of error.
8413
+ example: ambiguous_saml_options
8414
+ const: ambiguous_saml_options
8415
+ message:
8416
+ type: string
8417
+ description: A human-readable description of the error.
8418
+ example: Request could not be processed.
8419
+ required:
8420
+ - code
8421
+ - message
8422
+ - type: object
8423
+ properties:
8424
+ code:
8425
+ type: string
8426
+ description: The error code identifying the type of error.
8427
+ example: token_authentication_method_not_supported
8428
+ const: token_authentication_method_not_supported
8429
+ message:
8430
+ type: string
8431
+ description: A human-readable description of the error.
8432
+ example: Request could not be processed.
8433
+ required:
8434
+ - code
8435
+ - message
8436
+ - type: object
8437
+ properties:
8438
+ code:
8439
+ type: string
8440
+ description: The error code identifying the type of error.
8441
+ example: id_token_signature_algorithm_not_supported
8442
+ const: id_token_signature_algorithm_not_supported
8443
+ message:
8444
+ type: string
8445
+ description: A human-readable description of the error.
8446
+ example: Request could not be processed.
8447
+ required:
8448
+ - code
8449
+ - message
8450
+ - type: object
8451
+ properties:
8452
+ code:
8453
+ type: string
8454
+ description: The error code identifying the type of error.
8455
+ example: client_secret_required
8456
+ const: client_secret_required
8457
+ message:
8458
+ type: string
8459
+ description: A human-readable description of the error.
8460
+ example: Request could not be processed.
8461
+ required:
8462
+ - code
8463
+ - message
8464
+ - type: object
8465
+ properties:
8466
+ code:
8467
+ type: string
8468
+ description: The error code identifying the type of error.
8469
+ example: client_secret_not_accepted
8470
+ const: client_secret_not_accepted
8471
+ message:
8472
+ type: string
8473
+ description: A human-readable description of the error.
8474
+ example: Request could not be processed.
8475
+ required:
8476
+ - code
8477
+ - message
8478
+ - type: object
8479
+ properties:
8480
+ code:
8481
+ type: string
8482
+ description: The error code identifying the type of error.
8483
+ example: discovery_endpoint_must_use_https
8484
+ const: discovery_endpoint_must_use_https
8485
+ message:
8486
+ type: string
8487
+ description: A human-readable description of the error.
8488
+ example: Request could not be processed.
8489
+ required:
8490
+ - code
8491
+ - message
7152
8492
  '403':
7153
8493
  description: Forbidden
7154
8494
  content:
@@ -7162,8 +8502,8 @@ paths:
7162
8502
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7163
8503
  required:
7164
8504
  - message
7165
- '422':
7166
- description: Unprocessable Entity
8505
+ '404':
8506
+ description: Not Found
7167
8507
  content:
7168
8508
  application/json:
7169
8509
  schema:
@@ -7175,10 +8515,95 @@ paths:
7175
8515
  example: 'Organization not found: ''org_01EHQMYV6MBK39QC5PZXHY59C3''.'
7176
8516
  required:
7177
8517
  - message
7178
- summary: List Connections
8518
+ '409':
8519
+ description: ''
8520
+ content:
8521
+ application/json:
8522
+ schema:
8523
+ type: object
8524
+ properties:
8525
+ code:
8526
+ type: string
8527
+ description: The error code identifying the type of error.
8528
+ example: connection_deletion_in_progress
8529
+ const: connection_deletion_in_progress
8530
+ message:
8531
+ type: string
8532
+ description: A human-readable description of the error.
8533
+ example: Request could not be processed.
8534
+ required:
8535
+ - code
8536
+ - message
8537
+ '422':
8538
+ description: Unprocessable Entity
8539
+ content:
8540
+ application/json:
8541
+ schema:
8542
+ oneOf:
8543
+ - type: object
8544
+ properties:
8545
+ message:
8546
+ type: string
8547
+ description: A human-readable description of the error.
8548
+ example: >-
8549
+ Organization not found:
8550
+ 'org_01EHQMYV6MBK39QC5PZXHY59C3'.
8551
+ required:
8552
+ - message
8553
+ - type: object
8554
+ properties:
8555
+ code:
8556
+ type: string
8557
+ description: The error code identifying the type of error.
8558
+ example: connection_type_not_updatable
8559
+ const: connection_type_not_updatable
8560
+ message:
8561
+ type: string
8562
+ description: A human-readable description of the error.
8563
+ example: Request could not be processed.
8564
+ required:
8565
+ - code
8566
+ - message
8567
+ - type: object
8568
+ properties:
8569
+ code:
8570
+ type: string
8571
+ description: The error code identifying the type of error.
8572
+ example: idp_metadata_fetch_failed
8573
+ const: idp_metadata_fetch_failed
8574
+ message:
8575
+ type: string
8576
+ description: A human-readable description of the error.
8577
+ example: Request could not be processed.
8578
+ required:
8579
+ - code
8580
+ - message
8581
+ - type: object
8582
+ properties:
8583
+ code:
8584
+ type: string
8585
+ description: The error code identifying the type of error.
8586
+ example: connection_could_not_be_verified
8587
+ const: connection_could_not_be_verified
8588
+ message:
8589
+ type: string
8590
+ description: A human-readable description of the error.
8591
+ example: Request could not be processed.
8592
+ required:
8593
+ - code
8594
+ - message
8595
+ summary: Update a Connection
7179
8596
  tags:
7180
8597
  - connections
7181
- /connections/{id}:
8598
+ x-feature-flag: connections-api-migrations-capabilities-api
8599
+ x-mutually-exclusive-body-groups: &ref_10
8600
+ protocol_options:
8601
+ optional: true
8602
+ variants:
8603
+ saml:
8604
+ - saml_options
8605
+ oidc:
8606
+ - oidc_options
7182
8607
  get:
7183
8608
  description: Get the details of an existing connection.
7184
8609
  operationId: ConnectionsController_find
@@ -15777,7 +17202,7 @@ paths:
15777
17202
  summary: Create an organization membership
15778
17203
  tags:
15779
17204
  - user-management.organization-membership
15780
- x-mutually-exclusive-body-groups: &ref_10
17205
+ x-mutually-exclusive-body-groups: &ref_14
15781
17206
  role:
15782
17207
  optional: true
15783
17208
  variants:
@@ -15961,7 +17386,7 @@ paths:
15961
17386
  summary: Update an organization membership
15962
17387
  tags:
15963
17388
  - user-management.organization-membership
15964
- x-mutually-exclusive-body-groups: &ref_11
17389
+ x-mutually-exclusive-body-groups: &ref_15
15965
17390
  role:
15966
17391
  optional: true
15967
17392
  variants:
@@ -17281,7 +18706,7 @@ paths:
17281
18706
  summary: Create a user
17282
18707
  tags:
17283
18708
  - user-management.users
17284
- x-mutually-exclusive-body-groups: &ref_12
18709
+ x-mutually-exclusive-body-groups: &ref_16
17285
18710
  password:
17286
18711
  optional: true
17287
18712
  variants:
@@ -17574,7 +18999,7 @@ paths:
17574
18999
  summary: Update a user
17575
19000
  tags:
17576
19001
  - user-management.users
17577
- x-mutually-exclusive-body-groups: &ref_16
19002
+ x-mutually-exclusive-body-groups: &ref_20
17578
19003
  password:
17579
19004
  optional: true
17580
19005
  variants:
@@ -19440,8 +20865,11 @@ paths:
19440
20865
  /user_management/waitlist_entries/{id}:
19441
20866
  delete:
19442
20867
  description: >-
19443
- Removes the entry from the waitlist. An invitation created by approving
19444
- the entry stays valid, so revoke that invitation to withdraw access.
20868
+ Remove the entry from the waitlist. Its email address can join again
20869
+ unless a user with that email now exists in the environment. Deleting
20870
+ the entry does not revoke an invitation created by approving it —
20871
+ [revoke that invitation](/reference/authkit/invitation/revoke)
20872
+ separately to withdraw access.
19445
20873
  operationId: WaitlistEntriesController_delete
19446
20874
  parameters:
19447
20875
  - name: id
@@ -19473,8 +20901,20 @@ paths:
19473
20901
  /user_management/waitlist_entries/{id}/approve:
19474
20902
  post:
19475
20903
  description: >-
19476
- Approve a waitlist entry and send the resulting user invitation email.
19477
- Also reverses a denial: a denied entry can be approved.
20904
+ Approve a waitlist entry, create an invitation for its email address,
20905
+ and send the invitation email. Approving a denied entry reverses the
20906
+ denial. The approval is saved even when the invitation steps fail, so
20907
+ instead of retrying the approval, recover based on the outcome:
20908
+
20909
+
20910
+ - `200` — the entry is approved. If invitation creation failed, no
20911
+ invitation exists yet; [send](/reference/authkit/invitation/send) one.
20912
+
20913
+ - `422` with code `invitation_email_not_sent` — the entry is approved
20914
+ and an invitation exists, but its email was not sent;
20915
+ [resend](/reference/authkit/invitation/resend) it.
20916
+
20917
+ - `422` with code `invalid_state` — the entry was already approved.
19478
20918
  operationId: WaitlistEntriesController_approve
19479
20919
  parameters:
19480
20920
  - name: id
@@ -19610,8 +21050,9 @@ paths:
19610
21050
  /user_management/waitlist_entries/{id}/deny:
19611
21051
  post:
19612
21052
  description: >-
19613
- Deny a pending waitlist entry. A denial can be reversed by approving the
19614
- entry.
21053
+ Deny a pending waitlist entry. Denying an entry that is not pending
21054
+ fails with the code `invalid_state`. A denial can be reversed by
21055
+ approving the entry.
19615
21056
  operationId: WaitlistEntriesController_deny
19616
21057
  parameters:
19617
21058
  - name: id
@@ -19730,7 +21171,10 @@ paths:
19730
21171
  - user-management.waitlists
19731
21172
  /user_management/waitlists:
19732
21173
  get:
19733
- description: Get a list of the waitlists in the environment.
21174
+ description: >-
21175
+ Get a list of the waitlists in the environment. All waitlists are
21176
+ returned in a single response — this endpoint is not paginated, so the
21177
+ `list_metadata` cursors are always `null`.
19734
21178
  operationId: WaitlistsController_list
19735
21179
  parameters: []
19736
21180
  responses:
@@ -19794,7 +21238,9 @@ paths:
19794
21238
  in: path
19795
21239
  description: >-
19796
21240
  The unique ID of the waitlist, or the literal `default` for the
19797
- environment's default waitlist.
21241
+ environment's default waitlist. The default waitlist is created when
21242
+ its first entry is added, so read requests for `default` return a
21243
+ `404` until then.
19798
21244
  schema:
19799
21245
  type: string
19800
21246
  example: waitlist_01E4ZCR3C56J083X43JQXF3JK5
@@ -19831,7 +21277,9 @@ paths:
19831
21277
  in: path
19832
21278
  description: >-
19833
21279
  The unique ID of the waitlist, or the literal `default` for the
19834
- environment's default waitlist.
21280
+ environment's default waitlist. The default waitlist is created when
21281
+ its first entry is added, so read requests for `default` return a
21282
+ `404` until then.
19835
21283
  schema:
19836
21284
  type: string
19837
21285
  example: waitlist_01E4ZCR3C56J083X43JQXF3JK5
@@ -19983,9 +21431,12 @@ paths:
19983
21431
  - user-management.waitlists
19984
21432
  post:
19985
21433
  description: >-
19986
- Add an email address to the waitlist. Creating an entry is idempotent
19987
- per email address: a request for an email address already on the
19988
- waitlist returns the existing entry.
21434
+ Add an email address to the waitlist. Email addresses are normalized and
21435
+ unique per environment: a request for an email address already on the
21436
+ waitlist returns the existing entry unchanged (still with status `201`)
21437
+ and does not send another confirmation email. If a user with the email
21438
+ address already exists in the environment, the request fails with the
21439
+ code `user_already_exists`.
19989
21440
  operationId: WaitlistsController_createEntry
19990
21441
  parameters:
19991
21442
  - name: id
@@ -19993,10 +21444,11 @@ paths:
19993
21444
  in: path
19994
21445
  description: >-
19995
21446
  The unique ID of the waitlist, or the literal `default` for the
19996
- environment's default waitlist.
21447
+ environment's default waitlist. Use `default` when adding the first
21448
+ entry — the default waitlist is created automatically.
19997
21449
  schema:
19998
21450
  type: string
19999
- example: waitlist_01E4ZCR3C56J083X43JQXF3JK5
21451
+ example: default
20000
21452
  requestBody:
20001
21453
  required: true
20002
21454
  content:
@@ -22150,6 +23602,525 @@ components:
22150
23602
  required:
22151
23603
  - parent_resource_id
22152
23604
  x-mutually-exclusive-body-groups: *ref_6
23605
+ CreateConnectionKeyPairDto:
23606
+ type: object
23607
+ properties:
23608
+ key:
23609
+ type: string
23610
+ description: The PEM-encoded private key.
23611
+ example: |-
23612
+ -----BEGIN PRIVATE KEY-----
23613
+ MIIE...
23614
+ -----END PRIVATE KEY-----
23615
+ cert:
23616
+ type: string
23617
+ description: The PEM-encoded X.509 certificate for the key.
23618
+ example: |-
23619
+ -----BEGIN CERTIFICATE-----
23620
+ MIIC...
23621
+ -----END CERTIFICATE-----
23622
+ required:
23623
+ - key
23624
+ - cert
23625
+ CreateConnectionSamlOptionsDto:
23626
+ type: object
23627
+ properties:
23628
+ idp_metadata_url:
23629
+ type: string
23630
+ format: uri
23631
+ description: >-
23632
+ The Identity Provider metadata URL. When provided, the IdP fields
23633
+ and signing certificates are imported from the metadata document.
23634
+ Mutually exclusive with the manual IdP fields.
23635
+ example: https://idp.example.com/metadata.xml
23636
+ acs_url:
23637
+ type: string
23638
+ format: uri
23639
+ description: >-
23640
+ A custom Assertion Consumer Service (ACS) URL override. When
23641
+ omitted, the standard WorkOS-generated ACS URL is used.
23642
+ example: https://example.auth0.com/login/callback?connection=123
23643
+ sp_entity_id:
23644
+ type: string
23645
+ description: >-
23646
+ A custom Service Provider Entity ID (audience) override. When
23647
+ omitted, the connection external key is used.
23648
+ example: https://example.auth0.com/login/callback?connection=123
23649
+ idp_entity_id:
23650
+ type: string
23651
+ description: The Identity Provider Entity ID.
23652
+ example: https://idp.example.com/entity
23653
+ idp_sso_url:
23654
+ type: string
23655
+ format: uri
23656
+ description: >-
23657
+ The Identity Provider SSO URL. Required when configuring the
23658
+ connection with manual IdP fields.
23659
+ example: https://idp.example.com/sso
23660
+ idp_signing_certs:
23661
+ description: >-
23662
+ The X.509 certificates used to verify signed SAML responses from the
23663
+ Identity Provider. Required when configuring the connection with
23664
+ manual IdP fields.
23665
+ example:
23666
+ - |-
23667
+ -----BEGIN CERTIFICATE-----
23668
+ MIIC...
23669
+ -----END CERTIFICATE-----
23670
+ type: array
23671
+ items:
23672
+ type: string
23673
+ sp_signing_key_pair:
23674
+ description: >-
23675
+ The customer-owned key pair used to sign SAML requests sent to the
23676
+ Identity Provider. When omitted, WorkOS generates and manages the
23677
+ signing key pair.
23678
+ $ref: '#/components/schemas/CreateConnectionKeyPairDto'
23679
+ sp_encryption_key_pairs:
23680
+ description: >-
23681
+ The customer-owned key pairs used to decrypt encrypted SAML
23682
+ responses from the Identity Provider. When omitted, WorkOS generates
23683
+ and manages the encryption key pair.
23684
+ type: array
23685
+ items:
23686
+ $ref: '#/components/schemas/CreateConnectionKeyPairDto'
23687
+ CreateConnectionOidcOptionsDto:
23688
+ type: object
23689
+ properties:
23690
+ discovery_endpoint:
23691
+ type: string
23692
+ format: uri
23693
+ description: The OIDC discovery endpoint.
23694
+ example: https://idp.example.com/.well-known/openid-configuration
23695
+ client_id:
23696
+ type: string
23697
+ description: The OIDC client ID.
23698
+ example: client_123
23699
+ client_secret:
23700
+ type: string
23701
+ description: >-
23702
+ The OIDC client secret. Required for `client_secret_basic` and
23703
+ `client_secret_post`, and rejected for `private_key_jwt`, which
23704
+ authenticates with a key pair instead. This value is write-only and
23705
+ is never returned.
23706
+ example: secret_xyz
23707
+ redirect_uri:
23708
+ type: string
23709
+ format: uri
23710
+ description: >-
23711
+ A custom OAuth callback URL override. When omitted, the standard
23712
+ WorkOS-generated redirect URI is used.
23713
+ example: https://auth.workos.com/sso/oidc/conn_externalkey/callback
23714
+ pkce:
23715
+ type: boolean
23716
+ description: Whether PKCE is enabled for the connection.
23717
+ example: true
23718
+ default: true
23719
+ token_authentication_method:
23720
+ type: string
23721
+ enum: &ref_8
23722
+ - client_secret_post
23723
+ - client_secret_basic
23724
+ - private_key_jwt
23725
+ description: The token-endpoint client authentication method.
23726
+ example: client_secret_basic
23727
+ default: client_secret_basic
23728
+ jwt_signing_key_pair:
23729
+ description: >-
23730
+ A key pair for WorkOS to sign `private_key_jwt` client assertions
23731
+ with. Only accepted when `token_authentication_method` is
23732
+ `private_key_jwt`; when omitted, WorkOS generates one and returns
23733
+ its certificate in `oidc_options.jwt_signing_certs`.
23734
+ $ref: '#/components/schemas/CreateConnectionKeyPairDto'
23735
+ id_token_signature_algorithm:
23736
+ type: string
23737
+ enum: &ref_9
23738
+ - ES256
23739
+ - ES384
23740
+ - ES512
23741
+ - EdDSA
23742
+ - HS256
23743
+ - HS384
23744
+ - HS512
23745
+ - PS256
23746
+ - PS384
23747
+ - PS512
23748
+ - RS256
23749
+ - RS384
23750
+ - RS512
23751
+ description: The ID-token signing algorithm.
23752
+ example: RS256
23753
+ fetch_user_info:
23754
+ type: boolean
23755
+ description: >-
23756
+ Whether to fetch additional profile attributes from the userinfo
23757
+ endpoint.
23758
+ example: false
23759
+ required:
23760
+ - discovery_endpoint
23761
+ - client_id
23762
+ CreateConnectionStandardAttributesDto:
23763
+ type: object
23764
+ properties:
23765
+ idp_id:
23766
+ type: string
23767
+ description: >-
23768
+ The IdP attribute or claim the profile's `idp_id` is mapped from.
23769
+ When omitted, the default for the connection type is used.
23770
+ example: sub
23771
+ email:
23772
+ type: string
23773
+ description: >-
23774
+ The IdP attribute or claim the profile's `email` is mapped from.
23775
+ When omitted, the default for the connection type is used.
23776
+ example: email
23777
+ first_name:
23778
+ type: string
23779
+ description: >-
23780
+ The IdP attribute or claim the profile's `first_name` is mapped
23781
+ from. When omitted, the default for the connection type is used.
23782
+ example: given_name
23783
+ last_name:
23784
+ type: string
23785
+ description: >-
23786
+ The IdP attribute or claim the profile's `last_name` is mapped from.
23787
+ When omitted, the default for the connection type is used.
23788
+ example: family_name
23789
+ groups:
23790
+ type:
23791
+ - string
23792
+ - 'null'
23793
+ description: >-
23794
+ The IdP attribute or claim the profile's `groups` are mapped from.
23795
+ `null` leaves the mapping unset.
23796
+ example: memberOf
23797
+ name:
23798
+ type:
23799
+ - string
23800
+ - 'null'
23801
+ description: >-
23802
+ The IdP attribute or claim the profile's `name` is mapped from.
23803
+ `null` leaves the mapping unset.
23804
+ example: displayName
23805
+ CreateConnectionAttributeMapsDto:
23806
+ type: object
23807
+ properties:
23808
+ standard_attributes:
23809
+ description: >-
23810
+ How IdP attributes or claims map onto the standard WorkOS profile
23811
+ fields. Provided fields override the defaults for the connection
23812
+ type.
23813
+ $ref: '#/components/schemas/CreateConnectionStandardAttributesDto'
23814
+ custom_attributes:
23815
+ type: object
23816
+ description: >-
23817
+ How IdP attributes or claims map onto custom attributes, keyed by
23818
+ custom attribute name. Custom attributes must already be defined in
23819
+ the WorkOS dashboard.
23820
+ additionalProperties:
23821
+ type: string
23822
+ example:
23823
+ company: company_claim
23824
+ CreateConnectionDto:
23825
+ allOf:
23826
+ - type: object
23827
+ properties:
23828
+ organization_id:
23829
+ type: string
23830
+ description: >-
23831
+ Unique identifier for the Organization in which the Connection
23832
+ resides.
23833
+ example: org_01EHWNCE74X7JSDV0X3SZ3KJNY
23834
+ name:
23835
+ type: string
23836
+ description: >-
23837
+ A human-readable name for the Connection. This will most
23838
+ commonly be the organization's name.
23839
+ example: Foo Corp
23840
+ external_id:
23841
+ type: string
23842
+ maxLength: 128
23843
+ pattern: ^[\x00-\x7F]+$
23844
+ description: The customer-owned identifier for the Connection.
23845
+ example: acme-legacy-conn-42
23846
+ connection_type:
23847
+ type: string
23848
+ description: >-
23849
+ The type of the Connection. Only SAML and OIDC connection types
23850
+ may be created. When omitted, the type is inferred from the
23851
+ provided options.
23852
+ example: OktaSAML
23853
+ attribute_maps:
23854
+ description: >-
23855
+ How IdP attributes or claims map onto WorkOS profile fields.
23856
+ Provided fields override the defaults for the connection type.
23857
+ $ref: '#/components/schemas/CreateConnectionAttributeMapsDto'
23858
+ required:
23859
+ - organization_id
23860
+ - oneOf:
23861
+ - type: object
23862
+ properties:
23863
+ saml_options:
23864
+ description: >-
23865
+ Protocol configuration for SAML connections. Mutually
23866
+ exclusive with `oidc_options`.
23867
+ $ref: '#/components/schemas/CreateConnectionSamlOptionsDto'
23868
+ required:
23869
+ - saml_options
23870
+ not:
23871
+ anyOf:
23872
+ - properties:
23873
+ oidc_options:
23874
+ x-exclude-from-lint: true
23875
+ required:
23876
+ - oidc_options
23877
+ - type: object
23878
+ properties:
23879
+ oidc_options:
23880
+ description: >-
23881
+ Protocol configuration for OIDC connections. Mutually
23882
+ exclusive with `saml_options`.
23883
+ $ref: '#/components/schemas/CreateConnectionOidcOptionsDto'
23884
+ required:
23885
+ - oidc_options
23886
+ not:
23887
+ anyOf:
23888
+ - properties:
23889
+ saml_options:
23890
+ x-exclude-from-lint: true
23891
+ required:
23892
+ - saml_options
23893
+ x-mutually-exclusive-body-groups: *ref_7
23894
+ PatchConnectionSamlOptionsDto:
23895
+ type: object
23896
+ properties:
23897
+ idp_metadata_url:
23898
+ type:
23899
+ - string
23900
+ - 'null'
23901
+ format: uri
23902
+ description: >-
23903
+ The Identity Provider metadata URL. When provided, the IdP fields
23904
+ and signing certificates are re-imported from the metadata document,
23905
+ replacing the current set. Mutually exclusive with the manual IdP
23906
+ fields. Set to `null` to stop tracking a metadata URL.
23907
+ example: https://idp.example.com/metadata.xml
23908
+ acs_url:
23909
+ type:
23910
+ - string
23911
+ - 'null'
23912
+ format: uri
23913
+ description: >-
23914
+ A custom Assertion Consumer Service (ACS) URL override. Set to
23915
+ `null` to revert to the standard WorkOS-generated ACS URL.
23916
+ example: https://example.auth0.com/login/callback?connection=123
23917
+ sp_entity_id:
23918
+ type:
23919
+ - string
23920
+ - 'null'
23921
+ description: >-
23922
+ A custom Service Provider Entity ID (audience) override. Set to
23923
+ `null` to revert to the connection external key.
23924
+ example: https://example.auth0.com/login/callback?connection=123
23925
+ idp_entity_id:
23926
+ type: string
23927
+ description: The Identity Provider Entity ID.
23928
+ example: https://idp.example.com/entity
23929
+ idp_sso_url:
23930
+ type: string
23931
+ format: uri
23932
+ description: The Identity Provider SSO URL.
23933
+ example: https://idp.example.com/sso
23934
+ PatchConnectionOidcOptionsDto:
23935
+ type: object
23936
+ properties:
23937
+ discovery_endpoint:
23938
+ type: string
23939
+ format: uri
23940
+ description: The OIDC discovery endpoint.
23941
+ example: https://idp.example.com/.well-known/openid-configuration
23942
+ client_id:
23943
+ type: string
23944
+ description: The OIDC client ID.
23945
+ example: client_123
23946
+ client_secret:
23947
+ type: string
23948
+ description: >-
23949
+ The OIDC client secret. Required when moving the connection to
23950
+ `client_secret_basic` or `client_secret_post`, and rejected for
23951
+ `private_key_jwt`, which authenticates with a key pair instead. This
23952
+ value is write-only and is never returned.
23953
+ example: secret_xyz
23954
+ redirect_uri:
23955
+ type:
23956
+ - string
23957
+ - 'null'
23958
+ format: uri
23959
+ description: >-
23960
+ A custom OAuth callback URL override. Set to `null` to revert to the
23961
+ standard WorkOS-generated redirect URI.
23962
+ example: https://auth.workos.com/sso/oidc/conn_externalkey/callback
23963
+ pkce:
23964
+ type: boolean
23965
+ description: Whether PKCE is enabled for the connection.
23966
+ example: true
23967
+ token_authentication_method:
23968
+ type: string
23969
+ enum: *ref_8
23970
+ description: >-
23971
+ The token-endpoint client authentication method. Moving to
23972
+ `private_key_jwt` generates a signing key pair if the connection has
23973
+ none; its certificate is returned in
23974
+ `oidc_options.jwt_signing_certs` and must be registered at the
23975
+ Identity Provider.
23976
+ example: client_secret_basic
23977
+ id_token_signature_algorithm:
23978
+ type: string
23979
+ enum: *ref_9
23980
+ description: The ID-token signing algorithm.
23981
+ example: RS256
23982
+ fetch_user_info:
23983
+ type: boolean
23984
+ description: >-
23985
+ Whether to fetch additional profile attributes from the userinfo
23986
+ endpoint.
23987
+ example: false
23988
+ PatchConnectionStandardAttributesDto:
23989
+ type: object
23990
+ properties:
23991
+ idp_id:
23992
+ type: string
23993
+ description: The IdP attribute or claim the profile's `idp_id` is mapped from.
23994
+ example: sub
23995
+ email:
23996
+ type: string
23997
+ description: The IdP attribute or claim the profile's `email` is mapped from.
23998
+ example: email
23999
+ first_name:
24000
+ type: string
24001
+ description: >-
24002
+ The IdP attribute or claim the profile's `first_name` is mapped
24003
+ from.
24004
+ example: given_name
24005
+ last_name:
24006
+ type: string
24007
+ description: The IdP attribute or claim the profile's `last_name` is mapped from.
24008
+ example: family_name
24009
+ groups:
24010
+ type:
24011
+ - string
24012
+ - 'null'
24013
+ description: >-
24014
+ The IdP attribute or claim the profile's `groups` are mapped from.
24015
+ Set to `null` to unset the mapping.
24016
+ example: memberOf
24017
+ name:
24018
+ type:
24019
+ - string
24020
+ - 'null'
24021
+ description: >-
24022
+ The IdP attribute or claim the profile's `name` is mapped from. Set
24023
+ to `null` to unset the mapping.
24024
+ example: displayName
24025
+ PatchConnectionAttributeMapsDto:
24026
+ type: object
24027
+ properties:
24028
+ standard_attributes:
24029
+ description: >-
24030
+ How IdP attributes or claims map onto the standard WorkOS profile
24031
+ fields. Only the provided fields are updated.
24032
+ $ref: '#/components/schemas/PatchConnectionStandardAttributesDto'
24033
+ custom_attributes:
24034
+ type: object
24035
+ description: >-
24036
+ How IdP attributes or claims map onto custom attributes, keyed by
24037
+ custom attribute name. Custom attributes must already be defined in
24038
+ the WorkOS dashboard. Only the provided keys are updated; a `null`
24039
+ value unsets that mapping.
24040
+ additionalProperties:
24041
+ oneOf:
24042
+ - type: string
24043
+ - type: 'null'
24044
+ example:
24045
+ company: company_claim
24046
+ PatchConnectionDto:
24047
+ allOf:
24048
+ - type: object
24049
+ properties:
24050
+ name:
24051
+ type: string
24052
+ description: A human-readable name for the Connection.
24053
+ example: Foo Corp
24054
+ external_id:
24055
+ type:
24056
+ - string
24057
+ - 'null'
24058
+ maxLength: 128
24059
+ pattern: ^[\x00-\x7F]+$
24060
+ description: >-
24061
+ The customer-owned identifier for the Connection. Set to `null`
24062
+ to stop tracking one.
24063
+ example: acme-legacy-conn-42
24064
+ connection_type:
24065
+ type: string
24066
+ description: >-
24067
+ The type of the Connection. Immutable after creation — it may be
24068
+ sent, but only with the Connection current type.
24069
+ example: OktaSAML
24070
+ attribute_maps:
24071
+ description: >-
24072
+ How IdP attributes or claims map onto WorkOS profile fields.
24073
+ Only the provided fields are updated.
24074
+ $ref: '#/components/schemas/PatchConnectionAttributeMapsDto'
24075
+ - oneOf:
24076
+ - type: object
24077
+ not:
24078
+ anyOf:
24079
+ - properties:
24080
+ saml_options:
24081
+ x-exclude-from-lint: true
24082
+ required:
24083
+ - saml_options
24084
+ - properties:
24085
+ oidc_options:
24086
+ x-exclude-from-lint: true
24087
+ required:
24088
+ - oidc_options
24089
+ - type: object
24090
+ properties:
24091
+ saml_options:
24092
+ description: >-
24093
+ Protocol configuration for SAML connections. Only the
24094
+ provided fields are updated. Mutually exclusive with
24095
+ `oidc_options`.
24096
+ $ref: '#/components/schemas/PatchConnectionSamlOptionsDto'
24097
+ required:
24098
+ - saml_options
24099
+ not:
24100
+ anyOf:
24101
+ - properties:
24102
+ oidc_options:
24103
+ x-exclude-from-lint: true
24104
+ required:
24105
+ - oidc_options
24106
+ - type: object
24107
+ properties:
24108
+ oidc_options:
24109
+ description: >-
24110
+ Protocol configuration for OIDC connections. Only the
24111
+ provided fields are updated. Mutually exclusive with
24112
+ `saml_options`.
24113
+ $ref: '#/components/schemas/PatchConnectionOidcOptionsDto'
24114
+ required:
24115
+ - oidc_options
24116
+ not:
24117
+ anyOf:
24118
+ - properties:
24119
+ saml_options:
24120
+ x-exclude-from-lint: true
24121
+ required:
24122
+ - saml_options
24123
+ x-mutually-exclusive-body-groups: *ref_10
22153
24124
  CreateCorsOriginDto:
22154
24125
  type: object
22155
24126
  properties:
@@ -22331,11 +24302,11 @@ components:
22331
24302
  type:
22332
24303
  - object
22333
24304
  - 'null'
22334
- additionalProperties: &ref_7
24305
+ additionalProperties: &ref_11
22335
24306
  type: string
22336
24307
  maxLength: 600
22337
24308
  maxProperties: 50
22338
- example: &ref_8
24309
+ example: &ref_12
22339
24310
  tier: diamond
22340
24311
  description: >-
22341
24312
  Object containing [metadata](/authkit/metadata) key/value pairs
@@ -22390,9 +24361,9 @@ components:
22390
24361
  type:
22391
24362
  - object
22392
24363
  - 'null'
22393
- additionalProperties: *ref_7
24364
+ additionalProperties: *ref_11
22394
24365
  maxProperties: 50
22395
- example: *ref_8
24366
+ example: *ref_12
22396
24367
  description: >-
22397
24368
  Object containing [metadata](/authkit/metadata) key/value pairs
22398
24369
  associated with the Organization.
@@ -22526,7 +24497,7 @@ components:
22526
24497
  example: application/x-www-form-urlencoded
22527
24498
  authenticate_via:
22528
24499
  type: string
22529
- enum: &ref_9
24500
+ enum: &ref_13
22530
24501
  - request_body
22531
24502
  - basic_auth_header
22532
24503
  description: >-
@@ -22682,7 +24653,7 @@ components:
22682
24653
  example: application/x-www-form-urlencoded
22683
24654
  authenticate_via:
22684
24655
  type: string
22685
- enum: *ref_9
24656
+ enum: *ref_13
22686
24657
  description: >-
22687
24658
  How client credentials are sent when exchanging authorization codes
22688
24659
  and refreshing tokens.
@@ -22858,6 +24829,15 @@ components:
22858
24829
  example: https://example.com/callback
22859
24830
  required:
22860
24831
  - uri
24832
+ CreateSamlIdpSigningCertificateDto:
24833
+ type: object
24834
+ properties:
24835
+ value:
24836
+ type: string
24837
+ description: The PEM-encoded X.509 certificate.
24838
+ example: '-----BEGIN CERTIFICATE-----MIIC...-----END CERTIFICATE-----'
24839
+ required:
24840
+ - value
22861
24841
  CreateTeamDto:
22862
24842
  type: object
22863
24843
  properties:
@@ -23238,9 +25218,9 @@ components:
23238
25218
  x-exclude-from-lint: true
23239
25219
  required:
23240
25220
  - role_slug
23241
- x-mutually-exclusive-body-groups: *ref_10
25221
+ x-mutually-exclusive-body-groups: *ref_14
23242
25222
  UpdateUserlandUserOrganizationMembershipDto:
23243
- x-mutually-exclusive-body-groups: *ref_11
25223
+ x-mutually-exclusive-body-groups: *ref_15
23244
25224
  oneOf:
23245
25225
  - type: object
23246
25226
  not:
@@ -23362,9 +25342,9 @@ components:
23362
25342
  type:
23363
25343
  - object
23364
25344
  - 'null'
23365
- additionalProperties: *ref_7
25345
+ additionalProperties: *ref_11
23366
25346
  maxProperties: 50
23367
- example: &ref_13
25347
+ example: &ref_17
23368
25348
  timezone: America/New_York
23369
25349
  description: >-
23370
25350
  Object containing metadata key/value pairs associated with the
@@ -23463,157 +25443,14 @@ components:
23463
25443
  example: $2a$10$N9qo8uLOickgx2ZMRZoMyeIjZAgcfl7p92ldGxad68LJZdL17lhWy
23464
25444
  password_hash_type:
23465
25445
  type: string
23466
- enum: &ref_14
23467
- - bcrypt
23468
- - firebase-scrypt
23469
- - ssha
23470
- - ssha256
23471
- - scrypt
23472
- - pbkdf2
23473
- - argon2
23474
- description: >-
23475
- The algorithm originally used to hash the password, used
23476
- when providing a `password_hash`. Required with
23477
- `password_hash`. Mutually exclusive with `password`.
23478
- example: bcrypt
23479
- password_salt_position:
23480
- type: string
23481
- enum: &ref_15
23482
- - prefix
23483
- - suffix
23484
- description: >-
23485
- The position of the salt relative to the password when the
23486
- `password_hash` digest was computed: `prefix` for `hash(salt
23487
- + password)` or `suffix` for `hash(password + salt)`. Only
23488
- supported with the `ssha256` hash type and only valid when a
23489
- `password_hash` is provided. Defaults to `suffix`. Mutually
23490
- exclusive with `password`.
23491
- example: prefix
23492
- required:
23493
- - password_hash
23494
- - password_hash_type
23495
- not:
23496
- anyOf:
23497
- - properties:
23498
- password:
23499
- x-exclude-from-lint: true
23500
- required:
23501
- - password
23502
- x-mutually-exclusive-body-groups: *ref_12
23503
- UpdateUserlandUserDto:
23504
- allOf:
23505
- - type: object
23506
- properties:
23507
- email:
23508
- type: string
23509
- format: email
23510
- description: The email address of the user.
23511
- example: marcelina.davis@example.com
23512
- first_name:
23513
- type: string
23514
- description: The first name of the user.
23515
- example: Marcelina
23516
- last_name:
23517
- type: string
23518
- description: The last name of the user.
23519
- example: Davis
23520
- name:
23521
- type: string
23522
- description: The user's full name.
23523
- example: Marcelina Davis
23524
- email_verified:
23525
- type: boolean
23526
- description: Whether the user's email has been verified.
23527
- example: true
23528
- metadata:
23529
- type:
23530
- - object
23531
- - 'null'
23532
- additionalProperties: *ref_7
23533
- maxProperties: 50
23534
- example: *ref_13
23535
- description: >-
23536
- Object containing metadata key/value pairs associated with the
23537
- user.
23538
- propertyNames:
23539
- maxLength: 40
23540
- external_id:
23541
- type:
23542
- - string
23543
- - 'null'
23544
- maxLength: 128
23545
- pattern: ^[\x00-\x7F]+$
23546
- description: The external ID of the user.
23547
- example: f1ffa2b2-c20b-4d39-be5c-212726e11222
23548
- locale:
23549
- type:
23550
- - string
23551
- - 'null'
23552
- description: The user's preferred locale.
23553
- example: en-US
23554
- - oneOf:
23555
- - type: object
23556
- not:
23557
- anyOf:
23558
- - properties:
23559
- password:
23560
- x-exclude-from-lint: true
23561
- required:
23562
- - password
23563
- - properties:
23564
- password_hash:
23565
- x-exclude-from-lint: true
23566
- required:
23567
- - password_hash
23568
- - properties:
23569
- password_hash_type:
23570
- x-exclude-from-lint: true
23571
- required:
23572
- - password_hash_type
23573
- - properties:
23574
- password_salt_position:
23575
- x-exclude-from-lint: true
23576
- required:
23577
- - password_salt_position
23578
- - type: object
23579
- properties:
23580
- password:
23581
- type: string
23582
- description: >-
23583
- The password to set for the user. Mutually exclusive with
23584
- `password_hash`, `password_hash_type`, and
23585
- `password_salt_position`.
23586
- example: strong_password_123!
23587
- required:
23588
- - password
23589
- not:
23590
- anyOf:
23591
- - properties:
23592
- password_hash:
23593
- x-exclude-from-lint: true
23594
- required:
23595
- - password_hash
23596
- - properties:
23597
- password_hash_type:
23598
- x-exclude-from-lint: true
23599
- required:
23600
- - password_hash_type
23601
- - properties:
23602
- password_salt_position:
23603
- x-exclude-from-lint: true
23604
- required:
23605
- - password_salt_position
23606
- - type: object
23607
- properties:
23608
- password_hash:
23609
- type: string
23610
- description: >-
23611
- The hashed password to set for the user. Required with
23612
- `password_hash_type`. Mutually exclusive with `password`.
23613
- example: $2a$10$N9qo8uLOickgx2ZMRZoMyeIjZAgcfl7p92ldGxad68LJZdL17lhWy
23614
- password_hash_type:
23615
- type: string
23616
- enum: *ref_14
25446
+ enum: &ref_18
25447
+ - bcrypt
25448
+ - firebase-scrypt
25449
+ - ssha
25450
+ - ssha256
25451
+ - scrypt
25452
+ - pbkdf2
25453
+ - argon2
23617
25454
  description: >-
23618
25455
  The algorithm originally used to hash the password, used
23619
25456
  when providing a `password_hash`. Required with
@@ -23621,7 +25458,9 @@ components:
23621
25458
  example: bcrypt
23622
25459
  password_salt_position:
23623
25460
  type: string
23624
- enum: *ref_15
25461
+ enum: &ref_19
25462
+ - prefix
25463
+ - suffix
23625
25464
  description: >-
23626
25465
  The position of the salt relative to the password when the
23627
25466
  `password_hash` digest was computed: `prefix` for `hash(salt
@@ -23641,6 +25480,147 @@ components:
23641
25480
  required:
23642
25481
  - password
23643
25482
  x-mutually-exclusive-body-groups: *ref_16
25483
+ UpdateUserlandUserDto:
25484
+ allOf:
25485
+ - type: object
25486
+ properties:
25487
+ email:
25488
+ type: string
25489
+ format: email
25490
+ description: The email address of the user.
25491
+ example: marcelina.davis@example.com
25492
+ first_name:
25493
+ type: string
25494
+ description: The first name of the user.
25495
+ example: Marcelina
25496
+ last_name:
25497
+ type: string
25498
+ description: The last name of the user.
25499
+ example: Davis
25500
+ name:
25501
+ type: string
25502
+ description: The user's full name.
25503
+ example: Marcelina Davis
25504
+ email_verified:
25505
+ type: boolean
25506
+ description: Whether the user's email has been verified.
25507
+ example: true
25508
+ metadata:
25509
+ type:
25510
+ - object
25511
+ - 'null'
25512
+ additionalProperties: *ref_11
25513
+ maxProperties: 50
25514
+ example: *ref_17
25515
+ description: >-
25516
+ Object containing metadata key/value pairs associated with the
25517
+ user.
25518
+ propertyNames:
25519
+ maxLength: 40
25520
+ external_id:
25521
+ type:
25522
+ - string
25523
+ - 'null'
25524
+ maxLength: 128
25525
+ pattern: ^[\x00-\x7F]+$
25526
+ description: The external ID of the user.
25527
+ example: f1ffa2b2-c20b-4d39-be5c-212726e11222
25528
+ locale:
25529
+ type:
25530
+ - string
25531
+ - 'null'
25532
+ description: The user's preferred locale.
25533
+ example: en-US
25534
+ - oneOf:
25535
+ - type: object
25536
+ not:
25537
+ anyOf:
25538
+ - properties:
25539
+ password:
25540
+ x-exclude-from-lint: true
25541
+ required:
25542
+ - password
25543
+ - properties:
25544
+ password_hash:
25545
+ x-exclude-from-lint: true
25546
+ required:
25547
+ - password_hash
25548
+ - properties:
25549
+ password_hash_type:
25550
+ x-exclude-from-lint: true
25551
+ required:
25552
+ - password_hash_type
25553
+ - properties:
25554
+ password_salt_position:
25555
+ x-exclude-from-lint: true
25556
+ required:
25557
+ - password_salt_position
25558
+ - type: object
25559
+ properties:
25560
+ password:
25561
+ type: string
25562
+ description: >-
25563
+ The password to set for the user. Mutually exclusive with
25564
+ `password_hash`, `password_hash_type`, and
25565
+ `password_salt_position`.
25566
+ example: strong_password_123!
25567
+ required:
25568
+ - password
25569
+ not:
25570
+ anyOf:
25571
+ - properties:
25572
+ password_hash:
25573
+ x-exclude-from-lint: true
25574
+ required:
25575
+ - password_hash
25576
+ - properties:
25577
+ password_hash_type:
25578
+ x-exclude-from-lint: true
25579
+ required:
25580
+ - password_hash_type
25581
+ - properties:
25582
+ password_salt_position:
25583
+ x-exclude-from-lint: true
25584
+ required:
25585
+ - password_salt_position
25586
+ - type: object
25587
+ properties:
25588
+ password_hash:
25589
+ type: string
25590
+ description: >-
25591
+ The hashed password to set for the user. Required with
25592
+ `password_hash_type`. Mutually exclusive with `password`.
25593
+ example: $2a$10$N9qo8uLOickgx2ZMRZoMyeIjZAgcfl7p92ldGxad68LJZdL17lhWy
25594
+ password_hash_type:
25595
+ type: string
25596
+ enum: *ref_18
25597
+ description: >-
25598
+ The algorithm originally used to hash the password, used
25599
+ when providing a `password_hash`. Required with
25600
+ `password_hash`. Mutually exclusive with `password`.
25601
+ example: bcrypt
25602
+ password_salt_position:
25603
+ type: string
25604
+ enum: *ref_19
25605
+ description: >-
25606
+ The position of the salt relative to the password when the
25607
+ `password_hash` digest was computed: `prefix` for `hash(salt
25608
+ + password)` or `suffix` for `hash(password + salt)`. Only
25609
+ supported with the `ssha256` hash type and only valid when a
25610
+ `password_hash` is provided. Defaults to `suffix`. Mutually
25611
+ exclusive with `password`.
25612
+ example: prefix
25613
+ required:
25614
+ - password_hash
25615
+ - password_hash_type
25616
+ not:
25617
+ anyOf:
25618
+ - properties:
25619
+ password:
25620
+ x-exclude-from-lint: true
25621
+ required:
25622
+ - password
25623
+ x-mutually-exclusive-body-groups: *ref_20
23644
25624
  VerifyEmailAddressDto:
23645
25625
  type: object
23646
25626
  properties:
@@ -23715,8 +25695,9 @@ components:
23715
25695
  type: object
23716
25696
  description: >-
23717
25697
  Object containing additional key/value pairs collected with the
23718
- waitlist entry. Values are user-provided — treat them as untrusted
23719
- input when rendering or exporting.
25698
+ waitlist entry. Supports up to 50 string pairs, with keys up to 40
25699
+ characters and values up to 600 characters. Values are user-provided
25700
+ — treat them as untrusted input when rendering or exporting.
23720
25701
  additionalProperties:
23721
25702
  type: string
23722
25703
  maxLength: 600
@@ -23746,10 +25727,14 @@ components:
23746
25727
  description: The events that the Webhook Endpoint is subscribed to.
23747
25728
  items:
23748
25729
  type: string
23749
- enum: &ref_17
25730
+ enum: &ref_21
23750
25731
  - agent.blueprint.created
23751
25732
  - agent.blueprint.deleted
23752
25733
  - agent.blueprint.updated
25734
+ - agent.instance.created
25735
+ - agent.instance.deleted
25736
+ - agent.instance.session.created
25737
+ - agent.instance.session.revoked
23753
25738
  - agent.registration.created
23754
25739
  - agent.registration.claim.attempt.created
23755
25740
  - agent.registration.claim.completed
@@ -23868,7 +25853,7 @@ components:
23868
25853
  description: The events that the Webhook Endpoint is subscribed to.
23869
25854
  items:
23870
25855
  type: string
23871
- enum: *ref_17
25856
+ enum: *ref_21
23872
25857
  example:
23873
25858
  - user.created
23874
25859
  - dsync.user.created
@@ -27194,7 +29179,7 @@ components:
27194
29179
  description: >-
27195
29180
  An object containing the custom attribute mapping for the Directory
27196
29181
  Provider.
27197
- example: &ref_23
29182
+ example: &ref_27
27198
29183
  department: Engineering
27199
29184
  job_title: Software Engineer
27200
29185
  role:
@@ -27388,7 +29373,7 @@ components:
27388
29373
  type: object
27389
29374
  additionalProperties: {}
27390
29375
  description: The event payload.
27391
- example: &ref_18
29376
+ example: &ref_22
27392
29377
  id: directory_user_01E1JG7J09H96KYP8HM9B0G5SJ
27393
29378
  directory_id: directory_01ECAZ4NV9QMV47GW873HDCX74
27394
29379
  organization_id: org_01EZTR6WYX1A0DSE2CYMGXQ24Y
@@ -27423,11 +29408,11 @@ components:
27423
29408
  - data
27424
29409
  - created_at
27425
29410
  description: An event emitted by WorkOS.
27426
- example: &ref_28
29411
+ example: &ref_32
27427
29412
  object: event
27428
29413
  id: event_01EHZNVPK3SFK441A1RGBFSHRT
27429
29414
  event: dsync.user.created
27430
- data: *ref_18
29415
+ data: *ref_22
27431
29416
  created_at: '2021-06-25T19:07:33.155Z'
27432
29417
  context: {}
27433
29418
  - oneOf:
@@ -27627,7 +29612,7 @@ components:
27627
29612
  description: >-
27628
29613
  Permission slugs forming the ceiling on what sessions
27629
29614
  minted from this blueprint may do.
27630
- example: &ref_19
29615
+ example: &ref_23
27631
29616
  - crm:read
27632
29617
  - email:send
27633
29618
  invocable_by:
@@ -27640,7 +29625,7 @@ components:
27640
29625
  description: >-
27641
29626
  Role slugs whose members may mint user-delegated
27642
29627
  sessions from this blueprint.
27643
- example: &ref_20
29628
+ example: &ref_24
27644
29629
  - manager
27645
29630
  organization_ids:
27646
29631
  type: array
@@ -27649,7 +29634,7 @@ components:
27649
29634
  description: >-
27650
29635
  Organizations in which autonomous sessions may be
27651
29636
  minted from this blueprint.
27652
- example: &ref_21
29637
+ example: &ref_25
27653
29638
  - org_01EHWNCE74X7JSDV0X3SZ3KJNY
27654
29639
  required:
27655
29640
  - role_slugs
@@ -27779,99 +29764,417 @@ components:
27779
29764
  example: event_01EHZNVPK3SFK441A1RGBFSHRT
27780
29765
  event:
27781
29766
  type: string
27782
- const: agent.blueprint.updated
29767
+ const: agent.blueprint.updated
29768
+ data:
29769
+ type: object
29770
+ properties:
29771
+ object:
29772
+ type: string
29773
+ description: Distinguishes the agent blueprint object.
29774
+ const: agent_blueprint
29775
+ id:
29776
+ type: string
29777
+ description: Unique identifier of the agent blueprint.
29778
+ example: agent_blueprint_01EHWNCE74X7JSDV0X3SZ3KJNY
29779
+ name:
29780
+ type: string
29781
+ description: Human-readable name of the agent blueprint.
29782
+ example: Prospecting Agent
29783
+ description:
29784
+ type:
29785
+ - string
29786
+ - 'null'
29787
+ description: Human-readable description of the agent blueprint.
29788
+ example: Finds and qualifies sales prospects.
29789
+ permissions:
29790
+ type: array
29791
+ items:
29792
+ type: string
29793
+ description: >-
29794
+ Permission slugs forming the ceiling on what sessions
29795
+ minted from this blueprint may do.
29796
+ example: *ref_23
29797
+ invocable_by:
29798
+ type: object
29799
+ properties:
29800
+ role_slugs:
29801
+ type: array
29802
+ items:
29803
+ type: string
29804
+ description: >-
29805
+ Role slugs whose members may mint user-delegated
29806
+ sessions from this blueprint.
29807
+ example: *ref_24
29808
+ organization_ids:
29809
+ type: array
29810
+ items:
29811
+ type: string
29812
+ description: >-
29813
+ Organizations in which autonomous sessions may be
29814
+ minted from this blueprint.
29815
+ example: *ref_25
29816
+ required:
29817
+ - role_slugs
29818
+ - organization_ids
29819
+ description: Who may mint sessions from this blueprint.
29820
+ session_settings:
29821
+ type: object
29822
+ properties:
29823
+ max_age_seconds:
29824
+ type: number
29825
+ description: >-
29826
+ Maximum lifetime of a session in seconds; refreshes
29827
+ never extend a session past this.
29828
+ example: 3600
29829
+ access_token_ttl_seconds:
29830
+ type: number
29831
+ description: Lifetime of each minted access token in seconds.
29832
+ example: 300
29833
+ refresh_token_ttl_seconds:
29834
+ type: number
29835
+ description: Lifetime of each rotated refresh token in seconds.
29836
+ example: 3600
29837
+ required:
29838
+ - max_age_seconds
29839
+ - access_token_ttl_seconds
29840
+ - refresh_token_ttl_seconds
29841
+ description: >-
29842
+ Token and session lifetimes for sessions minted from
29843
+ this blueprint.
29844
+ created_at:
29845
+ type: string
29846
+ description: The timestamp when the agent blueprint was created.
29847
+ example: '2026-01-15T12:00:00.000Z'
29848
+ updated_at:
29849
+ type: string
29850
+ description: The timestamp when the agent blueprint was last updated.
29851
+ example: '2026-01-15T12:00:00.000Z'
29852
+ required:
29853
+ - object
29854
+ - id
29855
+ - name
29856
+ - description
29857
+ - permissions
29858
+ - invocable_by
29859
+ - session_settings
29860
+ - created_at
29861
+ - updated_at
29862
+ description: The event payload.
29863
+ created_at:
29864
+ format: date-time
29865
+ type: string
29866
+ description: An ISO 8601 timestamp.
29867
+ example: '2026-01-15T12:00:00.000Z'
29868
+ context:
29869
+ $ref: '#/components/schemas/EventContextDto'
29870
+ object:
29871
+ type: string
29872
+ description: Distinguishes the Event object.
29873
+ const: event
29874
+ required:
29875
+ - id
29876
+ - event
29877
+ - data
29878
+ - created_at
29879
+ - object
29880
+ - type: object
29881
+ properties:
29882
+ id:
29883
+ type: string
29884
+ description: Unique identifier for the event.
29885
+ example: event_01EHZNVPK3SFK441A1RGBFSHRT
29886
+ event:
29887
+ type: string
29888
+ const: agent.instance.created
29889
+ data:
29890
+ type: object
29891
+ properties:
29892
+ object:
29893
+ type: string
29894
+ description: Distinguishes the agent instance object.
29895
+ const: agent_instance
29896
+ id:
29897
+ type: string
29898
+ description: Unique identifier of the agent instance.
29899
+ example: agent_01EHWNCE74X7JSDV0X3SZ3KJNY
29900
+ agent_blueprint_id:
29901
+ type: string
29902
+ description: The agent blueprint this instance was minted from.
29903
+ example: agent_blueprint_01EHWNCE74X7JSDV0X3SZ3KJNY
29904
+ organization_id:
29905
+ type: string
29906
+ description: The organization the instance acts within.
29907
+ example: org_01EHWNCE74X7JSDV0X3SZ3KJNY
29908
+ organization_membership_id:
29909
+ type:
29910
+ - string
29911
+ - 'null'
29912
+ description: >-
29913
+ The organization membership the instance acts on behalf
29914
+ of; `null` for an autonomous instance.
29915
+ example: om_01EHWNCE74X7JSDV0X3SZ3KJNY
29916
+ type:
29917
+ type: string
29918
+ enum:
29919
+ - delegated
29920
+ - autonomous
29921
+ description: >-
29922
+ Whether the instance acts on behalf of a user
29923
+ (`delegated`) or as itself within an organization
29924
+ (`autonomous`).
29925
+ created_at:
29926
+ type: string
29927
+ description: The timestamp when the agent instance was created.
29928
+ example: '2026-01-15T12:00:00.000Z'
29929
+ updated_at:
29930
+ type: string
29931
+ description: The timestamp when the agent instance was last updated.
29932
+ example: '2026-01-15T12:00:00.000Z'
29933
+ required:
29934
+ - object
29935
+ - id
29936
+ - agent_blueprint_id
29937
+ - organization_id
29938
+ - organization_membership_id
29939
+ - type
29940
+ - created_at
29941
+ - updated_at
29942
+ description: The event payload.
29943
+ created_at:
29944
+ format: date-time
29945
+ type: string
29946
+ description: An ISO 8601 timestamp.
29947
+ example: '2026-01-15T12:00:00.000Z'
29948
+ context:
29949
+ $ref: '#/components/schemas/EventContextDto'
29950
+ object:
29951
+ type: string
29952
+ description: Distinguishes the Event object.
29953
+ const: event
29954
+ required:
29955
+ - id
29956
+ - event
29957
+ - data
29958
+ - created_at
29959
+ - object
29960
+ - type: object
29961
+ properties:
29962
+ id:
29963
+ type: string
29964
+ description: Unique identifier for the event.
29965
+ example: event_01EHZNVPK3SFK441A1RGBFSHRT
29966
+ event:
29967
+ type: string
29968
+ const: agent.instance.deleted
29969
+ data:
29970
+ type: object
29971
+ properties:
29972
+ object:
29973
+ type: string
29974
+ description: Distinguishes the agent instance object.
29975
+ const: agent_instance
29976
+ id:
29977
+ type: string
29978
+ description: Unique identifier of the agent instance.
29979
+ example: agent_01EHWNCE74X7JSDV0X3SZ3KJNY
29980
+ agent_blueprint_id:
29981
+ type: string
29982
+ description: The agent blueprint this instance was minted from.
29983
+ example: agent_blueprint_01EHWNCE74X7JSDV0X3SZ3KJNY
29984
+ organization_id:
29985
+ type: string
29986
+ description: The organization the instance acts within.
29987
+ example: org_01EHWNCE74X7JSDV0X3SZ3KJNY
29988
+ organization_membership_id:
29989
+ type:
29990
+ - string
29991
+ - 'null'
29992
+ description: >-
29993
+ The organization membership the instance acts on behalf
29994
+ of; `null` for an autonomous instance.
29995
+ example: om_01EHWNCE74X7JSDV0X3SZ3KJNY
29996
+ type:
29997
+ type: string
29998
+ enum:
29999
+ - delegated
30000
+ - autonomous
30001
+ description: >-
30002
+ Whether the instance acts on behalf of a user
30003
+ (`delegated`) or as itself within an organization
30004
+ (`autonomous`).
30005
+ created_at:
30006
+ type: string
30007
+ description: The timestamp when the agent instance was created.
30008
+ example: '2026-01-15T12:00:00.000Z'
30009
+ updated_at:
30010
+ type: string
30011
+ description: The timestamp when the agent instance was last updated.
30012
+ example: '2026-01-15T12:00:00.000Z'
30013
+ required:
30014
+ - object
30015
+ - id
30016
+ - agent_blueprint_id
30017
+ - organization_id
30018
+ - organization_membership_id
30019
+ - type
30020
+ - created_at
30021
+ - updated_at
30022
+ description: The event payload.
30023
+ created_at:
30024
+ format: date-time
30025
+ type: string
30026
+ description: An ISO 8601 timestamp.
30027
+ example: '2026-01-15T12:00:00.000Z'
30028
+ context:
30029
+ $ref: '#/components/schemas/EventContextDto'
30030
+ object:
30031
+ type: string
30032
+ description: Distinguishes the Event object.
30033
+ const: event
30034
+ required:
30035
+ - id
30036
+ - event
30037
+ - data
30038
+ - created_at
30039
+ - object
30040
+ - type: object
30041
+ properties:
30042
+ id:
30043
+ type: string
30044
+ description: Unique identifier for the event.
30045
+ example: event_01EHZNVPK3SFK441A1RGBFSHRT
30046
+ event:
30047
+ type: string
30048
+ const: agent.instance.session.created
27783
30049
  data:
27784
30050
  type: object
27785
30051
  properties:
27786
30052
  object:
27787
30053
  type: string
27788
- description: Distinguishes the agent blueprint object.
27789
- const: agent_blueprint
30054
+ description: Distinguishes the agent instance session object.
30055
+ const: agent_instance_session
27790
30056
  id:
27791
30057
  type: string
27792
- description: Unique identifier of the agent blueprint.
27793
- example: agent_blueprint_01EHWNCE74X7JSDV0X3SZ3KJNY
27794
- name:
30058
+ description: Unique identifier of the agent instance session.
30059
+ example: agent_session_01EHWNCE74X7JSDV0X3SZ3KJNY
30060
+ agent_instance_id:
27795
30061
  type: string
27796
- description: Human-readable name of the agent blueprint.
27797
- example: Prospecting Agent
27798
- description:
30062
+ description: The agent instance the session belongs to.
30063
+ example: agent_01EHWNCE74X7JSDV0X3SZ3KJNY
30064
+ organization_id:
30065
+ type: string
30066
+ description: The organization the owning agent instance belongs to.
30067
+ example: org_01EHWNCE74X7JSDV0X3SZ3KJNY
30068
+ expires_at:
30069
+ type: string
30070
+ description: Timestamp when the session expires.
30071
+ example: '2026-01-15T13:00:00.000Z'
30072
+ revoked_at:
27799
30073
  type:
27800
30074
  - string
27801
30075
  - 'null'
27802
- description: Human-readable description of the agent blueprint.
27803
- example: Finds and qualifies sales prospects.
27804
- permissions:
30076
+ description: >-
30077
+ Timestamp when the session was revoked; `null` if it has
30078
+ not been revoked.
30079
+ example: null
30080
+ created_at:
30081
+ type: string
30082
+ description: The timestamp when the session was created.
30083
+ example: '2026-01-15T12:00:00.000Z'
30084
+ updated_at:
30085
+ type: string
30086
+ description: The timestamp when the session was last updated.
30087
+ example: '2026-01-15T12:00:00.000Z'
30088
+ permission_slugs:
27805
30089
  type: array
27806
30090
  items:
27807
30091
  type: string
30092
+ description: The permissions granted to the session at mint time.
30093
+ example:
30094
+ - crm:read
30095
+ required:
30096
+ - object
30097
+ - id
30098
+ - agent_instance_id
30099
+ - organization_id
30100
+ - expires_at
30101
+ - revoked_at
30102
+ - created_at
30103
+ - updated_at
30104
+ - permission_slugs
30105
+ description: The event payload.
30106
+ created_at:
30107
+ format: date-time
30108
+ type: string
30109
+ description: An ISO 8601 timestamp.
30110
+ example: '2026-01-15T12:00:00.000Z'
30111
+ context:
30112
+ $ref: '#/components/schemas/EventContextDto'
30113
+ object:
30114
+ type: string
30115
+ description: Distinguishes the Event object.
30116
+ const: event
30117
+ required:
30118
+ - id
30119
+ - event
30120
+ - data
30121
+ - created_at
30122
+ - object
30123
+ - type: object
30124
+ properties:
30125
+ id:
30126
+ type: string
30127
+ description: Unique identifier for the event.
30128
+ example: event_01EHZNVPK3SFK441A1RGBFSHRT
30129
+ event:
30130
+ type: string
30131
+ const: agent.instance.session.revoked
30132
+ data:
30133
+ type: object
30134
+ properties:
30135
+ object:
30136
+ type: string
30137
+ description: Distinguishes the agent instance session object.
30138
+ const: agent_instance_session
30139
+ id:
30140
+ type: string
30141
+ description: Unique identifier of the agent instance session.
30142
+ example: agent_session_01EHWNCE74X7JSDV0X3SZ3KJNY
30143
+ agent_instance_id:
30144
+ type: string
30145
+ description: The agent instance the session belongs to.
30146
+ example: agent_01EHWNCE74X7JSDV0X3SZ3KJNY
30147
+ organization_id:
30148
+ type: string
30149
+ description: The organization the owning agent instance belongs to.
30150
+ example: org_01EHWNCE74X7JSDV0X3SZ3KJNY
30151
+ expires_at:
30152
+ type: string
30153
+ description: Timestamp when the session expires.
30154
+ example: '2026-01-15T13:00:00.000Z'
30155
+ revoked_at:
30156
+ type:
30157
+ - string
30158
+ - 'null'
27808
30159
  description: >-
27809
- Permission slugs forming the ceiling on what sessions
27810
- minted from this blueprint may do.
27811
- example: *ref_19
27812
- invocable_by:
27813
- type: object
27814
- properties:
27815
- role_slugs:
27816
- type: array
27817
- items:
27818
- type: string
27819
- description: >-
27820
- Role slugs whose members may mint user-delegated
27821
- sessions from this blueprint.
27822
- example: *ref_20
27823
- organization_ids:
27824
- type: array
27825
- items:
27826
- type: string
27827
- description: >-
27828
- Organizations in which autonomous sessions may be
27829
- minted from this blueprint.
27830
- example: *ref_21
27831
- required:
27832
- - role_slugs
27833
- - organization_ids
27834
- description: Who may mint sessions from this blueprint.
27835
- session_settings:
27836
- type: object
27837
- properties:
27838
- max_age_seconds:
27839
- type: number
27840
- description: >-
27841
- Maximum lifetime of a session in seconds; refreshes
27842
- never extend a session past this.
27843
- example: 3600
27844
- access_token_ttl_seconds:
27845
- type: number
27846
- description: Lifetime of each minted access token in seconds.
27847
- example: 300
27848
- refresh_token_ttl_seconds:
27849
- type: number
27850
- description: Lifetime of each rotated refresh token in seconds.
27851
- example: 3600
27852
- required:
27853
- - max_age_seconds
27854
- - access_token_ttl_seconds
27855
- - refresh_token_ttl_seconds
27856
- description: >-
27857
- Token and session lifetimes for sessions minted from
27858
- this blueprint.
30160
+ Timestamp when the session was revoked; `null` if it has
30161
+ not been revoked.
30162
+ example: null
27859
30163
  created_at:
27860
30164
  type: string
27861
- description: The timestamp when the agent blueprint was created.
30165
+ description: The timestamp when the session was created.
27862
30166
  example: '2026-01-15T12:00:00.000Z'
27863
30167
  updated_at:
27864
30168
  type: string
27865
- description: The timestamp when the agent blueprint was last updated.
30169
+ description: The timestamp when the session was last updated.
27866
30170
  example: '2026-01-15T12:00:00.000Z'
27867
30171
  required:
27868
30172
  - object
27869
30173
  - id
27870
- - name
27871
- - description
27872
- - permissions
27873
- - invocable_by
27874
- - session_settings
30174
+ - agent_instance_id
30175
+ - organization_id
30176
+ - expires_at
30177
+ - revoked_at
27875
30178
  - created_at
27876
30179
  - updated_at
27877
30180
  description: The event payload.
@@ -28545,7 +30848,7 @@ components:
28545
30848
  items:
28546
30849
  type: string
28547
30850
  description: The permissions granted to the API key.
28548
- example: &ref_22
30851
+ example: &ref_26
28549
30852
  - users:read
28550
30853
  - users:write
28551
30854
  created_at:
@@ -28671,7 +30974,7 @@ components:
28671
30974
  items:
28672
30975
  type: string
28673
30976
  description: The permissions granted to the API key.
28674
- example: *ref_22
30977
+ example: *ref_26
28675
30978
  created_at:
28676
30979
  type: string
28677
30980
  description: The timestamp when the API key was created.
@@ -28795,7 +31098,7 @@ components:
28795
31098
  items:
28796
31099
  type: string
28797
31100
  description: The permissions granted to the API key.
28798
- example: *ref_22
31101
+ example: *ref_26
28799
31102
  created_at:
28800
31103
  type: string
28801
31104
  description: The timestamp when the API key was created.
@@ -31662,7 +33965,7 @@ components:
31662
33965
  description: >-
31663
33966
  An object containing the custom attribute mapping for
31664
33967
  the Directory Provider.
31665
- example: *ref_23
33968
+ example: *ref_27
31666
33969
  role:
31667
33970
  $ref: '#/components/schemas/SlimRole'
31668
33971
  roles:
@@ -31852,7 +34155,7 @@ components:
31852
34155
  description: >-
31853
34156
  Labels assigned to the Feature Flag for categorizing and
31854
34157
  filtering.
31855
- example: &ref_24
34158
+ example: &ref_28
31856
34159
  - reports
31857
34160
  enabled:
31858
34161
  type: boolean
@@ -32013,7 +34316,7 @@ components:
32013
34316
  description: >-
32014
34317
  Labels assigned to the Feature Flag for categorizing and
32015
34318
  filtering.
32016
- example: *ref_24
34319
+ example: *ref_28
32017
34320
  enabled:
32018
34321
  type: boolean
32019
34322
  description: >-
@@ -32173,7 +34476,7 @@ components:
32173
34476
  description: >-
32174
34477
  Labels assigned to the Feature Flag for categorizing and
32175
34478
  filtering.
32176
- example: *ref_24
34479
+ example: *ref_28
32177
34480
  enabled:
32178
34481
  type: boolean
32179
34482
  description: >-
@@ -32453,7 +34756,7 @@ components:
32453
34756
  description: >-
32454
34757
  Labels assigned to the Feature Flag for categorizing and
32455
34758
  filtering.
32456
- example: *ref_24
34759
+ example: *ref_28
32457
34760
  enabled:
32458
34761
  type: boolean
32459
34762
  description: >-
@@ -33441,7 +35744,7 @@ components:
33441
35744
  description: >-
33442
35745
  Object containing [metadata](/authkit/metadata)
33443
35746
  key/value pairs associated with the Organization.
33444
- example: &ref_25
35747
+ example: &ref_29
33445
35748
  tier: diamond
33446
35749
  propertyNames:
33447
35750
  maxLength: 40
@@ -33591,7 +35894,7 @@ components:
33591
35894
  description: >-
33592
35895
  Object containing [metadata](/authkit/metadata)
33593
35896
  key/value pairs associated with the Organization.
33594
- example: *ref_25
35897
+ example: *ref_29
33595
35898
  propertyNames:
33596
35899
  maxLength: 40
33597
35900
  maxProperties: 50
@@ -34418,7 +36721,7 @@ components:
34418
36721
  items:
34419
36722
  type: string
34420
36723
  description: The permissions granted by the role.
34421
- example: &ref_26
36724
+ example: &ref_30
34422
36725
  - users:read
34423
36726
  - users:write
34424
36727
  created_at:
@@ -34502,7 +36805,7 @@ components:
34502
36805
  items:
34503
36806
  type: string
34504
36807
  description: The permissions granted by the role.
34505
- example: *ref_26
36808
+ example: *ref_30
34506
36809
  created_at:
34507
36810
  format: date-time
34508
36811
  type: string
@@ -34584,7 +36887,7 @@ components:
34584
36887
  items:
34585
36888
  type: string
34586
36889
  description: The permissions granted by the role.
34587
- example: *ref_26
36890
+ example: *ref_30
34588
36891
  created_at:
34589
36892
  format: date-time
34590
36893
  type: string
@@ -34721,7 +37024,7 @@ components:
34721
37024
  description: >-
34722
37025
  Object containing [metadata](/authkit/metadata)
34723
37026
  key/value pairs associated with the Organization.
34724
- example: *ref_25
37027
+ example: *ref_29
34725
37028
  propertyNames:
34726
37029
  maxLength: 40
34727
37030
  maxProperties: 50
@@ -35588,7 +37891,7 @@ components:
35588
37891
  items:
35589
37892
  type: string
35590
37893
  description: The permissions granted by the role.
35591
- example: &ref_27
37894
+ example: &ref_31
35592
37895
  - users:read
35593
37896
  - users:write
35594
37897
  created_at:
@@ -35654,7 +37957,7 @@ components:
35654
37957
  items:
35655
37958
  type: string
35656
37959
  description: The permissions granted by the role.
35657
- example: *ref_27
37960
+ example: *ref_31
35658
37961
  created_at:
35659
37962
  format: date-time
35660
37963
  type: string
@@ -35718,7 +38021,7 @@ components:
35718
38021
  items:
35719
38022
  type: string
35720
38023
  description: The permissions granted by the role.
35721
- example: *ref_27
38024
+ example: *ref_31
35722
38025
  created_at:
35723
38026
  format: date-time
35724
38027
  type: string
@@ -36858,7 +39161,7 @@ components:
36858
39161
  - data
36859
39162
  - created_at
36860
39163
  - object
36861
- example: *ref_28
39164
+ example: *ref_32
36862
39165
  description: An event emitted by WorkOS.
36863
39166
  EventList:
36864
39167
  type: object
@@ -36893,7 +39196,7 @@ components:
36893
39196
  example:
36894
39197
  object: list
36895
39198
  data:
36896
- - *ref_28
39199
+ - *ref_32
36897
39200
  list_metadata:
36898
39201
  after: event_01EHZNVPK3SFK441A1RGBFSHRT
36899
39202
  JwtTemplate:
@@ -39022,6 +41325,169 @@ components:
39022
41325
  - default
39023
41326
  - created_at
39024
41327
  - updated_at
41328
+ SamlIdpSigningCertificate:
41329
+ type: object
41330
+ properties:
41331
+ object:
41332
+ type: string
41333
+ description: Distinguishes the SAML Identity Provider signing certificate object.
41334
+ const: saml_idp_signing_certificate
41335
+ id:
41336
+ type: string
41337
+ description: Unique identifier for the Identity Provider signing certificate.
41338
+ example: saml_x509_cert_01E4ZCR3C56J083X43JQXF3JK5
41339
+ value:
41340
+ type: string
41341
+ description: The PEM-encoded public X.509 certificate.
41342
+ example: '-----BEGIN CERTIFICATE-----MIIC...-----END CERTIFICATE-----'
41343
+ not_before:
41344
+ format: date-time
41345
+ type:
41346
+ - string
41347
+ - 'null'
41348
+ description: When the certificate becomes valid.
41349
+ example: '2026-01-15T12:00:00.000Z'
41350
+ not_after:
41351
+ format: date-time
41352
+ type:
41353
+ - string
41354
+ - 'null'
41355
+ description: When the certificate expires.
41356
+ example: '2026-01-15T12:00:00.000Z'
41357
+ created_at:
41358
+ format: date-time
41359
+ type: string
41360
+ description: An ISO 8601 timestamp.
41361
+ example: '2026-01-15T12:00:00.000Z'
41362
+ required:
41363
+ - object
41364
+ - id
41365
+ - value
41366
+ - not_before
41367
+ - not_after
41368
+ - created_at
41369
+ SamlIdpSigningCertificateList:
41370
+ type: object
41371
+ properties:
41372
+ object:
41373
+ type: string
41374
+ example: list
41375
+ const: list
41376
+ data:
41377
+ type: array
41378
+ items:
41379
+ $ref: '#/components/schemas/SamlIdpSigningCertificate'
41380
+ description: >-
41381
+ Every Identity Provider signing certificate on the Connection,
41382
+ including expired ones, oldest first.
41383
+ required:
41384
+ - object
41385
+ - data
41386
+ SamlSpEncryptionCertificate:
41387
+ type: object
41388
+ properties:
41389
+ object:
41390
+ type: string
41391
+ description: >-
41392
+ Distinguishes the SAML Service Provider encryption certificate
41393
+ object.
41394
+ const: saml_sp_encryption_certificate
41395
+ id:
41396
+ type: string
41397
+ description: >-
41398
+ Unique identifier for the Service Provider encryption key pair.
41399
+ WorkOS holds the corresponding private key, which is never exposed.
41400
+ example: saml_enc_key_pair_01E4ZCR3C56J083X43JQXF3JK5
41401
+ value:
41402
+ type: string
41403
+ description: The PEM-encoded public X.509 certificate.
41404
+ example: '-----BEGIN CERTIFICATE-----MIIC...-----END CERTIFICATE-----'
41405
+ not_before:
41406
+ format: date-time
41407
+ type:
41408
+ - string
41409
+ - 'null'
41410
+ description: When the certificate becomes valid.
41411
+ example: '2026-01-15T12:00:00.000Z'
41412
+ not_after:
41413
+ format: date-time
41414
+ type:
41415
+ - string
41416
+ - 'null'
41417
+ description: When the certificate expires.
41418
+ example: '2026-01-15T12:00:00.000Z'
41419
+ created_at:
41420
+ format: date-time
41421
+ type: string
41422
+ description: An ISO 8601 timestamp.
41423
+ example: '2026-01-15T12:00:00.000Z'
41424
+ required:
41425
+ - object
41426
+ - id
41427
+ - value
41428
+ - not_before
41429
+ - not_after
41430
+ - created_at
41431
+ SamlSpEncryptionCertificateList:
41432
+ type: object
41433
+ properties:
41434
+ object:
41435
+ type: string
41436
+ example: list
41437
+ const: list
41438
+ data:
41439
+ type: array
41440
+ items:
41441
+ $ref: '#/components/schemas/SamlSpEncryptionCertificate'
41442
+ description: >-
41443
+ Every Service Provider encryption certificate on the Connection,
41444
+ including expired ones.
41445
+ required:
41446
+ - object
41447
+ - data
41448
+ SamlSpSigningCertificate:
41449
+ type: object
41450
+ properties:
41451
+ object:
41452
+ type: string
41453
+ description: Distinguishes the SAML Service Provider signing certificate object.
41454
+ const: saml_sp_signing_certificate
41455
+ id:
41456
+ type: string
41457
+ description: >-
41458
+ Unique identifier for the Service Provider signing key pair. WorkOS
41459
+ holds the corresponding private key, which is never exposed.
41460
+ example: saml_party_trust_01E4ZCR3C56J083X43JQXF3JK5
41461
+ value:
41462
+ type: string
41463
+ description: The PEM-encoded public X.509 certificate.
41464
+ example: '-----BEGIN CERTIFICATE-----MIIC...-----END CERTIFICATE-----'
41465
+ not_before:
41466
+ format: date-time
41467
+ type:
41468
+ - string
41469
+ - 'null'
41470
+ description: When the certificate becomes valid.
41471
+ example: '2026-01-15T12:00:00.000Z'
41472
+ not_after:
41473
+ format: date-time
41474
+ type:
41475
+ - string
41476
+ - 'null'
41477
+ description: When the certificate expires.
41478
+ example: '2026-01-15T12:00:00.000Z'
41479
+ created_at:
41480
+ format: date-time
41481
+ type: string
41482
+ description: An ISO 8601 timestamp.
41483
+ example: '2026-01-15T12:00:00.000Z'
41484
+ required:
41485
+ - object
41486
+ - id
41487
+ - value
41488
+ - not_before
41489
+ - not_after
41490
+ - created_at
39025
41491
  Team:
39026
41492
  type: object
39027
41493
  properties: