langwatch 1.5.0 → 1.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/dist/{chunk-5ERLGHP2.js → chunk-3KAXFA26.js} +13 -3
  2. package/dist/chunk-3KAXFA26.js.map +1 -0
  3. package/dist/{chunk-XIN5LXHQ.js → chunk-3T7YUVMO.js} +17 -15
  4. package/dist/chunk-3T7YUVMO.js.map +1 -0
  5. package/dist/{chunk-Y6XAM26B.mjs → chunk-GOIVDBO3.mjs} +14 -4
  6. package/dist/chunk-GOIVDBO3.mjs.map +1 -0
  7. package/dist/{chunk-QZRTEEGV.mjs → chunk-MTOAYNSY.mjs} +7 -5
  8. package/dist/chunk-MTOAYNSY.mjs.map +1 -0
  9. package/dist/cli/bundle.js +469 -544
  10. package/dist/{implementation-Ro3LpjAt.d.mts → implementation-BRb66Lsz.d.mts} +1 -1
  11. package/dist/{implementation-CvPr4t60.d.ts → implementation-j4Y9Dc12.d.ts} +1 -1
  12. package/dist/index.d.mts +20 -2
  13. package/dist/index.d.ts +20 -2
  14. package/dist/index.js +33 -33
  15. package/dist/index.js.map +1 -1
  16. package/dist/index.mjs +2 -2
  17. package/dist/index.mjs.map +1 -1
  18. package/dist/observability-sdk/index.d.mts +3 -3
  19. package/dist/observability-sdk/index.d.ts +3 -3
  20. package/dist/observability-sdk/index.js +2 -2
  21. package/dist/observability-sdk/index.mjs +1 -1
  22. package/dist/observability-sdk/instrumentation/langchain/index.d.mts +1 -1
  23. package/dist/observability-sdk/instrumentation/langchain/index.d.ts +1 -1
  24. package/dist/observability-sdk/setup/node/index.d.mts +1 -1
  25. package/dist/observability-sdk/setup/node/index.d.ts +1 -1
  26. package/dist/observability-sdk/setup/node/index.js +3 -3
  27. package/dist/observability-sdk/setup/node/index.mjs +2 -2
  28. package/dist/{types-VoDc_AXK.d.mts → types-BUivXEKT.d.mts} +294 -187
  29. package/dist/{types-CHIvGRuv.d.ts → types-CUPefoJS.d.ts} +294 -187
  30. package/package.json +12 -12
  31. package/dist/chunk-5ERLGHP2.js.map +0 -1
  32. package/dist/chunk-QZRTEEGV.mjs.map +0 -1
  33. package/dist/chunk-XIN5LXHQ.js.map +0 -1
  34. package/dist/chunk-Y6XAM26B.mjs.map +0 -1
@@ -1112,8 +1112,8 @@ interface paths {
1112
1112
  get?: never;
1113
1113
  put?: never;
1114
1114
  /**
1115
- * Run governed analytics SQL
1116
- * @description Executes one read-only ClickHouse SELECT over the governed analytics datasets and returns typed columns, rows, execution statistics, truncation state and diagnostics. The query runs as a restricted database identity scoped to the authenticated project. Diagnostics are advisory and never reject a query. An empty diagnostics list means no known issue was detected. It is not proof that the answer is the one you meant.
1115
+ * Run LangWatchQL analytics SQL
1116
+ * @description Executes one read-only ClickHouse SELECT over the LangWatchQL analytics datasets and returns typed columns, rows, execution statistics, truncation state and diagnostics. The query runs as a restricted database identity scoped to the authenticated project. Diagnostics are advisory and never reject a query. An empty diagnostics list means no known issue was detected. It is not proof that the answer is the one you meant.
1117
1117
  */
1118
1118
  post: operations["postApiV1ProjectsByProjectIdAnalyticsQueryClickhouse"];
1119
1119
  delete?: never;
@@ -1130,8 +1130,8 @@ interface paths {
1130
1130
  cookie?: never;
1131
1131
  };
1132
1132
  /**
1133
- * Discover the governed analytics schema
1134
- * @description Lists the governed analytics datasets this key may query, with each column's type, description, the permissions that unlock it, and whether this caller holds them — plus each dataset's grain, join keys, partition-pruning time column, freshness and a runnable example query.
1133
+ * Discover the LangWatchQL analytics schema
1134
+ * @description Lists the LangWatchQL analytics datasets this key may query, with each column's type, description, the permissions that unlock it, and whether this caller holds them — plus each dataset's grain, join keys, partition-pruning time column, freshness and a runnable example query.
1135
1135
  */
1136
1136
  get: operations["getApiV1ProjectsByProjectIdAnalyticsSchema"];
1137
1137
  put?: never;
@@ -1151,13 +1151,13 @@ interface paths {
1151
1151
  };
1152
1152
  /**
1153
1153
  * List saved workbench charts
1154
- * @description Lists every saved governed SQL chart in this project, each with the statement it runs, the parameter values it was saved with and the Vega-Lite specification that draws it. Charts built with the chart builder are a different kind and are not listed here.
1154
+ * @description Lists every saved LangWatchQL chart in this project, each with the statement it runs, the parameter values it was saved with and the Vega-Lite specification that draws it. Charts built with the chart builder are a different kind and are not listed here.
1155
1155
  */
1156
1156
  get: operations["getApiV1ProjectsByProjectIdAnalyticsCharts"];
1157
1157
  put?: never;
1158
1158
  /**
1159
1159
  * Save a workbench chart
1160
- * @description Saves a governed SQL statement, its bound parameter values and an optional Vega-Lite specification as one chart. The statement is validated by the governed analytics SQL validator against this key's own permissions, and the specification by the visualization policy, before anything is written — a chart that could not be run or drawn is refused rather than stored.
1160
+ * @description Saves a LangWatchQL statement, its bound parameter values and an optional Vega-Lite specification as one chart. The statement is validated by the LangWatchQL analytics SQL validator against this key's own permissions, and the specification by the visualization policy, before anything is written — a chart that could not be run or drawn is refused rather than stored.
1161
1161
  */
1162
1162
  post: operations["postApiV1ProjectsByProjectIdAnalyticsCharts"];
1163
1163
  delete?: never;
@@ -1175,14 +1175,14 @@ interface paths {
1175
1175
  };
1176
1176
  /**
1177
1177
  * Get a saved workbench chart
1178
- * @description Returns one saved governed SQL chart with its statement, parameter values and specification. A chart saved in another project is reported as not found.
1178
+ * @description Returns one saved LangWatchQL chart with its statement, parameter values and specification. A chart saved in another project is reported as not found.
1179
1179
  */
1180
1180
  get: operations["getApiV1ProjectsByProjectIdAnalyticsChartsByChartId"];
1181
1181
  put?: never;
1182
1182
  post?: never;
1183
1183
  /**
1184
1184
  * Delete a saved workbench chart
1185
- * @description Deletes one saved governed SQL chart. Answers 204 with no body; deleting a chart that is not in this project is reported as not found.
1185
+ * @description Deletes one saved LangWatchQL chart. Answers 204 with no body; deleting a chart that is not in this project is reported as not found.
1186
1186
  */
1187
1187
  delete: operations["deleteApiV1ProjectsByProjectIdAnalyticsChartsByChartId"];
1188
1188
  options?: never;
@@ -1205,7 +1205,7 @@ interface paths {
1205
1205
  * List coding agent session events
1206
1206
  * @description List a coding-agent session's events (model calls, compactions, rate limits, tool runs, prompts) in time order, keyset-paginated. Pass the previous response's nextCursor to continue; filter with kinds (comma-separated).
1207
1207
  */
1208
- get: operations["getApiCoding-agentSessionsBySessionIdEvents"];
1208
+ get: operations["getApiCodingAgentSessionsBySessionIdEvents"];
1209
1209
  put?: never;
1210
1210
  post?: never;
1211
1211
  delete?: never;
@@ -1225,7 +1225,7 @@ interface paths {
1225
1225
  * Get pull request coding agent usage
1226
1226
  * @description Assistant usage for one pull request: sessions, tokens and cost, grouped by contributor and agent, plus per-model totals, over the pull request's whole lifetime rather than a time window. Every row and the totals split cost three ways: the part priced per token, the part a bundled subscription already covers, and the list-price total of both. Per-model totals carry the list price only. Cost is calculated from the tokens the agent reported and LangWatch's model prices, so it estimates spend rather than restating a provider invoice. Requires a personal-project API key; rows appear only for projects the calling user may view, and cost only for those they may price.
1227
1227
  */
1228
- get: operations["getApiCoding-agentPull-request-usage"];
1228
+ get: operations["getApiCodingAgentPullRequestUsage"];
1229
1229
  put?: never;
1230
1230
  post?: never;
1231
1231
  delete?: never;
@@ -1333,7 +1333,7 @@ interface paths {
1333
1333
  get?: never;
1334
1334
  put?: never;
1335
1335
  /** @description Start a direct browser→S3 dataset upload (returns a presigned PUT) */
1336
- post: operations["postApiDatasetDirect-upload"];
1336
+ post: operations["postApiDatasetDirectUpload"];
1337
1337
  delete?: never;
1338
1338
  options?: never;
1339
1339
  head?: never;
@@ -1349,7 +1349,7 @@ interface paths {
1349
1349
  };
1350
1350
  get?: never;
1351
1351
  /** @description Stream a heavy upload into staging when there is no browser-reachable S3 */
1352
- put: operations["putApiDatasetDirect-uploadStagingByUploadId"];
1352
+ put: operations["putApiDatasetDirectUploadStagingByUploadId"];
1353
1353
  post?: never;
1354
1354
  delete?: never;
1355
1355
  options?: never;
@@ -1367,7 +1367,7 @@ interface paths {
1367
1367
  get?: never;
1368
1368
  put?: never;
1369
1369
  /** @description Finalize a direct upload: size-check and start processing */
1370
- post: operations["postApiDatasetDirect-uploadByDatasetIdFinalize"];
1370
+ post: operations["postApiDatasetDirectUploadByDatasetIdFinalize"];
1371
1371
  delete?: never;
1372
1372
  options?: never;
1373
1373
  head?: never;
@@ -1384,7 +1384,7 @@ interface paths {
1384
1384
  get?: never;
1385
1385
  put?: never;
1386
1386
  /** @description Retry normalization of a failed or stuck dataset */
1387
- post: operations["postApiDatasetDirect-uploadByDatasetIdRetry"];
1387
+ post: operations["postApiDatasetDirectUploadByDatasetIdRetry"];
1388
1388
  delete?: never;
1389
1389
  options?: never;
1390
1390
  head?: never;
@@ -1402,7 +1402,7 @@ interface paths {
1402
1402
  put?: never;
1403
1403
  post?: never;
1404
1404
  /** @description Abort a still-pending direct upload and clean up its row */
1405
- delete: operations["deleteApiDatasetDirect-uploadByDatasetId"];
1405
+ delete: operations["deleteApiDatasetDirectUploadByDatasetId"];
1406
1406
  options?: never;
1407
1407
  head?: never;
1408
1408
  patch?: never;
@@ -1620,7 +1620,7 @@ interface paths {
1620
1620
  * Report batch evaluation results
1621
1621
  * @description Report the rows of a batch evaluation against an experiment, so its scores and progress show up in the app. This is the second half of an SDK batch evaluation: create the experiment with `POST /api/experiment/init`, then post rows here as they finish. Identify the experiment by either `experiment_id` or `experiment_slug`. Bodies up to 20MB are accepted.
1622
1622
  */
1623
- post: operations["postApiEvaluationsBatchLog_results"];
1623
+ post: operations["postApiEvaluationsBatchLogResults"];
1624
1624
  delete?: never;
1625
1625
  options?: never;
1626
1626
  head?: never;
@@ -1820,7 +1820,7 @@ interface paths {
1820
1820
  * Report DSPy optimizer steps
1821
1821
  * @description Report the steps of a DSPy optimizer run against an experiment, so the run's progress and scores show up in the app. Send the steps as an array; the optimizer typically posts each batch as it finishes. Bodies up to 20MB are accepted.
1822
1822
  */
1823
- post: operations["postApiDspyLog_steps"];
1823
+ post: operations["postApiDspyLogSteps"];
1824
1824
  delete?: never;
1825
1825
  options?: never;
1826
1826
  head?: never;
@@ -1880,7 +1880,7 @@ interface paths {
1880
1880
  * Track an event (legacy path)
1881
1881
  * @description Record a customer event against a trace or thread. Identical to `POST /api/events/track`, which is the path to use in new integrations; this one stays for callers written against it. Supply `event_id` yourself to make the call idempotent.
1882
1882
  */
1883
- post: operations["postApiTrack_event"];
1883
+ post: operations["postApiTrackEvent"];
1884
1884
  delete?: never;
1885
1885
  options?: never;
1886
1886
  head?: never;
@@ -1958,13 +1958,13 @@ interface paths {
1958
1958
  * List virtual keys
1959
1959
  * @description Returns the virtual keys visible to the caller's project credential: keys scoped to this project, to its team, or to the whole organization. Newest first, paged by cursor: follow `next_cursor` until it comes back null. Visibility is applied to each page after it is read, so a page can hold fewer than `limit` rows without meaning the walk is finished.
1960
1960
  */
1961
- get: operations["getApiGatewayV1Virtual-keys"];
1961
+ get: operations["getApiGatewayV1VirtualKeys"];
1962
1962
  put?: never;
1963
1963
  /**
1964
1964
  * Create virtual key
1965
1965
  * @description Mints a new virtual key and returns the secret exactly once. The caller MUST persist the `secret` value, because LangWatch stores only a hash. `scopes` defaults to the caller's project; org- and team-scoped keys require a scoped API key holding `virtualKeys:manage` at each requested scope. An org- or team-scoped key also needs a place for its traces and spend to land, and must say where: pass `trace_project_id` (needs `virtualKeys:manage` on that project). Without it, and without exactly one project scope to take it from, creation refuses with `gateway_trace_project_ambiguous`, because the spend would be attributed to the organization's hidden governance project and counted by no budget on the project you had in mind. An organization whose only project is the governance one is exempt, since there is nothing else to name; one with no governance project either refuses with `trace_project_required`. Send `Idempotency-Key` to make a retry safe: a replay returns the original response including its `secret`, which is the only way to recover a secret whose response was lost in transit.
1966
1966
  */
1967
- post: operations["postApiGatewayV1Virtual-keys"];
1967
+ post: operations["postApiGatewayV1VirtualKeys"];
1968
1968
  delete?: never;
1969
1969
  options?: never;
1970
1970
  head?: never;
@@ -1979,7 +1979,7 @@ interface paths {
1979
1979
  cookie?: never;
1980
1980
  };
1981
1981
  /** Get virtual key */
1982
- get: operations["getApiGatewayV1Virtual-keysById"];
1982
+ get: operations["getApiGatewayV1VirtualKeysById"];
1983
1983
  put?: never;
1984
1984
  post?: never;
1985
1985
  delete?: never;
@@ -1989,7 +1989,7 @@ interface paths {
1989
1989
  * Update virtual key
1990
1990
  * @description Partial update: send only the fields you want to change. `scopes` replaces the entire visibility set and requires `virtualKeys:manage` at every NEW scope, and does NOT move where the key's traces and costs land: send `trace_project_id` for that, validated the way create validates it; explicit null re-resolves it under the create-time rules rather than clearing it. `config` is deep-merged. `budget` upserts the key's own cap; explicit null archives it.
1991
1991
  */
1992
- patch: operations["patchApiGatewayV1Virtual-keysById"];
1992
+ patch: operations["patchApiGatewayV1VirtualKeysById"];
1993
1993
  trace?: never;
1994
1994
  };
1995
1995
  "/api/gateway/v1/virtual-keys/{id}/spend": {
@@ -2003,7 +2003,7 @@ interface paths {
2003
2003
  * Read a virtual key's spend
2004
2004
  * @description Aggregate spend and request count for one key over a window given in epoch milliseconds (default: current UTC calendar month). Reads the cost path (`trace_summaries`), the same source the dashboard's key list and Usage tab read, so this number, the UI column, and the Usage page agree by construction. Returns 412 `spend_source_unavailable` on deploys without a ClickHouse spend source rather than a $0.00 that cannot be told apart from a zero-spend key.
2005
2005
  */
2006
- get: operations["getApiGatewayV1Virtual-keysByIdSpend"];
2006
+ get: operations["getApiGatewayV1VirtualKeysByIdSpend"];
2007
2007
  put?: never;
2008
2008
  post?: never;
2009
2009
  delete?: never;
@@ -2025,7 +2025,7 @@ interface paths {
2025
2025
  * Rotate virtual key secret
2026
2026
  * @description Mints a fresh secret for an existing VK. The old secret remains valid for 24h (grace window) so in-flight clients can roll over.
2027
2027
  */
2028
- post: operations["postApiGatewayV1Virtual-keysByIdRotate"];
2028
+ post: operations["postApiGatewayV1VirtualKeysByIdRotate"];
2029
2029
  delete?: never;
2030
2030
  options?: never;
2031
2031
  head?: never;
@@ -2045,7 +2045,7 @@ interface paths {
2045
2045
  * Disable virtual key
2046
2046
  * @description Reversible stop: requests on the key are rejected with the distinct `virtual_key_disabled` error until it is enabled again. Budgets, scopes, key material, and any rotation grace stay intact. The change propagates through the gateway's change-event feed. Idempotent.
2047
2047
  */
2048
- post: operations["postApiGatewayV1Virtual-keysByIdDisable"];
2048
+ post: operations["postApiGatewayV1VirtualKeysByIdDisable"];
2049
2049
  delete?: never;
2050
2050
  options?: never;
2051
2051
  head?: never;
@@ -2065,7 +2065,7 @@ interface paths {
2065
2065
  * Enable virtual key
2066
2066
  * @description Reverses disable: the key returns to `active` exactly as it was, including any rotation grace that was running. Idempotent.
2067
2067
  */
2068
- post: operations["postApiGatewayV1Virtual-keysByIdEnable"];
2068
+ post: operations["postApiGatewayV1VirtualKeysByIdEnable"];
2069
2069
  delete?: never;
2070
2070
  options?: never;
2071
2071
  head?: never;
@@ -2085,7 +2085,7 @@ interface paths {
2085
2085
  * Revoke virtual key
2086
2086
  * @description Marks the virtual key as revoked and archives its own budgets. Clients using it start receiving 401 within ~60s (the gateway's change-event long-poll period). Idempotent.
2087
2087
  */
2088
- post: operations["postApiGatewayV1Virtual-keysByIdRevoke"];
2088
+ post: operations["postApiGatewayV1VirtualKeysByIdRevoke"];
2089
2089
  delete?: never;
2090
2090
  options?: never;
2091
2091
  head?: never;
@@ -2223,13 +2223,13 @@ interface paths {
2223
2223
  * List cache-control rules
2224
2224
  * @description Organization-scoped operator-authored rules, sorted priority descending then oldest first, with archived rules excluded. Paged by cursor: follow `next_cursor` until it comes back null. Matchers and action are returned verbatim as JSON.
2225
2225
  */
2226
- get: operations["getApiGatewayV1Cache-rules"];
2226
+ get: operations["getApiGatewayV1CacheRules"];
2227
2227
  put?: never;
2228
2228
  /**
2229
2229
  * Create a cache rule
2230
2230
  * @description Matchers are ANDed across non-null fields; at least one matcher is required. Mode is one of respect/force/disable. TTL is clamped to [0, 86400]. Salt is an optional cache-bust tag (max 64 chars). All writes emit a ChangeEvent so the gateway picks up the new rule within 30 s via its /changes long-poll. Send `Idempotency-Key` to make a retry safe.
2231
2231
  */
2232
- post: operations["postApiGatewayV1Cache-rules"];
2232
+ post: operations["postApiGatewayV1CacheRules"];
2233
2233
  delete?: never;
2234
2234
  options?: never;
2235
2235
  head?: never;
@@ -2247,21 +2247,21 @@ interface paths {
2247
2247
  * Get a cache rule
2248
2248
  * @description Returns the rule if it belongs to the caller's organisation; 404 otherwise. Archived rules are NOT returned (use the audit log to inspect removed rules).
2249
2249
  */
2250
- get: operations["getApiGatewayV1Cache-rulesById"];
2250
+ get: operations["getApiGatewayV1CacheRulesById"];
2251
2251
  put?: never;
2252
2252
  post?: never;
2253
2253
  /**
2254
2254
  * Archive a cache rule
2255
2255
  * @description Soft-delete: sets archivedAt. The rule stops matching new requests. Audit log retains before/after snapshots. Returns the archived row.
2256
2256
  */
2257
- delete: operations["deleteApiGatewayV1Cache-rulesById"];
2257
+ delete: operations["deleteApiGatewayV1CacheRulesById"];
2258
2258
  options?: never;
2259
2259
  head?: never;
2260
2260
  /**
2261
2261
  * Update a cache rule
2262
2262
  * @description Partial update. `matchers` and `action` REPLACE the stored value when provided (not merged field-by-field). Omitting them leaves the stored value untouched. The rule id + organisation are immutable.
2263
2263
  */
2264
- patch: operations["patchApiGatewayV1Cache-rulesById"];
2264
+ patch: operations["patchApiGatewayV1CacheRulesById"];
2265
2265
  trace?: never;
2266
2266
  };
2267
2267
  "/api/governance/ingestion-templates": {
@@ -2275,13 +2275,13 @@ interface paths {
2275
2275
  * List ingestion templates
2276
2276
  * @description Returns the union of platform-published default templates and any org-authored templates visible to the caller's organization. Disabled / archived rows are filtered out. `ottl_rules` is empty in this end-user shape; admins use GET /ingestion-templates/admin to read the canonical OTTL.
2277
2277
  */
2278
- get: operations["getApiGovernanceIngestion-templates"];
2278
+ get: operations["getApiGovernanceIngestionTemplates"];
2279
2279
  put?: never;
2280
2280
  /**
2281
2281
  * Create org-authored ingestion template
2282
2282
  * @description Creates a brand-new template scoped to the caller's organization. Slug is auto-generated. Platform rows (organizationId IS NULL) are NEVER created via this endpoint — admins customize platform defaults via POST /ingestion-templates/clone instead.
2283
2283
  */
2284
- post: operations["postApiGovernanceIngestion-templates"];
2284
+ post: operations["postApiGovernanceIngestionTemplates"];
2285
2285
  delete?: never;
2286
2286
  options?: never;
2287
2287
  head?: never;
@@ -2299,7 +2299,7 @@ interface paths {
2299
2299
  * List ingestion templates (admin shape, includes OTTL)
2300
2300
  * @description Same union as the user list but includes the canonical `ottl_rules` source for every row. Used by admin tooling to render the transparency block / authoring drawer.
2301
2301
  */
2302
- get: operations["getApiGovernanceIngestion-templatesAdmin"];
2302
+ get: operations["getApiGovernanceIngestionTemplatesAdmin"];
2303
2303
  put?: never;
2304
2304
  post?: never;
2305
2305
  delete?: never;
@@ -2319,14 +2319,14 @@ interface paths {
2319
2319
  * Get ingestion template
2320
2320
  * @description Single-template lookup by id, scoped to the caller's organization. Cross-org probes collapse to 404 (no enumeration vector).
2321
2321
  */
2322
- get: operations["getApiGovernanceIngestion-templatesById"];
2322
+ get: operations["getApiGovernanceIngestionTemplatesById"];
2323
2323
  put?: never;
2324
2324
  post?: never;
2325
2325
  /**
2326
2326
  * Soft-archive an org-authored template
2327
2327
  * @description Marks the row archived; existing ingestion keys continue to land traces but the row disappears from list views. Platform-published rows reject with 403.
2328
2328
  */
2329
- delete: operations["deleteApiGovernanceIngestion-templatesById"];
2329
+ delete: operations["deleteApiGovernanceIngestionTemplatesById"];
2330
2330
  options?: never;
2331
2331
  head?: never;
2332
2332
  patch?: never;
@@ -2349,7 +2349,7 @@ interface paths {
2349
2349
  * Replace ottl_rules on an org-authored template
2350
2350
  * @description Audit-logged with line counts pre/post. Platform-published rows reject with 403. Admins must clone a platform row before editing it.
2351
2351
  */
2352
- patch: operations["patchApiGovernanceIngestion-templatesByIdOttl-rules"];
2352
+ patch: operations["patchApiGovernanceIngestionTemplatesByIdOttlRules"];
2353
2353
  trace?: never;
2354
2354
  };
2355
2355
  "/api/governance/ingestion-templates/clone": {
@@ -2365,7 +2365,7 @@ interface paths {
2365
2365
  * Clone a platform-published template into the caller's org
2366
2366
  * @description Forks the source row's source_type / display_name / OTTL into a fresh org-authored row that the admin can then edit via PATCH /ingestion-templates/:id/ottl-rules.
2367
2367
  */
2368
- post: operations["postApiGovernanceIngestion-templatesClone"];
2368
+ post: operations["postApiGovernanceIngestionTemplatesClone"];
2369
2369
  delete?: never;
2370
2370
  options?: never;
2371
2371
  head?: never;
@@ -2592,10 +2592,10 @@ interface paths {
2592
2592
  cookie?: never;
2593
2593
  };
2594
2594
  /** @description Snapshot of the default-model cascade for this project: effective resolution per role, plus the configs the caller can read. */
2595
- get: operations["getApiModel-defaults"];
2595
+ get: operations["getApiModelDefaults"];
2596
2596
  put?: never;
2597
2597
  /** @description Create a default-model config attached to one or more scopes. JSON keys may be roles (DEFAULT, FAST, LANGY, EMBEDDINGS) or registered feature keys; missing keys inherit from a higher scope. */
2598
- post: operations["postApiModel-defaults"];
2598
+ post: operations["postApiModelDefaults"];
2599
2599
  delete?: never;
2600
2600
  options?: never;
2601
2601
  head?: never;
@@ -2611,10 +2611,10 @@ interface paths {
2611
2611
  };
2612
2612
  get?: never;
2613
2613
  /** @description Update a config's JSON payload and/or its scope attachments. Sending `scopes: []` deletes the config. */
2614
- put: operations["putApiModel-defaultsById"];
2614
+ put: operations["putApiModelDefaultsById"];
2615
2615
  post?: never;
2616
2616
  /** @description Delete a default-model config. Scope attachments cascade. */
2617
- delete: operations["deleteApiModel-defaultsById"];
2617
+ delete: operations["deleteApiModelDefaultsById"];
2618
2618
  options?: never;
2619
2619
  head?: never;
2620
2620
  patch?: never;
@@ -2628,7 +2628,7 @@ interface paths {
2628
2628
  cookie?: never;
2629
2629
  };
2630
2630
  /** @description List all model providers for a project with masked API keys */
2631
- get: operations["getApiModel-providers"];
2631
+ get: operations["getApiModelProviders"];
2632
2632
  put?: never;
2633
2633
  post?: never;
2634
2634
  delete?: never;
@@ -2646,7 +2646,7 @@ interface paths {
2646
2646
  };
2647
2647
  get?: never;
2648
2648
  /** @description Create or update a model provider */
2649
- put: operations["putApiModel-providersByProvider"];
2649
+ put: operations["putApiModelProvidersByProvider"];
2650
2650
  post?: never;
2651
2651
  delete?: never;
2652
2652
  options?: never;
@@ -2868,7 +2868,7 @@ interface paths {
2868
2868
  /** @description List the organization's role bindings, each naming its principal (user, group or API key), role and scope. Filter by principal or scope; totalCount counts the filtered set. */
2869
2869
  get: operations["listRoleBindings"];
2870
2870
  put?: never;
2871
- /** @description Create a role binding for exactly one principal: a user, a group, or an API key. Every reference is checked against the caller's organization, and an identical binding answers 409 role_binding_already_exists. */
2871
+ /** @description Create a role binding for exactly one principal: a user, a group, or an API key. Every reference is checked against the caller's organization, and an identical binding answers 409 role_binding_already_exists. The response always carries the new binding's id; the names of its principal, role and scope may be absent on this response alone, and a follow-up read carries them. */
2872
2872
  post: operations["createRoleBinding"];
2873
2873
  delete?: never;
2874
2874
  options?: never;
@@ -3094,7 +3094,7 @@ interface paths {
3094
3094
  head?: never;
3095
3095
  /**
3096
3096
  * Update a provisioned user
3097
- * @description Applies RFC 7644 section 3.5.2 patch operations. What is implemented: `replace` of `active` (deactivating or reactivating the account), of `userName`, and of `name.givenName` / `name.familyName`, written either as an operation path or as keys inside a value object; and `add`, `replace` or `remove` of the enterprise `costCenter`, which reassigns the member's department. Operations outside that set are accepted and change nothing, so a provider sending its full patch set is never rejected.
3097
+ * @description Applies RFC 7644 section 3.5.2 patch operations. What is implemented: `replace` of `active` (deactivating or reactivating the account), of `userName`, and of `name.givenName` / `name.familyName`, written either as an operation path or as keys inside a value object; and `add`, `replace` or `remove` of the enterprise `costCenter`, which reassigns the member's department. `replace`, `add` and `remove` are the only operation names understood, read without regard to case, so the capitalized `Replace` that Entra ID writes is accepted; any other name, or a missing or non-string one, is rejected with a 400. An understood operation aimed at anything not listed above is accepted and changes nothing.
3098
3098
  */
3099
3099
  patch: operations["scimPatchUser"];
3100
3100
  trace?: never;
@@ -3150,7 +3150,7 @@ interface paths {
3150
3150
  head?: never;
3151
3151
  /**
3152
3152
  * Update a provisioned group
3153
- * @description Applies RFC 7644 section 3.5.2 patch operations. What is implemented: `add` of members, `remove` of members (named by a value filter on the path, as Entra ID writes it, or in the operation value), `replace` of `displayName`, and `replace` of the whole member list. Operations outside that set are accepted and change nothing.
3153
+ * @description Applies RFC 7644 section 3.5.2 patch operations. What is implemented: `add` of members, `remove` of members (named by a value filter on the path, as Entra ID writes it, or in the operation value), `replace` of `displayName`, and `replace` of the whole member list. `replace`, `add` and `remove` are the only operation names understood, read without regard to case, so the capitalized `Add` / `Remove` that Entra ID writes are accepted; any other name, or a missing or non-string one, is rejected with a 400. An `add` or a `remove` aimed at anything other than members is accepted and changes nothing. A `replace` that is not a `displayName` rename is treated as a replacement of the whole member list, so one that carries no members empties the group.
3154
3154
  */
3155
3155
  patch: operations["scimPatchGroup"];
3156
3156
  trace?: never;
@@ -3165,9 +3165,9 @@ interface paths {
3165
3165
  get?: never;
3166
3166
  put?: never;
3167
3167
  /** @description Create a new scenario event */
3168
- post: operations["postApiScenario-events"];
3168
+ post: operations["postApiScenarioEvents"];
3169
3169
  /** @description Archive all simulation runs for a scenario set. Pass `scenarioSetId=default` to archive runs in the implicit default set; future SDK runs without an explicit setId will repopulate it. */
3170
- delete: operations["deleteApiScenario-events"];
3170
+ delete: operations["deleteApiScenarioEvents"];
3171
3171
  options?: never;
3172
3172
  head?: never;
3173
3173
  patch?: never;
@@ -3183,7 +3183,7 @@ interface paths {
3183
3183
  get?: never;
3184
3184
  put?: never;
3185
3185
  /** @description Offer a batch run to an already-open simulations tab on the caller's machine. Returns whether a live tab took it. */
3186
- post: operations["postApiScenario-eventsBrowser-tab"];
3186
+ post: operations["postApiScenarioEventsBrowserTab"];
3187
3187
  delete?: never;
3188
3188
  options?: never;
3189
3189
  head?: never;
@@ -3364,7 +3364,7 @@ interface paths {
3364
3364
  cookie?: never;
3365
3365
  };
3366
3366
  /** @description List simulation runs, optionally filtered by scenarioSetId or batchRunId */
3367
- get: operations["getApiSimulation-runs"];
3367
+ get: operations["getApiSimulationRuns"];
3368
3368
  put?: never;
3369
3369
  post?: never;
3370
3370
  delete?: never;
@@ -3381,7 +3381,7 @@ interface paths {
3381
3381
  cookie?: never;
3382
3382
  };
3383
3383
  /** @description Get a single simulation run by its ID */
3384
- get: operations["getApiSimulation-runsByScenarioRunId"];
3384
+ get: operations["getApiSimulationRunsByScenarioRunId"];
3385
3385
  put?: never;
3386
3386
  post?: never;
3387
3387
  delete?: never;
@@ -3398,7 +3398,7 @@ interface paths {
3398
3398
  cookie?: never;
3399
3399
  };
3400
3400
  /** @description List batch summaries for a scenario set (pass/fail counts per batch) */
3401
- get: operations["getApiSimulation-runsBatchesList"];
3401
+ get: operations["getApiSimulationRunsBatchesList"];
3402
3402
  put?: never;
3403
3403
  post?: never;
3404
3404
  delete?: never;
@@ -3847,7 +3847,7 @@ interface paths {
3847
3847
  * Roll an endpoint's signing secret
3848
3848
  * @description Roll the endpoint's signing secret. The new secret is returned ONCE; deliveries sign with it immediately.
3849
3849
  */
3850
- post: operations["postApiWebhooksV1EndpointsByIdRoll-secret"];
3850
+ post: operations["postApiWebhooksV1EndpointsByIdRollSecret"];
3851
3851
  delete?: never;
3852
3852
  options?: never;
3853
3853
  head?: never;
@@ -3925,7 +3925,7 @@ interface paths {
3925
3925
  * List subscribable event types
3926
3926
  * @description The event catalog: every subscribable type, grouped by family; types marked emitting=false are declared contracts whose producers have not shipped yet
3927
3927
  */
3928
- get: operations["getApiWebhooksV1Event-types"];
3928
+ get: operations["getApiWebhooksV1EventTypes"];
3929
3929
  put?: never;
3930
3930
  post?: never;
3931
3931
  delete?: never;
@@ -3985,7 +3985,7 @@ interface paths {
3985
3985
  * List spend summaries
3986
3986
  * @description Reconciliation checksum fast path: spend rollups with token classes and integer nano-USD cost. Settled (unpriced) requests are counted separately as settled_count and never included in cost sums. Diff individual items via /spend-events only when a checksum diverges. `group_by` takes one or two of virtual_key, end_user, project, model, provider, principal and request_type, comma-separated, and `bucket` adds an hour or day column in the `timezone` you name. `key` stays the first dimension's value for consumers written against the single-dimension surface; read `group` to tell two dimensions apart. Paged by group key ascending: follow next_cursor until it comes back null, because a page that is full does not mean the window held nothing more. Grouping by model or provider, or into time buckets, is refused with `gateway_spend_group_by_unstable` while the window is recent enough that outcomes can still arrive, because those groups can move under a page walk and the totals would double-count some requests and miss others; ask for an older range, or send `allow_unstable` when an approximate shape is enough. Every filter here is accepted by /spend-events too, and the reverse holds apart from `status=admitted`: a rollup sums the cost of requests past admission, so an admitted request has none to contribute and that narrowing is refused rather than answered with a zero. Ask /spend-events for those.
3987
3987
  */
3988
- get: operations["getApiGatewayV1Spend-summaries"];
3988
+ get: operations["getApiGatewayV1SpendSummaries"];
3989
3989
  put?: never;
3990
3990
  post?: never;
3991
3991
  delete?: never;
@@ -4005,7 +4005,7 @@ interface paths {
4005
4005
  * List spend events
4006
4006
  * @description Cursor-paged pull over the per-request spend record, ascending by insert order so rows folded late are never skipped by an in-flight cursor. Events are the same canonical objects webhook deliveries carry. Retention is a fixed 13 months, which bounds reconciliation and replay. When feeding a downstream biller, mind its dedup window (Metronome 34 days and Stripe meters 24h+ at the time of writing; both vendors own those numbers, so confirm the current one before you rely on it): re-pulling older ranges into a biller past its window can double-bill. Every filter here is accepted by /spend-summaries too, so a checksum that disagrees can be diffed on exactly the same narrowing; the one difference is `status=admitted`, which only this read answers, because an admitted request is still in flight and contributes no cost to a rollup. Repeat a filter to widen it (`model=a&model=b` matches either); name two different filters to narrow. `metadata` is written `key:value`, split on the first colon, and repeating a key widens that key. `team_id` and `external_id` name Postgres records and are resolved to the projects and keys they cover, so a team with no projects or an external id nobody minted answers with no spend rather than with everything.
4007
4007
  */
4008
- get: operations["getApiGatewayV1Spend-events"];
4008
+ get: operations["getApiGatewayV1SpendEvents"];
4009
4009
  put?: never;
4010
4010
  post?: never;
4011
4011
  delete?: never;
@@ -4025,7 +4025,7 @@ interface paths {
4025
4025
  * Read one end user's spend
4026
4026
  * @description Windowed spend rollup for one external end user across the organization (the /customer/info-style read a rebilling integration polls). `caps` lists every attributed-user budget that applies to this end user, each with its limit and the spend against it. It is an empty array until such a budget template applies, never null.
4027
4027
  */
4028
- get: operations["getApiGatewayV1End-usersByIdSpend"];
4028
+ get: operations["getApiGatewayV1EndUsersByIdSpend"];
4029
4029
  put?: never;
4030
4030
  post?: never;
4031
4031
  delete?: never;
@@ -4047,7 +4047,7 @@ interface paths {
4047
4047
  * Replay spend events to an endpoint
4048
4048
  * @description Re-delivers the window's spend envelopes to ONE endpoint through the normal delivery path (per-endpoint stream, retry ladder, delivery log), honoring the endpoint's event subscriptions. Envelope ids are UNCHANGED: your consumer's event-id dedup decides what a redelivery means. Mind your downstream billing system's finite dedup window (Metronome 34 days, Stripe 24h+): replaying older than that window can double-bill on your side, so prefer pull-and-diff for old ranges. The window is capped at 7 days and 10,000 envelopes per call; both caps are checked before any delivery is queued, so a refused replay ships nothing.
4049
4049
  */
4050
- post: operations["postApiGatewayV1Spend-eventsReplay"];
4050
+ post: operations["postApiGatewayV1SpendEventsReplay"];
4051
4051
  delete?: never;
4052
4052
  options?: never;
4053
4053
  head?: never;
@@ -4482,7 +4482,7 @@ interface operations {
4482
4482
  path?: never;
4483
4483
  cookie?: never;
4484
4484
  };
4485
- requestBody?: {
4485
+ requestBody: {
4486
4486
  content: {
4487
4487
  "application/json": {
4488
4488
  name: string;
@@ -4530,7 +4530,7 @@ interface operations {
4530
4530
  };
4531
4531
  cookie?: never;
4532
4532
  };
4533
- requestBody?: {
4533
+ requestBody: {
4534
4534
  content: {
4535
4535
  "application/json": {
4536
4536
  name?: string;
@@ -4588,7 +4588,7 @@ interface operations {
4588
4588
  path?: never;
4589
4589
  cookie?: never;
4590
4590
  };
4591
- requestBody?: {
4591
+ requestBody: {
4592
4592
  content: {
4593
4593
  "application/json": {
4594
4594
  /**
@@ -4813,7 +4813,7 @@ interface operations {
4813
4813
  };
4814
4814
  cookie?: never;
4815
4815
  };
4816
- requestBody?: {
4816
+ requestBody: {
4817
4817
  content: {
4818
4818
  "application/json": {
4819
4819
  name?: string;
@@ -4929,7 +4929,7 @@ interface operations {
4929
4929
  path?: never;
4930
4930
  cookie?: never;
4931
4931
  };
4932
- requestBody?: {
4932
+ requestBody: {
4933
4933
  content: {
4934
4934
  "application/json": {
4935
4935
  startDate: number | string;
@@ -5433,7 +5433,7 @@ interface operations {
5433
5433
  };
5434
5434
  cookie?: never;
5435
5435
  };
5436
- requestBody?: {
5436
+ requestBody: {
5437
5437
  content: {
5438
5438
  "application/json": {
5439
5439
  sql: string;
@@ -5441,8 +5441,8 @@ interface operations {
5441
5441
  [key: string]: string | number | boolean | null;
5442
5442
  };
5443
5443
  timeWindow?: {
5444
- start: string;
5445
- end: string;
5444
+ start: string | number;
5445
+ end: string | number;
5446
5446
  };
5447
5447
  };
5448
5448
  };
@@ -5541,6 +5541,26 @@ interface operations {
5541
5541
  };
5542
5542
  };
5543
5543
  };
5544
+ /** @description Unprocessable Entity */
5545
+ 422: {
5546
+ headers: {
5547
+ [name: string]: unknown;
5548
+ };
5549
+ content: {
5550
+ "application/json": {
5551
+ error: {
5552
+ type: string;
5553
+ code: string;
5554
+ message: string;
5555
+ meta?: {
5556
+ [key: string]: unknown;
5557
+ };
5558
+ trace_id?: string;
5559
+ span_id?: string;
5560
+ };
5561
+ };
5562
+ };
5563
+ };
5544
5564
  /** @description Internal Server Error */
5545
5565
  500: {
5546
5566
  headers: {
@@ -5574,7 +5594,7 @@ interface operations {
5574
5594
  };
5575
5595
  requestBody?: never;
5576
5596
  responses: {
5577
- /** @description The governed schema, scoped to the caller's permissions */
5597
+ /** @description The LangWatchQL schema, scoped to the caller's permissions */
5578
5598
  200: {
5579
5599
  headers: {
5580
5600
  [name: string]: unknown;
@@ -5814,7 +5834,7 @@ interface operations {
5814
5834
  };
5815
5835
  cookie?: never;
5816
5836
  };
5817
- requestBody?: {
5837
+ requestBody: {
5818
5838
  content: {
5819
5839
  "application/json": {
5820
5840
  name: string;
@@ -6200,7 +6220,7 @@ interface operations {
6200
6220
  };
6201
6221
  cookie?: never;
6202
6222
  };
6203
- requestBody?: {
6223
+ requestBody: {
6204
6224
  content: {
6205
6225
  "application/json": {
6206
6226
  name?: string;
@@ -6336,7 +6356,7 @@ interface operations {
6336
6356
  };
6337
6357
  };
6338
6358
  };
6339
- "getApiCoding-agentSessionsBySessionIdEvents": {
6359
+ getApiCodingAgentSessionsBySessionIdEvents: {
6340
6360
  parameters: {
6341
6361
  query?: {
6342
6362
  /** @description Comma-separated event kinds to include. Known kinds: model_call, compaction, rate_limit, api_error, retries_exhausted, tool_result, tool_decision, user_prompt, subagent_completed. */
@@ -6461,7 +6481,7 @@ interface operations {
6461
6481
  };
6462
6482
  };
6463
6483
  };
6464
- "getApiCoding-agentPull-request-usage": {
6484
+ getApiCodingAgentPullRequestUsage: {
6465
6485
  parameters: {
6466
6486
  query: {
6467
6487
  /** @description The repository as "owner/name". */
@@ -6604,7 +6624,7 @@ interface operations {
6604
6624
  path?: never;
6605
6625
  cookie?: never;
6606
6626
  };
6607
- requestBody?: {
6627
+ requestBody: {
6608
6628
  content: {
6609
6629
  "application/json": {
6610
6630
  name: string;
@@ -6620,7 +6640,7 @@ interface operations {
6620
6640
  path?: never;
6621
6641
  cookie?: never;
6622
6642
  };
6623
- requestBody?: {
6643
+ requestBody: {
6624
6644
  content: {
6625
6645
  "application/json": {
6626
6646
  dashboardIds: string[];
@@ -6662,7 +6682,7 @@ interface operations {
6662
6682
  };
6663
6683
  cookie?: never;
6664
6684
  };
6665
- requestBody?: {
6685
+ requestBody: {
6666
6686
  content: {
6667
6687
  "application/json": {
6668
6688
  name: string;
@@ -6691,7 +6711,7 @@ interface operations {
6691
6711
  path?: never;
6692
6712
  cookie?: never;
6693
6713
  };
6694
- requestBody?: {
6714
+ requestBody: {
6695
6715
  content: {
6696
6716
  "application/json": {
6697
6717
  name: string;
@@ -6715,7 +6735,7 @@ interface operations {
6715
6735
  requestBody?: never;
6716
6736
  responses: never;
6717
6737
  };
6718
- "postApiDatasetDirect-upload": {
6738
+ postApiDatasetDirectUpload: {
6719
6739
  parameters: {
6720
6740
  query?: never;
6721
6741
  header?: never;
@@ -6725,7 +6745,7 @@ interface operations {
6725
6745
  requestBody?: never;
6726
6746
  responses: never;
6727
6747
  };
6728
- "putApiDatasetDirect-uploadStagingByUploadId": {
6748
+ putApiDatasetDirectUploadStagingByUploadId: {
6729
6749
  parameters: {
6730
6750
  query?: never;
6731
6751
  header?: never;
@@ -6737,7 +6757,7 @@ interface operations {
6737
6757
  requestBody?: never;
6738
6758
  responses: never;
6739
6759
  };
6740
- "postApiDatasetDirect-uploadByDatasetIdFinalize": {
6760
+ postApiDatasetDirectUploadByDatasetIdFinalize: {
6741
6761
  parameters: {
6742
6762
  query?: never;
6743
6763
  header?: never;
@@ -6749,7 +6769,7 @@ interface operations {
6749
6769
  requestBody?: never;
6750
6770
  responses: never;
6751
6771
  };
6752
- "postApiDatasetDirect-uploadByDatasetIdRetry": {
6772
+ postApiDatasetDirectUploadByDatasetIdRetry: {
6753
6773
  parameters: {
6754
6774
  query?: never;
6755
6775
  header?: never;
@@ -6761,7 +6781,7 @@ interface operations {
6761
6781
  requestBody?: never;
6762
6782
  responses: never;
6763
6783
  };
6764
- "deleteApiDatasetDirect-uploadByDatasetId": {
6784
+ deleteApiDatasetDirectUploadByDatasetId: {
6765
6785
  parameters: {
6766
6786
  query?: never;
6767
6787
  header?: never;
@@ -6809,7 +6829,7 @@ interface operations {
6809
6829
  };
6810
6830
  cookie?: never;
6811
6831
  };
6812
- requestBody?: {
6832
+ requestBody: {
6813
6833
  content: {
6814
6834
  "application/json": {
6815
6835
  entries: {
@@ -6829,7 +6849,7 @@ interface operations {
6829
6849
  };
6830
6850
  cookie?: never;
6831
6851
  };
6832
- requestBody?: {
6852
+ requestBody: {
6833
6853
  content: {
6834
6854
  "application/json": {
6835
6855
  recordIds: string[];
@@ -6847,7 +6867,7 @@ interface operations {
6847
6867
  };
6848
6868
  cookie?: never;
6849
6869
  };
6850
- requestBody?: {
6870
+ requestBody: {
6851
6871
  content: {
6852
6872
  "application/json": components["schemas"]["DatasetPostEntries"];
6853
6873
  };
@@ -6968,7 +6988,7 @@ interface operations {
6968
6988
  };
6969
6989
  cookie?: never;
6970
6990
  };
6971
- requestBody?: {
6991
+ requestBody: {
6972
6992
  content: {
6973
6993
  "application/json": {
6974
6994
  name?: string;
@@ -6991,7 +7011,7 @@ interface operations {
6991
7011
  };
6992
7012
  cookie?: never;
6993
7013
  };
6994
- requestBody?: {
7014
+ requestBody: {
6995
7015
  content: {
6996
7016
  "application/json": {
6997
7017
  entry: {
@@ -7104,7 +7124,7 @@ interface operations {
7104
7124
  path?: never;
7105
7125
  cookie?: never;
7106
7126
  };
7107
- requestBody?: {
7127
+ requestBody: {
7108
7128
  content: {
7109
7129
  "application/json": {
7110
7130
  name: string;
@@ -7319,7 +7339,7 @@ interface operations {
7319
7339
  };
7320
7340
  cookie?: never;
7321
7341
  };
7322
- requestBody?: {
7342
+ requestBody: {
7323
7343
  content: {
7324
7344
  "application/json": {
7325
7345
  name?: string;
@@ -7724,7 +7744,7 @@ interface operations {
7724
7744
  };
7725
7745
  };
7726
7746
  };
7727
- postApiEvaluationsBatchLog_results: {
7747
+ postApiEvaluationsBatchLogResults: {
7728
7748
  parameters: {
7729
7749
  query?: never;
7730
7750
  header?: never;
@@ -9468,7 +9488,7 @@ interface operations {
9468
9488
  };
9469
9489
  };
9470
9490
  };
9471
- postApiDspyLog_steps: {
9491
+ postApiDspyLogSteps: {
9472
9492
  parameters: {
9473
9493
  query?: never;
9474
9494
  header?: never;
@@ -9809,7 +9829,7 @@ interface operations {
9809
9829
  };
9810
9830
  };
9811
9831
  };
9812
- postApiTrack_event: {
9832
+ postApiTrackEvent: {
9813
9833
  parameters: {
9814
9834
  query?: never;
9815
9835
  header?: never;
@@ -10375,11 +10395,12 @@ interface operations {
10375
10395
  };
10376
10396
  };
10377
10397
  };
10378
- "getApiGatewayV1Virtual-keys": {
10398
+ getApiGatewayV1VirtualKeys: {
10379
10399
  parameters: {
10380
10400
  query?: {
10381
10401
  cursor?: string;
10382
10402
  limit?: number;
10403
+ /** @description Exact match on the resource's `external_id`. */
10383
10404
  external_id?: string;
10384
10405
  };
10385
10406
  header?: never;
@@ -10424,10 +10445,19 @@ interface operations {
10424
10445
  routing_mode: "none" | "fallback_all" | "policy";
10425
10446
  config?: unknown;
10426
10447
  revision: string;
10448
+ /** Format: date-time */
10427
10449
  created_at: string;
10450
+ /** Format: date-time */
10428
10451
  updated_at: string;
10452
+ /** Format: date-time */
10429
10453
  last_used_at: string | null;
10454
+ /** Format: date-time */
10430
10455
  revoked_at: string | null;
10456
+ /**
10457
+ * Format: date-time
10458
+ * @description When the key stops serving, or null for a key that never expires. Requests presented after this moment are refused with `virtual_key_expired`. `status` stays `active` past the date on purpose: the three status values are what clients switch on, and the key stays editable so the date can be extended.
10459
+ */
10460
+ expires_at: string | null;
10431
10461
  }[];
10432
10462
  /** @description Pass back as `cursor` for the next page. Null means the walk is exhausted; a full page does NOT mean there is more. */
10433
10463
  next_cursor: string | null;
@@ -10516,7 +10546,7 @@ interface operations {
10516
10546
  };
10517
10547
  };
10518
10548
  };
10519
- "postApiGatewayV1Virtual-keys": {
10549
+ postApiGatewayV1VirtualKeys: {
10520
10550
  parameters: {
10521
10551
  query?: never;
10522
10552
  header?: {
@@ -10526,7 +10556,7 @@ interface operations {
10526
10556
  path?: never;
10527
10557
  cookie?: never;
10528
10558
  };
10529
- requestBody?: {
10559
+ requestBody: {
10530
10560
  content: {
10531
10561
  "application/json": {
10532
10562
  name: string;
@@ -10541,6 +10571,8 @@ interface operations {
10541
10571
  routing_policy_id?: string | null;
10542
10572
  /** @enum {string} */
10543
10573
  routing_mode?: "none" | "fallback_all" | "policy";
10574
+ /** @description When the key stops serving. Omit it and the key never expires. A date that has already passed is refused with `virtual_key_expiry_in_past`, rather than writing a key that is dead on arrival. */
10575
+ expires_at?: string;
10544
10576
  budget?: {
10545
10577
  limit_usd: number | string;
10546
10578
  /** @enum {string} */
@@ -10659,10 +10691,19 @@ interface operations {
10659
10691
  routing_mode: "none" | "fallback_all" | "policy";
10660
10692
  config?: unknown;
10661
10693
  revision: string;
10694
+ /** Format: date-time */
10662
10695
  created_at: string;
10696
+ /** Format: date-time */
10663
10697
  updated_at: string;
10698
+ /** Format: date-time */
10664
10699
  last_used_at: string | null;
10700
+ /** Format: date-time */
10665
10701
  revoked_at: string | null;
10702
+ /**
10703
+ * Format: date-time
10704
+ * @description When the key stops serving, or null for a key that never expires. Requests presented after this moment are refused with `virtual_key_expired`. `status` stays `active` past the date on purpose: the three status values are what clients switch on, and the key stays editable so the date can be extended.
10705
+ */
10706
+ expires_at: string | null;
10666
10707
  };
10667
10708
  secret: string;
10668
10709
  };
@@ -10770,7 +10811,7 @@ interface operations {
10770
10811
  };
10771
10812
  };
10772
10813
  };
10773
- "getApiGatewayV1Virtual-keysById": {
10814
+ getApiGatewayV1VirtualKeysById: {
10774
10815
  parameters: {
10775
10816
  query?: never;
10776
10817
  header?: never;
@@ -10817,10 +10858,19 @@ interface operations {
10817
10858
  routing_mode: "none" | "fallback_all" | "policy";
10818
10859
  config?: unknown;
10819
10860
  revision: string;
10861
+ /** Format: date-time */
10820
10862
  created_at: string;
10863
+ /** Format: date-time */
10821
10864
  updated_at: string;
10865
+ /** Format: date-time */
10822
10866
  last_used_at: string | null;
10867
+ /** Format: date-time */
10823
10868
  revoked_at: string | null;
10869
+ /**
10870
+ * Format: date-time
10871
+ * @description When the key stops serving, or null for a key that never expires. Requests presented after this moment are refused with `virtual_key_expired`. `status` stays `active` past the date on purpose: the three status values are what clients switch on, and the key stays editable so the date can be extended.
10872
+ */
10873
+ expires_at: string | null;
10824
10874
  };
10825
10875
  };
10826
10876
  };
@@ -10927,7 +10977,7 @@ interface operations {
10927
10977
  };
10928
10978
  };
10929
10979
  };
10930
- "patchApiGatewayV1Virtual-keysById": {
10980
+ patchApiGatewayV1VirtualKeysById: {
10931
10981
  parameters: {
10932
10982
  query?: never;
10933
10983
  header?: never;
@@ -10936,7 +10986,7 @@ interface operations {
10936
10986
  };
10937
10987
  cookie?: never;
10938
10988
  };
10939
- requestBody?: {
10989
+ requestBody: {
10940
10990
  content: {
10941
10991
  "application/json": {
10942
10992
  name?: string;
@@ -10951,6 +11001,8 @@ interface operations {
10951
11001
  routing_policy_id?: string | null;
10952
11002
  /** @enum {string} */
10953
11003
  routing_mode?: "none" | "fallback_all" | "policy";
11004
+ /** @description When the key stops serving. Omit it and the stored date stays where it is; null clears it, so the key never expires; a date moves it. A key whose date has already passed accepts this edit like any other, which is how an expired key is put back in service without minting a new secret. A date in the past is refused with `virtual_key_expiry_in_past`. */
11005
+ expires_at?: string | null;
10954
11006
  budget?: {
10955
11007
  limit_usd: number | string;
10956
11008
  /** @enum {string} */
@@ -11065,10 +11117,19 @@ interface operations {
11065
11117
  routing_mode: "none" | "fallback_all" | "policy";
11066
11118
  config?: unknown;
11067
11119
  revision: string;
11120
+ /** Format: date-time */
11068
11121
  created_at: string;
11122
+ /** Format: date-time */
11069
11123
  updated_at: string;
11124
+ /** Format: date-time */
11070
11125
  last_used_at: string | null;
11126
+ /** Format: date-time */
11071
11127
  revoked_at: string | null;
11128
+ /**
11129
+ * Format: date-time
11130
+ * @description When the key stops serving, or null for a key that never expires. Requests presented after this moment are refused with `virtual_key_expired`. `status` stays `active` past the date on purpose: the three status values are what clients switch on, and the key stays editable so the date can be extended.
11131
+ */
11132
+ expires_at: string | null;
11072
11133
  };
11073
11134
  };
11074
11135
  };
@@ -11155,7 +11216,7 @@ interface operations {
11155
11216
  };
11156
11217
  };
11157
11218
  };
11158
- "getApiGatewayV1Virtual-keysByIdSpend": {
11219
+ getApiGatewayV1VirtualKeysByIdSpend: {
11159
11220
  parameters: {
11160
11221
  query?: {
11161
11222
  from?: number;
@@ -11309,7 +11370,7 @@ interface operations {
11309
11370
  };
11310
11371
  };
11311
11372
  };
11312
- "postApiGatewayV1Virtual-keysByIdRotate": {
11373
+ postApiGatewayV1VirtualKeysByIdRotate: {
11313
11374
  parameters: {
11314
11375
  query?: never;
11315
11376
  header?: never;
@@ -11356,10 +11417,19 @@ interface operations {
11356
11417
  routing_mode: "none" | "fallback_all" | "policy";
11357
11418
  config?: unknown;
11358
11419
  revision: string;
11420
+ /** Format: date-time */
11359
11421
  created_at: string;
11422
+ /** Format: date-time */
11360
11423
  updated_at: string;
11424
+ /** Format: date-time */
11361
11425
  last_used_at: string | null;
11426
+ /** Format: date-time */
11362
11427
  revoked_at: string | null;
11428
+ /**
11429
+ * Format: date-time
11430
+ * @description When the key stops serving, or null for a key that never expires. Requests presented after this moment are refused with `virtual_key_expired`. `status` stays `active` past the date on purpose: the three status values are what clients switch on, and the key stays editable so the date can be extended.
11431
+ */
11432
+ expires_at: string | null;
11363
11433
  };
11364
11434
  secret: string;
11365
11435
  };
@@ -11447,7 +11517,7 @@ interface operations {
11447
11517
  };
11448
11518
  };
11449
11519
  };
11450
- "postApiGatewayV1Virtual-keysByIdDisable": {
11520
+ postApiGatewayV1VirtualKeysByIdDisable: {
11451
11521
  parameters: {
11452
11522
  query?: never;
11453
11523
  header?: never;
@@ -11501,10 +11571,19 @@ interface operations {
11501
11571
  routing_mode: "none" | "fallback_all" | "policy";
11502
11572
  config?: unknown;
11503
11573
  revision: string;
11574
+ /** Format: date-time */
11504
11575
  created_at: string;
11576
+ /** Format: date-time */
11505
11577
  updated_at: string;
11578
+ /** Format: date-time */
11506
11579
  last_used_at: string | null;
11580
+ /** Format: date-time */
11507
11581
  revoked_at: string | null;
11582
+ /**
11583
+ * Format: date-time
11584
+ * @description When the key stops serving, or null for a key that never expires. Requests presented after this moment are refused with `virtual_key_expired`. `status` stays `active` past the date on purpose: the three status values are what clients switch on, and the key stays editable so the date can be extended.
11585
+ */
11586
+ expires_at: string | null;
11508
11587
  };
11509
11588
  };
11510
11589
  };
@@ -11591,7 +11670,7 @@ interface operations {
11591
11670
  };
11592
11671
  };
11593
11672
  };
11594
- "postApiGatewayV1Virtual-keysByIdEnable": {
11673
+ postApiGatewayV1VirtualKeysByIdEnable: {
11595
11674
  parameters: {
11596
11675
  query?: never;
11597
11676
  header?: never;
@@ -11638,10 +11717,19 @@ interface operations {
11638
11717
  routing_mode: "none" | "fallback_all" | "policy";
11639
11718
  config?: unknown;
11640
11719
  revision: string;
11720
+ /** Format: date-time */
11641
11721
  created_at: string;
11722
+ /** Format: date-time */
11642
11723
  updated_at: string;
11724
+ /** Format: date-time */
11643
11725
  last_used_at: string | null;
11726
+ /** Format: date-time */
11644
11727
  revoked_at: string | null;
11728
+ /**
11729
+ * Format: date-time
11730
+ * @description When the key stops serving, or null for a key that never expires. Requests presented after this moment are refused with `virtual_key_expired`. `status` stays `active` past the date on purpose: the three status values are what clients switch on, and the key stays editable so the date can be extended.
11731
+ */
11732
+ expires_at: string | null;
11645
11733
  };
11646
11734
  };
11647
11735
  };
@@ -11728,7 +11816,7 @@ interface operations {
11728
11816
  };
11729
11817
  };
11730
11818
  };
11731
- "postApiGatewayV1Virtual-keysByIdRevoke": {
11819
+ postApiGatewayV1VirtualKeysByIdRevoke: {
11732
11820
  parameters: {
11733
11821
  query?: never;
11734
11822
  header?: never;
@@ -11775,10 +11863,19 @@ interface operations {
11775
11863
  routing_mode: "none" | "fallback_all" | "policy";
11776
11864
  config?: unknown;
11777
11865
  revision: string;
11866
+ /** Format: date-time */
11778
11867
  created_at: string;
11868
+ /** Format: date-time */
11779
11869
  updated_at: string;
11870
+ /** Format: date-time */
11780
11871
  last_used_at: string | null;
11872
+ /** Format: date-time */
11781
11873
  revoked_at: string | null;
11874
+ /**
11875
+ * Format: date-time
11876
+ * @description When the key stops serving, or null for a key that never expires. Requests presented after this moment are refused with `virtual_key_expired`. `status` stays `active` past the date on purpose: the three status values are what clients switch on, and the key stays editable so the date can be extended.
11877
+ */
11878
+ expires_at: string | null;
11782
11879
  };
11783
11880
  };
11784
11881
  };
@@ -12092,7 +12189,9 @@ interface operations {
12092
12189
  query?: {
12093
12190
  cursor?: string;
12094
12191
  limit?: number;
12192
+ /** @description Comma-separated subset of the scope types, lowercase, e.g. `virtual_key,principal`. */
12095
12193
  scope_type?: string;
12194
+ /** @description Exact match on the resource's `external_id`. */
12096
12195
  external_id?: string;
12097
12196
  };
12098
12197
  header?: never;
@@ -12250,7 +12349,7 @@ interface operations {
12250
12349
  path?: never;
12251
12350
  cookie?: never;
12252
12351
  };
12253
- requestBody?: {
12352
+ requestBody: {
12254
12353
  content: {
12255
12354
  "application/json": {
12256
12355
  scope: {
@@ -12789,7 +12888,7 @@ interface operations {
12789
12888
  };
12790
12889
  cookie?: never;
12791
12890
  };
12792
- requestBody?: {
12891
+ requestBody: {
12793
12892
  content: {
12794
12893
  "application/json": {
12795
12894
  name?: string;
@@ -12945,6 +13044,7 @@ interface operations {
12945
13044
  postApiGatewayV1BudgetsByIdReset: {
12946
13045
  parameters: {
12947
13046
  query?: {
13047
+ /** @description Resets ONE end-user bucket on an attributed-user template, leaving the template period untouched. */
12948
13048
  end_user_id?: string;
12949
13049
  };
12950
13050
  header?: never;
@@ -13324,7 +13424,7 @@ interface operations {
13324
13424
  };
13325
13425
  };
13326
13426
  };
13327
- "getApiGatewayV1Cache-rules": {
13427
+ getApiGatewayV1CacheRules: {
13328
13428
  parameters: {
13329
13429
  query?: {
13330
13430
  cursor?: string;
@@ -13452,7 +13552,7 @@ interface operations {
13452
13552
  };
13453
13553
  };
13454
13554
  };
13455
- "postApiGatewayV1Cache-rules": {
13555
+ postApiGatewayV1CacheRules: {
13456
13556
  parameters: {
13457
13557
  query?: never;
13458
13558
  header?: {
@@ -13462,7 +13562,7 @@ interface operations {
13462
13562
  path?: never;
13463
13563
  cookie?: never;
13464
13564
  };
13465
- requestBody?: {
13565
+ requestBody: {
13466
13566
  content: {
13467
13567
  "application/json": {
13468
13568
  name: string;
@@ -13625,7 +13725,7 @@ interface operations {
13625
13725
  };
13626
13726
  };
13627
13727
  };
13628
- "getApiGatewayV1Cache-rulesById": {
13728
+ getApiGatewayV1CacheRulesById: {
13629
13729
  parameters: {
13630
13730
  query?: never;
13631
13731
  header?: never;
@@ -13750,7 +13850,7 @@ interface operations {
13750
13850
  };
13751
13851
  };
13752
13852
  };
13753
- "deleteApiGatewayV1Cache-rulesById": {
13853
+ deleteApiGatewayV1CacheRulesById: {
13754
13854
  parameters: {
13755
13855
  query?: never;
13756
13856
  header?: never;
@@ -13875,7 +13975,7 @@ interface operations {
13875
13975
  };
13876
13976
  };
13877
13977
  };
13878
- "patchApiGatewayV1Cache-rulesById": {
13978
+ patchApiGatewayV1CacheRulesById: {
13879
13979
  parameters: {
13880
13980
  query?: never;
13881
13981
  header?: never;
@@ -13884,7 +13984,7 @@ interface operations {
13884
13984
  };
13885
13985
  cookie?: never;
13886
13986
  };
13887
- requestBody?: {
13987
+ requestBody: {
13888
13988
  content: {
13889
13989
  "application/json": {
13890
13990
  name?: string;
@@ -14025,7 +14125,7 @@ interface operations {
14025
14125
  };
14026
14126
  };
14027
14127
  };
14028
- "getApiGovernanceIngestion-templates": {
14128
+ getApiGovernanceIngestionTemplates: {
14029
14129
  parameters: {
14030
14130
  query?: never;
14031
14131
  header?: never;
@@ -14107,7 +14207,7 @@ interface operations {
14107
14207
  };
14108
14208
  };
14109
14209
  };
14110
- "postApiGovernanceIngestion-templates": {
14210
+ postApiGovernanceIngestionTemplates: {
14111
14211
  parameters: {
14112
14212
  query?: never;
14113
14213
  header?: never;
@@ -14192,7 +14292,7 @@ interface operations {
14192
14292
  };
14193
14293
  };
14194
14294
  };
14195
- "getApiGovernanceIngestion-templatesAdmin": {
14295
+ getApiGovernanceIngestionTemplatesAdmin: {
14196
14296
  parameters: {
14197
14297
  query?: never;
14198
14298
  header?: never;
@@ -14274,7 +14374,7 @@ interface operations {
14274
14374
  };
14275
14375
  };
14276
14376
  };
14277
- "getApiGovernanceIngestion-templatesById": {
14377
+ getApiGovernanceIngestionTemplatesById: {
14278
14378
  parameters: {
14279
14379
  query?: never;
14280
14380
  header?: never;
@@ -14373,7 +14473,7 @@ interface operations {
14373
14473
  };
14374
14474
  };
14375
14475
  };
14376
- "deleteApiGovernanceIngestion-templatesById": {
14476
+ deleteApiGovernanceIngestionTemplatesById: {
14377
14477
  parameters: {
14378
14478
  query?: never;
14379
14479
  header?: never;
@@ -14476,7 +14576,7 @@ interface operations {
14476
14576
  };
14477
14577
  };
14478
14578
  };
14479
- "patchApiGovernanceIngestion-templatesByIdOttl-rules": {
14579
+ patchApiGovernanceIngestionTemplatesByIdOttlRules: {
14480
14580
  parameters: {
14481
14581
  query?: never;
14482
14582
  header?: never;
@@ -14590,7 +14690,7 @@ interface operations {
14590
14690
  };
14591
14691
  };
14592
14692
  };
14593
- "postApiGovernanceIngestion-templatesClone": {
14693
+ postApiGovernanceIngestionTemplatesClone: {
14594
14694
  parameters: {
14595
14695
  query?: never;
14596
14696
  header?: never;
@@ -14780,7 +14880,7 @@ interface operations {
14780
14880
  path?: never;
14781
14881
  cookie?: never;
14782
14882
  };
14783
- requestBody?: {
14883
+ requestBody: {
14784
14884
  content: {
14785
14885
  "application/json": {
14786
14886
  name: string;
@@ -15066,7 +15166,7 @@ interface operations {
15066
15166
  };
15067
15167
  cookie?: never;
15068
15168
  };
15069
- requestBody?: {
15169
+ requestBody: {
15070
15170
  content: {
15071
15171
  "application/json": {
15072
15172
  name?: string;
@@ -15501,7 +15601,7 @@ interface operations {
15501
15601
  path?: never;
15502
15602
  cookie?: never;
15503
15603
  };
15504
- requestBody?: {
15604
+ requestBody: {
15505
15605
  content: {
15506
15606
  "application/json": {
15507
15607
  handle: string;
@@ -15720,7 +15820,7 @@ interface operations {
15720
15820
  };
15721
15821
  cookie?: never;
15722
15822
  };
15723
- requestBody?: {
15823
+ requestBody: {
15724
15824
  content: {
15725
15825
  "application/json": {
15726
15826
  versionId: string;
@@ -15883,7 +15983,7 @@ interface operations {
15883
15983
  path?: never;
15884
15984
  cookie?: never;
15885
15985
  };
15886
- requestBody?: {
15986
+ requestBody: {
15887
15987
  content: {
15888
15988
  "application/json": {
15889
15989
  name: string;
@@ -15963,7 +16063,7 @@ interface operations {
15963
16063
  };
15964
16064
  cookie?: never;
15965
16065
  };
15966
- requestBody?: {
16066
+ requestBody: {
15967
16067
  content: {
15968
16068
  "application/json": {
15969
16069
  name: string;
@@ -16637,7 +16737,7 @@ interface operations {
16637
16737
  };
16638
16738
  cookie?: never;
16639
16739
  };
16640
- requestBody?: {
16740
+ requestBody: {
16641
16741
  content: {
16642
16742
  "application/json": {
16643
16743
  model?: string;
@@ -16947,7 +17047,7 @@ interface operations {
16947
17047
  };
16948
17048
  cookie?: never;
16949
17049
  };
16950
- requestBody?: {
17050
+ requestBody: {
16951
17051
  content: {
16952
17052
  "application/json": {
16953
17053
  configData: {
@@ -17285,7 +17385,7 @@ interface operations {
17285
17385
  };
17286
17386
  };
17287
17387
  };
17288
- "getApiModel-defaults": {
17388
+ getApiModelDefaults: {
17289
17389
  parameters: {
17290
17390
  query?: never;
17291
17391
  header?: never;
@@ -17391,14 +17491,14 @@ interface operations {
17391
17491
  };
17392
17492
  };
17393
17493
  };
17394
- "postApiModel-defaults": {
17494
+ postApiModelDefaults: {
17395
17495
  parameters: {
17396
17496
  query?: never;
17397
17497
  header?: never;
17398
17498
  path?: never;
17399
17499
  cookie?: never;
17400
17500
  };
17401
- requestBody?: {
17501
+ requestBody: {
17402
17502
  content: {
17403
17503
  "application/json": {
17404
17504
  config: {
@@ -17474,7 +17574,7 @@ interface operations {
17474
17574
  };
17475
17575
  };
17476
17576
  };
17477
- "putApiModel-defaultsById": {
17577
+ putApiModelDefaultsById: {
17478
17578
  parameters: {
17479
17579
  query?: never;
17480
17580
  header?: never;
@@ -17483,7 +17583,7 @@ interface operations {
17483
17583
  };
17484
17584
  cookie?: never;
17485
17585
  };
17486
- requestBody?: {
17586
+ requestBody: {
17487
17587
  content: {
17488
17588
  "application/json": {
17489
17589
  config?: {
@@ -17555,7 +17655,7 @@ interface operations {
17555
17655
  };
17556
17656
  };
17557
17657
  };
17558
- "deleteApiModel-defaultsById": {
17658
+ deleteApiModelDefaultsById: {
17559
17659
  parameters: {
17560
17660
  query?: never;
17561
17661
  header?: never;
@@ -17623,7 +17723,7 @@ interface operations {
17623
17723
  };
17624
17724
  };
17625
17725
  };
17626
- "getApiModel-providers": {
17726
+ getApiModelProviders: {
17627
17727
  parameters: {
17628
17728
  query?: never;
17629
17729
  header?: never;
@@ -17726,7 +17826,7 @@ interface operations {
17726
17826
  };
17727
17827
  };
17728
17828
  };
17729
- "putApiModel-providersByProvider": {
17829
+ putApiModelProvidersByProvider: {
17730
17830
  parameters: {
17731
17831
  query?: never;
17732
17832
  header?: never;
@@ -17735,7 +17835,7 @@ interface operations {
17735
17835
  };
17736
17836
  cookie?: never;
17737
17837
  };
17738
- requestBody?: {
17838
+ requestBody: {
17739
17839
  content: {
17740
17840
  "application/json": {
17741
17841
  enabled: boolean;
@@ -17956,7 +18056,7 @@ interface operations {
17956
18056
  path?: never;
17957
18057
  cookie?: never;
17958
18058
  };
17959
- requestBody?: {
18059
+ requestBody: {
17960
18060
  content: {
17961
18061
  "application/json": {
17962
18062
  name: string;
@@ -18278,7 +18378,7 @@ interface operations {
18278
18378
  };
18279
18379
  cookie?: never;
18280
18380
  };
18281
- requestBody?: {
18381
+ requestBody: {
18282
18382
  content: {
18283
18383
  "application/json": {
18284
18384
  name?: string;
@@ -18418,7 +18518,7 @@ interface operations {
18418
18518
  };
18419
18519
  cookie?: never;
18420
18520
  };
18421
- requestBody?: {
18521
+ requestBody: {
18422
18522
  content: {
18423
18523
  "application/json": {
18424
18524
  enabled: boolean;
@@ -18541,7 +18641,7 @@ interface operations {
18541
18641
  path?: never;
18542
18642
  cookie?: never;
18543
18643
  };
18544
- requestBody?: {
18644
+ requestBody: {
18545
18645
  content: {
18546
18646
  "application/json": {
18547
18647
  name?: string;
@@ -18700,7 +18800,7 @@ interface operations {
18700
18800
  };
18701
18801
  cookie?: never;
18702
18802
  };
18703
- requestBody?: {
18803
+ requestBody: {
18704
18804
  content: {
18705
18805
  "application/json": {
18706
18806
  /** @enum {string} */
@@ -18838,7 +18938,7 @@ interface operations {
18838
18938
  path?: never;
18839
18939
  cookie?: never;
18840
18940
  };
18841
- requestBody?: {
18941
+ requestBody: {
18842
18942
  content: {
18843
18943
  "application/json": {
18844
18944
  invites: {
@@ -18972,7 +19072,7 @@ interface operations {
18972
19072
  path?: never;
18973
19073
  cookie?: never;
18974
19074
  };
18975
- requestBody?: {
19075
+ requestBody: {
18976
19076
  content: {
18977
19077
  "application/json": {
18978
19078
  name: string;
@@ -19173,7 +19273,7 @@ interface operations {
19173
19273
  path?: never;
19174
19274
  cookie?: never;
19175
19275
  };
19176
- requestBody?: {
19276
+ requestBody: {
19177
19277
  content: {
19178
19278
  "application/json": {
19179
19279
  userId?: string;
@@ -19252,7 +19352,7 @@ interface operations {
19252
19352
  };
19253
19353
  cookie?: never;
19254
19354
  };
19255
- requestBody?: {
19355
+ requestBody: {
19256
19356
  content: {
19257
19357
  "application/json": {
19258
19358
  /** @enum {string} */
@@ -19326,7 +19426,7 @@ interface operations {
19326
19426
  path?: never;
19327
19427
  cookie?: never;
19328
19428
  };
19329
- requestBody?: {
19429
+ requestBody: {
19330
19430
  content: {
19331
19431
  "application/json": {
19332
19432
  name: string;
@@ -19445,7 +19545,7 @@ interface operations {
19445
19545
  };
19446
19546
  cookie?: never;
19447
19547
  };
19448
- requestBody?: {
19548
+ requestBody: {
19449
19549
  content: {
19450
19550
  "application/json": {
19451
19551
  name?: string;
@@ -19507,7 +19607,7 @@ interface operations {
19507
19607
  path?: never;
19508
19608
  cookie?: never;
19509
19609
  };
19510
- requestBody?: {
19610
+ requestBody: {
19511
19611
  content: {
19512
19612
  "application/json": {
19513
19613
  description?: string;
@@ -20816,14 +20916,14 @@ interface operations {
20816
20916
  };
20817
20917
  };
20818
20918
  };
20819
- "postApiScenario-events": {
20919
+ postApiScenarioEvents: {
20820
20920
  parameters: {
20821
20921
  query?: never;
20822
20922
  header?: never;
20823
20923
  path?: never;
20824
20924
  cookie?: never;
20825
20925
  };
20826
- requestBody?: {
20926
+ requestBody: {
20827
20927
  content: {
20828
20928
  "application/json": {
20829
20929
  /** @constant */
@@ -21337,7 +21437,7 @@ interface operations {
21337
21437
  };
21338
21438
  };
21339
21439
  };
21340
- "deleteApiScenario-events": {
21440
+ deleteApiScenarioEvents: {
21341
21441
  parameters: {
21342
21442
  query: {
21343
21443
  scenarioSetId: string;
@@ -21411,14 +21511,14 @@ interface operations {
21411
21511
  };
21412
21512
  };
21413
21513
  };
21414
- "postApiScenario-eventsBrowser-tab": {
21514
+ postApiScenarioEventsBrowserTab: {
21415
21515
  parameters: {
21416
21516
  query?: never;
21417
21517
  header?: never;
21418
21518
  path?: never;
21419
21519
  cookie?: never;
21420
21520
  };
21421
- requestBody?: {
21521
+ requestBody: {
21422
21522
  content: {
21423
21523
  "application/json": {
21424
21524
  tabKey: string;
@@ -21578,7 +21678,7 @@ interface operations {
21578
21678
  path?: never;
21579
21679
  cookie?: never;
21580
21680
  };
21581
- requestBody?: {
21681
+ requestBody: {
21582
21682
  content: {
21583
21683
  "application/json": {
21584
21684
  name: string;
@@ -21773,7 +21873,7 @@ interface operations {
21773
21873
  };
21774
21874
  cookie?: never;
21775
21875
  };
21776
- requestBody?: {
21876
+ requestBody: {
21777
21877
  content: {
21778
21878
  "application/json": {
21779
21879
  name?: string;
@@ -22006,7 +22106,7 @@ interface operations {
22006
22106
  path?: never;
22007
22107
  cookie?: never;
22008
22108
  };
22009
- requestBody?: {
22109
+ requestBody: {
22010
22110
  content: {
22011
22111
  "application/json": {
22012
22112
  /** @description Project name */
@@ -22177,7 +22277,7 @@ interface operations {
22177
22277
  };
22178
22278
  cookie?: never;
22179
22279
  };
22180
- requestBody?: {
22280
+ requestBody: {
22181
22281
  content: {
22182
22282
  "application/json": {
22183
22283
  name?: string;
@@ -22396,7 +22496,7 @@ interface operations {
22396
22496
  path?: never;
22397
22497
  cookie?: never;
22398
22498
  };
22399
- requestBody?: {
22499
+ requestBody: {
22400
22500
  content: {
22401
22501
  "application/json": {
22402
22502
  name: string;
@@ -22579,7 +22679,7 @@ interface operations {
22579
22679
  };
22580
22680
  cookie?: never;
22581
22681
  };
22582
- requestBody?: {
22682
+ requestBody: {
22583
22683
  content: {
22584
22684
  "application/json": {
22585
22685
  value: string;
@@ -22749,7 +22849,7 @@ interface operations {
22749
22849
  };
22750
22850
  };
22751
22851
  };
22752
- "getApiSimulation-runs": {
22852
+ getApiSimulationRuns: {
22753
22853
  parameters: {
22754
22854
  query?: {
22755
22855
  scenarioSetId?: string;
@@ -22850,7 +22950,7 @@ interface operations {
22850
22950
  };
22851
22951
  };
22852
22952
  };
22853
- "getApiSimulation-runsByScenarioRunId": {
22953
+ getApiSimulationRunsByScenarioRunId: {
22854
22954
  parameters: {
22855
22955
  query?: never;
22856
22956
  header?: never;
@@ -22956,7 +23056,7 @@ interface operations {
22956
23056
  };
22957
23057
  };
22958
23058
  };
22959
- "getApiSimulation-runsBatchesList": {
23059
+ getApiSimulationRunsBatchesList: {
22960
23060
  parameters: {
22961
23061
  query: {
22962
23062
  scenarioSetId: string;
@@ -23135,7 +23235,7 @@ interface operations {
23135
23235
  path?: never;
23136
23236
  cookie?: never;
23137
23237
  };
23138
- requestBody?: {
23238
+ requestBody: {
23139
23239
  content: {
23140
23240
  "application/json": {
23141
23241
  name: string;
@@ -23423,7 +23523,7 @@ interface operations {
23423
23523
  };
23424
23524
  cookie?: never;
23425
23525
  };
23426
- requestBody?: {
23526
+ requestBody: {
23427
23527
  content: {
23428
23528
  "application/json": {
23429
23529
  name?: string;
@@ -23636,7 +23736,7 @@ interface operations {
23636
23736
  };
23637
23737
  cookie?: never;
23638
23738
  };
23639
- requestBody?: {
23739
+ requestBody: {
23640
23740
  content: {
23641
23741
  "application/json": {
23642
23742
  idempotencyKey?: string;
@@ -23758,7 +23858,7 @@ interface operations {
23758
23858
  path?: never;
23759
23859
  cookie?: never;
23760
23860
  };
23761
- requestBody?: {
23861
+ requestBody: {
23762
23862
  content: {
23763
23863
  "application/json": {
23764
23864
  name: string;
@@ -23800,7 +23900,7 @@ interface operations {
23800
23900
  };
23801
23901
  cookie?: never;
23802
23902
  };
23803
- requestBody?: {
23903
+ requestBody: {
23804
23904
  content: {
23805
23905
  "application/json": {
23806
23906
  name?: string;
@@ -23830,7 +23930,7 @@ interface operations {
23830
23930
  };
23831
23931
  cookie?: never;
23832
23932
  };
23833
- requestBody?: {
23933
+ requestBody: {
23834
23934
  content: {
23835
23935
  "application/json": {
23836
23936
  userId: string;
@@ -23889,7 +23989,7 @@ interface operations {
23889
23989
  path?: never;
23890
23990
  cookie?: never;
23891
23991
  };
23892
- requestBody?: {
23992
+ requestBody: {
23893
23993
  content: {
23894
23994
  "application/json": {
23895
23995
  name: string;
@@ -23940,7 +24040,7 @@ interface operations {
23940
24040
  };
23941
24041
  cookie?: never;
23942
24042
  };
23943
- requestBody?: {
24043
+ requestBody: {
23944
24044
  content: {
23945
24045
  "application/json": {
23946
24046
  name: string;
@@ -23970,7 +24070,7 @@ interface operations {
23970
24070
  };
23971
24071
  cookie?: never;
23972
24072
  };
23973
- requestBody?: {
24073
+ requestBody: {
23974
24074
  content: {
23975
24075
  "application/json": {
23976
24076
  userId: string;
@@ -24013,7 +24113,7 @@ interface operations {
24013
24113
  };
24014
24114
  cookie?: never;
24015
24115
  };
24016
- requestBody?: {
24116
+ requestBody: {
24017
24117
  content: {
24018
24118
  "application/json": {
24019
24119
  /** @enum {string} */
@@ -24047,7 +24147,7 @@ interface operations {
24047
24147
  path?: never;
24048
24148
  cookie?: never;
24049
24149
  };
24050
- requestBody?: {
24150
+ requestBody: {
24051
24151
  content: {
24052
24152
  "application/json": {
24053
24153
  query?: string;
@@ -24585,7 +24685,7 @@ interface operations {
24585
24685
  };
24586
24686
  cookie?: never;
24587
24687
  };
24588
- requestBody?: {
24688
+ requestBody: {
24589
24689
  content: {
24590
24690
  "application/json": {
24591
24691
  metadata: {
@@ -24752,7 +24852,7 @@ interface operations {
24752
24852
  path?: never;
24753
24853
  cookie?: never;
24754
24854
  };
24755
- requestBody?: {
24855
+ requestBody: {
24756
24856
  content: {
24757
24857
  "application/json": {
24758
24858
  name: string;
@@ -25045,7 +25145,7 @@ interface operations {
25045
25145
  };
25046
25146
  cookie?: never;
25047
25147
  };
25048
- requestBody?: {
25148
+ requestBody: {
25049
25149
  content: {
25050
25150
  "application/json": {
25051
25151
  name?: string;
@@ -25313,7 +25413,7 @@ interface operations {
25313
25413
  path?: never;
25314
25414
  cookie?: never;
25315
25415
  };
25316
- requestBody?: {
25416
+ requestBody: {
25317
25417
  content: {
25318
25418
  "application/json": {
25319
25419
  /** @enum {string} */
@@ -25807,7 +25907,7 @@ interface operations {
25807
25907
  };
25808
25908
  cookie?: never;
25809
25909
  };
25810
- requestBody?: {
25910
+ requestBody: {
25811
25911
  content: {
25812
25912
  "application/json": {
25813
25913
  /** @enum {string} */
@@ -25991,7 +26091,7 @@ interface operations {
25991
26091
  };
25992
26092
  };
25993
26093
  };
25994
- "postApiWebhooksV1EndpointsByIdRoll-secret": {
26094
+ postApiWebhooksV1EndpointsByIdRollSecret: {
25995
26095
  parameters: {
25996
26096
  query?: never;
25997
26097
  header?: never;
@@ -26570,7 +26670,7 @@ interface operations {
26570
26670
  };
26571
26671
  };
26572
26672
  };
26573
- "getApiWebhooksV1Event-types": {
26673
+ getApiWebhooksV1EventTypes: {
26574
26674
  parameters: {
26575
26675
  query?: never;
26576
26676
  header?: never;
@@ -26928,14 +27028,18 @@ interface operations {
26928
27028
  };
26929
27029
  };
26930
27030
  };
26931
- "getApiGatewayV1Spend-summaries": {
27031
+ getApiGatewayV1SpendSummaries: {
26932
27032
  parameters: {
26933
27033
  query: {
27034
+ /** @description One or two dimensions, comma separated: virtual_key, end_user, project, model, provider, principal, request_type. A dimension may not repeat. Each row's `key` is the first dimension's value and `group` names them all, so two rows may share a key. */
26934
27035
  group_by: string;
26935
27036
  bucket?: "none" | "hour" | "day";
26936
27037
  timezone?: string;
27038
+ /** @description true, 1, yes for yes; false, 0, no or omitted for no. Case does not matter, so a Python True is accepted as sent. */
26937
27039
  allow_unstable?: string;
27040
+ /** @description Milliseconds since the Unix epoch, not seconds. An epoch in seconds is a valid integer here and answers for 1970, so a mismatched unit reads as an empty window rather than as an error. */
26938
27041
  from: number;
27042
+ /** @description Milliseconds since the Unix epoch, not seconds. An epoch in seconds is a valid integer here and answers for 1970, so a mismatched unit reads as an empty window rather than as an error. */
26939
27043
  to: number;
26940
27044
  cursor?: string;
26941
27045
  limit?: number;
@@ -26950,6 +27054,7 @@ interface operations {
26950
27054
  request_type?: string | string[];
26951
27055
  label?: string | string[];
26952
27056
  metadata?: string | string[];
27057
+ /** @description Narrow to one lifecycle status. `admitted` is not accepted here: a rollup sums the cost of requests past admission, and an admitted request is still in flight with no cost of its own yet. Ask /spend-events for those. */
26953
27058
  status?: "success" | "error" | "confirmed" | "failed" | "settled";
26954
27059
  };
26955
27060
  header?: never;
@@ -27073,10 +27178,12 @@ interface operations {
27073
27178
  };
27074
27179
  };
27075
27180
  };
27076
- "getApiGatewayV1Spend-events": {
27181
+ getApiGatewayV1SpendEvents: {
27077
27182
  parameters: {
27078
27183
  query: {
27184
+ /** @description Milliseconds since the Unix epoch, not seconds. An epoch in seconds is a valid integer here and answers for 1970, so a mismatched unit reads as an empty window rather than as an error. */
27079
27185
  from: number;
27186
+ /** @description Milliseconds since the Unix epoch, not seconds. An epoch in seconds is a valid integer here and answers for 1970, so a mismatched unit reads as an empty window rather than as an error. */
27080
27187
  to: number;
27081
27188
  cursor?: string;
27082
27189
  limit?: number;
@@ -27231,7 +27338,7 @@ interface operations {
27231
27338
  };
27232
27339
  };
27233
27340
  };
27234
- "getApiGatewayV1End-usersByIdSpend": {
27341
+ getApiGatewayV1EndUsersByIdSpend: {
27235
27342
  parameters: {
27236
27343
  query?: {
27237
27344
  window?: "day" | "week" | "month";
@@ -27371,14 +27478,14 @@ interface operations {
27371
27478
  };
27372
27479
  };
27373
27480
  };
27374
- "postApiGatewayV1Spend-eventsReplay": {
27481
+ postApiGatewayV1SpendEventsReplay: {
27375
27482
  parameters: {
27376
27483
  query?: never;
27377
27484
  header?: never;
27378
27485
  path?: never;
27379
27486
  cookie?: never;
27380
27487
  };
27381
- requestBody?: {
27488
+ requestBody: {
27382
27489
  content: {
27383
27490
  "application/json": {
27384
27491
  from: number;
@@ -27755,7 +27862,7 @@ interface operations {
27755
27862
  };
27756
27863
  cookie?: never;
27757
27864
  };
27758
- requestBody?: {
27865
+ requestBody: {
27759
27866
  content: {
27760
27867
  "application/json": {
27761
27868
  name?: string;
@@ -27856,7 +27963,7 @@ interface operations {
27856
27963
  };
27857
27964
  cookie?: never;
27858
27965
  };
27859
- requestBody?: {
27966
+ requestBody: {
27860
27967
  content: {
27861
27968
  "application/json": {
27862
27969
  /** @description Committed version to evaluate; defaults to the latest commit */