@workos/openapi-spec 0.104.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
@@ -42146,7 +42271,7 @@ components:
42146
42271
  items:
42147
42272
  type: string
42148
42273
  description: The permissions granted by the role.
42149
- example: &ref_35
42274
+ example: &ref_36
42150
42275
  - users:read
42151
42276
  - users:write
42152
42277
  created_at:
@@ -42212,7 +42337,7 @@ components:
42212
42337
  items:
42213
42338
  type: string
42214
42339
  description: The permissions granted by the role.
42215
- example: *ref_35
42340
+ example: *ref_36
42216
42341
  created_at:
42217
42342
  format: date-time
42218
42343
  type: string
@@ -42276,7 +42401,7 @@ components:
42276
42401
  items:
42277
42402
  type: string
42278
42403
  description: The permissions granted by the role.
42279
- example: *ref_35
42404
+ example: *ref_36
42280
42405
  created_at:
42281
42406
  format: date-time
42282
42407
  type: string
@@ -43416,7 +43541,7 @@ components:
43416
43541
  - data
43417
43542
  - created_at
43418
43543
  - object
43419
- example: *ref_36
43544
+ example: *ref_37
43420
43545
  description: An event emitted by WorkOS.
43421
43546
  EventList:
43422
43547
  type: object
@@ -43451,7 +43576,7 @@ components:
43451
43576
  example:
43452
43577
  object: list
43453
43578
  data:
43454
- - *ref_36
43579
+ - *ref_37
43455
43580
  list_metadata:
43456
43581
  after: event_01EHZNVPK3SFK441A1RGBFSHRT
43457
43582
  JwtTemplate:
@@ -45412,7 +45537,7 @@ components:
45412
45537
  items:
45413
45538
  type: string
45414
45539
  description: The OAuth scopes granted for this connection.
45415
- example: &ref_37
45540
+ example: &ref_38
45416
45541
  - repo
45417
45542
  - user:email
45418
45543
  auth_method:
@@ -45462,7 +45587,7 @@ components:
45462
45587
  `installation` scope, excluding any it declares as
45463
45588
  secret. Only present when `auth_method` is
45464
45589
  `client_credentials`.
45465
- example: &ref_38
45590
+ example: &ref_39
45466
45591
  instance_url: https://example.my.salesforce.com
45467
45592
  state:
45468
45593
  type: string
@@ -45591,7 +45716,7 @@ components:
45591
45716
  items:
45592
45717
  type: string
45593
45718
  description: The OAuth scopes granted for this connection.
45594
- example: *ref_37
45719
+ example: *ref_38
45595
45720
  auth_method:
45596
45721
  type: string
45597
45722
  enum:
@@ -45638,7 +45763,7 @@ components:
45638
45763
  `installation` scope, excluding any it declares as
45639
45764
  secret. Only present when `auth_method` is
45640
45765
  `client_credentials`.
45641
- example: *ref_38
45766
+ example: *ref_39
45642
45767
  state:
45643
45768
  type: string
45644
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
  /**
@@ -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.104.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",