@workos/openapi-spec 0.103.0 → 0.105.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.
package/README.md CHANGED
@@ -160,6 +160,31 @@ node scripts/sdk-compat-pr-comment.mjs \
160
160
 
161
161
  Changes to any file under `src/policy/` (or to `operationOverrides.node.json` or `tsdown.config.ts`) trigger a new release of `@workos/openapi-spec` the same way changes to the spec YAML do — see the publish workflow at `.github/workflows/release.yml`.
162
162
 
163
+ ### Automatic sync conflict resolution
164
+
165
+ `.github/workflows/resolve-sync-conflicts.yml` keeps autogenerated spec PRs
166
+ mergeable when their only conflict is `.last-synced-sha`. It compares the two
167
+ source commits in `workos/workos`, keeps the descendant SHA, and merges `main`
168
+ into the PR with a GitHub-signed bot commit. Other conflicts and divergent source
169
+ history still require manual review; SDK validation and approval requirements
170
+ are unchanged.
171
+
172
+ The workflow runs trusted code from `main`, never PR code. The existing SDK bot
173
+ App needs contents write and PR read access to this repository, plus contents
174
+ read access to `workos/workos`. Its branch updates trigger SDK validation again.
175
+
176
+ Preview locally with an authenticated `gh` that can read both repositories:
177
+
178
+ ```bash
179
+ node scripts/resolve-sync-conflicts.mjs --pr 184
180
+ node --test scripts/__tests__/resolve-sync-conflicts.spec.mjs
181
+ ```
182
+
183
+ The script is read-only on GitHub unless `--write` is supplied; writes require a
184
+ bot installation token so GitHub can sign the merge commit. Manual workflow runs
185
+ also default to dry-run. A new `pull_request_target` workflow must land on `main`
186
+ before it can resolve PRs automatically; local previews work before then.
187
+
163
188
  ## Grabbing from npm
164
189
 
165
190
  The spec is published to npm as [`@workos/openapi-spec`](https://www.npmjs.com/package/@workos/openapi-spec).
@@ -73,6 +73,34 @@ paths:
73
73
  example:
74
74
  - org_01EHWNCE74X7JSDV0X3SZ3KJNY
75
75
  description: Who may mint sessions from this blueprint.
76
+ invocable_as:
77
+ default: {}
78
+ type: object
79
+ properties:
80
+ instance_types:
81
+ default:
82
+ - delegated
83
+ - autonomous
84
+ type: array
85
+ items:
86
+ type: string
87
+ enum:
88
+ - delegated
89
+ - autonomous
90
+ minItems: 1
91
+ maxItems: 2
92
+ description: >-
93
+ Instance types that may be minted from this blueprint:
94
+ `delegated` (a user-delegated session, minted with a
95
+ user access token) and/or `autonomous` (a session acting
96
+ as the agent itself, minted with an agent registration
97
+ credential). Agent-delegated chaining and refreshes are
98
+ checked against the type of the presenting instance.
99
+ Defaults to both.
100
+ example:
101
+ - delegated
102
+ - autonomous
103
+ description: How sessions may be minted from this blueprint.
76
104
  session_settings:
77
105
  default:
78
106
  max_age_seconds: 3600
@@ -442,6 +470,29 @@ paths:
442
470
  description: >-
443
471
  Who may mint sessions from this blueprint. Omitted lists are
444
472
  left unchanged.
473
+ invocable_as:
474
+ type: object
475
+ properties:
476
+ instance_types:
477
+ type: array
478
+ items:
479
+ type: string
480
+ enum:
481
+ - delegated
482
+ - autonomous
483
+ minItems: 1
484
+ maxItems: 2
485
+ description: >-
486
+ Instance types that may be minted from this blueprint:
487
+ `delegated` and/or `autonomous`. At least one is
488
+ required; existing sessions of a removed type are
489
+ refused at their next refresh.
490
+ example:
491
+ - delegated
492
+ - autonomous
493
+ description: >-
494
+ How sessions may be minted from this blueprint. Omitted
495
+ lists are left unchanged.
445
496
  session_settings:
446
497
  type: object
447
498
  properties:
@@ -947,6 +998,20 @@ paths:
947
998
  required:
948
999
  - code
949
1000
  - message
1001
+ - type: object
1002
+ properties:
1003
+ code:
1004
+ type: string
1005
+ description: The error code identifying the type of error.
1006
+ example: unsupported_invocation_type
1007
+ const: unsupported_invocation_type
1008
+ message:
1009
+ type: string
1010
+ description: A human-readable description of the error.
1011
+ example: Request could not be processed.
1012
+ required:
1013
+ - code
1014
+ - message
950
1015
  - type: object
951
1016
  properties:
952
1017
  code:
@@ -30158,6 +30223,25 @@ components:
30158
30223
  - role_slugs
30159
30224
  - organization_ids
30160
30225
  description: Who may mint sessions from this blueprint.
30226
+ invocable_as:
30227
+ type: object
30228
+ properties:
30229
+ instance_types:
30230
+ type: array
30231
+ items:
30232
+ type: string
30233
+ enum:
30234
+ - delegated
30235
+ - autonomous
30236
+ description: >-
30237
+ Instance types that may be minted from this blueprint:
30238
+ `delegated` and/or `autonomous`.
30239
+ example:
30240
+ - delegated
30241
+ - autonomous
30242
+ required:
30243
+ - instance_types
30244
+ description: How sessions may be minted from this blueprint.
30161
30245
  session_settings:
30162
30246
  type: object
30163
30247
  properties:
@@ -30197,6 +30281,7 @@ components:
30197
30281
  - description
30198
30282
  - permissions
30199
30283
  - invocable_by
30284
+ - invocable_as
30200
30285
  - session_settings
30201
30286
  - created_at
30202
30287
  - updated_at
@@ -33060,7 +33145,7 @@ components:
33060
33145
  description: >-
33061
33146
  An object containing the custom attribute mapping for the Directory
33062
33147
  Provider.
33063
- example: &ref_31
33148
+ example: &ref_32
33064
33149
  department: Engineering
33065
33150
  job_title: Software Engineer
33066
33151
  role:
@@ -33334,7 +33419,7 @@ components:
33334
33419
  - data
33335
33420
  - created_at
33336
33421
  description: An event emitted by WorkOS.
33337
- example: &ref_36
33422
+ example: &ref_37
33338
33423
  object: event
33339
33424
  id: event_01EHZNVPK3SFK441A1RGBFSHRT
33340
33425
  event: dsync.user.created
@@ -33566,6 +33651,26 @@ components:
33566
33651
  - role_slugs
33567
33652
  - organization_ids
33568
33653
  description: Who may mint sessions from this blueprint.
33654
+ invocable_as:
33655
+ type: object
33656
+ properties:
33657
+ instance_types:
33658
+ type: array
33659
+ items:
33660
+ type: string
33661
+ enum:
33662
+ - delegated
33663
+ - autonomous
33664
+ description: >-
33665
+ Instance types that may be minted from this
33666
+ blueprint: `delegated` (acting for a user) and/or
33667
+ `autonomous` (acting as the agent itself).
33668
+ example: &ref_30
33669
+ - delegated
33670
+ - autonomous
33671
+ required:
33672
+ - instance_types
33673
+ description: How sessions may be minted from this blueprint.
33569
33674
  session_settings:
33570
33675
  type: object
33571
33676
  properties:
@@ -33605,6 +33710,7 @@ components:
33605
33710
  - description
33606
33711
  - permissions
33607
33712
  - invocable_by
33713
+ - invocable_as
33608
33714
  - session_settings
33609
33715
  - created_at
33610
33716
  - updated_at
@@ -33743,6 +33849,24 @@ components:
33743
33849
  - role_slugs
33744
33850
  - organization_ids
33745
33851
  description: Who may mint sessions from this blueprint.
33852
+ invocable_as:
33853
+ type: object
33854
+ properties:
33855
+ instance_types:
33856
+ type: array
33857
+ items:
33858
+ type: string
33859
+ enum:
33860
+ - delegated
33861
+ - autonomous
33862
+ description: >-
33863
+ Instance types that may be minted from this
33864
+ blueprint: `delegated` (acting for a user) and/or
33865
+ `autonomous` (acting as the agent itself).
33866
+ example: *ref_30
33867
+ required:
33868
+ - instance_types
33869
+ description: How sessions may be minted from this blueprint.
33746
33870
  session_settings:
33747
33871
  type: object
33748
33872
  properties:
@@ -33782,6 +33906,7 @@ components:
33782
33906
  - description
33783
33907
  - permissions
33784
33908
  - invocable_by
33909
+ - invocable_as
33785
33910
  - session_settings
33786
33911
  - created_at
33787
33912
  - updated_at
@@ -34774,7 +34899,7 @@ components:
34774
34899
  items:
34775
34900
  type: string
34776
34901
  description: The permissions granted to the API key.
34777
- example: &ref_30
34902
+ example: &ref_31
34778
34903
  - users:read
34779
34904
  - users:write
34780
34905
  created_at:
@@ -34900,7 +35025,7 @@ components:
34900
35025
  items:
34901
35026
  type: string
34902
35027
  description: The permissions granted to the API key.
34903
- example: *ref_30
35028
+ example: *ref_31
34904
35029
  created_at:
34905
35030
  type: string
34906
35031
  description: The timestamp when the API key was created.
@@ -35024,7 +35149,7 @@ components:
35024
35149
  items:
35025
35150
  type: string
35026
35151
  description: The permissions granted to the API key.
35027
- example: *ref_30
35152
+ example: *ref_31
35028
35153
  created_at:
35029
35154
  type: string
35030
35155
  description: The timestamp when the API key was created.
@@ -37891,7 +38016,7 @@ components:
37891
38016
  description: >-
37892
38017
  An object containing the custom attribute mapping for
37893
38018
  the Directory Provider.
37894
- example: *ref_31
38019
+ example: *ref_32
37895
38020
  role:
37896
38021
  $ref: '#/components/schemas/SlimRole'
37897
38022
  roles:
@@ -38081,7 +38206,7 @@ components:
38081
38206
  description: >-
38082
38207
  Labels assigned to the Feature Flag for categorizing and
38083
38208
  filtering.
38084
- example: &ref_32
38209
+ example: &ref_33
38085
38210
  - reports
38086
38211
  enabled:
38087
38212
  type: boolean
@@ -38242,7 +38367,7 @@ components:
38242
38367
  description: >-
38243
38368
  Labels assigned to the Feature Flag for categorizing and
38244
38369
  filtering.
38245
- example: *ref_32
38370
+ example: *ref_33
38246
38371
  enabled:
38247
38372
  type: boolean
38248
38373
  description: >-
@@ -38402,7 +38527,7 @@ components:
38402
38527
  description: >-
38403
38528
  Labels assigned to the Feature Flag for categorizing and
38404
38529
  filtering.
38405
- example: *ref_32
38530
+ example: *ref_33
38406
38531
  enabled:
38407
38532
  type: boolean
38408
38533
  description: >-
@@ -38682,7 +38807,7 @@ components:
38682
38807
  description: >-
38683
38808
  Labels assigned to the Feature Flag for categorizing and
38684
38809
  filtering.
38685
- example: *ref_32
38810
+ example: *ref_33
38686
38811
  enabled:
38687
38812
  type: boolean
38688
38813
  description: >-
@@ -39670,7 +39795,7 @@ components:
39670
39795
  description: >-
39671
39796
  Object containing [metadata](/authkit/metadata)
39672
39797
  key/value pairs associated with the Organization.
39673
- example: &ref_33
39798
+ example: &ref_34
39674
39799
  tier: diamond
39675
39800
  propertyNames:
39676
39801
  maxLength: 40
@@ -39820,7 +39945,7 @@ components:
39820
39945
  description: >-
39821
39946
  Object containing [metadata](/authkit/metadata)
39822
39947
  key/value pairs associated with the Organization.
39823
- example: *ref_33
39948
+ example: *ref_34
39824
39949
  propertyNames:
39825
39950
  maxLength: 40
39826
39951
  maxProperties: 50
@@ -40647,7 +40772,7 @@ components:
40647
40772
  items:
40648
40773
  type: string
40649
40774
  description: The permissions granted by the role.
40650
- example: &ref_34
40775
+ example: &ref_35
40651
40776
  - users:read
40652
40777
  - users:write
40653
40778
  created_at:
@@ -40731,7 +40856,7 @@ components:
40731
40856
  items:
40732
40857
  type: string
40733
40858
  description: The permissions granted by the role.
40734
- example: *ref_34
40859
+ example: *ref_35
40735
40860
  created_at:
40736
40861
  format: date-time
40737
40862
  type: string
@@ -40813,7 +40938,7 @@ components:
40813
40938
  items:
40814
40939
  type: string
40815
40940
  description: The permissions granted by the role.
40816
- example: *ref_34
40941
+ example: *ref_35
40817
40942
  created_at:
40818
40943
  format: date-time
40819
40944
  type: string
@@ -40950,7 +41075,7 @@ components:
40950
41075
  description: >-
40951
41076
  Object containing [metadata](/authkit/metadata)
40952
41077
  key/value pairs associated with the Organization.
40953
- example: *ref_33
41078
+ example: *ref_34
40954
41079
  propertyNames:
40955
41080
  maxLength: 40
40956
41081
  maxProperties: 50
@@ -41943,6 +42068,7 @@ components:
41943
42068
  - auditLogEvents
41944
42069
  - connections
41945
42070
  - directoryUsers
42071
+ - scimLogs
41946
42072
  description: The type of resource being exported.
41947
42073
  example: users
41948
42074
  required:
@@ -41992,6 +42118,7 @@ components:
41992
42118
  - auditLogEvents
41993
42119
  - connections
41994
42120
  - directoryUsers
42121
+ - scimLogs
41995
42122
  description: The type of resource being exported.
41996
42123
  example: users
41997
42124
  required:
@@ -42041,6 +42168,7 @@ components:
42041
42168
  - auditLogEvents
42042
42169
  - connections
42043
42170
  - directoryUsers
42171
+ - scimLogs
42044
42172
  description: The type of resource being exported.
42045
42173
  example: users
42046
42174
  required:
@@ -42090,6 +42218,7 @@ components:
42090
42218
  - auditLogEvents
42091
42219
  - connections
42092
42220
  - directoryUsers
42221
+ - scimLogs
42093
42222
  description: The type of resource being exported.
42094
42223
  example: users
42095
42224
  required:
@@ -42142,7 +42271,7 @@ components:
42142
42271
  items:
42143
42272
  type: string
42144
42273
  description: The permissions granted by the role.
42145
- example: &ref_35
42274
+ example: &ref_36
42146
42275
  - users:read
42147
42276
  - users:write
42148
42277
  created_at:
@@ -42208,7 +42337,7 @@ components:
42208
42337
  items:
42209
42338
  type: string
42210
42339
  description: The permissions granted by the role.
42211
- example: *ref_35
42340
+ example: *ref_36
42212
42341
  created_at:
42213
42342
  format: date-time
42214
42343
  type: string
@@ -42272,7 +42401,7 @@ components:
42272
42401
  items:
42273
42402
  type: string
42274
42403
  description: The permissions granted by the role.
42275
- example: *ref_35
42404
+ example: *ref_36
42276
42405
  created_at:
42277
42406
  format: date-time
42278
42407
  type: string
@@ -43412,7 +43541,7 @@ components:
43412
43541
  - data
43413
43542
  - created_at
43414
43543
  - object
43415
- example: *ref_36
43544
+ example: *ref_37
43416
43545
  description: An event emitted by WorkOS.
43417
43546
  EventList:
43418
43547
  type: object
@@ -43447,7 +43576,7 @@ components:
43447
43576
  example:
43448
43577
  object: list
43449
43578
  data:
43450
- - *ref_36
43579
+ - *ref_37
43451
43580
  list_metadata:
43452
43581
  after: event_01EHZNVPK3SFK441A1RGBFSHRT
43453
43582
  JwtTemplate:
@@ -45408,7 +45537,7 @@ components:
45408
45537
  items:
45409
45538
  type: string
45410
45539
  description: The OAuth scopes granted for this connection.
45411
- example: &ref_37
45540
+ example: &ref_38
45412
45541
  - repo
45413
45542
  - user:email
45414
45543
  auth_method:
@@ -45458,7 +45587,7 @@ components:
45458
45587
  `installation` scope, excluding any it declares as
45459
45588
  secret. Only present when `auth_method` is
45460
45589
  `client_credentials`.
45461
- example: &ref_38
45590
+ example: &ref_39
45462
45591
  instance_url: https://example.my.salesforce.com
45463
45592
  state:
45464
45593
  type: string
@@ -45587,7 +45716,7 @@ components:
45587
45716
  items:
45588
45717
  type: string
45589
45718
  description: The OAuth scopes granted for this connection.
45590
- example: *ref_37
45719
+ example: *ref_38
45591
45720
  auth_method:
45592
45721
  type: string
45593
45722
  enum:
@@ -45634,7 +45763,7 @@ components:
45634
45763
  `installation` scope, excluding any it declares as
45635
45764
  secret. Only present when `auth_method` is
45636
45765
  `client_credentials`.
45637
- example: *ref_38
45766
+ example: *ref_39
45638
45767
  state:
45639
45768
  type: string
45640
45769
  enum:
package/dist/types.d.ts CHANGED
@@ -6737,6 +6737,17 @@ export interface components {
6737
6737
  */
6738
6738
  organization_ids: string[];
6739
6739
  };
6740
+ /** @description How sessions may be minted from this blueprint. */
6741
+ invocable_as: {
6742
+ /**
6743
+ * @description Instance types that may be minted from this blueprint: `delegated` and/or `autonomous`.
6744
+ * @example [
6745
+ * "delegated",
6746
+ * "autonomous"
6747
+ * ]
6748
+ */
6749
+ instance_types: ("delegated" | "autonomous")[];
6750
+ };
6740
6751
  /** @description Token and session lifetimes for sessions minted from this blueprint. */
6741
6752
  session_settings: {
6742
6753
  /**
@@ -9406,6 +9417,17 @@ export interface components {
9406
9417
  */
9407
9418
  organization_ids: string[];
9408
9419
  };
9420
+ /** @description How sessions may be minted from this blueprint. */
9421
+ invocable_as: {
9422
+ /**
9423
+ * @description Instance types that may be minted from this blueprint: `delegated` (acting for a user) and/or `autonomous` (acting as the agent itself).
9424
+ * @example [
9425
+ * "delegated",
9426
+ * "autonomous"
9427
+ * ]
9428
+ */
9429
+ instance_types: ("delegated" | "autonomous")[];
9430
+ };
9409
9431
  /** @description Token and session lifetimes for sessions minted from this blueprint. */
9410
9432
  session_settings: {
9411
9433
  /**
@@ -9550,6 +9572,17 @@ export interface components {
9550
9572
  */
9551
9573
  organization_ids: string[];
9552
9574
  };
9575
+ /** @description How sessions may be minted from this blueprint. */
9576
+ invocable_as: {
9577
+ /**
9578
+ * @description Instance types that may be minted from this blueprint: `delegated` (acting for a user) and/or `autonomous` (acting as the agent itself).
9579
+ * @example [
9580
+ * "delegated",
9581
+ * "autonomous"
9582
+ * ]
9583
+ */
9584
+ instance_types: ("delegated" | "autonomous")[];
9585
+ };
9553
9586
  /** @description Token and session lifetimes for sessions minted from this blueprint. */
9554
9587
  session_settings: {
9555
9588
  /**
@@ -15874,7 +15907,7 @@ export interface components {
15874
15907
  * @example users
15875
15908
  * @enum {string}
15876
15909
  */
15877
- resource_type: "users" | "organizations" | "events" | "sessions" | "auditLogEvents" | "connections" | "directoryUsers";
15910
+ resource_type: "users" | "organizations" | "events" | "sessions" | "auditLogEvents" | "connections" | "directoryUsers" | "scimLogs";
15878
15911
  };
15879
15912
  /**
15880
15913
  * Format: date-time
@@ -15908,7 +15941,7 @@ export interface components {
15908
15941
  * @example users
15909
15942
  * @enum {string}
15910
15943
  */
15911
- resource_type: "users" | "organizations" | "events" | "sessions" | "auditLogEvents" | "connections" | "directoryUsers";
15944
+ resource_type: "users" | "organizations" | "events" | "sessions" | "auditLogEvents" | "connections" | "directoryUsers" | "scimLogs";
15912
15945
  };
15913
15946
  /**
15914
15947
  * Format: date-time
@@ -15942,7 +15975,7 @@ export interface components {
15942
15975
  * @example users
15943
15976
  * @enum {string}
15944
15977
  */
15945
- resource_type: "users" | "organizations" | "events" | "sessions" | "auditLogEvents" | "connections" | "directoryUsers";
15978
+ resource_type: "users" | "organizations" | "events" | "sessions" | "auditLogEvents" | "connections" | "directoryUsers" | "scimLogs";
15946
15979
  };
15947
15980
  /**
15948
15981
  * Format: date-time
@@ -15976,7 +16009,7 @@ export interface components {
15976
16009
  * @example users
15977
16010
  * @enum {string}
15978
16011
  */
15979
- resource_type: "users" | "organizations" | "events" | "sessions" | "auditLogEvents" | "connections" | "directoryUsers";
16012
+ resource_type: "users" | "organizations" | "events" | "sessions" | "auditLogEvents" | "connections" | "directoryUsers" | "scimLogs";
15980
16013
  };
15981
16014
  /**
15982
16015
  * Format: date-time
@@ -20160,6 +20193,24 @@ export interface operations {
20160
20193
  */
20161
20194
  organization_ids?: string[];
20162
20195
  };
20196
+ /**
20197
+ * @description How sessions may be minted from this blueprint.
20198
+ * @default {}
20199
+ */
20200
+ invocable_as?: {
20201
+ /**
20202
+ * @description Instance types that may be minted from this blueprint: `delegated` (a user-delegated session, minted with a user access token) and/or `autonomous` (a session acting as the agent itself, minted with an agent registration credential). Agent-delegated chaining and refreshes are checked against the type of the presenting instance. Defaults to both.
20203
+ * @default [
20204
+ * "delegated",
20205
+ * "autonomous"
20206
+ * ]
20207
+ * @example [
20208
+ * "delegated",
20209
+ * "autonomous"
20210
+ * ]
20211
+ */
20212
+ instance_types?: ("delegated" | "autonomous")[];
20213
+ };
20163
20214
  /**
20164
20215
  * @description Token and session lifetimes for sessions minted from this blueprint.
20165
20216
  * @default {
@@ -20408,6 +20459,17 @@ export interface operations {
20408
20459
  */
20409
20460
  organization_ids?: string[];
20410
20461
  };
20462
+ /** @description How sessions may be minted from this blueprint. Omitted lists are left unchanged. */
20463
+ invocable_as?: {
20464
+ /**
20465
+ * @description Instance types that may be minted from this blueprint: `delegated` and/or `autonomous`. At least one is required; existing sessions of a removed type are refused at their next refresh.
20466
+ * @example [
20467
+ * "delegated",
20468
+ * "autonomous"
20469
+ * ]
20470
+ */
20471
+ instance_types?: ("delegated" | "autonomous")[];
20472
+ };
20411
20473
  /** @description Token and session lifetimes for sessions minted from this blueprint. Omitted fields are left unchanged. */
20412
20474
  session_settings?: {
20413
20475
  /**
@@ -20790,6 +20852,18 @@ export interface operations {
20790
20852
  * @example Request could not be processed.
20791
20853
  */
20792
20854
  message: string;
20855
+ } | {
20856
+ /**
20857
+ * @description The error code identifying the type of error.
20858
+ * @example unsupported_invocation_type
20859
+ * @constant
20860
+ */
20861
+ code: "unsupported_invocation_type";
20862
+ /**
20863
+ * @description A human-readable description of the error.
20864
+ * @example Request could not be processed.
20865
+ */
20866
+ message: string;
20793
20867
  } | {
20794
20868
  /**
20795
20869
  * @description The error code identifying the type of error.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@workos/openapi-spec",
3
- "version": "0.103.0",
3
+ "version": "0.105.0",
4
4
  "type": "module",
5
5
  "description": "WorkOS OpenAPI specification, TypeScript types, and SDK resolution policy",
6
6
  "license": "MIT",