@shipeasy/openapi 2.2.0 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/dist/{chunk-643YSMLU.js → chunk-4QSU744W.js} +183 -1
  2. package/dist/chunk-4QSU744W.js.map +1 -0
  3. package/dist/{chunk-MRW3DJ57.js → chunk-ZPKHTUVV.js} +1238 -335
  4. package/dist/chunk-ZPKHTUVV.js.map +1 -0
  5. package/dist/{client-K0ShmsC7.d.ts → client-WGNXT4xl.d.ts} +5818 -2647
  6. package/dist/client.d.ts +1 -1
  7. package/dist/client.js +51 -1
  8. package/dist/custom.js +4 -4
  9. package/dist/custom.js.map +1 -1
  10. package/dist/index.d.ts +2 -2
  11. package/dist/index.js +52 -2
  12. package/dist/index.js.map +1 -1
  13. package/dist/schemas.d.ts +3538 -534
  14. package/dist/schemas.js +253 -5
  15. package/openapi.json +12914 -7158
  16. package/openapi.yaml +7672 -3742
  17. package/package.json +1 -1
  18. package/spec/components/errors.yaml +33 -1
  19. package/spec/components/schemas/alerts.yaml +138 -0
  20. package/spec/components/schemas/attributes.yaml +53 -3
  21. package/spec/components/schemas/common.yaml +16 -0
  22. package/spec/components/schemas/configs.yaml +58 -0
  23. package/spec/components/schemas/connectors.yaml +5 -1
  24. package/spec/components/schemas/errors-api.yaml +116 -6
  25. package/spec/components/schemas/experiment-api-row.yaml +293 -0
  26. package/spec/components/schemas/experiments.yaml +395 -380
  27. package/spec/components/schemas/gates.yaml +355 -272
  28. package/spec/components/schemas/i18n.yaml +169 -40
  29. package/spec/components/schemas/keys.yaml +2 -1
  30. package/spec/components/schemas/killswitches.yaml +36 -0
  31. package/spec/components/schemas/metrics.yaml +200 -23
  32. package/spec/components/schemas/ops.yaml +918 -29
  33. package/spec/components/schemas/projects.yaml +246 -2
  34. package/spec/components/schemas/universes.yaml +83 -1
  35. package/spec/openapi.yaml +61 -0
  36. package/spec/paths/alert-rules.yaml +1 -0
  37. package/spec/paths/alerts.yaml +184 -0
  38. package/spec/paths/attributes.yaml +23 -5
  39. package/spec/paths/configs.yaml +71 -0
  40. package/spec/paths/errors.yaml +112 -2
  41. package/spec/paths/events.yaml +1 -0
  42. package/spec/paths/experiments.yaml +244 -16
  43. package/spec/paths/gates.yaml +138 -0
  44. package/spec/paths/i18n.yaml +290 -6
  45. package/spec/paths/keys.yaml +1 -0
  46. package/spec/paths/killswitches.yaml +7 -0
  47. package/spec/paths/metrics.yaml +187 -0
  48. package/spec/paths/ops.yaml +410 -0
  49. package/spec/paths/projects.yaml +62 -2
  50. package/spec/paths/universes.yaml +1 -0
  51. package/dist/chunk-643YSMLU.js.map +0 -1
  52. package/dist/chunk-MRW3DJ57.js.map +0 -1
@@ -19,7 +19,9 @@ GetCurrentProjectResponse:
19
19
  type: string
20
20
  enum:
21
21
  - free
22
- - paid
22
+ - pro
23
+ - business
24
+ - enterprise
23
25
  description: Billing plan tier.
24
26
  status:
25
27
  type: string
@@ -74,6 +76,154 @@ GetCurrentProjectResponse:
74
76
  - type: boolean
75
77
  - type: number
76
78
  description: Whether the feedback/ops module is enabled.
79
+ minSampleSize:
80
+ type: integer
81
+ description: Verdict power guard — minimum users per arm before a ship/hold verdict.
82
+ minRuntimeDays:
83
+ type: integer
84
+ description: Minimum days an experiment must run before a verdict (peeking guard).
85
+ defaultPower:
86
+ type: number
87
+ description: Target statistical power (1−β) feeding the realized-MDE calculation.
88
+ ciConfidence:
89
+ type: number
90
+ description: Confidence level for the interval surfaced on results.
91
+ defaultAllocationPct:
92
+ type: integer
93
+ description: Default traffic allocation (basis points) new experiments start with.
94
+ defaultHoldoutBp:
95
+ type: integer
96
+ description: Default holdout carve-out (basis points) that seeds each new universe's holdout (0 = none).
97
+ defaultWinsorizePct:
98
+ type: integer
99
+ description: Default winsorization percentile new metrics start with.
100
+ defaultMei:
101
+ anyOf:
102
+ - type: number
103
+ - type: "null"
104
+ description: Default minimum effect of interest (relative, 0–1) new metrics start with, or null.
105
+ cupedBaselineDays:
106
+ type: integer
107
+ description: CUPED baseline window — days of pre-experiment history, frozen at start.
108
+ cupedMinOverlap:
109
+ type: number
110
+ description: CUPED selection-bias guard — min share of users with a baseline, else skip.
111
+ cupedMinBaselineUsers:
112
+ type: integer
113
+ description: CUPED — minimum users with a baseline before it runs at all.
114
+ msprtTauMeiFactor:
115
+ type: number
116
+ description: mSPRT prior width — τ = minimum effect of interest × this factor.
117
+ msprtTauSdFactor:
118
+ type: number
119
+ description: mSPRT fallback prior width — τ = this × control SD when no MEI is set.
120
+ srmThreshold:
121
+ type: number
122
+ description: SRM chi-square p-value below which the run is called invalid.
123
+ slug:
124
+ anyOf:
125
+ - type: string
126
+ - type: "null"
127
+ description: URL-safe project identifier used in app URLs and SDK config, or `null` if unset.
128
+ logo:
129
+ anyOf:
130
+ - type: string
131
+ - type: "null"
132
+ description: Cache-busted URL of the project logo (served from the admin logo route), or `null` when no logo is set.
133
+ defaultEnv:
134
+ type: string
135
+ enum:
136
+ - dev
137
+ - staging
138
+ - prod
139
+ description: Default environment new resources are scoped to.
140
+ timezone:
141
+ type: string
142
+ description: IANA timezone the project's daily analysis runs in.
143
+ statMethod:
144
+ type: string
145
+ enum:
146
+ - sequential
147
+ - fixed
148
+ - bayesian
149
+ description: Statistical method the experiment analyzer uses.
150
+ sigThreshold:
151
+ type: string
152
+ description: Significance threshold (alpha) for experiment analysis, as a decimal string (e.g. `"0.05"`).
153
+ autoRollback:
154
+ type: boolean
155
+ description: Whether a failing guardrail auto-rolls back the experiment.
156
+ minSampleDays:
157
+ type: integer
158
+ description: Minimum number of days an experiment must run before it can be called.
159
+ moduleUser:
160
+ anyOf:
161
+ - type: boolean
162
+ - type: number
163
+ description: Whether the user-management module is enabled.
164
+ moduleEvents:
165
+ anyOf:
166
+ - type: boolean
167
+ - type: number
168
+ description: Whether the events module is enabled.
169
+ allowPublicTickets:
170
+ anyOf:
171
+ - type: boolean
172
+ - type: number
173
+ description: Whether key-authenticated public ticket creation (`POST /cli/report`) is allowed into this project. Off by default.
174
+ stripeSubscriptionId:
175
+ anyOf:
176
+ - type: string
177
+ - type: "null"
178
+ description: Stripe subscription id backing the project's billing, or `null` when unsubscribed.
179
+ scheduledInterval:
180
+ anyOf:
181
+ - type: string
182
+ enum:
183
+ - monthly
184
+ - annual
185
+ - type: "null"
186
+ description: Pending billing-interval change deferred to period end (only the annual→monthly downgrade), or `null` when no switch is pending.
187
+ spendLimitEnabled:
188
+ anyOf:
189
+ - type: boolean
190
+ - type: number
191
+ description: Whether the advisory monthly spend limit is enabled.
192
+ spendLimitUsd:
193
+ anyOf:
194
+ - type: integer
195
+ - type: "null"
196
+ description: Advisory monthly spend limit in whole USD, or `null` if unset.
197
+ spendAlertEmail:
198
+ anyOf:
199
+ - type: string
200
+ - type: "null"
201
+ description: Email address the spend alert is sent to, or `null` if unset.
202
+ defaultAssigneePendingApproval:
203
+ anyOf:
204
+ - type: string
205
+ - type: "null"
206
+ description: Default person owner (user id) auto-assigned to new `pending_approval` feedback items, or `null` when unset.
207
+ defaultAssigneeConnectorPendingApproval:
208
+ anyOf:
209
+ - type: string
210
+ - type: "null"
211
+ description: Default agent owner (connector id) auto-assigned to new `pending_approval` feedback items, or `null` when unset.
212
+ defaultAssigneeOpen:
213
+ anyOf:
214
+ - type: string
215
+ - type: "null"
216
+ description: Default person owner (user id) auto-assigned to new `open` feedback items, or `null` when unset.
217
+ defaultAssigneeConnectorOpen:
218
+ anyOf:
219
+ - type: string
220
+ - type: "null"
221
+ description: Default agent owner (connector id) auto-assigned to new `open` feedback items, or `null` when unset.
222
+ deletedAt:
223
+ anyOf:
224
+ - type: string
225
+ - type: "null"
226
+ description: ISO-8601 timestamp the project was soft-deleted (purged after a 14-day grace period), or `null` when live.
77
227
  createdAt:
78
228
  type: string
79
229
  description: ISO-8601 timestamp of project creation.
@@ -97,10 +247,32 @@ GetCurrentProjectResponse:
97
247
  - moduleGates
98
248
  - moduleExperiments
99
249
  - moduleFeedback
250
+ - moduleUser
251
+ - moduleEvents
252
+ - allowPublicTickets
253
+ - slug
254
+ - logo
255
+ - defaultEnv
256
+ - timezone
257
+ - statMethod
258
+ - sigThreshold
259
+ - autoRollback
260
+ - minSampleDays
261
+ - defaultHoldoutBp
262
+ - stripeSubscriptionId
263
+ - scheduledInterval
264
+ - spendLimitEnabled
265
+ - spendLimitUsd
266
+ - spendAlertEmail
267
+ - defaultAssigneePendingApproval
268
+ - defaultAssigneeConnectorPendingApproval
269
+ - defaultAssigneeOpen
270
+ - defaultAssigneeConnectorOpen
271
+ - deletedAt
100
272
  - createdAt
101
273
  - updatedAt
102
274
  additionalProperties: {}
103
- description: The project the caller's auth header resolves to. The shape is open — additional project fields may be present.
275
+ description: The project the caller's auth header resolves to. The shape is open — additional project fields may be present. Stripe billing internals (`stripeCustomerId`, the `stripeItemId*` family) are intentionally undocumented.
104
276
  UpsertProjectRequest:
105
277
  type: object
106
278
  properties:
@@ -218,5 +390,77 @@ UpdateProjectRequest:
218
390
  moduleEvents:
219
391
  type: boolean
220
392
  description: Enable/disable the events module.
393
+ minSampleSize:
394
+ type: integer
395
+ minimum: 2
396
+ maximum: 1000000
397
+ description: Verdict power guard — minimum users per arm before a ship/hold verdict.
398
+ minRuntimeDays:
399
+ type: integer
400
+ minimum: 0
401
+ maximum: 365
402
+ description: Minimum days an experiment must run before a verdict (peeking guard).
403
+ defaultPower:
404
+ type: number
405
+ minimum: 0.5
406
+ maximum: 0.99
407
+ description: Target statistical power (1−β) feeding the realized-MDE calculation.
408
+ ciConfidence:
409
+ type: number
410
+ minimum: 0.5
411
+ maximum: 0.999
412
+ description: Confidence level for the interval surfaced on results (any value in [0.5, 0.999], e.g. 0.90, 0.95, 0.975, 0.99).
413
+ defaultAllocationPct:
414
+ type: integer
415
+ minimum: 1
416
+ maximum: 10000
417
+ description: Default traffic allocation (basis points, 1000 = 10%) new experiments start with; overridable per experiment.
418
+ defaultHoldout:
419
+ type: integer
420
+ minimum: 0
421
+ maximum: 10000
422
+ description: Default holdout carve-out (basis points) that seeds each new universe's holdout (0 = none).
423
+ defaultWinsorizePct:
424
+ type: integer
425
+ minimum: 1
426
+ maximum: 99
427
+ description: Default winsorization percentile new metrics start with; overridable per metric.
428
+ defaultMei:
429
+ anyOf:
430
+ - type: number
431
+ minimum: 0
432
+ maximum: 1
433
+ - type: "null"
434
+ description: Default minimum effect of interest (relative, 0–1) new metrics start with; overridable per metric and per experiment. Null clears it.
435
+ cupedBaselineDays:
436
+ type: integer
437
+ minimum: 1
438
+ maximum: 365
439
+ description: CUPED baseline window — days of pre-experiment history, frozen at start.
440
+ cupedMinOverlap:
441
+ type: number
442
+ minimum: 0.01
443
+ maximum: 0.99
444
+ description: CUPED selection-bias guard — min share of users with a baseline, else skip.
445
+ cupedMinBaselineUsers:
446
+ type: integer
447
+ minimum: 10
448
+ maximum: 100000
449
+ description: CUPED — minimum users with a baseline before it runs at all.
450
+ msprtTauMeiFactor:
451
+ type: number
452
+ minimum: 0.1
453
+ maximum: 2
454
+ description: mSPRT prior width — τ = minimum effect of interest × this factor.
455
+ msprtTauSdFactor:
456
+ type: number
457
+ minimum: 0.05
458
+ maximum: 1
459
+ description: mSPRT fallback prior width — τ = this × control SD when no MEI is set.
460
+ srmThreshold:
461
+ type: number
462
+ minimum: 0.0001
463
+ maximum: 0.05
464
+ description: SRM chi-square p-value below which the run is called invalid.
221
465
  additionalProperties: false
222
466
  description: "Body for `PATCH /api/admin/projects/{id}`. Partial — every field is optional; only supplied fields change. The project id in the path must match the caller's own project."
@@ -1,3 +1,35 @@
1
+ # The universe owns the config schema for every experiment/variant in it — an
2
+ # ordered list of `{ name, type, default }`. Experiments may only override the
3
+ # per-variant value of a declared param, never add fields (universe rework).
4
+ UniverseParam:
5
+ type: object
6
+ properties:
7
+ name:
8
+ type: string
9
+ minLength: 1
10
+ maxLength: 128
11
+ pattern: ^[a-zA-Z_][a-zA-Z0-9_]*$
12
+ description: Param key, referenced by `groups[].params` on every experiment in the universe.
13
+ type:
14
+ type: string
15
+ enum:
16
+ - bool
17
+ - string
18
+ - int
19
+ - number
20
+ description: Scalar type of the param's value.
21
+ default:
22
+ description: "Universe-wide default. Returned when the assigned variant doesn't override this param (resolution: variant override → universe default)."
23
+ required:
24
+ - name
25
+ - type
26
+ - default
27
+ additionalProperties: false
28
+ UniverseParamSchema:
29
+ type: array
30
+ items:
31
+ $ref: "#/UniverseParam"
32
+ description: The universe's ordered config schema — the single source of truth for its params.
1
33
  ListUniversesResponse:
2
34
  type: object
3
35
  properties:
@@ -14,6 +46,11 @@ ListUniversesResponse:
14
46
  maxLength: 128
15
47
  pattern: ^[a-z0-9](?:[a-z0-9_-]*[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9_-]*[a-z0-9])?)?$
16
48
  description: Stable universe key. Single segment or `folder.name`. Lowercase letters, digits, `_` or `-`; max 128 chars. Immutable after create.
49
+ description:
50
+ anyOf:
51
+ - type: string
52
+ - type: "null"
53
+ description: Human-readable blurb shown in the universe picker/hovercard.
17
54
  unitType:
18
55
  type: string
19
56
  description: Unit of randomisation. Snake-case in request (`unit_type`), camelCase in response.
@@ -26,6 +63,16 @@ ListUniversesResponse:
26
63
  maxItems: 2
27
64
  - type: "null"
28
65
  description: Reserved holdout bucket range, or `null` if none.
66
+ recommendedHeadroom:
67
+ type: integer
68
+ minimum: 0
69
+ maximum: 10000
70
+ description: Basis points of headroom seeded into each new experiment's reserved tail (0 = none).
71
+ paramSchema:
72
+ anyOf:
73
+ - $ref: "#/UniverseParamSchema"
74
+ - type: "null"
75
+ description: The universe-owned config schema, or `null` on pre-rework universes not yet seeded.
29
76
  createdAt:
30
77
  type: string
31
78
  description: ISO-8601 timestamp of creation.
@@ -54,6 +101,13 @@ CreateUniverseRequest:
54
101
  description: Stable universe key. Single segment or `folder.name`. Lowercase letters, digits, `_` or `-`; max 128 chars. Immutable after create.
55
102
  folder:
56
103
  $ref: ./common.yaml#/Folder
104
+ description:
105
+ default: null
106
+ anyOf:
107
+ - type: string
108
+ maxLength: 2000
109
+ - type: "null"
110
+ description: Human-readable blurb shown in the universe picker/hovercard.
57
111
  unit_type:
58
112
  default: user_id
59
113
  description: Unit of randomisation. Typically `user_id`. Use `account_id` to keep whole accounts in the same group across an experiment.
@@ -70,6 +124,18 @@ CreateUniverseRequest:
70
124
  maxItems: 2
71
125
  - type: "null"
72
126
  description: Inclusive `[lo, hi]` bucket range (0–9999) reserved as the **holdout** — callers hashed into this slice are excluded from every experiment in the universe. `null` disables the holdout. Pro plan or higher required.
127
+ recommended_headroom:
128
+ default: 0
129
+ type: integer
130
+ minimum: 0
131
+ maximum: 10000
132
+ description: Basis points of reserved headroom seeded into each new experiment created in this universe (0 = none). Lets variants be appended into a running experiment without reshuffling.
133
+ param_schema:
134
+ default: null
135
+ anyOf:
136
+ - $ref: "#/UniverseParamSchema"
137
+ - type: "null"
138
+ description: The universe-owned config schema — an ordered `{ name, type, default }[]`. Experiments may only override values per variant, never add fields. `null` starts an empty schema.
73
139
  required:
74
140
  - name
75
141
  additionalProperties: false
@@ -94,6 +160,12 @@ UpdateUniverseRequest:
94
160
  properties:
95
161
  folder:
96
162
  $ref: ./common.yaml#/Folder
163
+ description:
164
+ anyOf:
165
+ - type: string
166
+ maxLength: 2000
167
+ - type: "null"
168
+ description: Human-readable blurb shown in the universe picker/hovercard.
97
169
  holdout_range:
98
170
  anyOf:
99
171
  - type: array
@@ -105,8 +177,18 @@ UpdateUniverseRequest:
105
177
  maxItems: 2
106
178
  - type: "null"
107
179
  description: Inclusive `[lo, hi]` bucket range (0–9999) reserved as the **holdout** — callers hashed into this slice are excluded from every experiment in the universe. `null` disables the holdout. Pro plan or higher required.
180
+ recommended_headroom:
181
+ type: integer
182
+ minimum: 0
183
+ maximum: 10000
184
+ description: Basis points of reserved headroom seeded into new experiments in this universe.
185
+ param_schema:
186
+ anyOf:
187
+ - $ref: "#/UniverseParamSchema"
188
+ - type: "null"
189
+ description: Replace the universe config schema. Additive changes + default edits are always allowed; removing a param a running experiment overrides is rejected (deprecate-only).
108
190
  additionalProperties: false
109
- description: Body for `PATCH /api/admin/universes/{id}`. Only `holdout_range` is mutable — name and unit_type are immutable after create.
191
+ description: Body for `PATCH /api/admin/universes/{id}`. `name` and `unit_type` are immutable after create; `holdout_range`, `description`, `recommended_headroom` and `param_schema` are mutable.
110
192
  UpdateUniverseResponse:
111
193
  type: object
112
194
  properties:
package/spec/openapi.yaml CHANGED
@@ -180,6 +180,35 @@ tags:
180
180
  **Immutable metric.** The bound metric (and its aggregation) is fixed at create time — there is no update path for `metricId`. Tune `threshold`/`comparator`/`windowHours`/`severity`/`name`/`enabled` instead, or delete + recreate to repoint the rule at a different metric.
181
181
 
182
182
  **Delivery.** `notify` optionally targets a Slack channel and/or email for this rule; `null` falls back to the project's default notification settings. Slack targets require a connected Slack connector.
183
+ - name: Fired Alerts
184
+ parent: Ops
185
+ description: |-
186
+ Fired alerts: the conditions the platform has actually raised — metric-rule
187
+ crossings, armed kill switches, experiment SRM/peek guards, and guardrail
188
+ breaches. Raised only by the platform (UI killswitch handlers plus the
189
+ worker analysis consumer and alerts cron), never filed by hand; deduped per
190
+ `(source, dedupeKey)` with auto-resolve when the condition clears. This
191
+ surface lists them and triages one (status flip + person/agent owner). The
192
+ *rules* that define metric-threshold alerts are the sibling alert-rules
193
+ resource.
194
+ - name: Agents
195
+ parent: Ops
196
+ description: |-
197
+ Connected AI agents — one per authenticated trigger connector (Claude /
198
+ Cursor / Copilot / Jules). The read-only roster behind agent assignment
199
+ and the `ops ack` agent types: an AI ack (`ops ack <handle> --agent
200
+ <type>`) requires the type to appear here, so this list is where an
201
+ `AGENT_NOT_CONNECTED` error sends you.
202
+ - name: Comments
203
+ parent: Ops
204
+ description: |-
205
+ Comments on a queue item — the discussion thread that hangs off any bug,
206
+ feature request, or auto-filed error/alert ticket. Append a comment or read
207
+ the thread; one level of threaded replies via `parentId`.
208
+
209
+ **Mentions.** `@teammate` in a body raises an in-app notification for that
210
+ person; `@shipeasy` asks Jarvis (the AI agent) to read the item and reply.
211
+ Comments authored by Jarvis carry `authorType: system`.
183
212
  - name: Projects
184
213
  description: |-
185
214
  Projects: the account-level container every other resource is scoped to.
@@ -242,6 +271,8 @@ paths:
242
271
  $ref: ./paths/gates.yaml#/~1api~1admin~1gates~1{id}~1enable
243
272
  /api/admin/gates/{id}/disable:
244
273
  $ref: ./paths/gates.yaml#/~1api~1admin~1gates~1{id}~1disable
274
+ /api/admin/gates/{id}/activity:
275
+ $ref: ./paths/gates.yaml#/~1api~1admin~1gates~1{id}~1activity
245
276
  /api/admin/experiments:
246
277
  $ref: ./paths/experiments.yaml#/~1api~1admin~1experiments
247
278
  /api/admin/experiments/{id}:
@@ -256,6 +287,10 @@ paths:
256
287
  $ref: ./paths/experiments.yaml#/~1api~1admin~1experiments~1{id}~1timeseries
257
288
  /api/admin/experiments/{id}/reanalyze:
258
289
  $ref: ./paths/experiments.yaml#/~1api~1admin~1experiments~1{id}~1reanalyze
290
+ /api/admin/experiments/{id}/readouts:
291
+ $ref: ./paths/experiments.yaml#/~1api~1admin~1experiments~1{id}~1readouts
292
+ /api/admin/experiments/{id}/readouts/{readoutId}:
293
+ $ref: ./paths/experiments.yaml#/~1api~1admin~1experiments~1{id}~1readouts~1{readoutId}
259
294
  /api/admin/configs:
260
295
  $ref: ./paths/configs.yaml#/~1api~1admin~1configs
261
296
  /api/admin/configs/{id}:
@@ -268,6 +303,8 @@ paths:
268
303
  $ref: ./paths/configs.yaml#/~1api~1admin~1configs~1{id}~1activity
269
304
  /api/admin/configs/{id}/schema:
270
305
  $ref: ./paths/configs.yaml#/~1api~1admin~1configs~1{id}~1schema
306
+ /api/admin/configs/{id}/versions:
307
+ $ref: ./paths/configs.yaml#/~1api~1admin~1configs~1{id}~1versions
271
308
  /api/admin/killswitches:
272
309
  $ref: ./paths/killswitches.yaml#/~1api~1admin~1killswitches
273
310
  /api/admin/killswitches/{id}:
@@ -292,6 +329,12 @@ paths:
292
329
  $ref: ./paths/metrics.yaml#/~1api~1admin~1metrics
293
330
  /api/admin/metrics/{id}:
294
331
  $ref: ./paths/metrics.yaml#/~1api~1admin~1metrics~1{id}
332
+ /api/admin/metrics/{id}/experiments:
333
+ $ref: ./paths/metrics.yaml#/~1api~1admin~1metrics~1{id}~1experiments
334
+ /api/admin/metrics/{id}/unarchive:
335
+ $ref: ./paths/metrics.yaml#/~1api~1admin~1metrics~1{id}~1unarchive
336
+ /api/admin/metrics/{id}/series:
337
+ $ref: ./paths/metrics.yaml#/~1api~1admin~1metrics~1{id}~1series
295
338
  /api/admin/events:
296
339
  $ref: ./paths/events.yaml#/~1api~1admin~1events
297
340
  /api/admin/events/{id}:
@@ -304,6 +347,14 @@ paths:
304
347
  $ref: ./paths/ops.yaml#/~1api~1admin~1ops~1{handle}
305
348
  /api/admin/ops/{handle}/link-pr:
306
349
  $ref: ./paths/ops.yaml#/~1api~1admin~1ops~1{handle}~1link-pr
350
+ /api/admin/ops/{handle}/ack:
351
+ $ref: ./paths/ops.yaml#/~1api~1admin~1ops~1{handle}~1ack
352
+ /api/admin/ops/{handle}/investigation:
353
+ $ref: ./paths/ops.yaml#/~1api~1admin~1ops~1{handle}~1investigation
354
+ /api/admin/agent-profiles:
355
+ $ref: ./paths/ops.yaml#/~1api~1admin~1agent-profiles
356
+ /api/admin/ops/{handle}/comments:
357
+ $ref: ./paths/ops.yaml#/~1api~1admin~1ops~1{handle}~1comments
307
358
  /api/admin/notifications:
308
359
  $ref: ./paths/ops.yaml#/~1api~1admin~1notifications
309
360
  /api/admin/slack/channels:
@@ -312,6 +363,10 @@ paths:
312
363
  $ref: ./paths/alert-rules.yaml#/~1api~1admin~1alert-rules
313
364
  /api/admin/alert-rules/{id}:
314
365
  $ref: ./paths/alert-rules.yaml#/~1api~1admin~1alert-rules~1{id}
366
+ /api/admin/alerts:
367
+ $ref: ./paths/alerts.yaml#/~1api~1admin~1alerts
368
+ /api/admin/alerts/{id}:
369
+ $ref: ./paths/alerts.yaml#/~1api~1admin~1alerts~1{id}
315
370
  /api/admin/projects/current:
316
371
  $ref: ./paths/projects.yaml#/~1api~1admin~1projects~1current
317
372
  /api/admin/projects/upsert:
@@ -328,6 +383,10 @@ paths:
328
383
  $ref: ./paths/i18n.yaml#/~1api~1admin~1i18n~1drafts
329
384
  /api/admin/i18n/drafts/{draftId}:
330
385
  $ref: ./paths/i18n.yaml#/~1api~1admin~1i18n~1drafts~1{draftId}
386
+ /api/admin/i18n/profiles/{profileId}:
387
+ $ref: ./paths/i18n.yaml#/~1api~1admin~1i18n~1profiles~1{profileId}
388
+ /api/admin/i18n/drafts/{draftId}/keys:
389
+ $ref: ./paths/i18n.yaml#/~1api~1admin~1i18n~1drafts~1{draftId}~1keys
331
390
  /api/admin/i18n/profiles/{profileId}/publish:
332
391
  $ref: ./paths/i18n.yaml#/~1api~1admin~1i18n~1profiles~1{profileId}~1publish
333
392
  /api/admin/i18n/set:
@@ -338,6 +397,8 @@ paths:
338
397
  $ref: ./paths/errors.yaml#/~1api~1admin~1errors~1{id}
339
398
  /api/admin/errors/{id}/file:
340
399
  $ref: ./paths/errors.yaml#/~1api~1admin~1errors~1{id}~1file
400
+ /api/admin/errors/{id}/resolve:
401
+ $ref: ./paths/errors.yaml#/~1api~1admin~1errors~1{id}~1resolve
341
402
  /api/admin/errors/{id}/series:
342
403
  $ref: ./paths/errors.yaml#/~1api~1admin~1errors~1{id}~1series
343
404
  /api/admin/connectors:
@@ -128,6 +128,7 @@
128
128
  - UNAUTHORIZED
129
129
  - FORBIDDEN
130
130
  - ALREADY_EXISTS
131
+ - METRIC_NOT_FOUND
131
132
  - REFERENCED_NOT_FOUND
132
133
  - VALIDATION
133
134
  x-cli: