codai-sdk 0.8.0 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/dist/index.d.ts +1779 -277
- package/dist/index.js +374 -10
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -310,7 +310,7 @@ type paths$1 = {
|
|
|
310
310
|
* `voice`, `response_format` (default `mp3`) and `speed` are forwarded without validation — an unsupported value
|
|
311
311
|
* surfaces as a 502 from upstream. The response body is the raw audio stream; the gateway forwards the upstream
|
|
312
312
|
* `content-type` and falls back to `audio/mpeg`. Authenticates with a real key or an ephemeral token with
|
|
313
|
-
* `scope: audio`. Billing is flat per 1k input characters and never starts a task.
|
|
313
|
+
* `scope: audio` or `scope: live`. Billing is flat per 1k input characters and never starts a task.
|
|
314
314
|
*/
|
|
315
315
|
readonly post: operations$1['createSpeech'];
|
|
316
316
|
readonly delete?: never;
|
|
@@ -319,6 +319,40 @@ type paths$1 = {
|
|
|
319
319
|
readonly patch?: never;
|
|
320
320
|
readonly trace?: never;
|
|
321
321
|
};
|
|
322
|
+
readonly '/v1/audio/speech/stream': {
|
|
323
|
+
readonly parameters: {
|
|
324
|
+
readonly query?: never;
|
|
325
|
+
readonly header?: never;
|
|
326
|
+
readonly path?: never;
|
|
327
|
+
readonly cookie?: never;
|
|
328
|
+
};
|
|
329
|
+
readonly get?: never;
|
|
330
|
+
readonly put?: never;
|
|
331
|
+
/**
|
|
332
|
+
* Stream speech with visemes (Azure neural TTS)
|
|
333
|
+
* @description Neural text-to-speech on Azure AI Speech (`codai-tts-ro`), streamed as Server-Sent Events so an avatar can
|
|
334
|
+
* lip-sync while the audio plays. Voices: `alina` → `ro-RO-AlinaNeural` (default), `emil` → `ro-RO-EmilNeural`, or
|
|
335
|
+
* any Azure neural voice name (e.g. `en-US-AvaNeural`). The text is XML-escaped into SSML; `speed` (0.5-2.0) maps
|
|
336
|
+
* to the prosody rate.
|
|
337
|
+
*
|
|
338
|
+
* Events, in order: `start` `{type, model, voice, format, content_type, sample_rate}`; then, interleaved in
|
|
339
|
+
* synthesis order, `audio` `{type, delta}` (base64 chunk — raw PCM16 mono 24 kHz for `pcm`, MP3 frames for `mp3`),
|
|
340
|
+
* `viseme` `{type, id, offsetMs}` (Azure viseme id 0-21) and `word` `{type, text, offsetMs, durationMs}`; finally
|
|
341
|
+
* `done` `{type, audio_ms, audioBytes, visemes, words}` or `error` `{type, error: {code, message}}`. `offsetMs` is
|
|
342
|
+
* measured on the audio timeline from its first sample.
|
|
343
|
+
*
|
|
344
|
+
* Authenticates with a real key or an ephemeral token with `scope: audio` or `scope: live`. Served from an EU
|
|
345
|
+
* Azure region, so EU data-residency accounts may use it. Billing: $16 per 1M input characters, recorded on the
|
|
346
|
+
* usage row when audio was produced; it never starts a task. 503 `tts_unavailable` when Azure Speech is not
|
|
347
|
+
* configured on the gateway.
|
|
348
|
+
*/
|
|
349
|
+
readonly post: operations$1['createSpeechStream'];
|
|
350
|
+
readonly delete?: never;
|
|
351
|
+
readonly options?: never;
|
|
352
|
+
readonly head?: never;
|
|
353
|
+
readonly patch?: never;
|
|
354
|
+
readonly trace?: never;
|
|
355
|
+
};
|
|
322
356
|
readonly '/v1/audio/transcriptions': {
|
|
323
357
|
readonly parameters: {
|
|
324
358
|
readonly query?: never;
|
|
@@ -419,6 +453,7 @@ type paths$1 = {
|
|
|
419
453
|
* (max 120 chars, default `<platform> device`) and the platform from `x-codai-device-platform`
|
|
420
454
|
* (unknown values fall back to `agent`). An optional `x-codai-push-token` header on those requests upserts the
|
|
421
455
|
* FCM registration token. The raw push token is never echoed — `has_push_token` is all you get.
|
|
456
|
+
* `online` is `true` when the device was seen in the last 2 minutes.
|
|
422
457
|
*/
|
|
423
458
|
readonly get: operations$1['listDevices'];
|
|
424
459
|
readonly put?: never;
|
|
@@ -474,6 +509,7 @@ type paths$1 = {
|
|
|
474
509
|
* can start without a second lookup. Never lease-gated — drain first, then claim.
|
|
475
510
|
* Replaces polling `GET /v1/sessions/{id}/controls?target=me` per session. Controls
|
|
476
511
|
* are capped at `limit` (default 200, max 500) and the global pending scan at 2000 rows.
|
|
512
|
+
* A `mode:"open"` handoff control carries `mode: "open"`: open the session, run nothing.
|
|
477
513
|
*/
|
|
478
514
|
readonly get: operations$1['getMyDispatchInbox'];
|
|
479
515
|
readonly put?: never;
|
|
@@ -1150,6 +1186,106 @@ type paths$1 = {
|
|
|
1150
1186
|
readonly patch?: never;
|
|
1151
1187
|
readonly trace?: never;
|
|
1152
1188
|
};
|
|
1189
|
+
readonly '/v1/images/edits': {
|
|
1190
|
+
readonly parameters: {
|
|
1191
|
+
readonly query?: never;
|
|
1192
|
+
readonly header?: never;
|
|
1193
|
+
readonly path?: never;
|
|
1194
|
+
readonly cookie?: never;
|
|
1195
|
+
};
|
|
1196
|
+
readonly get?: never;
|
|
1197
|
+
readonly put?: never;
|
|
1198
|
+
/**
|
|
1199
|
+
* Edit images
|
|
1200
|
+
* @description Edit or vary one or more input images from a text instruction, on the same models, auth, allow-list,
|
|
1201
|
+
* spend caps and billing as `POST /v1/images/generations`. The input images (1–14; `codai-image-fast`
|
|
1202
|
+
* accepts 4) are sent to the model before the prompt; describe the change in `prompt` ("replace the
|
|
1203
|
+
* background with a sunset, keep the logo unchanged").
|
|
1204
|
+
*
|
|
1205
|
+
* Send JSON (`image` is one object or an array of `{b64_json, mime_type}`) or `multipart/form-data`
|
|
1206
|
+
* OpenAI-style, with the file in `image` (or `image[]`, repeatable). `mask` is not supported and returns
|
|
1207
|
+
* 400 — describe the region to change in the prompt instead. Input images are billed as input tokens at
|
|
1208
|
+
* the model's rate.
|
|
1209
|
+
*/
|
|
1210
|
+
readonly post: operations$1['editImage'];
|
|
1211
|
+
readonly delete?: never;
|
|
1212
|
+
readonly options?: never;
|
|
1213
|
+
readonly head?: never;
|
|
1214
|
+
readonly patch?: never;
|
|
1215
|
+
readonly trace?: never;
|
|
1216
|
+
};
|
|
1217
|
+
readonly '/v1/images/generations': {
|
|
1218
|
+
readonly parameters: {
|
|
1219
|
+
readonly query?: never;
|
|
1220
|
+
readonly header?: never;
|
|
1221
|
+
readonly path?: never;
|
|
1222
|
+
readonly cookie?: never;
|
|
1223
|
+
};
|
|
1224
|
+
readonly get?: never;
|
|
1225
|
+
readonly put?: never;
|
|
1226
|
+
/**
|
|
1227
|
+
* Generate images
|
|
1228
|
+
* @description OpenAI-compatible image generation backed by the Google Gemini image family on Vertex AI. Public ids:
|
|
1229
|
+
* `codai-image` (default → `gemini-3.1-flash-image`, served from the Vertex `eu` multi-region, so prompts and
|
|
1230
|
+
* images are processed in the EU), `codai-image-fast` (→ `gemini-3.1-flash-lite-image`, `global`) and
|
|
1231
|
+
* `codai-image-pro` (→ `gemini-3-pro-image`, `global`); the raw registry ids are accepted too. The retired ids
|
|
1232
|
+
* `gemini-2.5-flash-image` (shut down by Google on 2026-10-02), `imagen-4` and `imagen-4-fast` are served as
|
|
1233
|
+
* `codai-image`. Authenticates with a real API key only — ephemeral tokens are rejected. The per-key model
|
|
1234
|
+
* allow-list applies; image models are implicitly granted wherever `codai` or `codai-image` is.
|
|
1235
|
+
*
|
|
1236
|
+
* Brand consistency: `reference_images` (up to 14; `codai-image-fast` accepts 4) are sent to the model as
|
|
1237
|
+
* inline images before the prompt, so a logo, palette or product stays intact across generations. To edit an
|
|
1238
|
+
* existing image use `POST /v1/images/edits`.
|
|
1239
|
+
*
|
|
1240
|
+
* Images are returned inline as base64 (`response_format: b64_json`); `url` is rejected with 400 because the
|
|
1241
|
+
* gateway does not host images. `aspect_ratio` sets the shape directly; otherwise `size` maps to one
|
|
1242
|
+
* (1024x1024 → 1:1, 1536x1024 → 3:2, 1024x1536 → 2:3, 1792x1024 → 16:9, 1024x1792 → 9:16). `image_size`
|
|
1243
|
+
* picks the resolution (`512`, `1K`, `2K`, `4K`; default `1K`; `codai-image` supports all four,
|
|
1244
|
+
* `codai-image-fast` only `1K`, `codai-image-pro` `1K`/`2K`/`4K`). The model returns one image per call, so
|
|
1245
|
+
* `n` > 1 is n parallel calls. When the upstream safety filter drops every image the response is 400 with
|
|
1246
|
+
* code `content_filtered` and nothing is charged.
|
|
1247
|
+
*
|
|
1248
|
+
* Images from the EU endpoint carry C2PA content credentials (a `caBX` chunk) and a SynthID watermark. Store
|
|
1249
|
+
* the bytes as returned — re-encoding or resizing strips the C2PA manifest.
|
|
1250
|
+
*
|
|
1251
|
+
* Billing is computed from the token usage the model reports, at the Vertex rates of the resolved model
|
|
1252
|
+
* (a default 1K image ≈ $0.074 on `codai-image`, ≈ $0.034 on `codai-image-fast`, ≈ $0.134 on
|
|
1253
|
+
* `codai-image-pro`; higher resolutions and reference images cost more). The charge is disclosed in
|
|
1254
|
+
* `x-codai-cost-micro-usd`, recorded as `usage_events.cost_micro_usd`, counted toward the daily and monthly
|
|
1255
|
+
* spend caps, and debited from the prepaid EUR wallet. Only images actually returned are charged. Image
|
|
1256
|
+
* calls never start a task. Typical latency is 5–30 s; the upstream timeout is 120 s.
|
|
1257
|
+
*/
|
|
1258
|
+
readonly post: operations$1['createImage'];
|
|
1259
|
+
readonly delete?: never;
|
|
1260
|
+
readonly options?: never;
|
|
1261
|
+
readonly head?: never;
|
|
1262
|
+
readonly patch?: never;
|
|
1263
|
+
readonly trace?: never;
|
|
1264
|
+
};
|
|
1265
|
+
readonly '/v1/keys/self/revoke': {
|
|
1266
|
+
readonly parameters: {
|
|
1267
|
+
readonly query?: never;
|
|
1268
|
+
readonly header?: never;
|
|
1269
|
+
readonly path?: never;
|
|
1270
|
+
readonly cookie?: never;
|
|
1271
|
+
};
|
|
1272
|
+
readonly get?: never;
|
|
1273
|
+
readonly put?: never;
|
|
1274
|
+
/**
|
|
1275
|
+
* Revoke the calling API key (sign out)
|
|
1276
|
+
* @description The API key that authenticates this request revokes itself: it stops working at once on the instance that
|
|
1277
|
+
* served the call and within 60 seconds everywhere (principal cache TTL). Only the calling key is affected,
|
|
1278
|
+
* never another key of the same account. Clients call it on "Sign out" so a copied key cannot keep working.
|
|
1279
|
+
* A key that is already revoked fails authentication with 401, which a client can treat as "already signed
|
|
1280
|
+
* out". `revoked` is `false` only when a concurrent revoke won the race.
|
|
1281
|
+
*/
|
|
1282
|
+
readonly post: operations$1['revokeSelfKey'];
|
|
1283
|
+
readonly delete?: never;
|
|
1284
|
+
readonly options?: never;
|
|
1285
|
+
readonly head?: never;
|
|
1286
|
+
readonly patch?: never;
|
|
1287
|
+
readonly trace?: never;
|
|
1288
|
+
};
|
|
1153
1289
|
readonly '/v1/messages': {
|
|
1154
1290
|
readonly parameters: {
|
|
1155
1291
|
readonly query?: never;
|
|
@@ -1479,6 +1615,78 @@ type paths$1 = {
|
|
|
1479
1615
|
readonly patch: operations$1['updateProject'];
|
|
1480
1616
|
readonly trace?: never;
|
|
1481
1617
|
};
|
|
1618
|
+
readonly '/v1/prompts': {
|
|
1619
|
+
readonly parameters: {
|
|
1620
|
+
readonly query?: never;
|
|
1621
|
+
readonly header?: never;
|
|
1622
|
+
readonly path?: never;
|
|
1623
|
+
readonly cookie?: never;
|
|
1624
|
+
};
|
|
1625
|
+
/**
|
|
1626
|
+
* List pending prompts
|
|
1627
|
+
* @description Your prompts, soonest `not_before` first (prompts without one lead), then newest. `status=due` returns open prompts whose `not_before` is empty or already passed; `all` returns every status.
|
|
1628
|
+
*/
|
|
1629
|
+
readonly get: operations$1['listPrompts'];
|
|
1630
|
+
readonly put?: never;
|
|
1631
|
+
/**
|
|
1632
|
+
* Save a prompt for later
|
|
1633
|
+
* @description Idempotent on the prompt text: posting the same text again returns the existing prompt with `200` and `created: false`. With `goal_key`, older open prompts carrying the same key become `superseded` (count in `superseded`). `not_before` accepts an ISO datetime or a bare `YYYY-MM-DD` (07:00 UTC that day).
|
|
1634
|
+
*/
|
|
1635
|
+
readonly post: operations$1['createPrompt'];
|
|
1636
|
+
readonly delete?: never;
|
|
1637
|
+
readonly options?: never;
|
|
1638
|
+
readonly head?: never;
|
|
1639
|
+
readonly patch?: never;
|
|
1640
|
+
readonly trace?: never;
|
|
1641
|
+
};
|
|
1642
|
+
readonly '/v1/prompts/{id}': {
|
|
1643
|
+
readonly parameters: {
|
|
1644
|
+
readonly query?: never;
|
|
1645
|
+
readonly header?: never;
|
|
1646
|
+
readonly path?: never;
|
|
1647
|
+
readonly cookie?: never;
|
|
1648
|
+
};
|
|
1649
|
+
/**
|
|
1650
|
+
* Get a prompt
|
|
1651
|
+
* @description One of your prompts, including its full text.
|
|
1652
|
+
*/
|
|
1653
|
+
readonly get: operations$1['getPrompt'];
|
|
1654
|
+
readonly put?: never;
|
|
1655
|
+
readonly post?: never;
|
|
1656
|
+
/**
|
|
1657
|
+
* Delete a prompt
|
|
1658
|
+
* @description Deletes one of your prompts. Unknown, malformed or foreign ids are not an error: the response is `200` with `deleted: 0`.
|
|
1659
|
+
*/
|
|
1660
|
+
readonly delete: operations$1['deletePrompt'];
|
|
1661
|
+
readonly options?: never;
|
|
1662
|
+
readonly head?: never;
|
|
1663
|
+
/**
|
|
1664
|
+
* Edit, snooze or close a prompt
|
|
1665
|
+
* @description Changes any subset of the fields (at least one). Setting `not_before` re-arms the due reminder (snooze); `status` `done` or `dismissed` stamps `done_at`, any other status clears it. Editing `prompt` to a text another prompt of yours already has is `400`.
|
|
1666
|
+
*/
|
|
1667
|
+
readonly patch: operations$1['updatePrompt'];
|
|
1668
|
+
readonly trace?: never;
|
|
1669
|
+
};
|
|
1670
|
+
readonly '/v1/prompts/{id}/launch': {
|
|
1671
|
+
readonly parameters: {
|
|
1672
|
+
readonly query?: never;
|
|
1673
|
+
readonly header?: never;
|
|
1674
|
+
readonly path?: never;
|
|
1675
|
+
readonly cookie?: never;
|
|
1676
|
+
};
|
|
1677
|
+
readonly get?: never;
|
|
1678
|
+
readonly put?: never;
|
|
1679
|
+
/**
|
|
1680
|
+
* Start a chat from a prompt
|
|
1681
|
+
* @description Opens a new shared session and sends the prompt text to a device as a `send` control (queued when the device is offline, woken by push when it has a token). The device is `device_id`, else the prompt `target_device_id`, else your freshest desktop/Android device; with none available the call is `400`. The prompt moves to `launched` with `run_session_id` set.
|
|
1682
|
+
*/
|
|
1683
|
+
readonly post: operations$1['launchPrompt'];
|
|
1684
|
+
readonly delete?: never;
|
|
1685
|
+
readonly options?: never;
|
|
1686
|
+
readonly head?: never;
|
|
1687
|
+
readonly patch?: never;
|
|
1688
|
+
readonly trace?: never;
|
|
1689
|
+
};
|
|
1482
1690
|
readonly '/v1/receipt': {
|
|
1483
1691
|
readonly parameters: {
|
|
1484
1692
|
readonly query?: never;
|
|
@@ -1703,7 +1911,7 @@ type paths$1 = {
|
|
|
1703
1911
|
* (`applied=false`) in insertion order, at most 500. `target=me` narrows to controls
|
|
1704
1912
|
* dispatched at the calling device (needs `x-codai-device`, else `400`); an explicit
|
|
1705
1913
|
* device UUID is accepted too. `target_device_id` is `null` for plain controls and set
|
|
1706
|
-
* only for Dispatch-originated ones
|
|
1914
|
+
* only for Dispatch-originated ones; a `mode:"open"` handoff also carries `mode: "open"`.
|
|
1707
1915
|
*/
|
|
1708
1916
|
readonly get: operations$1['listSessionControls'];
|
|
1709
1917
|
readonly put?: never;
|
|
@@ -1727,7 +1935,7 @@ type paths$1 = {
|
|
|
1727
1935
|
readonly get?: never;
|
|
1728
1936
|
readonly put?: never;
|
|
1729
1937
|
/**
|
|
1730
|
-
* Queue a `send` for one device and wake it over FCM
|
|
1938
|
+
* Queue a `send` (or an `open` handoff) for one device and wake it over FCM
|
|
1731
1939
|
* @description Requires `editor` or higher. The target must be a device of the session OWNER
|
|
1732
1940
|
* (only owner devices can hold the lease), otherwise `404`. Persists a `send` control
|
|
1733
1941
|
* carrying `target_device_id` (idempotent on `control_id`; server-generated
|
|
@@ -1736,6 +1944,12 @@ type paths$1 = {
|
|
|
1736
1944
|
* open: the control is durable regardless and is drained by the target's next
|
|
1737
1945
|
* `GET …/controls?target=me` or `GET /v1/devices/me/dispatch`. The executor lease is
|
|
1738
1946
|
* not touched — the woken device claims (or force-claims) it itself.
|
|
1947
|
+
*
|
|
1948
|
+
* `mode` (default `send`) picks what the target does. `send` requires `text` and runs
|
|
1949
|
+
* it as a new turn. `open` is a handoff: the target only opens the session — `text`
|
|
1950
|
+
* and `turn_id` are ignored, no user turn is created, the queued control is a text-less
|
|
1951
|
+
* `send` listed with `mode: "open"` (and the FCM data carries `mode: "open"`), and the
|
|
1952
|
+
* target may mark it applied without holding the executor lease.
|
|
1739
1953
|
*/
|
|
1740
1954
|
readonly post: operations$1['dispatchToDevice'];
|
|
1741
1955
|
readonly delete?: never;
|
|
@@ -1961,6 +2175,17 @@ type paths$1 = {
|
|
|
1961
2175
|
* When codai-s1 is disabled, down or over budget the gateway answers **503 `s1_unavailable`**
|
|
1962
2176
|
* and never substitutes a generative model: keep your own fallback. Usage is recorded as
|
|
1963
2177
|
* `codai-s1` and never starts a task.
|
|
2178
|
+
*
|
|
2179
|
+
* **Batch.** Send `items: [{id, state}]` (1-16, unique ids) instead of `state` to ask the same
|
|
2180
|
+
* `questions` about several states in one call; items run concurrently and the response carries
|
|
2181
|
+
* `items: [{id, answers}]` in request order with summed `usage`. A batch is all-or-nothing.
|
|
2182
|
+
* `timeout_ms` (100-5000) overrides the gateway's default s1 budget for this call.
|
|
2183
|
+
*
|
|
2184
|
+
* **Opt-in fallback.** With `fallback: "codai-fast"` an unavailable codai-s1 is answered by
|
|
2185
|
+
* codai-fast through structured output: same answer shapes, but probabilities come from a
|
|
2186
|
+
* generative model (less calibrated), `model` is `codai-fast`, `fallback_used` is `true` and the
|
|
2187
|
+
* `x-codai-s1-fallback: codai-fast` header is set. If the fallback also fails the answer is still
|
|
2188
|
+
* 503 `s1_unavailable`. Omit `fallback` (or send `none`) to keep the strict contract.
|
|
1964
2189
|
*/
|
|
1965
2190
|
readonly post: operations$1['createSystemOne'];
|
|
1966
2191
|
readonly delete?: never;
|
|
@@ -2098,7 +2323,8 @@ type paths$1 = {
|
|
|
2098
2323
|
/**
|
|
2099
2324
|
* Mint an ephemeral scoped token
|
|
2100
2325
|
* @description Mints a short-lived, stateless HMAC token (`codai_eph_v1.<payload>.<signature>`) bound to ONE surface —
|
|
2101
|
-
* `realtime`, `audio` or `embeddings` —
|
|
2326
|
+
* `realtime`, `audio` or `embeddings` — or to the `live` bundle (realtime + audio: one token for a live co-host's
|
|
2327
|
+
* speech-to-text and text-to-speech) for the key that calls this endpoint. Servers call it and hand the token
|
|
2102
2328
|
* to a browser or webview instead of the raw workspace key: a leaked token exposes at most one media surface for
|
|
2103
2329
|
* at most one hour. `ttl_seconds` is clamped to 60–3600 and defaults to 600.
|
|
2104
2330
|
*
|
|
@@ -2316,6 +2542,52 @@ type paths$1 = {
|
|
|
2316
2542
|
readonly patch?: never;
|
|
2317
2543
|
readonly trace?: never;
|
|
2318
2544
|
};
|
|
2545
|
+
readonly '/v1/verify/agent-output': {
|
|
2546
|
+
readonly parameters: {
|
|
2547
|
+
readonly query?: never;
|
|
2548
|
+
readonly header?: never;
|
|
2549
|
+
readonly path?: never;
|
|
2550
|
+
readonly cookie?: never;
|
|
2551
|
+
};
|
|
2552
|
+
readonly get?: never;
|
|
2553
|
+
readonly put?: never;
|
|
2554
|
+
/**
|
|
2555
|
+
* Verify a signed agent output (experimental)
|
|
2556
|
+
* @description **Experimental, unaudited (HIDE protocol).** Checks an `output_signature` against the signed payload
|
|
2557
|
+
* `{ v: 1, task_id, environment_id, user_id, status, result, finished_at }` rebuilt from the task object.
|
|
2558
|
+
* Provenance only; never authentication. A `key_id` that is not the current key answers
|
|
2559
|
+
* `{ valid: false, reason: unknown_key }`. Stateless, body capped at 256 KiB. Unauthenticated.
|
|
2560
|
+
*/
|
|
2561
|
+
readonly post: operations$1['verifyAgentOutput'];
|
|
2562
|
+
readonly delete?: never;
|
|
2563
|
+
readonly options?: never;
|
|
2564
|
+
readonly head?: never;
|
|
2565
|
+
readonly patch?: never;
|
|
2566
|
+
readonly trace?: never;
|
|
2567
|
+
};
|
|
2568
|
+
readonly '/v1/verify/agent-output/key': {
|
|
2569
|
+
readonly parameters: {
|
|
2570
|
+
readonly query?: never;
|
|
2571
|
+
readonly header?: never;
|
|
2572
|
+
readonly path?: never;
|
|
2573
|
+
readonly cookie?: never;
|
|
2574
|
+
};
|
|
2575
|
+
/**
|
|
2576
|
+
* Public key for agent-output signatures (experimental)
|
|
2577
|
+
* @description **Experimental, unaudited (HIDE protocol).** Returns the gateway's current public key for the
|
|
2578
|
+
* `output_signature` carried by finished agent tasks, so you can verify signatures offline. A signature proves
|
|
2579
|
+
* provenance of the output only; it is never an authentication mechanism. `{ enabled: false }` when output
|
|
2580
|
+
* signing is not configured on this deployment. Unauthenticated.
|
|
2581
|
+
*/
|
|
2582
|
+
readonly get: operations$1['getAgentOutputKey'];
|
|
2583
|
+
readonly put?: never;
|
|
2584
|
+
readonly post?: never;
|
|
2585
|
+
readonly delete?: never;
|
|
2586
|
+
readonly options?: never;
|
|
2587
|
+
readonly head?: never;
|
|
2588
|
+
readonly patch?: never;
|
|
2589
|
+
readonly trace?: never;
|
|
2590
|
+
};
|
|
2319
2591
|
};
|
|
2320
2592
|
type components$1 = {
|
|
2321
2593
|
schemas: {
|
|
@@ -2670,6 +2942,39 @@ type components$1 = {
|
|
|
2670
2942
|
/** @enum {string} */
|
|
2671
2943
|
readonly source: 'welcome_grant' | 'referral_referee_grant' | 'referral_referrer_grant' | 'promo_grant' | 'admin_grant' | 'admin_revoke' | 'purchase' | 'usage_charge' | 'expiry' | 'auto_topup' | 'task_refund' | 'task_success_charge' | 'credit_migration' | 'compute_charge';
|
|
2672
2944
|
};
|
|
2945
|
+
/** Agent output signing key (experimental) */
|
|
2946
|
+
readonly AgentOutputKey: {
|
|
2947
|
+
/** @example hide-hybrid-ed25519-mldsa65 */
|
|
2948
|
+
readonly alg?: string;
|
|
2949
|
+
/** @example codai.agent-output.v1 */
|
|
2950
|
+
readonly context?: string;
|
|
2951
|
+
/** @description `false` when output signing is not configured; the other key fields are then absent. */
|
|
2952
|
+
readonly enabled: boolean;
|
|
2953
|
+
readonly key_id?: string;
|
|
2954
|
+
readonly note: string;
|
|
2955
|
+
/** @description Base64 hybrid public key. */
|
|
2956
|
+
readonly public_key?: string;
|
|
2957
|
+
};
|
|
2958
|
+
/** Verify agent output */
|
|
2959
|
+
readonly AgentOutputVerifyRequest: {
|
|
2960
|
+
/** @description The signed payload `{ v: 1, task_id, environment_id, user_id, status, result, finished_at }`. */
|
|
2961
|
+
readonly payload: {
|
|
2962
|
+
readonly [key: string]: unknown;
|
|
2963
|
+
};
|
|
2964
|
+
readonly signature: {
|
|
2965
|
+
readonly key_id?: string;
|
|
2966
|
+
readonly sig: string;
|
|
2967
|
+
};
|
|
2968
|
+
};
|
|
2969
|
+
/** Agent output verification result */
|
|
2970
|
+
readonly AgentOutputVerifyResult: {
|
|
2971
|
+
/** @description Id of the gateway key the check ran against. */
|
|
2972
|
+
readonly key_id: string;
|
|
2973
|
+
readonly note: string;
|
|
2974
|
+
/** @enum {string} */
|
|
2975
|
+
readonly reason?: 'unknown_key';
|
|
2976
|
+
readonly valid: boolean;
|
|
2977
|
+
};
|
|
2673
2978
|
/**
|
|
2674
2979
|
* Agent run
|
|
2675
2980
|
* @description Poll view of a persisted run (`GET /v1/agents/runs/{id}`).
|
|
@@ -3256,6 +3561,153 @@ type components$1 = {
|
|
|
3256
3561
|
readonly ok?: boolean;
|
|
3257
3562
|
};
|
|
3258
3563
|
};
|
|
3564
|
+
/**
|
|
3565
|
+
* Image aspect ratio
|
|
3566
|
+
* @description Output aspect ratio. Overrides `size`.
|
|
3567
|
+
* @enum {string}
|
|
3568
|
+
*/
|
|
3569
|
+
readonly CoreImageAspectRatio: '1:1' | '2:3' | '3:2' | '3:4' | '4:3' | '4:5' | '5:4' | '9:16' | '16:9' | '21:9' | '9:21' | '1:4' | '4:1' | '1:8' | '8:1';
|
|
3570
|
+
/** Generated image */
|
|
3571
|
+
readonly CoreImageData: {
|
|
3572
|
+
/** @description The image bytes, base64-encoded. Keep them as returned — re-encoding strips the C2PA manifest. */
|
|
3573
|
+
readonly b64_json: string;
|
|
3574
|
+
/**
|
|
3575
|
+
* @description MIME type of the image bytes (usually `image/png`).
|
|
3576
|
+
* @example image/png
|
|
3577
|
+
*/
|
|
3578
|
+
readonly mime_type?: string;
|
|
3579
|
+
};
|
|
3580
|
+
/**
|
|
3581
|
+
* Image edit form
|
|
3582
|
+
* @description OpenAI-style multipart form for `POST /v1/images/edits`. `mask` is rejected with 400.
|
|
3583
|
+
*/
|
|
3584
|
+
readonly CoreImageEditForm: {
|
|
3585
|
+
readonly aspect_ratio?: components$1['schemas']['CoreImageAspectRatio'];
|
|
3586
|
+
/** @description Input image file(s); the field may also be named `image[]` and repeated. */
|
|
3587
|
+
readonly image: readonly string[];
|
|
3588
|
+
readonly image_size?: components$1['schemas']['CoreImageSize'];
|
|
3589
|
+
/**
|
|
3590
|
+
* @description Image model, same ids as the JSON body.
|
|
3591
|
+
* @default codai-image
|
|
3592
|
+
*/
|
|
3593
|
+
readonly model?: string;
|
|
3594
|
+
/** @default 1 */
|
|
3595
|
+
readonly n?: number;
|
|
3596
|
+
readonly negative_prompt?: string;
|
|
3597
|
+
/** @description The edit to apply, in words. */
|
|
3598
|
+
readonly prompt: string;
|
|
3599
|
+
/** @enum {string} */
|
|
3600
|
+
readonly response_format?: 'b64_json';
|
|
3601
|
+
/** @description OpenAI-style size, mapped to an aspect ratio. */
|
|
3602
|
+
readonly size?: string;
|
|
3603
|
+
};
|
|
3604
|
+
/**
|
|
3605
|
+
* Image edit request
|
|
3606
|
+
* @description JSON body for `POST /v1/images/edits`. Unknown fields are accepted and ignored.
|
|
3607
|
+
*/
|
|
3608
|
+
readonly CoreImageEditRequest: {
|
|
3609
|
+
readonly aspect_ratio?: components$1['schemas']['CoreImageAspectRatio'];
|
|
3610
|
+
/** @description One input image, or up to 14 (per-model limit; `codai-image-fast` accepts 4). */
|
|
3611
|
+
readonly image: components$1['schemas']['CoreImageInput'] | readonly components$1['schemas']['CoreImageInput'][];
|
|
3612
|
+
readonly image_size?: components$1['schemas']['CoreImageSize'];
|
|
3613
|
+
/**
|
|
3614
|
+
* @description Image model, same ids as `POST /v1/images/generations`.
|
|
3615
|
+
* @default codai-image
|
|
3616
|
+
* @enum {string}
|
|
3617
|
+
*/
|
|
3618
|
+
readonly model?: 'codai-image' | 'codai-image-fast' | 'codai-image-pro' | 'gemini-3.1-flash-image' | 'gemini-3.1-flash-lite-image' | 'gemini-3-pro-image' | 'gemini-2.5-flash-image' | 'imagen-4' | 'imagen-4-fast';
|
|
3619
|
+
/**
|
|
3620
|
+
* @description Number of edited images to return.
|
|
3621
|
+
* @default 1
|
|
3622
|
+
*/
|
|
3623
|
+
readonly n?: number;
|
|
3624
|
+
/** @description What the result should not contain; appended to the prompt as an exclusion. */
|
|
3625
|
+
readonly negative_prompt?: string;
|
|
3626
|
+
/**
|
|
3627
|
+
* @description The edit to apply, in words (what to change and what to keep).
|
|
3628
|
+
* @example replace the background with a soft sunset gradient, keep the logo unchanged
|
|
3629
|
+
*/
|
|
3630
|
+
readonly prompt: string;
|
|
3631
|
+
/**
|
|
3632
|
+
* @description Only `b64_json` is supported.
|
|
3633
|
+
* @enum {string}
|
|
3634
|
+
*/
|
|
3635
|
+
readonly response_format?: 'b64_json';
|
|
3636
|
+
/**
|
|
3637
|
+
* @description OpenAI-style size, mapped to an aspect ratio. Ignored when `aspect_ratio` is set.
|
|
3638
|
+
* @enum {string}
|
|
3639
|
+
*/
|
|
3640
|
+
readonly size?: '1024x1024' | '1536x1024' | '1024x1536' | '1792x1024' | '1024x1792';
|
|
3641
|
+
} & {
|
|
3642
|
+
readonly [key: string]: unknown;
|
|
3643
|
+
};
|
|
3644
|
+
/** Input image */
|
|
3645
|
+
readonly CoreImageInput: {
|
|
3646
|
+
/** @description The image bytes, base64-encoded (at most 7 MB decoded). */
|
|
3647
|
+
readonly b64_json: string;
|
|
3648
|
+
/**
|
|
3649
|
+
* @description MIME type of the image bytes.
|
|
3650
|
+
* @default image/png
|
|
3651
|
+
* @enum {string}
|
|
3652
|
+
*/
|
|
3653
|
+
readonly mime_type?: 'image/png' | 'image/jpeg' | 'image/webp' | 'image/heic' | 'image/heif';
|
|
3654
|
+
};
|
|
3655
|
+
/**
|
|
3656
|
+
* Image resolution
|
|
3657
|
+
* @description Output resolution. `codai-image` supports all four, `codai-image-fast` only `1K`, `codai-image-pro` `1K`, `2K` and `4K`; an unsupported value is 400.
|
|
3658
|
+
* @default 1K
|
|
3659
|
+
* @enum {string}
|
|
3660
|
+
*/
|
|
3661
|
+
readonly CoreImageSize: '512' | '1K' | '2K' | '4K';
|
|
3662
|
+
/**
|
|
3663
|
+
* Image generation request
|
|
3664
|
+
* @description OpenAI-compatible image generation body. Unknown fields are accepted and ignored.
|
|
3665
|
+
*/
|
|
3666
|
+
readonly CoreImagesRequest: {
|
|
3667
|
+
readonly aspect_ratio?: components$1['schemas']['CoreImageAspectRatio'];
|
|
3668
|
+
readonly image_size?: components$1['schemas']['CoreImageSize'];
|
|
3669
|
+
/**
|
|
3670
|
+
* @description Image model. `codai-image` → `gemini-3.1-flash-image` (EU), `codai-image-fast` → `gemini-3.1-flash-lite-image`, `codai-image-pro` → `gemini-3-pro-image`. `gemini-2.5-flash-image`, `imagen-4` and `imagen-4-fast` are retired upstream and served as `codai-image`.
|
|
3671
|
+
* @default codai-image
|
|
3672
|
+
* @enum {string}
|
|
3673
|
+
*/
|
|
3674
|
+
readonly model?: 'codai-image' | 'codai-image-fast' | 'codai-image-pro' | 'gemini-3.1-flash-image' | 'gemini-3.1-flash-lite-image' | 'gemini-3-pro-image' | 'gemini-2.5-flash-image' | 'imagen-4' | 'imagen-4-fast';
|
|
3675
|
+
/**
|
|
3676
|
+
* @description Number of images to generate.
|
|
3677
|
+
* @default 1
|
|
3678
|
+
*/
|
|
3679
|
+
readonly n?: number;
|
|
3680
|
+
/** @description What the image should not contain; appended to the prompt as an exclusion. */
|
|
3681
|
+
readonly negative_prompt?: string;
|
|
3682
|
+
/**
|
|
3683
|
+
* @description Text description of the image to generate.
|
|
3684
|
+
* @example flat minimalist logo of a paper plane, two colours, white background
|
|
3685
|
+
*/
|
|
3686
|
+
readonly prompt: string;
|
|
3687
|
+
/** @description Images the model must stay consistent with (logo, palette, product, character), sent before the prompt. Per-model limit — `codai-image-fast` accepts 4, the others 14. */
|
|
3688
|
+
readonly reference_images?: readonly components$1['schemas']['CoreImageInput'][];
|
|
3689
|
+
/**
|
|
3690
|
+
* @description Only `b64_json` is supported; `url` is rejected because the gateway does not host images.
|
|
3691
|
+
* @enum {string}
|
|
3692
|
+
*/
|
|
3693
|
+
readonly response_format?: 'b64_json';
|
|
3694
|
+
/**
|
|
3695
|
+
* @description OpenAI-style size, mapped to an aspect ratio (1:1, 3:2, 2:3, 16:9, 9:16). Ignored when `aspect_ratio` is set.
|
|
3696
|
+
* @default 1024x1024
|
|
3697
|
+
* @enum {string}
|
|
3698
|
+
*/
|
|
3699
|
+
readonly size?: '1024x1024' | '1536x1024' | '1024x1536' | '1792x1024' | '1024x1792';
|
|
3700
|
+
/** @description OpenAI tracking field; accepted and ignored. */
|
|
3701
|
+
readonly user?: string;
|
|
3702
|
+
} & {
|
|
3703
|
+
readonly [key: string]: unknown;
|
|
3704
|
+
};
|
|
3705
|
+
/** Image generation response */
|
|
3706
|
+
readonly CoreImagesResponse: {
|
|
3707
|
+
/** @description Unix timestamp (seconds) of when the images were generated. */
|
|
3708
|
+
readonly created: number;
|
|
3709
|
+
readonly data: readonly components$1['schemas']['CoreImageData'][];
|
|
3710
|
+
};
|
|
3259
3711
|
/** Model */
|
|
3260
3712
|
readonly CoreModel: {
|
|
3261
3713
|
/** @description Non-OpenAI extension with routing and capability flags. */
|
|
@@ -3400,7 +3852,7 @@ type components$1 = {
|
|
|
3400
3852
|
/** Ephemeral token request */
|
|
3401
3853
|
readonly CoreTokenRequest: {
|
|
3402
3854
|
/**
|
|
3403
|
-
* @description Surface the token may reach. Only `realtime`, `audio` and `
|
|
3855
|
+
* @description Surface the token may reach. Only `realtime`, `audio`, `embeddings` and `live` (realtime + audio) are accepted; anything else is 400.
|
|
3404
3856
|
* @example realtime
|
|
3405
3857
|
*/
|
|
3406
3858
|
readonly scope: string;
|
|
@@ -3419,7 +3871,7 @@ type components$1 = {
|
|
|
3419
3871
|
*/
|
|
3420
3872
|
readonly expires_at: string;
|
|
3421
3873
|
/** @enum {string} */
|
|
3422
|
-
readonly scope: 'realtime' | 'audio' | 'embeddings';
|
|
3874
|
+
readonly scope: 'realtime' | 'audio' | 'embeddings' | 'live';
|
|
3423
3875
|
/**
|
|
3424
3876
|
* @description Bearer credential of the form `codai_eph_v1.<payload>.<signature>`. Pass it as `Authorization: Bearer` or as `?key=` on `/v1/realtime`.
|
|
3425
3877
|
* @example codai_eph_v1.eyJraWQiOiIuLi4ifQ.c2lnbmF0dXJl
|
|
@@ -3516,6 +3968,8 @@ type components$1 = {
|
|
|
3516
3968
|
* @example Pixel 9 Pro
|
|
3517
3969
|
*/
|
|
3518
3970
|
readonly name: string;
|
|
3971
|
+
/** @description `true` when `lastSeenAt` is within the last 2 minutes (any request carrying this device id bumps it). A future `lastSeenAt` (clock skew) counts as online. */
|
|
3972
|
+
readonly online: boolean;
|
|
3519
3973
|
readonly platform: components$1['schemas']['DevicePlatform'];
|
|
3520
3974
|
};
|
|
3521
3975
|
/**
|
|
@@ -3808,7 +4262,7 @@ type components$1 = {
|
|
|
3808
4262
|
readonly visibility: components$1['schemas']['PortVisibility'];
|
|
3809
4263
|
};
|
|
3810
4264
|
/**
|
|
3811
|
-
* @description `byo` (bring your own machine; the daemon enrols with a token) is open to every key. `openstack` / `hetzner` are managed by the worker and billed hourly; `gce`
|
|
4265
|
+
* @description `byo` (bring your own machine; the daemon enrols with a token) is open to every key. `openstack` / `hetzner` are managed by the worker and billed hourly; `gce` (Google Cloud) offers on-demand CPU sizes `small`/`medium`/`large` (e2-standard-2/4/8) and the GPU size `gpu-l4` (Spot, 30-minute cap); it is available only where the deployment enables it AND to `super_admin` accounts (403 for everyone else); `local` is a developer convenience. Managed providers answer 403 until enabled for your key.
|
|
3812
4266
|
* @enum {string}
|
|
3813
4267
|
*/
|
|
3814
4268
|
readonly EnvironmentProvider: 'byo' | 'openstack' | 'hetzner' | 'local' | 'gce';
|
|
@@ -3893,6 +4347,12 @@ type components$1 = {
|
|
|
3893
4347
|
readonly finished_at: string | null;
|
|
3894
4348
|
/** Format: uuid */
|
|
3895
4349
|
readonly id: string;
|
|
4350
|
+
/**
|
|
4351
|
+
* @description **Experimental, unaudited (HIDE protocol).** Gateway signature of the finished output, `null` while the
|
|
4352
|
+
* task runs or when signing is disabled. Provenance only, never authentication; verify with
|
|
4353
|
+
* `POST /v1/verify/agent-output`.
|
|
4354
|
+
*/
|
|
4355
|
+
readonly output_signature: components$1['schemas']['EnvironmentTaskOutputSignature'] | null;
|
|
3896
4356
|
readonly prompt: string;
|
|
3897
4357
|
/** @description Filled when the task finishes; every field may be null. */
|
|
3898
4358
|
readonly result: {
|
|
@@ -3927,6 +4387,19 @@ type components$1 = {
|
|
|
3927
4387
|
/** @description What the agent should do (1..20000 characters). */
|
|
3928
4388
|
readonly prompt: string;
|
|
3929
4389
|
};
|
|
4390
|
+
/** Agent output signature (experimental) */
|
|
4391
|
+
readonly EnvironmentTaskOutputSignature: {
|
|
4392
|
+
/** @example hide-hybrid-ed25519-mldsa65 */
|
|
4393
|
+
readonly alg: string;
|
|
4394
|
+
/** @example codai.agent-output.v1 */
|
|
4395
|
+
readonly context: string;
|
|
4396
|
+
/** @description 16 hex characters identifying the signing key. */
|
|
4397
|
+
readonly key_id: string;
|
|
4398
|
+
/** @description Base64 hybrid signature. */
|
|
4399
|
+
readonly sig: string;
|
|
4400
|
+
/** Format: date-time */
|
|
4401
|
+
readonly signed_at: string;
|
|
4402
|
+
};
|
|
3930
4403
|
/** Queued task */
|
|
3931
4404
|
readonly EnvironmentTaskQueued: {
|
|
3932
4405
|
/**
|
|
@@ -4579,26 +5052,108 @@ type components$1 = {
|
|
|
4579
5052
|
/** Format: uri */
|
|
4580
5053
|
readonly repo_url?: string | null;
|
|
4581
5054
|
};
|
|
4582
|
-
/**
|
|
4583
|
-
|
|
4584
|
-
|
|
4585
|
-
*/
|
|
4586
|
-
readonly RelayAttachedClient: {
|
|
5055
|
+
/** @description A pending prompt. Timestamps are ISO strings or `null`. */
|
|
5056
|
+
readonly Prompt: {
|
|
5057
|
+
readonly auto_run: boolean;
|
|
4587
5058
|
/** Format: date-time */
|
|
4588
|
-
readonly
|
|
4589
|
-
|
|
4590
|
-
readonly
|
|
4591
|
-
|
|
4592
|
-
|
|
4593
|
-
readonly
|
|
4594
|
-
|
|
4595
|
-
readonly
|
|
4596
|
-
|
|
4597
|
-
|
|
4598
|
-
|
|
4599
|
-
|
|
4600
|
-
|
|
4601
|
-
|
|
5059
|
+
readonly created_at: string;
|
|
5060
|
+
/** Format: date-time */
|
|
5061
|
+
readonly done_at: string | null;
|
|
5062
|
+
readonly goal_key: string | null;
|
|
5063
|
+
/** Format: uuid */
|
|
5064
|
+
readonly id: string;
|
|
5065
|
+
/** Format: date-time */
|
|
5066
|
+
readonly launched_at: string | null;
|
|
5067
|
+
/**
|
|
5068
|
+
* Format: date-time
|
|
5069
|
+
* @description The prompt is due from this moment on.
|
|
5070
|
+
*/
|
|
5071
|
+
readonly not_before: string | null;
|
|
5072
|
+
/**
|
|
5073
|
+
* Format: date-time
|
|
5074
|
+
* @description When the due reminder was sent.
|
|
5075
|
+
*/
|
|
5076
|
+
readonly notified_at: string | null;
|
|
5077
|
+
readonly origin: {
|
|
5078
|
+
readonly [key: string]: unknown;
|
|
5079
|
+
};
|
|
5080
|
+
readonly prompt: string;
|
|
5081
|
+
readonly repo: string | null;
|
|
5082
|
+
/** Format: uuid */
|
|
5083
|
+
readonly run_session_id: string | null;
|
|
5084
|
+
readonly source: components$1['schemas']['PromptSource'];
|
|
5085
|
+
readonly status: components$1['schemas']['PromptStatus'];
|
|
5086
|
+
/** Format: uuid */
|
|
5087
|
+
readonly target_device_id: string | null;
|
|
5088
|
+
/** @description Defaults to the first line of the prompt (max 120 chars). */
|
|
5089
|
+
readonly title: string;
|
|
5090
|
+
readonly tracker: string | null;
|
|
5091
|
+
/** Format: date-time */
|
|
5092
|
+
readonly updated_at: string;
|
|
5093
|
+
};
|
|
5094
|
+
readonly PromptCreate: {
|
|
5095
|
+
/**
|
|
5096
|
+
* @description Launch automatically when due.
|
|
5097
|
+
* @default false
|
|
5098
|
+
*/
|
|
5099
|
+
readonly auto_run?: boolean;
|
|
5100
|
+
/** @description Stable key of the goal; a new prompt supersedes older open ones with the same key. */
|
|
5101
|
+
readonly goal_key?: string;
|
|
5102
|
+
/** @description ISO datetime with offset, or `YYYY-MM-DD` (07:00 UTC). `null` = due immediately. */
|
|
5103
|
+
readonly not_before?: string | null;
|
|
5104
|
+
/** @description Free-form capture metadata (session, transcript, host). */
|
|
5105
|
+
readonly origin?: {
|
|
5106
|
+
readonly [key: string]: unknown;
|
|
5107
|
+
};
|
|
5108
|
+
readonly prompt: string;
|
|
5109
|
+
readonly repo?: string;
|
|
5110
|
+
readonly source?: components$1['schemas']['PromptSource'];
|
|
5111
|
+
/** Format: uuid */
|
|
5112
|
+
readonly target_device_id?: string | null;
|
|
5113
|
+
readonly title?: string;
|
|
5114
|
+
readonly tracker?: string;
|
|
5115
|
+
};
|
|
5116
|
+
readonly PromptCreated: components$1['schemas']['Prompt'] & {
|
|
5117
|
+
/** @description `false` when the same text already existed. */
|
|
5118
|
+
readonly created: boolean;
|
|
5119
|
+
/** @description Older open prompts with the same `goal_key` now `superseded`. */
|
|
5120
|
+
readonly superseded: number;
|
|
5121
|
+
};
|
|
5122
|
+
readonly PromptPatch: {
|
|
5123
|
+
readonly auto_run?: boolean;
|
|
5124
|
+
/** @description ISO datetime with offset, or `YYYY-MM-DD` (07:00 UTC). `null` = due immediately. */
|
|
5125
|
+
readonly not_before?: string | null;
|
|
5126
|
+
readonly prompt?: string;
|
|
5127
|
+
readonly status?: components$1['schemas']['PromptStatus'];
|
|
5128
|
+
/** Format: uuid */
|
|
5129
|
+
readonly target_device_id?: string | null;
|
|
5130
|
+
readonly title?: string;
|
|
5131
|
+
readonly tracker?: string | null;
|
|
5132
|
+
};
|
|
5133
|
+
/** @enum {string} */
|
|
5134
|
+
readonly PromptSource: 'vscode' | 'cli' | 'desktop' | 'phone' | 'agent' | 'hub' | 'manual';
|
|
5135
|
+
/** @enum {string} */
|
|
5136
|
+
readonly PromptStatus: 'open' | 'launched' | 'done' | 'dismissed' | 'superseded';
|
|
5137
|
+
/**
|
|
5138
|
+
* Attached client (relay)
|
|
5139
|
+
* @description A device or agent socket attached to the environment, on any relay instance.
|
|
5140
|
+
*/
|
|
5141
|
+
readonly RelayAttachedClient: {
|
|
5142
|
+
/** Format: date-time */
|
|
5143
|
+
readonly attached_at: string;
|
|
5144
|
+
readonly client_id: string;
|
|
5145
|
+
readonly device_id: string | null;
|
|
5146
|
+
/** @enum {string} */
|
|
5147
|
+
readonly kind: 'device' | 'agent';
|
|
5148
|
+
readonly name: string | null;
|
|
5149
|
+
readonly platform: string | null;
|
|
5150
|
+
readonly role: components$1['schemas']['EnvironmentRole'];
|
|
5151
|
+
readonly user_id: string;
|
|
5152
|
+
};
|
|
5153
|
+
/**
|
|
5154
|
+
* Relay environment status
|
|
5155
|
+
* @description What the relay knows about the daemon of an environment. Detail fields are `null`/empty unless the daemon's socket is on the answering instance.
|
|
5156
|
+
*/
|
|
4602
5157
|
readonly RelayEnvironmentStatus: {
|
|
4603
5158
|
/** @enum {string|null} */
|
|
4604
5159
|
readonly activity: 'idle' | 'human' | 'agent' | null;
|
|
@@ -4700,6 +5255,11 @@ type components$1 = {
|
|
|
4700
5255
|
readonly from_device_id: string;
|
|
4701
5256
|
readonly id: string;
|
|
4702
5257
|
readonly kind: components$1['schemas']['SessionControlKind'];
|
|
5258
|
+
/**
|
|
5259
|
+
* @description Present (`open`) only on a `mode:"open"` Dispatch handoff — open the session, run nothing. Absent on every other control.
|
|
5260
|
+
* @enum {string}
|
|
5261
|
+
*/
|
|
5262
|
+
readonly mode?: 'open';
|
|
4703
5263
|
/** @description Seq of the echoed `control` event. */
|
|
4704
5264
|
readonly seq: number | null;
|
|
4705
5265
|
/**
|
|
@@ -4777,13 +5337,26 @@ type components$1 = {
|
|
|
4777
5337
|
* @description Target device; must belong to the session owner.
|
|
4778
5338
|
*/
|
|
4779
5339
|
readonly device_id: string;
|
|
4780
|
-
|
|
5340
|
+
/**
|
|
5341
|
+
* @description `send` runs `text` as a new turn on the target; `open` only opens the session there (handoff — `text`/`turn_id` ignored, no user turn).
|
|
5342
|
+
* @default send
|
|
5343
|
+
* @enum {string}
|
|
5344
|
+
*/
|
|
5345
|
+
readonly mode?: 'send' | 'open';
|
|
5346
|
+
/** @description Prompt for the target. Required unless `mode` is `open` (`400` otherwise). */
|
|
5347
|
+
readonly text?: string;
|
|
5348
|
+
/** @description Ignored when `mode` is `open`. */
|
|
4781
5349
|
readonly turn_id?: string;
|
|
4782
5350
|
};
|
|
4783
5351
|
readonly SessionDispatchResponse: {
|
|
4784
5352
|
/** @example dispatch:8c2e5f1a-7b3d-4c9e-a0f1-2d3e4f5a6b7c */
|
|
4785
5353
|
readonly control_id: string;
|
|
4786
5354
|
readonly duplicate: boolean;
|
|
5355
|
+
/**
|
|
5356
|
+
* @description The effective dispatch mode (`send` when the request omitted it).
|
|
5357
|
+
* @enum {string}
|
|
5358
|
+
*/
|
|
5359
|
+
readonly mode: 'send' | 'open';
|
|
4787
5360
|
/**
|
|
4788
5361
|
* @description Why no push was delivered — `no_push_token`, `no_token`, `auth_failed`, `network_error`, `unregistered` (token cleared) or `http_<status>`. Absent on success.
|
|
4789
5362
|
* @example no_push_token
|
|
@@ -4941,6 +5514,64 @@ type components$1 = {
|
|
|
4941
5514
|
* @enum {string}
|
|
4942
5515
|
*/
|
|
4943
5516
|
readonly SessionRole: 'viewer' | 'editor' | 'owner';
|
|
5517
|
+
/**
|
|
5518
|
+
* Streaming speech event
|
|
5519
|
+
* @description The `data` of one SSE frame; the SSE `event` name equals `type`.
|
|
5520
|
+
*/
|
|
5521
|
+
readonly SpeechStreamEvent: {
|
|
5522
|
+
/** @description `done`: total audio duration reported by Azure. */
|
|
5523
|
+
readonly audio_ms?: number | null;
|
|
5524
|
+
/** @description `audio`: base64 audio chunk in the negotiated format. */
|
|
5525
|
+
readonly delta?: string;
|
|
5526
|
+
/** @description `word`: spoken duration in milliseconds. */
|
|
5527
|
+
readonly durationMs?: number;
|
|
5528
|
+
/** @description `start`: `pcm` or `mp3`. */
|
|
5529
|
+
readonly format?: string;
|
|
5530
|
+
/** @description `viseme`: Azure viseme id. */
|
|
5531
|
+
readonly id?: number;
|
|
5532
|
+
/** @description `viseme` / `word`: position on the audio timeline in milliseconds. */
|
|
5533
|
+
readonly offsetMs?: number;
|
|
5534
|
+
/** @description `start`: audio sample rate in Hz. */
|
|
5535
|
+
readonly sample_rate?: number;
|
|
5536
|
+
/** @description `word`: the word (or punctuation) being spoken. */
|
|
5537
|
+
readonly text?: string;
|
|
5538
|
+
/** @enum {string} */
|
|
5539
|
+
readonly type: 'start' | 'audio' | 'viseme' | 'word' | 'done' | 'error';
|
|
5540
|
+
/** @description `start`: resolved Azure voice name. */
|
|
5541
|
+
readonly voice?: string;
|
|
5542
|
+
};
|
|
5543
|
+
/** Streaming speech request */
|
|
5544
|
+
readonly SpeechStreamRequest: {
|
|
5545
|
+
/**
|
|
5546
|
+
* @description Text to speak. It is XML-escaped into SSML, so markup is read literally.
|
|
5547
|
+
* @example Bună seara! Mulțumesc pentru trandafir!
|
|
5548
|
+
*/
|
|
5549
|
+
readonly input: string;
|
|
5550
|
+
/**
|
|
5551
|
+
* @description Azure AI Speech neural TTS.
|
|
5552
|
+
* @default codai-tts-ro
|
|
5553
|
+
* @enum {string}
|
|
5554
|
+
*/
|
|
5555
|
+
readonly model?: 'codai-tts-ro' | 'azure-speech';
|
|
5556
|
+
/**
|
|
5557
|
+
* @description `pcm` = raw PCM16 mono 24 kHz (lowest latency); `mp3` = 24 kHz 48 kbit/s.
|
|
5558
|
+
* @default pcm
|
|
5559
|
+
* @enum {string}
|
|
5560
|
+
*/
|
|
5561
|
+
readonly response_format?: 'pcm' | 'mp3';
|
|
5562
|
+
/**
|
|
5563
|
+
* @description Speaking rate multiplier (SSML prosody rate).
|
|
5564
|
+
* @default 1
|
|
5565
|
+
*/
|
|
5566
|
+
readonly speed?: number;
|
|
5567
|
+
/**
|
|
5568
|
+
* @description `alina` (ro-RO-AlinaNeural), `emil` (ro-RO-EmilNeural) or any Azure neural voice name such as `en-US-AvaNeural`.
|
|
5569
|
+
* @default alina
|
|
5570
|
+
* @example alina
|
|
5571
|
+
* @example ro-RO-EmilNeural
|
|
5572
|
+
*/
|
|
5573
|
+
readonly voice?: string;
|
|
5574
|
+
};
|
|
4944
5575
|
readonly SystemOneAnswer: {
|
|
4945
5576
|
readonly choice?: string;
|
|
4946
5577
|
readonly confidence?: number;
|
|
@@ -4964,7 +5595,22 @@ type components$1 = {
|
|
|
4964
5595
|
/** @enum {string} */
|
|
4965
5596
|
readonly type: 'choice' | 'score' | 'noul';
|
|
4966
5597
|
};
|
|
5598
|
+
/** @description Send exactly one of `state` (single) or `items` (batch). */
|
|
4967
5599
|
readonly SystemOneRequest: {
|
|
5600
|
+
/**
|
|
5601
|
+
* @description `codai-fast` lets the gateway answer with codai-fast (structured output) when codai-s1 is unavailable; the response then has `fallback_used: true`.
|
|
5602
|
+
* @default none
|
|
5603
|
+
* @enum {string}
|
|
5604
|
+
*/
|
|
5605
|
+
readonly fallback?: 'none' | 'codai-fast';
|
|
5606
|
+
/** @description Batch mode — the same questions asked about each item's state, concurrently. Ids must be unique. */
|
|
5607
|
+
readonly items?: readonly {
|
|
5608
|
+
readonly id: string;
|
|
5609
|
+
/** @description Text, JSON object or array for this item (≤ 64 000 chars serialised). */
|
|
5610
|
+
readonly state: string | {
|
|
5611
|
+
readonly [key: string]: unknown;
|
|
5612
|
+
} | readonly unknown[];
|
|
5613
|
+
}[];
|
|
4968
5614
|
/** @description Accepted for symmetry; only codai-s1 is served. */
|
|
4969
5615
|
readonly model?: string;
|
|
4970
5616
|
/** @description 1-32 questions keyed by an id you choose; answers come back under the same ids. */
|
|
@@ -4972,15 +5618,28 @@ type components$1 = {
|
|
|
4972
5618
|
readonly [key: string]: components$1['schemas']['SystemOneQuestion'];
|
|
4973
5619
|
};
|
|
4974
5620
|
/** @description Text, JSON object or array the questions are about (≤ 64 000 chars serialised). */
|
|
4975
|
-
readonly state
|
|
5621
|
+
readonly state?: string | {
|
|
4976
5622
|
readonly [key: string]: unknown;
|
|
4977
5623
|
} | readonly unknown[];
|
|
5624
|
+
/** @description codai-s1 budget for this call in milliseconds (default set by the gateway, 1500). */
|
|
5625
|
+
readonly timeout_ms?: number;
|
|
4978
5626
|
};
|
|
5627
|
+
/** @description `answers` for a single `state`, `items` for a batch. */
|
|
4979
5628
|
readonly SystemOneResponse: {
|
|
4980
|
-
readonly answers
|
|
5629
|
+
readonly answers?: {
|
|
4981
5630
|
readonly [key: string]: components$1['schemas']['SystemOneAnswer'];
|
|
4982
5631
|
};
|
|
5632
|
+
/** @description Present and `true` only when codai-s1 was unavailable and the opt-in codai-fast fallback answered. */
|
|
5633
|
+
readonly fallback_used?: boolean;
|
|
5634
|
+
/** @description Batch results in request order. */
|
|
5635
|
+
readonly items?: readonly {
|
|
5636
|
+
readonly answers: {
|
|
5637
|
+
readonly [key: string]: components$1['schemas']['SystemOneAnswer'];
|
|
5638
|
+
};
|
|
5639
|
+
readonly id: string;
|
|
5640
|
+
}[];
|
|
4983
5641
|
readonly latency_ms: number;
|
|
5642
|
+
/** @description `codai-s1`, or `codai-fast` when the opt-in fallback answered. */
|
|
4984
5643
|
readonly model: string;
|
|
4985
5644
|
readonly usage: {
|
|
4986
5645
|
readonly input_tokens?: number;
|
|
@@ -6010,6 +6669,69 @@ interface operations$1 {
|
|
|
6010
6669
|
};
|
|
6011
6670
|
};
|
|
6012
6671
|
};
|
|
6672
|
+
readonly createSpeechStream: {
|
|
6673
|
+
readonly parameters: {
|
|
6674
|
+
readonly query?: never;
|
|
6675
|
+
readonly header?: {
|
|
6676
|
+
/** @description Groups requests of one conversation for receipts, stickiness and prompt caching. */
|
|
6677
|
+
readonly 'x-codai-session-id'?: components$1['parameters']['SessionIdHeader'];
|
|
6678
|
+
/** @description Client correlation id; echoed back as `x-codai-trace-id` and persisted on the usage row. */
|
|
6679
|
+
readonly 'x-request-id'?: components$1['parameters']['RequestId'];
|
|
6680
|
+
};
|
|
6681
|
+
readonly path?: never;
|
|
6682
|
+
readonly cookie?: never;
|
|
6683
|
+
};
|
|
6684
|
+
readonly requestBody: {
|
|
6685
|
+
readonly content: {
|
|
6686
|
+
readonly 'application/json': components$1['schemas']['SpeechStreamRequest'];
|
|
6687
|
+
};
|
|
6688
|
+
};
|
|
6689
|
+
readonly responses: {
|
|
6690
|
+
/** @description SSE stream: `start`, then `audio` / `viseme` / `word` events, then `done` (or `error`). */
|
|
6691
|
+
readonly 200: {
|
|
6692
|
+
headers: {
|
|
6693
|
+
/** @description Media type and sample rate of the `audio` deltas, e.g. `audio/pcm;rate=24000`. */
|
|
6694
|
+
readonly 'x-codai-audio-format'?: string;
|
|
6695
|
+
/** @description `azure-speech:<voice>`. */
|
|
6696
|
+
readonly 'x-codai-routed-to'?: string;
|
|
6697
|
+
readonly [name: string]: unknown;
|
|
6698
|
+
};
|
|
6699
|
+
content: {
|
|
6700
|
+
readonly 'text/event-stream': components$1['schemas']['SpeechStreamEvent'];
|
|
6701
|
+
};
|
|
6702
|
+
};
|
|
6703
|
+
/** @description Invalid body, unknown `model`, or `voice` is not an Azure neural voice name. */
|
|
6704
|
+
readonly 400: {
|
|
6705
|
+
headers: {
|
|
6706
|
+
readonly [name: string]: unknown;
|
|
6707
|
+
};
|
|
6708
|
+
content: {
|
|
6709
|
+
readonly 'application/json': components$1['schemas']['Error'];
|
|
6710
|
+
};
|
|
6711
|
+
};
|
|
6712
|
+
readonly 401: components$1['responses']['Unauthorized'];
|
|
6713
|
+
readonly 402: components$1['responses']['PaymentRequired'];
|
|
6714
|
+
/** @description The credential is an ephemeral token minted for another scope, or an EU data-residency account while the Speech region is outside the EU. */
|
|
6715
|
+
readonly 403: {
|
|
6716
|
+
headers: {
|
|
6717
|
+
readonly [name: string]: unknown;
|
|
6718
|
+
};
|
|
6719
|
+
content: {
|
|
6720
|
+
readonly 'application/json': components$1['schemas']['Error'];
|
|
6721
|
+
};
|
|
6722
|
+
};
|
|
6723
|
+
readonly 429: components$1['responses']['RateLimited'];
|
|
6724
|
+
/** @description Azure Speech is not configured on this gateway (`code: tts_unavailable`). */
|
|
6725
|
+
readonly 503: {
|
|
6726
|
+
headers: {
|
|
6727
|
+
readonly [name: string]: unknown;
|
|
6728
|
+
};
|
|
6729
|
+
content: {
|
|
6730
|
+
readonly 'application/json': components$1['schemas']['Error'];
|
|
6731
|
+
};
|
|
6732
|
+
};
|
|
6733
|
+
};
|
|
6734
|
+
};
|
|
6013
6735
|
readonly createTranscription: {
|
|
6014
6736
|
readonly parameters: {
|
|
6015
6737
|
readonly query?: never;
|
|
@@ -7720,6 +8442,155 @@ interface operations$1 {
|
|
|
7720
8442
|
readonly 403: components$1['responses']['Forbidden'];
|
|
7721
8443
|
};
|
|
7722
8444
|
};
|
|
8445
|
+
readonly editImage: {
|
|
8446
|
+
readonly parameters: {
|
|
8447
|
+
readonly query?: never;
|
|
8448
|
+
readonly header?: {
|
|
8449
|
+
/** @description Groups requests of one conversation for receipts, stickiness and prompt caching. */
|
|
8450
|
+
readonly 'x-codai-session-id'?: components$1['parameters']['SessionIdHeader'];
|
|
8451
|
+
/** @description Client correlation id; echoed back as `x-codai-trace-id` and persisted on the usage row. */
|
|
8452
|
+
readonly 'x-request-id'?: components$1['parameters']['RequestId'];
|
|
8453
|
+
};
|
|
8454
|
+
readonly path?: never;
|
|
8455
|
+
readonly cookie?: never;
|
|
8456
|
+
};
|
|
8457
|
+
readonly requestBody: {
|
|
8458
|
+
readonly content: {
|
|
8459
|
+
readonly 'application/json': components$1['schemas']['CoreImageEditRequest'];
|
|
8460
|
+
readonly 'multipart/form-data': components$1['schemas']['CoreImageEditForm'];
|
|
8461
|
+
};
|
|
8462
|
+
};
|
|
8463
|
+
readonly responses: {
|
|
8464
|
+
/** @description Edited images, base64-encoded, in OpenAI shape. */
|
|
8465
|
+
readonly 200: {
|
|
8466
|
+
headers: {
|
|
8467
|
+
/** @description Charge for this request in micro-USD, from the model's reported token usage (images returned only). */
|
|
8468
|
+
readonly 'x-codai-cost-micro-usd'?: number;
|
|
8469
|
+
/** @description Vertex location that processed the request — `eu` (EU multi-region) or `global`. */
|
|
8470
|
+
readonly 'x-codai-data-region'?: 'eu' | 'global';
|
|
8471
|
+
/** @description Adapter kind that served the request. */
|
|
8472
|
+
readonly 'x-codai-provider'?: 'vertex-gemini-image';
|
|
8473
|
+
/** @description Upstream model that produced the images. */
|
|
8474
|
+
readonly 'x-codai-routed-to'?: string;
|
|
8475
|
+
readonly [name: string]: unknown;
|
|
8476
|
+
};
|
|
8477
|
+
content: {
|
|
8478
|
+
readonly 'application/json': components$1['schemas']['CoreImagesResponse'];
|
|
8479
|
+
};
|
|
8480
|
+
};
|
|
8481
|
+
/** @description Body is not valid JSON or multipart, fails validation, has no input image or more than the model accepts, sends `mask`, asks for `response_format` other than `b64_json`, names an unknown model or an unsupported `image_size`, or every image was blocked by the safety filter (code `content_filtered`, not charged). */
|
|
8482
|
+
readonly 400: {
|
|
8483
|
+
headers: {
|
|
8484
|
+
readonly [name: string]: unknown;
|
|
8485
|
+
};
|
|
8486
|
+
content: {
|
|
8487
|
+
readonly 'application/json': components$1['schemas']['Error'];
|
|
8488
|
+
};
|
|
8489
|
+
};
|
|
8490
|
+
readonly 401: components$1['responses']['Unauthorized'];
|
|
8491
|
+
readonly 403: components$1['responses']['Forbidden'];
|
|
8492
|
+
/** @description Rate limit exceeded, or the daily or monthly spend cap has been reached. */
|
|
8493
|
+
readonly 429: {
|
|
8494
|
+
headers: {
|
|
8495
|
+
readonly [name: string]: unknown;
|
|
8496
|
+
};
|
|
8497
|
+
content: {
|
|
8498
|
+
readonly 'application/json': components$1['schemas']['Error'];
|
|
8499
|
+
};
|
|
8500
|
+
};
|
|
8501
|
+
readonly 502: components$1['responses']['UpstreamError'];
|
|
8502
|
+
};
|
|
8503
|
+
};
|
|
8504
|
+
readonly createImage: {
|
|
8505
|
+
readonly parameters: {
|
|
8506
|
+
readonly query?: never;
|
|
8507
|
+
readonly header?: {
|
|
8508
|
+
/** @description Groups requests of one conversation for receipts, stickiness and prompt caching. */
|
|
8509
|
+
readonly 'x-codai-session-id'?: components$1['parameters']['SessionIdHeader'];
|
|
8510
|
+
/** @description Client correlation id; echoed back as `x-codai-trace-id` and persisted on the usage row. */
|
|
8511
|
+
readonly 'x-request-id'?: components$1['parameters']['RequestId'];
|
|
8512
|
+
};
|
|
8513
|
+
readonly path?: never;
|
|
8514
|
+
readonly cookie?: never;
|
|
8515
|
+
};
|
|
8516
|
+
readonly requestBody: {
|
|
8517
|
+
readonly content: {
|
|
8518
|
+
readonly 'application/json': components$1['schemas']['CoreImagesRequest'];
|
|
8519
|
+
};
|
|
8520
|
+
};
|
|
8521
|
+
readonly responses: {
|
|
8522
|
+
/** @description Generated images, base64-encoded, in OpenAI shape. */
|
|
8523
|
+
readonly 200: {
|
|
8524
|
+
headers: {
|
|
8525
|
+
/** @description Charge for this request in micro-USD, from the model's reported token usage (images returned only). */
|
|
8526
|
+
readonly 'x-codai-cost-micro-usd'?: number;
|
|
8527
|
+
/** @description Vertex location that processed the request — `eu` (EU multi-region) or `global`. */
|
|
8528
|
+
readonly 'x-codai-data-region'?: 'eu' | 'global';
|
|
8529
|
+
/** @description Adapter kind that served the request. */
|
|
8530
|
+
readonly 'x-codai-provider'?: 'vertex-gemini-image';
|
|
8531
|
+
/** @description Upstream model that produced the images. */
|
|
8532
|
+
readonly 'x-codai-routed-to'?: string;
|
|
8533
|
+
readonly [name: string]: unknown;
|
|
8534
|
+
};
|
|
8535
|
+
content: {
|
|
8536
|
+
readonly 'application/json': components$1['schemas']['CoreImagesResponse'];
|
|
8537
|
+
};
|
|
8538
|
+
};
|
|
8539
|
+
/** @description Body is not valid JSON, fails validation, asks for `response_format` other than `b64_json`, names an unknown model, asks for an `image_size` the model does not support, sends more reference images than the model accepts, or every image was blocked by the safety filter (code `content_filtered`, not charged). */
|
|
8540
|
+
readonly 400: {
|
|
8541
|
+
headers: {
|
|
8542
|
+
readonly [name: string]: unknown;
|
|
8543
|
+
};
|
|
8544
|
+
content: {
|
|
8545
|
+
readonly 'application/json': components$1['schemas']['Error'];
|
|
8546
|
+
};
|
|
8547
|
+
};
|
|
8548
|
+
readonly 401: components$1['responses']['Unauthorized'];
|
|
8549
|
+
readonly 403: components$1['responses']['Forbidden'];
|
|
8550
|
+
/** @description Rate limit exceeded, or the daily or monthly spend cap has been reached. */
|
|
8551
|
+
readonly 429: {
|
|
8552
|
+
headers: {
|
|
8553
|
+
readonly [name: string]: unknown;
|
|
8554
|
+
};
|
|
8555
|
+
content: {
|
|
8556
|
+
readonly 'application/json': components$1['schemas']['Error'];
|
|
8557
|
+
};
|
|
8558
|
+
};
|
|
8559
|
+
readonly 502: components$1['responses']['UpstreamError'];
|
|
8560
|
+
};
|
|
8561
|
+
};
|
|
8562
|
+
readonly revokeSelfKey: {
|
|
8563
|
+
readonly parameters: {
|
|
8564
|
+
readonly query?: never;
|
|
8565
|
+
readonly header?: {
|
|
8566
|
+
/** @description Client correlation id; echoed back as `x-codai-trace-id` and persisted on the usage row. */
|
|
8567
|
+
readonly 'x-request-id'?: components$1['parameters']['RequestId'];
|
|
8568
|
+
};
|
|
8569
|
+
readonly path?: never;
|
|
8570
|
+
readonly cookie?: never;
|
|
8571
|
+
};
|
|
8572
|
+
readonly requestBody?: never;
|
|
8573
|
+
readonly responses: {
|
|
8574
|
+
/** @description Revoked. */
|
|
8575
|
+
readonly 200: {
|
|
8576
|
+
headers: {
|
|
8577
|
+
readonly [name: string]: unknown;
|
|
8578
|
+
};
|
|
8579
|
+
content: {
|
|
8580
|
+
readonly 'application/json': {
|
|
8581
|
+
/**
|
|
8582
|
+
* Format: uuid
|
|
8583
|
+
* @description Id of the revoked key.
|
|
8584
|
+
*/
|
|
8585
|
+
readonly id: string;
|
|
8586
|
+
readonly revoked: boolean;
|
|
8587
|
+
};
|
|
8588
|
+
};
|
|
8589
|
+
};
|
|
8590
|
+
readonly 400: components$1['responses']['BadRequest'];
|
|
8591
|
+
readonly 401: components$1['responses']['Unauthorized'];
|
|
8592
|
+
};
|
|
8593
|
+
};
|
|
7723
8594
|
readonly createMessage: {
|
|
7724
8595
|
readonly parameters: {
|
|
7725
8596
|
readonly query?: never;
|
|
@@ -8276,38 +9147,225 @@ interface operations$1 {
|
|
|
8276
9147
|
};
|
|
8277
9148
|
readonly requestBody: {
|
|
8278
9149
|
readonly content: {
|
|
8279
|
-
readonly 'application/json': components$1['schemas']['ProjectCreateBody'];
|
|
9150
|
+
readonly 'application/json': components$1['schemas']['ProjectCreateBody'];
|
|
9151
|
+
};
|
|
9152
|
+
};
|
|
9153
|
+
readonly responses: {
|
|
9154
|
+
/** @description The new project. */
|
|
9155
|
+
readonly 201: {
|
|
9156
|
+
headers: {
|
|
9157
|
+
readonly [name: string]: unknown;
|
|
9158
|
+
};
|
|
9159
|
+
content: {
|
|
9160
|
+
readonly 'application/json': {
|
|
9161
|
+
readonly project: components$1['schemas']['Project'];
|
|
9162
|
+
};
|
|
9163
|
+
};
|
|
9164
|
+
};
|
|
9165
|
+
readonly 400: components$1['responses']['BadRequest'];
|
|
9166
|
+
readonly 401: components$1['responses']['Unauthorized'];
|
|
9167
|
+
readonly 402: components$1['responses']['PaymentRequired'];
|
|
9168
|
+
readonly 403: components$1['responses']['Forbidden'];
|
|
9169
|
+
readonly 404: components$1['responses']['NotFound'];
|
|
9170
|
+
/** @description A project of yours already uses this slug (`code: slug_taken`). */
|
|
9171
|
+
readonly 409: {
|
|
9172
|
+
headers: {
|
|
9173
|
+
readonly [name: string]: unknown;
|
|
9174
|
+
};
|
|
9175
|
+
content: {
|
|
9176
|
+
readonly 'application/json': components$1['schemas']['Error'];
|
|
9177
|
+
};
|
|
9178
|
+
};
|
|
9179
|
+
};
|
|
9180
|
+
};
|
|
9181
|
+
readonly getProject: {
|
|
9182
|
+
readonly parameters: {
|
|
9183
|
+
readonly query?: never;
|
|
9184
|
+
readonly header?: {
|
|
9185
|
+
/** @description Client correlation id; echoed back as `x-codai-trace-id` and persisted on the usage row. */
|
|
9186
|
+
readonly 'x-request-id'?: components$1['parameters']['RequestId'];
|
|
9187
|
+
};
|
|
9188
|
+
readonly path: {
|
|
9189
|
+
/** @description Project UUID. A malformed value is 400; an unknown or foreign project is 404. */
|
|
9190
|
+
readonly id: components$1['parameters']['ProjectId'];
|
|
9191
|
+
};
|
|
9192
|
+
readonly cookie?: never;
|
|
9193
|
+
};
|
|
9194
|
+
readonly requestBody?: never;
|
|
9195
|
+
readonly responses: {
|
|
9196
|
+
/** @description The project and its environments. */
|
|
9197
|
+
readonly 200: {
|
|
9198
|
+
headers: {
|
|
9199
|
+
readonly [name: string]: unknown;
|
|
9200
|
+
};
|
|
9201
|
+
content: {
|
|
9202
|
+
readonly 'application/json': {
|
|
9203
|
+
readonly environments: readonly components$1['schemas']['Environment'][];
|
|
9204
|
+
readonly project: components$1['schemas']['Project'];
|
|
9205
|
+
};
|
|
9206
|
+
};
|
|
9207
|
+
};
|
|
9208
|
+
readonly 400: components$1['responses']['BadRequest'];
|
|
9209
|
+
readonly 401: components$1['responses']['Unauthorized'];
|
|
9210
|
+
readonly 402: components$1['responses']['PaymentRequired'];
|
|
9211
|
+
readonly 404: components$1['responses']['NotFound'];
|
|
9212
|
+
};
|
|
9213
|
+
};
|
|
9214
|
+
readonly deleteProject: {
|
|
9215
|
+
readonly parameters: {
|
|
9216
|
+
readonly query?: never;
|
|
9217
|
+
readonly header?: {
|
|
9218
|
+
/** @description Client correlation id; echoed back as `x-codai-trace-id` and persisted on the usage row. */
|
|
9219
|
+
readonly 'x-request-id'?: components$1['parameters']['RequestId'];
|
|
9220
|
+
};
|
|
9221
|
+
readonly path: {
|
|
9222
|
+
/** @description Project UUID. A malformed value is 400; an unknown or foreign project is 404. */
|
|
9223
|
+
readonly id: components$1['parameters']['ProjectId'];
|
|
9224
|
+
};
|
|
9225
|
+
readonly cookie?: never;
|
|
9226
|
+
};
|
|
9227
|
+
readonly requestBody?: never;
|
|
9228
|
+
readonly responses: {
|
|
9229
|
+
/** @description Deleted. */
|
|
9230
|
+
readonly 200: {
|
|
9231
|
+
headers: {
|
|
9232
|
+
readonly [name: string]: unknown;
|
|
9233
|
+
};
|
|
9234
|
+
content: {
|
|
9235
|
+
readonly 'application/json': {
|
|
9236
|
+
/** @enum {boolean} */
|
|
9237
|
+
readonly deleted: true;
|
|
9238
|
+
/** Format: uuid */
|
|
9239
|
+
readonly id: string;
|
|
9240
|
+
};
|
|
9241
|
+
};
|
|
9242
|
+
};
|
|
9243
|
+
readonly 400: components$1['responses']['BadRequest'];
|
|
9244
|
+
readonly 401: components$1['responses']['Unauthorized'];
|
|
9245
|
+
readonly 402: components$1['responses']['PaymentRequired'];
|
|
9246
|
+
readonly 403: components$1['responses']['Forbidden'];
|
|
9247
|
+
readonly 404: components$1['responses']['NotFound'];
|
|
9248
|
+
/** @description The project still has non-destroyed environments (`code: project_has_environments`). */
|
|
9249
|
+
readonly 409: {
|
|
9250
|
+
headers: {
|
|
9251
|
+
readonly [name: string]: unknown;
|
|
9252
|
+
};
|
|
9253
|
+
content: {
|
|
9254
|
+
readonly 'application/json': components$1['schemas']['Error'];
|
|
9255
|
+
};
|
|
9256
|
+
};
|
|
9257
|
+
};
|
|
9258
|
+
};
|
|
9259
|
+
readonly updateProject: {
|
|
9260
|
+
readonly parameters: {
|
|
9261
|
+
readonly query?: never;
|
|
9262
|
+
readonly header?: {
|
|
9263
|
+
/** @description Client correlation id; echoed back as `x-codai-trace-id` and persisted on the usage row. */
|
|
9264
|
+
readonly 'x-request-id'?: components$1['parameters']['RequestId'];
|
|
9265
|
+
};
|
|
9266
|
+
readonly path: {
|
|
9267
|
+
/** @description Project UUID. A malformed value is 400; an unknown or foreign project is 404. */
|
|
9268
|
+
readonly id: components$1['parameters']['ProjectId'];
|
|
9269
|
+
};
|
|
9270
|
+
readonly cookie?: never;
|
|
9271
|
+
};
|
|
9272
|
+
readonly requestBody: {
|
|
9273
|
+
readonly content: {
|
|
9274
|
+
readonly 'application/json': components$1['schemas']['ProjectPatchBody'];
|
|
9275
|
+
};
|
|
9276
|
+
};
|
|
9277
|
+
readonly responses: {
|
|
9278
|
+
/** @description The updated project. */
|
|
9279
|
+
readonly 200: {
|
|
9280
|
+
headers: {
|
|
9281
|
+
readonly [name: string]: unknown;
|
|
9282
|
+
};
|
|
9283
|
+
content: {
|
|
9284
|
+
readonly 'application/json': {
|
|
9285
|
+
readonly project: components$1['schemas']['Project'];
|
|
9286
|
+
};
|
|
9287
|
+
};
|
|
9288
|
+
};
|
|
9289
|
+
readonly 400: components$1['responses']['BadRequest'];
|
|
9290
|
+
readonly 401: components$1['responses']['Unauthorized'];
|
|
9291
|
+
readonly 402: components$1['responses']['PaymentRequired'];
|
|
9292
|
+
readonly 403: components$1['responses']['Forbidden'];
|
|
9293
|
+
readonly 404: components$1['responses']['NotFound'];
|
|
9294
|
+
};
|
|
9295
|
+
};
|
|
9296
|
+
readonly listPrompts: {
|
|
9297
|
+
readonly parameters: {
|
|
9298
|
+
readonly query?: {
|
|
9299
|
+
/** @description Maximum rows (1–200). */
|
|
9300
|
+
readonly limit?: number;
|
|
9301
|
+
/** @description Filter: a prompt status, `due` or `all`. */
|
|
9302
|
+
readonly status?: 'open' | 'due' | 'all' | 'launched' | 'done' | 'dismissed' | 'superseded';
|
|
9303
|
+
};
|
|
9304
|
+
readonly header?: {
|
|
9305
|
+
/** @description Client correlation id; echoed back as `x-codai-trace-id` and persisted on the usage row. */
|
|
9306
|
+
readonly 'x-request-id'?: components$1['parameters']['RequestId'];
|
|
9307
|
+
};
|
|
9308
|
+
readonly path?: never;
|
|
9309
|
+
readonly cookie?: never;
|
|
9310
|
+
};
|
|
9311
|
+
readonly requestBody?: never;
|
|
9312
|
+
readonly responses: {
|
|
9313
|
+
/** @description Matching prompts. */
|
|
9314
|
+
readonly 200: {
|
|
9315
|
+
headers: {
|
|
9316
|
+
readonly [name: string]: unknown;
|
|
9317
|
+
};
|
|
9318
|
+
content: {
|
|
9319
|
+
readonly 'application/json': {
|
|
9320
|
+
readonly data: readonly components$1['schemas']['Prompt'][];
|
|
9321
|
+
};
|
|
9322
|
+
};
|
|
9323
|
+
};
|
|
9324
|
+
readonly 400: components$1['responses']['BadRequest'];
|
|
9325
|
+
readonly 401: components$1['responses']['Unauthorized'];
|
|
9326
|
+
readonly 402: components$1['responses']['PaymentRequired'];
|
|
9327
|
+
};
|
|
9328
|
+
};
|
|
9329
|
+
readonly createPrompt: {
|
|
9330
|
+
readonly parameters: {
|
|
9331
|
+
readonly query?: never;
|
|
9332
|
+
readonly header?: {
|
|
9333
|
+
/** @description Client correlation id; echoed back as `x-codai-trace-id` and persisted on the usage row. */
|
|
9334
|
+
readonly 'x-request-id'?: components$1['parameters']['RequestId'];
|
|
9335
|
+
};
|
|
9336
|
+
readonly path?: never;
|
|
9337
|
+
readonly cookie?: never;
|
|
9338
|
+
};
|
|
9339
|
+
readonly requestBody: {
|
|
9340
|
+
readonly content: {
|
|
9341
|
+
readonly 'application/json': components$1['schemas']['PromptCreate'];
|
|
8280
9342
|
};
|
|
8281
9343
|
};
|
|
8282
9344
|
readonly responses: {
|
|
8283
|
-
/** @description The
|
|
8284
|
-
readonly
|
|
9345
|
+
/** @description The same text already existed; nothing was created. */
|
|
9346
|
+
readonly 200: {
|
|
8285
9347
|
headers: {
|
|
8286
9348
|
readonly [name: string]: unknown;
|
|
8287
9349
|
};
|
|
8288
9350
|
content: {
|
|
8289
|
-
readonly 'application/json':
|
|
8290
|
-
readonly project: components$1['schemas']['Project'];
|
|
8291
|
-
};
|
|
9351
|
+
readonly 'application/json': components$1['schemas']['PromptCreated'];
|
|
8292
9352
|
};
|
|
8293
9353
|
};
|
|
8294
|
-
|
|
8295
|
-
readonly
|
|
8296
|
-
readonly 402: components$1['responses']['PaymentRequired'];
|
|
8297
|
-
readonly 403: components$1['responses']['Forbidden'];
|
|
8298
|
-
readonly 404: components$1['responses']['NotFound'];
|
|
8299
|
-
/** @description A project of yours already uses this slug (`code: slug_taken`). */
|
|
8300
|
-
readonly 409: {
|
|
9354
|
+
/** @description Prompt created. */
|
|
9355
|
+
readonly 201: {
|
|
8301
9356
|
headers: {
|
|
8302
9357
|
readonly [name: string]: unknown;
|
|
8303
9358
|
};
|
|
8304
9359
|
content: {
|
|
8305
|
-
readonly 'application/json': components$1['schemas']['
|
|
9360
|
+
readonly 'application/json': components$1['schemas']['PromptCreated'];
|
|
8306
9361
|
};
|
|
8307
9362
|
};
|
|
9363
|
+
readonly 400: components$1['responses']['BadRequest'];
|
|
9364
|
+
readonly 401: components$1['responses']['Unauthorized'];
|
|
9365
|
+
readonly 402: components$1['responses']['PaymentRequired'];
|
|
8308
9366
|
};
|
|
8309
9367
|
};
|
|
8310
|
-
readonly
|
|
9368
|
+
readonly getPrompt: {
|
|
8311
9369
|
readonly parameters: {
|
|
8312
9370
|
readonly query?: never;
|
|
8313
9371
|
readonly header?: {
|
|
@@ -8315,32 +9373,28 @@ interface operations$1 {
|
|
|
8315
9373
|
readonly 'x-request-id'?: components$1['parameters']['RequestId'];
|
|
8316
9374
|
};
|
|
8317
9375
|
readonly path: {
|
|
8318
|
-
/** @description
|
|
8319
|
-
readonly id:
|
|
9376
|
+
/** @description Pending prompt id (uuid). A foreign or malformed id is 404. */
|
|
9377
|
+
readonly id: string;
|
|
8320
9378
|
};
|
|
8321
9379
|
readonly cookie?: never;
|
|
8322
9380
|
};
|
|
8323
9381
|
readonly requestBody?: never;
|
|
8324
9382
|
readonly responses: {
|
|
8325
|
-
/** @description The
|
|
9383
|
+
/** @description The prompt. */
|
|
8326
9384
|
readonly 200: {
|
|
8327
9385
|
headers: {
|
|
8328
9386
|
readonly [name: string]: unknown;
|
|
8329
9387
|
};
|
|
8330
9388
|
content: {
|
|
8331
|
-
readonly 'application/json':
|
|
8332
|
-
readonly environments: readonly components$1['schemas']['Environment'][];
|
|
8333
|
-
readonly project: components$1['schemas']['Project'];
|
|
8334
|
-
};
|
|
9389
|
+
readonly 'application/json': components$1['schemas']['Prompt'];
|
|
8335
9390
|
};
|
|
8336
9391
|
};
|
|
8337
|
-
readonly 400: components$1['responses']['BadRequest'];
|
|
8338
9392
|
readonly 401: components$1['responses']['Unauthorized'];
|
|
8339
9393
|
readonly 402: components$1['responses']['PaymentRequired'];
|
|
8340
9394
|
readonly 404: components$1['responses']['NotFound'];
|
|
8341
9395
|
};
|
|
8342
9396
|
};
|
|
8343
|
-
readonly
|
|
9397
|
+
readonly deletePrompt: {
|
|
8344
9398
|
readonly parameters: {
|
|
8345
9399
|
readonly query?: never;
|
|
8346
9400
|
readonly header?: {
|
|
@@ -8348,44 +9402,63 @@ interface operations$1 {
|
|
|
8348
9402
|
readonly 'x-request-id'?: components$1['parameters']['RequestId'];
|
|
8349
9403
|
};
|
|
8350
9404
|
readonly path: {
|
|
8351
|
-
/** @description
|
|
8352
|
-
readonly id:
|
|
9405
|
+
/** @description Pending prompt id (uuid). A foreign or malformed id is 404. */
|
|
9406
|
+
readonly id: string;
|
|
8353
9407
|
};
|
|
8354
9408
|
readonly cookie?: never;
|
|
8355
9409
|
};
|
|
8356
9410
|
readonly requestBody?: never;
|
|
8357
9411
|
readonly responses: {
|
|
8358
|
-
/** @description
|
|
9412
|
+
/** @description How many prompts were deleted (0 or 1). */
|
|
8359
9413
|
readonly 200: {
|
|
8360
9414
|
headers: {
|
|
8361
9415
|
readonly [name: string]: unknown;
|
|
8362
9416
|
};
|
|
8363
9417
|
content: {
|
|
8364
9418
|
readonly 'application/json': {
|
|
8365
|
-
|
|
8366
|
-
readonly deleted: true;
|
|
8367
|
-
/** Format: uuid */
|
|
8368
|
-
readonly id: string;
|
|
9419
|
+
readonly deleted: number;
|
|
8369
9420
|
};
|
|
8370
9421
|
};
|
|
8371
9422
|
};
|
|
8372
|
-
readonly 400: components$1['responses']['BadRequest'];
|
|
8373
9423
|
readonly 401: components$1['responses']['Unauthorized'];
|
|
8374
9424
|
readonly 402: components$1['responses']['PaymentRequired'];
|
|
8375
|
-
|
|
8376
|
-
|
|
8377
|
-
|
|
8378
|
-
|
|
9425
|
+
};
|
|
9426
|
+
};
|
|
9427
|
+
readonly updatePrompt: {
|
|
9428
|
+
readonly parameters: {
|
|
9429
|
+
readonly query?: never;
|
|
9430
|
+
readonly header?: {
|
|
9431
|
+
/** @description Client correlation id; echoed back as `x-codai-trace-id` and persisted on the usage row. */
|
|
9432
|
+
readonly 'x-request-id'?: components$1['parameters']['RequestId'];
|
|
9433
|
+
};
|
|
9434
|
+
readonly path: {
|
|
9435
|
+
/** @description Pending prompt id (uuid). A foreign or malformed id is 404. */
|
|
9436
|
+
readonly id: string;
|
|
9437
|
+
};
|
|
9438
|
+
readonly cookie?: never;
|
|
9439
|
+
};
|
|
9440
|
+
readonly requestBody: {
|
|
9441
|
+
readonly content: {
|
|
9442
|
+
readonly 'application/json': components$1['schemas']['PromptPatch'];
|
|
9443
|
+
};
|
|
9444
|
+
};
|
|
9445
|
+
readonly responses: {
|
|
9446
|
+
/** @description The updated prompt. */
|
|
9447
|
+
readonly 200: {
|
|
8379
9448
|
headers: {
|
|
8380
9449
|
readonly [name: string]: unknown;
|
|
8381
9450
|
};
|
|
8382
9451
|
content: {
|
|
8383
|
-
readonly 'application/json': components$1['schemas']['
|
|
9452
|
+
readonly 'application/json': components$1['schemas']['Prompt'];
|
|
8384
9453
|
};
|
|
8385
9454
|
};
|
|
9455
|
+
readonly 400: components$1['responses']['BadRequest'];
|
|
9456
|
+
readonly 401: components$1['responses']['Unauthorized'];
|
|
9457
|
+
readonly 402: components$1['responses']['PaymentRequired'];
|
|
9458
|
+
readonly 404: components$1['responses']['NotFound'];
|
|
8386
9459
|
};
|
|
8387
9460
|
};
|
|
8388
|
-
readonly
|
|
9461
|
+
readonly launchPrompt: {
|
|
8389
9462
|
readonly parameters: {
|
|
8390
9463
|
readonly query?: never;
|
|
8391
9464
|
readonly header?: {
|
|
@@ -8393,32 +9466,42 @@ interface operations$1 {
|
|
|
8393
9466
|
readonly 'x-request-id'?: components$1['parameters']['RequestId'];
|
|
8394
9467
|
};
|
|
8395
9468
|
readonly path: {
|
|
8396
|
-
/** @description
|
|
8397
|
-
readonly id:
|
|
9469
|
+
/** @description Pending prompt id (uuid). A foreign or malformed id is 404. */
|
|
9470
|
+
readonly id: string;
|
|
8398
9471
|
};
|
|
8399
9472
|
readonly cookie?: never;
|
|
8400
9473
|
};
|
|
8401
|
-
readonly requestBody
|
|
9474
|
+
readonly requestBody?: {
|
|
8402
9475
|
readonly content: {
|
|
8403
|
-
readonly 'application/json':
|
|
9476
|
+
readonly 'application/json': {
|
|
9477
|
+
/**
|
|
9478
|
+
* Format: uuid
|
|
9479
|
+
* @description One of your devices; overrides the prompt target.
|
|
9480
|
+
*/
|
|
9481
|
+
readonly device_id?: string;
|
|
9482
|
+
};
|
|
8404
9483
|
};
|
|
8405
9484
|
};
|
|
8406
9485
|
readonly responses: {
|
|
8407
|
-
/** @description The
|
|
9486
|
+
/** @description The session that was started. */
|
|
8408
9487
|
readonly 200: {
|
|
8409
9488
|
headers: {
|
|
8410
9489
|
readonly [name: string]: unknown;
|
|
8411
9490
|
};
|
|
8412
9491
|
content: {
|
|
8413
9492
|
readonly 'application/json': {
|
|
8414
|
-
|
|
9493
|
+
/** Format: uuid */
|
|
9494
|
+
readonly device_id: string;
|
|
9495
|
+
/** @description Whether a push dispatch reached the device. */
|
|
9496
|
+
readonly pushed: boolean;
|
|
9497
|
+
/** Format: uuid */
|
|
9498
|
+
readonly session_id: string;
|
|
8415
9499
|
};
|
|
8416
9500
|
};
|
|
8417
9501
|
};
|
|
8418
9502
|
readonly 400: components$1['responses']['BadRequest'];
|
|
8419
9503
|
readonly 401: components$1['responses']['Unauthorized'];
|
|
8420
9504
|
readonly 402: components$1['responses']['PaymentRequired'];
|
|
8421
|
-
readonly 403: components$1['responses']['Forbidden'];
|
|
8422
9505
|
readonly 404: components$1['responses']['NotFound'];
|
|
8423
9506
|
};
|
|
8424
9507
|
};
|
|
@@ -9352,7 +10435,7 @@ interface operations$1 {
|
|
|
9352
10435
|
};
|
|
9353
10436
|
};
|
|
9354
10437
|
readonly responses: {
|
|
9355
|
-
/** @description One typed answer per question id. */
|
|
10438
|
+
/** @description One typed answer per question id (`answers`), or per item and question id (`items`) for a batch. */
|
|
9356
10439
|
readonly 200: {
|
|
9357
10440
|
headers: {
|
|
9358
10441
|
readonly [name: string]: unknown;
|
|
@@ -9361,7 +10444,7 @@ interface operations$1 {
|
|
|
9361
10444
|
readonly 'application/json': components$1['schemas']['SystemOneResponse'];
|
|
9362
10445
|
};
|
|
9363
10446
|
};
|
|
9364
|
-
/** @description Body is not valid JSON, a question is malformed (option/level counts),
|
|
10447
|
+
/** @description Body is not valid JSON, a question is malformed (option/level counts), a `state` is too large, both or neither of `state`/`items` were sent, more than 16 items, duplicate item ids, or `timeout_ms` outside 100-5000. */
|
|
9365
10448
|
readonly 400: {
|
|
9366
10449
|
headers: {
|
|
9367
10450
|
readonly [name: string]: unknown;
|
|
@@ -9373,7 +10456,7 @@ interface operations$1 {
|
|
|
9373
10456
|
readonly 401: components$1['responses']['Unauthorized'];
|
|
9374
10457
|
readonly 413: components$1['responses']['PayloadTooLarge'];
|
|
9375
10458
|
readonly 429: components$1['responses']['RateLimited'];
|
|
9376
|
-
/** @description codai-s1 is disabled, unreachable or exceeded its budget (`code: s1_unavailable`). Use your local fallback. */
|
|
10459
|
+
/** @description codai-s1 is disabled, unreachable or exceeded its budget (`code: s1_unavailable`), and no opt-in fallback answered. Use your local fallback. */
|
|
9377
10460
|
readonly 503: {
|
|
9378
10461
|
headers: {
|
|
9379
10462
|
readonly [name: string]: unknown;
|
|
@@ -9983,6 +11066,62 @@ interface operations$1 {
|
|
|
9983
11066
|
readonly 404: components$1['responses']['NotFound'];
|
|
9984
11067
|
};
|
|
9985
11068
|
};
|
|
11069
|
+
readonly verifyAgentOutput: {
|
|
11070
|
+
readonly parameters: {
|
|
11071
|
+
readonly query?: never;
|
|
11072
|
+
readonly header?: never;
|
|
11073
|
+
readonly path?: never;
|
|
11074
|
+
readonly cookie?: never;
|
|
11075
|
+
};
|
|
11076
|
+
/** @description The signed payload and the signature. */
|
|
11077
|
+
readonly requestBody: {
|
|
11078
|
+
readonly content: {
|
|
11079
|
+
readonly 'application/json': components$1['schemas']['AgentOutputVerifyRequest'];
|
|
11080
|
+
};
|
|
11081
|
+
};
|
|
11082
|
+
readonly responses: {
|
|
11083
|
+
/** @description Verification result. */
|
|
11084
|
+
readonly 200: {
|
|
11085
|
+
headers: {
|
|
11086
|
+
readonly [name: string]: unknown;
|
|
11087
|
+
};
|
|
11088
|
+
content: {
|
|
11089
|
+
readonly 'application/json': components$1['schemas']['AgentOutputVerifyResult'];
|
|
11090
|
+
};
|
|
11091
|
+
};
|
|
11092
|
+
readonly 400: components$1['responses']['BadRequest'];
|
|
11093
|
+
readonly 413: components$1['responses']['PayloadTooLarge'];
|
|
11094
|
+
/** @description Output signing is not enabled on this deployment (`code: signing_disabled`). */
|
|
11095
|
+
readonly 503: {
|
|
11096
|
+
headers: {
|
|
11097
|
+
readonly [name: string]: unknown;
|
|
11098
|
+
};
|
|
11099
|
+
content: {
|
|
11100
|
+
readonly 'application/json': components$1['schemas']['Error'];
|
|
11101
|
+
};
|
|
11102
|
+
};
|
|
11103
|
+
};
|
|
11104
|
+
};
|
|
11105
|
+
readonly getAgentOutputKey: {
|
|
11106
|
+
readonly parameters: {
|
|
11107
|
+
readonly query?: never;
|
|
11108
|
+
readonly header?: never;
|
|
11109
|
+
readonly path?: never;
|
|
11110
|
+
readonly cookie?: never;
|
|
11111
|
+
};
|
|
11112
|
+
readonly requestBody?: never;
|
|
11113
|
+
readonly responses: {
|
|
11114
|
+
/** @description The signing key, or `enabled: false`. */
|
|
11115
|
+
readonly 200: {
|
|
11116
|
+
headers: {
|
|
11117
|
+
readonly [name: string]: unknown;
|
|
11118
|
+
};
|
|
11119
|
+
content: {
|
|
11120
|
+
readonly 'application/json': components$1['schemas']['AgentOutputKey'];
|
|
11121
|
+
};
|
|
11122
|
+
};
|
|
11123
|
+
};
|
|
11124
|
+
};
|
|
9986
11125
|
readonly getRelayEnvironmentStatus: {
|
|
9987
11126
|
readonly parameters: {
|
|
9988
11127
|
readonly query?: never;
|
|
@@ -10117,7 +11256,7 @@ interface CodaiRequestExtensions {
|
|
|
10117
11256
|
/** `x-codai-device-name` */
|
|
10118
11257
|
deviceName?: string;
|
|
10119
11258
|
/** `x-codai-device-platform` */
|
|
10120
|
-
devicePlatform?: 'android' | 'ios' | 'web' | 'desktop' | 'cli' | 'agent';
|
|
11259
|
+
devicePlatform?: 'android' | 'ios' | 'web' | 'desktop' | 'cli' | 'agent' | 'wear' | 'vscode';
|
|
10121
11260
|
/** `x-codai-push-token` */
|
|
10122
11261
|
pushToken?: string;
|
|
10123
11262
|
/** `x-codai-share-token` */
|
|
@@ -10228,7 +11367,7 @@ type Receipt = Reply<'getReceipt'>;
|
|
|
10228
11367
|
type FeedbackRequest = Mutable<Body<'submitFeedback'>>;
|
|
10229
11368
|
type FeedbackResponse = Reply<'submitFeedback'>;
|
|
10230
11369
|
type PhoneModel = Schema<'AccountPhoneModel'>;
|
|
10231
|
-
type CallOpts$
|
|
11370
|
+
type CallOpts$d = {
|
|
10232
11371
|
ext?: CodaiRequestExtensions;
|
|
10233
11372
|
signal?: AbortSignal;
|
|
10234
11373
|
};
|
|
@@ -10236,9 +11375,9 @@ declare class Account {
|
|
|
10236
11375
|
private readonly http;
|
|
10237
11376
|
constructor(http: HttpClient);
|
|
10238
11377
|
/** `GET /v1/account` — the full account card. */
|
|
10239
|
-
get(opts?: CallOpts$
|
|
11378
|
+
get(opts?: CallOpts$d): Promise<AccountView>;
|
|
10240
11379
|
/** `PATCH /v1/account` — consents, username, referral (at least one field). */
|
|
10241
|
-
update(body: AccountPatchRequest, opts?: CallOpts$
|
|
11380
|
+
update(body: AccountPatchRequest, opts?: CallOpts$d): Promise<AccountPatchResponse>;
|
|
10242
11381
|
}
|
|
10243
11382
|
declare class Receipts {
|
|
10244
11383
|
private readonly http;
|
|
@@ -10250,7 +11389,7 @@ declare class Receipts {
|
|
|
10250
11389
|
get(query?: {
|
|
10251
11390
|
sessionId?: string;
|
|
10252
11391
|
since?: string | Date;
|
|
10253
|
-
}, opts?: CallOpts$
|
|
11392
|
+
}, opts?: CallOpts$d): Promise<Receipt>;
|
|
10254
11393
|
}
|
|
10255
11394
|
declare class Feedback {
|
|
10256
11395
|
private readonly http;
|
|
@@ -10259,13 +11398,13 @@ declare class Feedback {
|
|
|
10259
11398
|
* `POST /v1/feedback` — rate one turn. Exactly one of `event_id`,
|
|
10260
11399
|
* `session_id`, `client_request_id` must be present.
|
|
10261
11400
|
*/
|
|
10262
|
-
submit(body: FeedbackRequest, opts?: CallOpts$
|
|
11401
|
+
submit(body: FeedbackRequest, opts?: CallOpts$d): Promise<FeedbackResponse>;
|
|
10263
11402
|
}
|
|
10264
11403
|
declare class PhoneModels {
|
|
10265
11404
|
private readonly http;
|
|
10266
11405
|
constructor(http: HttpClient);
|
|
10267
11406
|
/** `GET /v1/phone/models` — on-device model catalog with signed URLs. */
|
|
10268
|
-
list(opts?: CallOpts$
|
|
11407
|
+
list(opts?: CallOpts$d): Promise<PhoneModel[]>;
|
|
10269
11408
|
}
|
|
10270
11409
|
|
|
10271
11410
|
/** `/v1/agents/*` — synchronous runs and the persisted async run lifecycle. */
|
|
@@ -10278,7 +11417,7 @@ type AgentRun = Reply<'getAgentRun'>;
|
|
|
10278
11417
|
type AgentRunStep = Schema<'AgentRunStep'>;
|
|
10279
11418
|
type AgentRunStats = Reply<'getAgentRunStats'>;
|
|
10280
11419
|
type AgentRunStatus = Schema<'AgentRunStatus'>;
|
|
10281
|
-
type CallOpts$
|
|
11420
|
+
type CallOpts$c = {
|
|
10282
11421
|
ext?: CodaiRequestExtensions;
|
|
10283
11422
|
signal?: AbortSignal;
|
|
10284
11423
|
};
|
|
@@ -10315,34 +11454,75 @@ declare class AgentRuns {
|
|
|
10315
11454
|
private readonly http;
|
|
10316
11455
|
constructor(http: HttpClient);
|
|
10317
11456
|
/** `POST /v1/agents/runs` — returns 202 with the run id. */
|
|
10318
|
-
create(body: AgentRunCreateRequest, opts?: CallOpts$
|
|
11457
|
+
create(body: AgentRunCreateRequest, opts?: CallOpts$c): Promise<AgentRunAccepted>;
|
|
10319
11458
|
/** `GET /v1/agents/runs/{id}` */
|
|
10320
|
-
get(id: string, opts?: CallOpts$
|
|
11459
|
+
get(id: string, opts?: CallOpts$c): Promise<AgentRun>;
|
|
10321
11460
|
/** `GET /v1/agents/runs/{id}/steps` — newest first. */
|
|
10322
|
-
steps(id: string, opts?: CallOpts$
|
|
11461
|
+
steps(id: string, opts?: CallOpts$c): Promise<AgentRunStep[]>;
|
|
10323
11462
|
/** `GET /v1/agents/runs/stats?days=` */
|
|
10324
|
-
stats(days?: number, opts?: CallOpts$
|
|
11463
|
+
stats(days?: number, opts?: CallOpts$c): Promise<AgentRunStats>;
|
|
10325
11464
|
/** `POST /v1/agents/runs/{id}/cancel` */
|
|
10326
|
-
cancel(id: string, opts?: CallOpts$
|
|
11465
|
+
cancel(id: string, opts?: CallOpts$c): Promise<Reply<'cancelAgentRun'>>;
|
|
10327
11466
|
/**
|
|
10328
11467
|
* `GET /v1/agents/runs/{id}/stream` — async iterator over `step` / `done` /
|
|
10329
11468
|
* `timeout` events. The iterator ends after `done`; on `timeout` (30 min)
|
|
10330
11469
|
* it also ends and you may reconnect (full replay from seq 0).
|
|
10331
11470
|
*/
|
|
10332
|
-
stream(id: string, opts?: CallOpts$
|
|
11471
|
+
stream(id: string, opts?: CallOpts$c): AsyncGenerator<AgentRunStreamEvent, void, undefined>;
|
|
10333
11472
|
}
|
|
10334
11473
|
declare class Agents {
|
|
10335
11474
|
private readonly http;
|
|
10336
11475
|
readonly runs: AgentRuns;
|
|
10337
11476
|
constructor(http: HttpClient);
|
|
10338
11477
|
/** `POST /v1/agents/run` — blocks until the agent loop finishes. */
|
|
10339
|
-
run(body: AgentRunRequest, opts?: CallOpts$
|
|
11478
|
+
run(body: AgentRunRequest, opts?: CallOpts$c): Promise<AgentRunResult>;
|
|
10340
11479
|
}
|
|
10341
11480
|
|
|
10342
|
-
/** `POST /v1/audio/transcriptions` and `POST /v1/audio/speech`. */
|
|
11481
|
+
/** `POST /v1/audio/transcriptions`, `POST /v1/audio/speech` and `POST /v1/audio/speech/stream`. */
|
|
10343
11482
|
|
|
10344
11483
|
type TranscriptionResponse = Reply<'createTranscription'>;
|
|
10345
11484
|
type SpeechRequest = Mutable<Body<'createSpeech'>>;
|
|
11485
|
+
type SpeechStreamRequest = Mutable<Body<'createSpeechStream'>>;
|
|
11486
|
+
/** One event of `audio.speechStream()` (Azure neural TTS with lip-sync timing). */
|
|
11487
|
+
type SpeechStreamEvent = {
|
|
11488
|
+
type: 'start';
|
|
11489
|
+
model: string;
|
|
11490
|
+
voice: string;
|
|
11491
|
+
format: 'pcm' | 'mp3';
|
|
11492
|
+
content_type: string;
|
|
11493
|
+
sample_rate: number;
|
|
11494
|
+
}
|
|
11495
|
+
/** `delta` is base64; `audio` is the decoded bytes (PCM16 LE mono 24 kHz for `pcm`). */
|
|
11496
|
+
| {
|
|
11497
|
+
type: 'audio';
|
|
11498
|
+
delta: string;
|
|
11499
|
+
audio: Uint8Array;
|
|
11500
|
+
}
|
|
11501
|
+
/** Azure viseme id (0-21) at `offsetMs` on the audio timeline. */
|
|
11502
|
+
| {
|
|
11503
|
+
type: 'viseme';
|
|
11504
|
+
id: number;
|
|
11505
|
+
offsetMs: number;
|
|
11506
|
+
} | {
|
|
11507
|
+
type: 'word';
|
|
11508
|
+
text: string;
|
|
11509
|
+
offsetMs: number;
|
|
11510
|
+
durationMs: number;
|
|
11511
|
+
} | {
|
|
11512
|
+
type: 'done';
|
|
11513
|
+
audio_ms: number | null;
|
|
11514
|
+
audioBytes: number;
|
|
11515
|
+
visemes: number;
|
|
11516
|
+
words: number;
|
|
11517
|
+
} | {
|
|
11518
|
+
type: 'error';
|
|
11519
|
+
error: {
|
|
11520
|
+
code: string;
|
|
11521
|
+
message: string;
|
|
11522
|
+
};
|
|
11523
|
+
};
|
|
11524
|
+
/** Raw generated event schema (all fields optional). */
|
|
11525
|
+
type SpeechStreamEventSchema = Schema<'SpeechStreamEvent'>;
|
|
10346
11526
|
interface TranscriptionOptions {
|
|
10347
11527
|
/** Audio file contents (max 25 MB). */
|
|
10348
11528
|
file: Blob | Uint8Array | ArrayBuffer;
|
|
@@ -10396,6 +11576,16 @@ declare class Audio {
|
|
|
10396
11576
|
ext?: CodaiRequestExtensions;
|
|
10397
11577
|
signal?: AbortSignal;
|
|
10398
11578
|
}): Promise<SpeechResult>;
|
|
11579
|
+
/**
|
|
11580
|
+
* Streaming neural TTS with visemes + word boundaries (`codai-tts-ro`, Azure AI Speech).
|
|
11581
|
+
* Yields `start`, then `audio` / `viseme` / `word` in synthesis order, then `done` (or `error`).
|
|
11582
|
+
* Voices: `alina` (default), `emil`, or any Azure neural voice name. Default format `pcm`
|
|
11583
|
+
* (PCM16 mono 24 kHz). Works with an ephemeral token of scope `audio` or `live`.
|
|
11584
|
+
*/
|
|
11585
|
+
speechStream(body: SpeechStreamRequest, opts?: {
|
|
11586
|
+
ext?: CodaiRequestExtensions;
|
|
11587
|
+
signal?: AbortSignal;
|
|
11588
|
+
}): AsyncGenerator<SpeechStreamEvent, void, undefined>;
|
|
10399
11589
|
}
|
|
10400
11590
|
|
|
10401
11591
|
/** `POST /v1/chat/completions` — OpenAI-compatible completions (JSON + SSE). */
|
|
@@ -10513,7 +11703,7 @@ type Device = Schema<'DeviceListItem'>;
|
|
|
10513
11703
|
type DevicePatch = Mutable<Body<'updateDevice'>>;
|
|
10514
11704
|
type DevicePatched = Reply<'updateDevice'>;
|
|
10515
11705
|
type DispatchInbox = Reply<'getMyDispatchInbox'>;
|
|
10516
|
-
type CallOpts$
|
|
11706
|
+
type CallOpts$b = {
|
|
10517
11707
|
ext?: CodaiRequestExtensions;
|
|
10518
11708
|
signal?: AbortSignal;
|
|
10519
11709
|
};
|
|
@@ -10521,18 +11711,23 @@ declare class Devices {
|
|
|
10521
11711
|
private readonly http;
|
|
10522
11712
|
constructor(http: HttpClient);
|
|
10523
11713
|
/** `GET /v1/devices` — most recently seen first. */
|
|
10524
|
-
list(opts?: CallOpts$
|
|
11714
|
+
list(opts?: CallOpts$b): Promise<Device[]>;
|
|
10525
11715
|
/** `PATCH /v1/devices/{id}` — push token and/or capabilities. */
|
|
10526
|
-
update(id: string, body: DevicePatch, opts?: CallOpts$
|
|
11716
|
+
update(id: string, body: DevicePatch, opts?: CallOpts$b): Promise<DevicePatched>;
|
|
10527
11717
|
/** `DELETE /v1/devices/{id}` */
|
|
10528
|
-
delete(id: string, opts?: CallOpts$
|
|
11718
|
+
delete(id: string, opts?: CallOpts$b): Promise<Reply<'deleteDevice'>>;
|
|
11719
|
+
/**
|
|
11720
|
+
* `POST /v1/keys/self/revoke` — the API key this client uses revokes ITSELF (sign out).
|
|
11721
|
+
* Every later call with it fails with 401.
|
|
11722
|
+
*/
|
|
11723
|
+
revokeSelfKey(opts?: CallOpts$b): Promise<Reply<'revokeSelfKey'>>;
|
|
10529
11724
|
/**
|
|
10530
11725
|
* `GET /v1/devices/me/dispatch?limit=` — pending controls dispatched at the
|
|
10531
11726
|
* calling device (`x-codai-device` required) across all owned sessions.
|
|
10532
11727
|
*/
|
|
10533
11728
|
dispatchInbox(query?: {
|
|
10534
11729
|
limit?: number;
|
|
10535
|
-
}, opts?: CallOpts$
|
|
11730
|
+
}, opts?: CallOpts$b): Promise<DispatchInbox>;
|
|
10536
11731
|
}
|
|
10537
11732
|
|
|
10538
11733
|
/** `POST /v1/embeddings`. */
|
|
@@ -10588,7 +11783,7 @@ type EnvironmentTaskList = Reply<'listEnvironmentTasks'>;
|
|
|
10588
11783
|
type EnvironmentTaskCreateBody = Mutable<Body<'createEnvironmentTask'>>;
|
|
10589
11784
|
type EnvironmentTaskCreated = Reply<'createEnvironmentTask'>;
|
|
10590
11785
|
type EnvironmentTaskDetail = Reply<'getEnvironmentTask'>;
|
|
10591
|
-
type CallOpts$
|
|
11786
|
+
type CallOpts$a = {
|
|
10592
11787
|
ext?: CodaiRequestExtensions;
|
|
10593
11788
|
signal?: AbortSignal;
|
|
10594
11789
|
};
|
|
@@ -10596,48 +11791,48 @@ declare class EnvironmentMembers {
|
|
|
10596
11791
|
private readonly http;
|
|
10597
11792
|
constructor(http: HttpClient);
|
|
10598
11793
|
/** `GET /v1/environments/{id}/members` — any role. */
|
|
10599
|
-
list(envId: string, opts?: CallOpts$
|
|
11794
|
+
list(envId: string, opts?: CallOpts$a): Promise<EnvironmentMember[]>;
|
|
10600
11795
|
/** `POST /v1/environments/{id}/members` — exactly one of `user_id` / `email`. */
|
|
10601
|
-
add(envId: string, body: EnvironmentAddMemberBody, opts?: CallOpts$
|
|
11796
|
+
add(envId: string, body: EnvironmentAddMemberBody, opts?: CallOpts$a): Promise<EnvironmentMemberCreated>;
|
|
10602
11797
|
/** `PUT /v1/environments/{id}/members/me/ssh-key` — one `authorized_keys` line. */
|
|
10603
|
-
setSshKey(envId: string, publicKey: string, opts?: CallOpts$
|
|
11798
|
+
setSshKey(envId: string, publicKey: string, opts?: CallOpts$a): Promise<Reply<'setMyEnvironmentSshKey'>>;
|
|
10604
11799
|
/** `PATCH /v1/environments/{id}/members/{userId}` — 409 `last_owner` on demoting the last owner. */
|
|
10605
|
-
setRole(envId: string, userId: string, role: EnvironmentRole, opts?: CallOpts$
|
|
11800
|
+
setRole(envId: string, userId: string, role: EnvironmentRole, opts?: CallOpts$a): Promise<Reply<'setEnvironmentMemberRole'>['member']>;
|
|
10606
11801
|
/** `DELETE /v1/environments/{id}/members/{userId}` — pass your own id to leave. */
|
|
10607
|
-
remove(envId: string, userId: string, opts?: CallOpts$
|
|
11802
|
+
remove(envId: string, userId: string, opts?: CallOpts$a): Promise<Reply<'removeEnvironmentMember'>>;
|
|
10608
11803
|
/** `POST /v1/environments/{id}/members/me/ssh-cert` — 12 h OpenSSH user certificate for your key. */
|
|
10609
|
-
sshCert(envId: string, body: EnvironmentSshCertBody, opts?: CallOpts$
|
|
11804
|
+
sshCert(envId: string, body: EnvironmentSshCertBody, opts?: CallOpts$a): Promise<EnvironmentSshCert>;
|
|
10610
11805
|
}
|
|
10611
11806
|
/** `/v1/environments/{id}/tasks` — fire-and-forget agent tasks run in the environment. */
|
|
10612
11807
|
declare class EnvironmentTasks {
|
|
10613
11808
|
private readonly http;
|
|
10614
11809
|
constructor(http: HttpClient);
|
|
10615
11810
|
/** `GET /v1/environments/{id}/tasks` */
|
|
10616
|
-
list(envId: string, opts?: CallOpts$
|
|
11811
|
+
list(envId: string, opts?: CallOpts$a): Promise<EnvironmentTaskList>;
|
|
10617
11812
|
/** `POST /v1/environments/{id}/tasks` — queued; you get a notification when it finishes. */
|
|
10618
|
-
create(envId: string, body: EnvironmentTaskCreateBody, opts?: CallOpts$
|
|
11813
|
+
create(envId: string, body: EnvironmentTaskCreateBody, opts?: CallOpts$a): Promise<EnvironmentTaskCreated>;
|
|
10619
11814
|
/** `GET /v1/environments/{id}/tasks/{taskId}` */
|
|
10620
|
-
get(envId: string, taskId: string, opts?: CallOpts$
|
|
11815
|
+
get(envId: string, taskId: string, opts?: CallOpts$a): Promise<EnvironmentTaskDetail>;
|
|
10621
11816
|
}
|
|
10622
11817
|
declare class EnvironmentPorts {
|
|
10623
11818
|
private readonly http;
|
|
10624
11819
|
constructor(http: HttpClient);
|
|
10625
11820
|
/** `GET /v1/environments/{id}/ports` — published (forwarded) ports. */
|
|
10626
|
-
list(envId: string, opts?: CallOpts$
|
|
11821
|
+
list(envId: string, opts?: CallOpts$a): Promise<EnvironmentPort[]>;
|
|
10627
11822
|
/** `PUT /v1/environments/{id}/ports/{port}` — publish or change visibility (upsert). */
|
|
10628
|
-
set(envId: string, port: number, body: EnvironmentPortBody, opts?: CallOpts$
|
|
11823
|
+
set(envId: string, port: number, body: EnvironmentPortBody, opts?: CallOpts$a): Promise<EnvironmentPort>;
|
|
10629
11824
|
/** `DELETE /v1/environments/{id}/ports/{port}` — unpublish. */
|
|
10630
|
-
remove(envId: string, port: number, opts?: CallOpts$
|
|
11825
|
+
remove(envId: string, port: number, opts?: CallOpts$a): Promise<Reply<'removeEnvironmentPort'>>;
|
|
10631
11826
|
}
|
|
10632
11827
|
declare class EnvironmentSecrets {
|
|
10633
11828
|
private readonly http;
|
|
10634
11829
|
constructor(http: HttpClient);
|
|
10635
11830
|
/** `GET /v1/environments/{id}/secrets` — names and timestamps only, never values. */
|
|
10636
|
-
list(envId: string, opts?: CallOpts$
|
|
11831
|
+
list(envId: string, opts?: CallOpts$a): Promise<EnvironmentSecret[]>;
|
|
10637
11832
|
/** `PUT /v1/environments/{id}/secrets/{name}` — upsert; `name` is `ENV_STYLE`. */
|
|
10638
|
-
set(envId: string, name: string, value: string, opts?: CallOpts$
|
|
11833
|
+
set(envId: string, name: string, value: string, opts?: CallOpts$a): Promise<EnvironmentSecretSet>;
|
|
10639
11834
|
/** `DELETE /v1/environments/{id}/secrets/{name}` */
|
|
10640
|
-
remove(envId: string, name: string, opts?: CallOpts$
|
|
11835
|
+
remove(envId: string, name: string, opts?: CallOpts$a): Promise<Reply<'removeEnvironmentSecret'>>;
|
|
10641
11836
|
}
|
|
10642
11837
|
declare class Environments {
|
|
10643
11838
|
private readonly http;
|
|
@@ -10647,39 +11842,39 @@ declare class Environments {
|
|
|
10647
11842
|
readonly tasks: EnvironmentTasks;
|
|
10648
11843
|
constructor(http: HttpClient);
|
|
10649
11844
|
/** `GET /v1/environments/{id}/ssh-ca` — CA public keys to trust (`@cert-authority` lines). */
|
|
10650
|
-
sshCa(envId: string, opts?: CallOpts$
|
|
11845
|
+
sshCa(envId: string, opts?: CallOpts$a): Promise<EnvironmentSshCa>;
|
|
10651
11846
|
/** `GET /v1/environments?project_id=&for_user_id=me` — newest first, every state. */
|
|
10652
|
-
list(query?: ListEnvironmentsQuery, opts?: CallOpts$
|
|
11847
|
+
list(query?: ListEnvironmentsQuery, opts?: CallOpts$a): Promise<Environment[]>;
|
|
10653
11848
|
/**
|
|
10654
11849
|
* `POST /v1/environments` — `byo` starts `pending`; managed providers start
|
|
10655
11850
|
* `creating`. 409 `already_has_env` in a `vm_per_dev` project (the error
|
|
10656
11851
|
* body carries the `environment_id` to reuse).
|
|
10657
11852
|
*/
|
|
10658
|
-
create(body: EnvironmentCreateBody, opts?: CallOpts$
|
|
11853
|
+
create(body: EnvironmentCreateBody, opts?: CallOpts$a): Promise<Environment>;
|
|
10659
11854
|
/**
|
|
10660
11855
|
* `POST /v1/environments/enroll` — daemon side. The one-time `codai_env_…`
|
|
10661
11856
|
* token in the body is the only credential; the client's API key header is
|
|
10662
11857
|
* ignored by this route. Managed environments additionally receive a
|
|
10663
11858
|
* freshly minted `api_key`, returned exactly once.
|
|
10664
11859
|
*/
|
|
10665
|
-
enroll(body: EnvironmentEnrollBody, opts?: CallOpts$
|
|
11860
|
+
enroll(body: EnvironmentEnrollBody, opts?: CallOpts$a): Promise<EnvironmentEnrolled>;
|
|
10666
11861
|
/** `GET /v1/environments/{id}` — environment, your role, members, ports, recent events. */
|
|
10667
|
-
get(envId: string, opts?: CallOpts$
|
|
11862
|
+
get(envId: string, opts?: CallOpts$a): Promise<EnvironmentDetail>;
|
|
10668
11863
|
/** `PATCH /v1/environments/{id}` — `name` and/or `idle_timeout_minutes` (5..1440). */
|
|
10669
|
-
update(envId: string, body: EnvironmentPatchBody, opts?: CallOpts$
|
|
11864
|
+
update(envId: string, body: EnvironmentPatchBody, opts?: CallOpts$a): Promise<Environment>;
|
|
10670
11865
|
/** `POST /v1/environments/{id}/start` — managed providers only (`stopped` → `starting`). */
|
|
10671
|
-
start(envId: string, opts?: CallOpts$
|
|
11866
|
+
start(envId: string, opts?: CallOpts$a): Promise<EnvironmentTransition>;
|
|
10672
11867
|
/** `POST /v1/environments/{id}/stop` — managed providers only (`running` → `stopping`). */
|
|
10673
|
-
stop(envId: string, opts?: CallOpts$
|
|
11868
|
+
stop(envId: string, opts?: CallOpts$a): Promise<EnvironmentTransition>;
|
|
10674
11869
|
/** `POST /v1/environments/{id}/archive` — keeps history, releases the machine. */
|
|
10675
|
-
archive(envId: string, opts?: CallOpts$
|
|
11870
|
+
archive(envId: string, opts?: CallOpts$a): Promise<EnvironmentTransition>;
|
|
10676
11871
|
/** `POST /v1/environments/{id}/destroy` — owner only; terminal. */
|
|
10677
|
-
destroy(envId: string, opts?: CallOpts$
|
|
11872
|
+
destroy(envId: string, opts?: CallOpts$a): Promise<EnvironmentTransition>;
|
|
10678
11873
|
/**
|
|
10679
11874
|
* `POST /v1/environments/{id}/enroll-token` — `byo` only; a 30-minute
|
|
10680
11875
|
* one-time token for `enroll()`. Minting again replaces the previous one.
|
|
10681
11876
|
*/
|
|
10682
|
-
enrollToken(envId: string, opts?: CallOpts$
|
|
11877
|
+
enrollToken(envId: string, opts?: CallOpts$a): Promise<EnvironmentEnrollToken>;
|
|
10683
11878
|
private transition;
|
|
10684
11879
|
}
|
|
10685
11880
|
|
|
@@ -10718,7 +11913,7 @@ type HostExecBody = Mutable<Body<'execOnHost'>>;
|
|
|
10718
11913
|
type HostExecResponse = Reply<'execOnHost'>;
|
|
10719
11914
|
type HostExecRequest = Schema<'HostExecRequest'>;
|
|
10720
11915
|
type HostExecResultBody = Mutable<Body<'postHostExecResult'>>;
|
|
10721
|
-
type CallOpts$
|
|
11916
|
+
type CallOpts$9 = {
|
|
10722
11917
|
ext?: CodaiRequestExtensions;
|
|
10723
11918
|
signal?: AbortSignal;
|
|
10724
11919
|
};
|
|
@@ -10745,7 +11940,7 @@ declare class Hosts {
|
|
|
10745
11940
|
private readonly http;
|
|
10746
11941
|
constructor(http: HttpClient);
|
|
10747
11942
|
/** `GET /v1/hosts` — your devices currently connected as hosts. */
|
|
10748
|
-
list(opts?: CallOpts$
|
|
11943
|
+
list(opts?: CallOpts$9): Promise<HostPresence[]>;
|
|
10749
11944
|
/**
|
|
10750
11945
|
* `POST /v1/hosts/{deviceId}/exec` — run one op on a connected host and
|
|
10751
11946
|
* block until it answers (or `timeout_ms`, default 60 s).
|
|
@@ -10753,9 +11948,9 @@ declare class Hosts {
|
|
|
10753
11948
|
exec(deviceId: string, op: HostOp, args?: Record<string, unknown>, extra?: {
|
|
10754
11949
|
timeoutMs?: number;
|
|
10755
11950
|
label?: string;
|
|
10756
|
-
} & CallOpts$
|
|
11951
|
+
} & CallOpts$9): Promise<HostExecResponse>;
|
|
10757
11952
|
/** `POST /v1/hosts/exec/{reqId}/result` — host side: deliver an exec result. */
|
|
10758
|
-
postResult(reqId: string, body: HostExecResultBody, opts?: CallOpts$
|
|
11953
|
+
postResult(reqId: string, body: HostExecResultBody, opts?: CallOpts$9): Promise<Reply<'postHostExecResult'>>;
|
|
10759
11954
|
/**
|
|
10760
11955
|
* `GET /v1/hosts/stream?os=&hostname=&roots=` — host side: announce this
|
|
10761
11956
|
* device and receive `hello` / `ping` / `exec` events. Closed by the server
|
|
@@ -10765,7 +11960,56 @@ declare class Hosts {
|
|
|
10765
11960
|
os?: string;
|
|
10766
11961
|
hostname?: string;
|
|
10767
11962
|
roots?: string[];
|
|
10768
|
-
}, opts?: CallOpts$
|
|
11963
|
+
}, opts?: CallOpts$9): AsyncGenerator<HostStreamEvent, void, undefined>;
|
|
11964
|
+
}
|
|
11965
|
+
|
|
11966
|
+
/**
|
|
11967
|
+
* `POST /v1/images/generations` and `POST /v1/images/edits` — Gemini image models on Vertex AI.
|
|
11968
|
+
* `codai-image` (default, gemini-3.1-flash-image, EU), `codai-image-fast`, `codai-image-pro`.
|
|
11969
|
+
* Output from the EU endpoint carries C2PA credentials + SynthID: keep the bytes as returned.
|
|
11970
|
+
*/
|
|
11971
|
+
|
|
11972
|
+
type ImagesRequest = Mutable<Body<'createImage'>>;
|
|
11973
|
+
type ImagesResponse = Reply<'createImage'>;
|
|
11974
|
+
type ImageEditRequest = Mutable<Body<'editImage'>>;
|
|
11975
|
+
interface ImagesResult {
|
|
11976
|
+
/** Decoded image bytes, one per generated image (see `mimeTypes`). */
|
|
11977
|
+
images: Uint8Array[];
|
|
11978
|
+
/** MIME type of each entry in `images` (usually `image/png`). */
|
|
11979
|
+
mimeTypes: string[];
|
|
11980
|
+
raw: ImagesResponse;
|
|
11981
|
+
/** Upstream model that produced the images (`x-codai-routed-to`). */
|
|
11982
|
+
routedTo: string | null;
|
|
11983
|
+
/** Vertex location that processed the request, `eu` or `global` (`x-codai-data-region`). */
|
|
11984
|
+
dataRegion: string | null;
|
|
11985
|
+
/** Usage-based charge for this request in micro-USD (`x-codai-cost-micro-usd`). */
|
|
11986
|
+
costMicroUsd: number | null;
|
|
11987
|
+
headers: Headers;
|
|
11988
|
+
}
|
|
11989
|
+
declare class Images {
|
|
11990
|
+
private readonly http;
|
|
11991
|
+
constructor(http: HttpClient);
|
|
11992
|
+
/**
|
|
11993
|
+
* Generate images. Needs a real API key (ephemeral tokens are rejected).
|
|
11994
|
+
* Pass `reference_images` to keep a logo/palette/product consistent.
|
|
11995
|
+
*/
|
|
11996
|
+
generate(body: Omit<ImagesRequest, 'model'> & {
|
|
11997
|
+
model?: string;
|
|
11998
|
+
}, opts?: {
|
|
11999
|
+
ext?: CodaiRequestExtensions;
|
|
12000
|
+
signal?: AbortSignal;
|
|
12001
|
+
}): Promise<ImagesResult>;
|
|
12002
|
+
/**
|
|
12003
|
+
* Edit one or more input images (`image`: one `{ b64_json, mime_type }` or an array of up to 14)
|
|
12004
|
+
* from a text instruction. JSON body; `mask` is not supported — describe the region in `prompt`.
|
|
12005
|
+
*/
|
|
12006
|
+
edit(body: Omit<ImageEditRequest, 'model'> & {
|
|
12007
|
+
model?: string;
|
|
12008
|
+
}, opts?: {
|
|
12009
|
+
ext?: CodaiRequestExtensions;
|
|
12010
|
+
signal?: AbortSignal;
|
|
12011
|
+
}): Promise<ImagesResult>;
|
|
12012
|
+
private post;
|
|
10769
12013
|
}
|
|
10770
12014
|
|
|
10771
12015
|
/** `POST /v1/messages` — Anthropic Messages wire (JSON + named-event SSE). */
|
|
@@ -10839,7 +12083,7 @@ type Org = Schema<'OrgWithRole'>;
|
|
|
10839
12083
|
type OrgMember = Schema<'OrgMember'>;
|
|
10840
12084
|
type OrgRole = Schema<'OrgRole'>;
|
|
10841
12085
|
type OrgAddMemberBody = Mutable<Body<'addOrgMember'>>;
|
|
10842
|
-
type CallOpts$
|
|
12086
|
+
type CallOpts$8 = {
|
|
10843
12087
|
ext?: CodaiRequestExtensions;
|
|
10844
12088
|
signal?: AbortSignal;
|
|
10845
12089
|
};
|
|
@@ -10847,20 +12091,20 @@ declare class OrgMembers {
|
|
|
10847
12091
|
private readonly http;
|
|
10848
12092
|
constructor(http: HttpClient);
|
|
10849
12093
|
/** `GET /v1/orgs/{id}/members` */
|
|
10850
|
-
list(orgId: string, opts?: CallOpts$
|
|
12094
|
+
list(orgId: string, opts?: CallOpts$8): Promise<OrgMember[]>;
|
|
10851
12095
|
/** `POST /v1/orgs/{id}/members` — add or re-role (owner/admin). */
|
|
10852
|
-
add(orgId: string, body: OrgAddMemberBody, opts?: CallOpts$
|
|
12096
|
+
add(orgId: string, body: OrgAddMemberBody, opts?: CallOpts$8): Promise<Reply<'addOrgMember', 201>>;
|
|
10853
12097
|
/** `DELETE /v1/orgs/{id}/members/{userId}` */
|
|
10854
|
-
remove(orgId: string, userId: string, opts?: CallOpts$
|
|
12098
|
+
remove(orgId: string, userId: string, opts?: CallOpts$8): Promise<Reply<'removeOrgMember'>>;
|
|
10855
12099
|
}
|
|
10856
12100
|
declare class Orgs {
|
|
10857
12101
|
private readonly http;
|
|
10858
12102
|
readonly members: OrgMembers;
|
|
10859
12103
|
constructor(http: HttpClient);
|
|
10860
12104
|
/** `POST /v1/orgs` */
|
|
10861
|
-
create(name: string, opts?: CallOpts$
|
|
12105
|
+
create(name: string, opts?: CallOpts$8): Promise<Org>;
|
|
10862
12106
|
/** `GET /v1/orgs` */
|
|
10863
|
-
list(opts?: CallOpts$
|
|
12107
|
+
list(opts?: CallOpts$8): Promise<Org[]>;
|
|
10864
12108
|
}
|
|
10865
12109
|
|
|
10866
12110
|
/** `/v1/projects/*` — projects (a repo + isolation policy) that group environments. */
|
|
@@ -10870,7 +12114,7 @@ type ProjectIsolation = Schema<'ProjectIsolation'>;
|
|
|
10870
12114
|
type ProjectCreateBody = Mutable<Body<'createProject'>>;
|
|
10871
12115
|
type ProjectPatchBody = Mutable<Body<'updateProject'>>;
|
|
10872
12116
|
type ProjectDetail = Reply<'getProject'>;
|
|
10873
|
-
type CallOpts$
|
|
12117
|
+
type CallOpts$7 = {
|
|
10874
12118
|
ext?: CodaiRequestExtensions;
|
|
10875
12119
|
signal?: AbortSignal;
|
|
10876
12120
|
};
|
|
@@ -10878,15 +12122,154 @@ declare class Projects {
|
|
|
10878
12122
|
private readonly http;
|
|
10879
12123
|
constructor(http: HttpClient);
|
|
10880
12124
|
/** `GET /v1/projects` — projects you own plus those of your orgs, newest first. */
|
|
10881
|
-
list(opts?: CallOpts$
|
|
12125
|
+
list(opts?: CallOpts$7): Promise<Project[]>;
|
|
10882
12126
|
/** `POST /v1/projects` — 409 `slug_taken` when the slug is already yours. */
|
|
10883
|
-
create(body: ProjectCreateBody, opts?: CallOpts$
|
|
12127
|
+
create(body: ProjectCreateBody, opts?: CallOpts$7): Promise<Project>;
|
|
10884
12128
|
/** `GET /v1/projects/{id}` — the project plus every environment in it. */
|
|
10885
|
-
get(projectId: string, opts?: CallOpts$
|
|
12129
|
+
get(projectId: string, opts?: CallOpts$7): Promise<ProjectDetail>;
|
|
10886
12130
|
/** `PATCH /v1/projects/{id}` — owner or org owner/admin; the slug cannot change. */
|
|
10887
|
-
update(projectId: string, body: ProjectPatchBody, opts?: CallOpts$
|
|
12131
|
+
update(projectId: string, body: ProjectPatchBody, opts?: CallOpts$7): Promise<Project>;
|
|
10888
12132
|
/** `DELETE /v1/projects/{id}` — 409 `project_has_environments` until all are destroyed. */
|
|
10889
|
-
delete(projectId: string, opts?: CallOpts$
|
|
12133
|
+
delete(projectId: string, opts?: CallOpts$7): Promise<Reply<'deleteProject'>>;
|
|
12134
|
+
}
|
|
12135
|
+
|
|
12136
|
+
/**
|
|
12137
|
+
* `wss://…/v1/realtime` — dependency-free realtime client (live transcription and the OpenAI
|
|
12138
|
+
* Realtime protocol lanes). Not an OpenAPI operation (OpenAPI cannot describe WebSockets), so it is
|
|
12139
|
+
* outside the `OPERATION_METHODS` parity table.
|
|
12140
|
+
*
|
|
12141
|
+
* const live = codai.realtime.connect({ model: 'codai-transcribe-live', language: 'ro', token });
|
|
12142
|
+
* live.appendAudio(pcm16At24kHz); // Int16Array | ArrayBuffer | Uint8Array
|
|
12143
|
+
* for await (const ev of live) {
|
|
12144
|
+
* if (ev.type === 'conversation.item.input_audio_transcription.delta') draw(ev.delta);
|
|
12145
|
+
* }
|
|
12146
|
+
*
|
|
12147
|
+
* Uses the global `WebSocket` (browsers, Node ≥ 22, Deno, Bun) or an injected constructor.
|
|
12148
|
+
* - Browser path: pass an ephemeral `token` (scope `realtime` or `live`); it travels as `?key=`.
|
|
12149
|
+
* Raw `codai_` keys in the query string are refused by the gateway (close 4401).
|
|
12150
|
+
* - Server path: pass `apiKey` (or a token) with a WebSocket constructor that accepts headers
|
|
12151
|
+
* (e.g. `ws`); it is sent as `Authorization: Bearer` on the upgrade.
|
|
12152
|
+
*/
|
|
12153
|
+
/** Minimal WebSocket surface (browser `WebSocket`, Node 22 global, or the `ws` package). */
|
|
12154
|
+
interface RealtimeSocket {
|
|
12155
|
+
readonly readyState: number;
|
|
12156
|
+
binaryType?: string;
|
|
12157
|
+
send(data: string | ArrayBuffer | ArrayBufferView): void;
|
|
12158
|
+
close(code?: number, reason?: string): void;
|
|
12159
|
+
onopen: ((ev: unknown) => void) | null;
|
|
12160
|
+
onmessage: ((ev: {
|
|
12161
|
+
data: unknown;
|
|
12162
|
+
}) => void) | null;
|
|
12163
|
+
onclose: ((ev: {
|
|
12164
|
+
code: number;
|
|
12165
|
+
reason: string;
|
|
12166
|
+
}) => void) | null;
|
|
12167
|
+
onerror: ((ev: unknown) => void) | null;
|
|
12168
|
+
}
|
|
12169
|
+
/** `new (url, protocols?, options?)` — the third argument is used for headers by `ws`. */
|
|
12170
|
+
type RealtimeSocketCtor = new (url: string, protocols?: string | string[], options?: {
|
|
12171
|
+
headers?: Record<string, string>;
|
|
12172
|
+
}) => RealtimeSocket;
|
|
12173
|
+
type RealtimeModel = 'codai-transcribe-live' | 'codai-realtime' | 'codai-voice' | (string & Record<never, never>);
|
|
12174
|
+
interface RealtimeConnectOptions {
|
|
12175
|
+
/** Default `codai-transcribe-live`. */
|
|
12176
|
+
model?: RealtimeModel;
|
|
12177
|
+
/** Language hint (`ro`, `en`, …). `ro` uses the Deepgram Nova-3 lane when the gateway has it. */
|
|
12178
|
+
language?: string;
|
|
12179
|
+
/** Ephemeral token (scope `realtime` or `live`) — sent as `?key=`. Required in browsers. */
|
|
12180
|
+
token?: string;
|
|
12181
|
+
/** Raw API key — sent as `Authorization: Bearer` (needs a ctor that supports headers). */
|
|
12182
|
+
apiKey?: string;
|
|
12183
|
+
/** Conversation id recorded on the usage row (`?session_id=`). */
|
|
12184
|
+
sessionId?: string;
|
|
12185
|
+
/**
|
|
12186
|
+
* First frame sent on open. Default for `codai-transcribe-live`: a transcription
|
|
12187
|
+
* `session.update` (PCM 24 kHz, `language` when set). Pass `null` to send nothing.
|
|
12188
|
+
*/
|
|
12189
|
+
sessionUpdate?: Record<string, unknown> | null;
|
|
12190
|
+
/** Injectable WebSocket constructor (tests, `ws` on older Node). Defaults to `globalThis.WebSocket`. */
|
|
12191
|
+
WebSocket?: RealtimeSocketCtor;
|
|
12192
|
+
/** Override the gateway base URL (default: the client's `baseUrl`). */
|
|
12193
|
+
baseUrl?: string;
|
|
12194
|
+
}
|
|
12195
|
+
/** Typed subset of server events; anything else arrives as `RealtimeUnknownEvent`. */
|
|
12196
|
+
type RealtimeEvent = {
|
|
12197
|
+
type: 'session.created' | 'session.updated';
|
|
12198
|
+
session?: Record<string, unknown>;
|
|
12199
|
+
event_id?: string;
|
|
12200
|
+
} | {
|
|
12201
|
+
type: 'conversation.item.input_audio_transcription.delta';
|
|
12202
|
+
item_id: string;
|
|
12203
|
+
content_index?: number;
|
|
12204
|
+
delta: string;
|
|
12205
|
+
event_id?: string;
|
|
12206
|
+
} | {
|
|
12207
|
+
type: 'conversation.item.input_audio_transcription.completed';
|
|
12208
|
+
item_id: string;
|
|
12209
|
+
content_index?: number;
|
|
12210
|
+
transcript: string;
|
|
12211
|
+
event_id?: string;
|
|
12212
|
+
} | {
|
|
12213
|
+
type: 'input_audio_buffer.committed';
|
|
12214
|
+
item_id?: string;
|
|
12215
|
+
previous_item_id?: string | null;
|
|
12216
|
+
} | {
|
|
12217
|
+
type: 'input_audio_buffer.cleared';
|
|
12218
|
+
} | {
|
|
12219
|
+
type: 'error';
|
|
12220
|
+
error: {
|
|
12221
|
+
type?: string;
|
|
12222
|
+
code?: string;
|
|
12223
|
+
message?: string;
|
|
12224
|
+
};
|
|
12225
|
+
}
|
|
12226
|
+
/** Emitted by the client itself when the socket closes (always the last event). */
|
|
12227
|
+
| {
|
|
12228
|
+
type: 'close';
|
|
12229
|
+
code: number;
|
|
12230
|
+
reason: string;
|
|
12231
|
+
};
|
|
12232
|
+
type RealtimeUnknownEvent = {
|
|
12233
|
+
type: string;
|
|
12234
|
+
[k: string]: unknown;
|
|
12235
|
+
};
|
|
12236
|
+
type RealtimeAnyEvent = RealtimeEvent | RealtimeUnknownEvent;
|
|
12237
|
+
type Listener = (ev: RealtimeAnyEvent) => void;
|
|
12238
|
+
/** A live realtime session: async-iterable of events + `on()` listeners. */
|
|
12239
|
+
declare class RealtimeSession implements AsyncIterable<RealtimeAnyEvent> {
|
|
12240
|
+
readonly socket: RealtimeSocket;
|
|
12241
|
+
private readonly listeners;
|
|
12242
|
+
private readonly queue;
|
|
12243
|
+
private readonly waiters;
|
|
12244
|
+
private readonly outbox;
|
|
12245
|
+
private closed;
|
|
12246
|
+
/** Resolves when the socket is open (rejects if it closes first). */
|
|
12247
|
+
readonly ready: Promise<void>;
|
|
12248
|
+
constructor(socket: RealtimeSocket, firstFrame: Record<string, unknown> | null);
|
|
12249
|
+
/** Listen for one event type (`'*'` = every event). Returns an unsubscribe function. */
|
|
12250
|
+
on(type: string, fn: Listener): () => void;
|
|
12251
|
+
/** Send any client event (JSON). Queued until the socket opens. */
|
|
12252
|
+
send(event: Record<string, unknown>): void;
|
|
12253
|
+
/** Append PCM16 little-endian mono audio (24 kHz for `codai-transcribe-live`). */
|
|
12254
|
+
appendAudio(audio: Int16Array | ArrayBuffer | Uint8Array): void;
|
|
12255
|
+
/** Close the current utterance: the server answers with one `...transcription.completed`. */
|
|
12256
|
+
commit(): void;
|
|
12257
|
+
/** Drop audio the server holds for the current utterance. */
|
|
12258
|
+
clear(): void;
|
|
12259
|
+
close(code?: number, reason?: string): void;
|
|
12260
|
+
[Symbol.asyncIterator](): AsyncIterator<RealtimeAnyEvent>;
|
|
12261
|
+
private emit;
|
|
12262
|
+
}
|
|
12263
|
+
/** Build the `wss://…/v1/realtime?…` URL (exported for tests and custom transports). */
|
|
12264
|
+
declare function realtimeUrl(baseUrl: string, opts: RealtimeConnectOptions): string;
|
|
12265
|
+
declare class Realtime {
|
|
12266
|
+
private readonly defaults;
|
|
12267
|
+
constructor(defaults: {
|
|
12268
|
+
baseUrl: string;
|
|
12269
|
+
apiKey?: string;
|
|
12270
|
+
});
|
|
12271
|
+
/** Open a realtime session. Returns immediately; `await session.ready` to wait for the socket. */
|
|
12272
|
+
connect(opts?: RealtimeConnectOptions): RealtimeSession;
|
|
10890
12273
|
}
|
|
10891
12274
|
|
|
10892
12275
|
/**
|
|
@@ -10894,7 +12277,7 @@ declare class Projects {
|
|
|
10894
12277
|
* Do not make direct changes to the file.
|
|
10895
12278
|
*/
|
|
10896
12279
|
type paths = {
|
|
10897
|
-
readonly
|
|
12280
|
+
readonly "/health": {
|
|
10898
12281
|
readonly parameters: {
|
|
10899
12282
|
readonly query?: never;
|
|
10900
12283
|
readonly header?: never;
|
|
@@ -10906,7 +12289,7 @@ type paths = {
|
|
|
10906
12289
|
* @description Returns `{ ok: true, service: "codai-resolve" }` when the HTTP process is up. Does not
|
|
10907
12290
|
* touch the database. The path is `/health` (not `/healthz`, which Google Frontend reserves).
|
|
10908
12291
|
*/
|
|
10909
|
-
readonly get: operations[
|
|
12292
|
+
readonly get: operations["resolveHealth"];
|
|
10910
12293
|
readonly put?: never;
|
|
10911
12294
|
readonly post?: never;
|
|
10912
12295
|
readonly delete?: never;
|
|
@@ -10915,7 +12298,7 @@ type paths = {
|
|
|
10915
12298
|
readonly patch?: never;
|
|
10916
12299
|
readonly trace?: never;
|
|
10917
12300
|
};
|
|
10918
|
-
readonly
|
|
12301
|
+
readonly "/v1/resolve/attestations/{id}": {
|
|
10919
12302
|
readonly parameters: {
|
|
10920
12303
|
readonly query?: never;
|
|
10921
12304
|
readonly header?: never;
|
|
@@ -10931,7 +12314,7 @@ type paths = {
|
|
|
10931
12314
|
* the URL only with people who may see the patch. `kind` is always
|
|
10932
12315
|
* `codai.resolve.attestation.v0`.
|
|
10933
12316
|
*/
|
|
10934
|
-
readonly get: operations[
|
|
12317
|
+
readonly get: operations["getResolveAttestation"];
|
|
10935
12318
|
readonly put?: never;
|
|
10936
12319
|
readonly post?: never;
|
|
10937
12320
|
readonly delete?: never;
|
|
@@ -10940,7 +12323,7 @@ type paths = {
|
|
|
10940
12323
|
readonly patch?: never;
|
|
10941
12324
|
readonly trace?: never;
|
|
10942
12325
|
};
|
|
10943
|
-
readonly
|
|
12326
|
+
readonly "/v1/resolve/balance": {
|
|
10944
12327
|
readonly parameters: {
|
|
10945
12328
|
readonly query?: never;
|
|
10946
12329
|
readonly header?: never;
|
|
@@ -10953,7 +12336,7 @@ type paths = {
|
|
|
10953
12336
|
* jobs), whether the €1 intro price is still available (no verified paid job yet and no
|
|
10954
12337
|
* other intro job in flight) and the wallet balance in EUR micros.
|
|
10955
12338
|
*/
|
|
10956
|
-
readonly get: operations[
|
|
12339
|
+
readonly get: operations["getResolveBalance"];
|
|
10957
12340
|
readonly put?: never;
|
|
10958
12341
|
readonly post?: never;
|
|
10959
12342
|
readonly delete?: never;
|
|
@@ -10962,7 +12345,7 @@ type paths = {
|
|
|
10962
12345
|
readonly patch?: never;
|
|
10963
12346
|
readonly trace?: never;
|
|
10964
12347
|
};
|
|
10965
|
-
readonly
|
|
12348
|
+
readonly "/v1/resolve/jobs": {
|
|
10966
12349
|
readonly parameters: {
|
|
10967
12350
|
readonly query?: never;
|
|
10968
12351
|
readonly header?: never;
|
|
@@ -10988,14 +12371,14 @@ type paths = {
|
|
|
10988
12371
|
* otherwise valid payload. The free-tier claim is atomic per user, so parallel submissions
|
|
10989
12372
|
* across several keys cannot exceed the 3 free resolves.
|
|
10990
12373
|
*/
|
|
10991
|
-
readonly post: operations[
|
|
12374
|
+
readonly post: operations["createResolveJob"];
|
|
10992
12375
|
readonly delete?: never;
|
|
10993
12376
|
readonly options?: never;
|
|
10994
12377
|
readonly head?: never;
|
|
10995
12378
|
readonly patch?: never;
|
|
10996
12379
|
readonly trace?: never;
|
|
10997
12380
|
};
|
|
10998
|
-
readonly
|
|
12381
|
+
readonly "/v1/resolve/jobs/{id}": {
|
|
10999
12382
|
readonly parameters: {
|
|
11000
12383
|
readonly query?: never;
|
|
11001
12384
|
readonly header?: never;
|
|
@@ -11009,7 +12392,7 @@ type paths = {
|
|
|
11009
12392
|
* Before answering, the server sweeps orphaned `accepted`/`running` jobs into `error`, so
|
|
11010
12393
|
* you never poll a zombie. A job owned by another user is reported as `404` (not `403`).
|
|
11011
12394
|
*/
|
|
11012
|
-
readonly get: operations[
|
|
12395
|
+
readonly get: operations["getResolveJob"];
|
|
11013
12396
|
readonly put?: never;
|
|
11014
12397
|
readonly post?: never;
|
|
11015
12398
|
readonly delete?: never;
|
|
@@ -11018,7 +12401,7 @@ type paths = {
|
|
|
11018
12401
|
readonly patch?: never;
|
|
11019
12402
|
readonly trace?: never;
|
|
11020
12403
|
};
|
|
11021
|
-
readonly
|
|
12404
|
+
readonly "/v1/resolve/jobs/{id}/accept": {
|
|
11022
12405
|
readonly parameters: {
|
|
11023
12406
|
readonly query?: never;
|
|
11024
12407
|
readonly header?: never;
|
|
@@ -11044,14 +12427,14 @@ type paths = {
|
|
|
11044
12427
|
* was used; `held_micro_eur` is the wallet amount held (`0` for a credit). For a `t7` job the
|
|
11045
12428
|
* `402` also carries `bundle_url` (10 fixes for €49).
|
|
11046
12429
|
*/
|
|
11047
|
-
readonly post: operations[
|
|
12430
|
+
readonly post: operations["acceptResolveJob"];
|
|
11048
12431
|
readonly delete?: never;
|
|
11049
12432
|
readonly options?: never;
|
|
11050
12433
|
readonly head?: never;
|
|
11051
12434
|
readonly patch?: never;
|
|
11052
12435
|
readonly trace?: never;
|
|
11053
12436
|
};
|
|
11054
|
-
readonly
|
|
12437
|
+
readonly "/v1/resolve/keys": {
|
|
11055
12438
|
readonly parameters: {
|
|
11056
12439
|
readonly query?: never;
|
|
11057
12440
|
readonly header?: never;
|
|
@@ -11066,7 +12449,7 @@ type paths = {
|
|
|
11066
12449
|
* 1 hour. Verify with `codaid resolve verify`, `resolve.verifyAttestation` (TypeScript) or
|
|
11067
12450
|
* `resolve.verify_attestation` (Python). `503` when signing is not configured.
|
|
11068
12451
|
*/
|
|
11069
|
-
readonly get: operations[
|
|
12452
|
+
readonly get: operations["getResolveKeys"];
|
|
11070
12453
|
readonly put?: never;
|
|
11071
12454
|
readonly post?: never;
|
|
11072
12455
|
readonly delete?: never;
|
|
@@ -11087,9 +12470,9 @@ type components = {
|
|
|
11087
12470
|
readonly held_micro_eur: number;
|
|
11088
12471
|
/** Format: uuid */
|
|
11089
12472
|
readonly id: string;
|
|
11090
|
-
readonly paid_with: components[
|
|
12473
|
+
readonly paid_with: components["schemas"]["ResolvePaidWith"];
|
|
11091
12474
|
/** @constant */
|
|
11092
|
-
readonly status:
|
|
12475
|
+
readonly status: "accepted";
|
|
11093
12476
|
};
|
|
11094
12477
|
/**
|
|
11095
12478
|
* Attestation
|
|
@@ -11104,7 +12487,7 @@ type components = {
|
|
|
11104
12487
|
/** Format: uuid */
|
|
11105
12488
|
readonly id: string;
|
|
11106
12489
|
/** @constant */
|
|
11107
|
-
readonly kind:
|
|
12490
|
+
readonly kind: "codai.resolve.attestation.v0";
|
|
11108
12491
|
/** @description Unified diff against `base_commit`. */
|
|
11109
12492
|
readonly patch: string;
|
|
11110
12493
|
/** @description PASS_TO_PASS (repo suite) command, when one was run. */
|
|
@@ -11113,7 +12496,7 @@ type components = {
|
|
|
11113
12496
|
/** Format: uri */
|
|
11114
12497
|
readonly repo_url: string;
|
|
11115
12498
|
/** @description `null` when the customer supplied `test_command`. */
|
|
11116
|
-
readonly repro_test: components[
|
|
12499
|
+
readonly repro_test: components["schemas"]["ResolveReproTest"] | null;
|
|
11117
12500
|
/** @description Container image digest of the verification runner (`unknown` when not recorded). */
|
|
11118
12501
|
readonly runner_image_digest: string;
|
|
11119
12502
|
/**
|
|
@@ -11122,7 +12505,7 @@ type components = {
|
|
|
11122
12505
|
* attestations created before signing was enabled (2026-09-27). Verify against
|
|
11123
12506
|
* `GET /v1/resolve/keys`.
|
|
11124
12507
|
*/
|
|
11125
|
-
readonly signature: components[
|
|
12508
|
+
readonly signature: components["schemas"]["ResolveAttestationEnvelope"] | null;
|
|
11126
12509
|
/** Format: date-time */
|
|
11127
12510
|
readonly started_at: string;
|
|
11128
12511
|
/** @description FAIL_TO_PASS command that was executed. */
|
|
@@ -11148,7 +12531,7 @@ type components = {
|
|
|
11148
12531
|
/** @description Base64 of the canonical statement JSON. */
|
|
11149
12532
|
readonly payload: string;
|
|
11150
12533
|
/** @constant */
|
|
11151
|
-
readonly payloadType:
|
|
12534
|
+
readonly payloadType: "application/vnd.codai.resolve.attestation+json;v=1";
|
|
11152
12535
|
readonly signatures: readonly {
|
|
11153
12536
|
/** @description Identifier of the signing key; matches `keyid` in `GET /v1/resolve/keys`. */
|
|
11154
12537
|
readonly keyid?: string;
|
|
@@ -11193,20 +12576,20 @@ type components = {
|
|
|
11193
12576
|
/** Format: uuid */
|
|
11194
12577
|
readonly id: string;
|
|
11195
12578
|
/** @constant */
|
|
11196
|
-
readonly status:
|
|
12579
|
+
readonly status: "declined";
|
|
11197
12580
|
};
|
|
11198
12581
|
/**
|
|
11199
12582
|
* Resolve error
|
|
11200
12583
|
* @description Flat error envelope used by every Resolve endpoint. Not the gateway `{ error: { code, message } }` shape.
|
|
11201
12584
|
*/
|
|
11202
12585
|
readonly ResolveError: {
|
|
11203
|
-
readonly error: string | components[
|
|
12586
|
+
readonly error: string | components["schemas"]["ResolveValidationDetails"];
|
|
11204
12587
|
};
|
|
11205
12588
|
readonly ResolveHealth: {
|
|
11206
12589
|
/** @constant */
|
|
11207
12590
|
readonly ok: true;
|
|
11208
12591
|
/** @constant */
|
|
11209
|
-
readonly service:
|
|
12592
|
+
readonly service: "codai-resolve";
|
|
11210
12593
|
};
|
|
11211
12594
|
/**
|
|
11212
12595
|
* Insufficient funds
|
|
@@ -11228,9 +12611,9 @@ type components = {
|
|
|
11228
12611
|
* @description Unit of `balance` and `required`.
|
|
11229
12612
|
* @constant
|
|
11230
12613
|
*/
|
|
11231
|
-
readonly currency:
|
|
12614
|
+
readonly currency: "micro_eur";
|
|
11232
12615
|
/** @constant */
|
|
11233
|
-
readonly error:
|
|
12616
|
+
readonly error: "insufficient_funds";
|
|
11234
12617
|
/**
|
|
11235
12618
|
* @description Amount the hold needs in EUR micros — the quote converted 1:1 (`19000000` = €19).
|
|
11236
12619
|
* @example 19000000
|
|
@@ -11305,7 +12688,7 @@ type components = {
|
|
|
11305
12688
|
/** Format: uuid */
|
|
11306
12689
|
readonly id: string;
|
|
11307
12690
|
/** @description Present once the job was accepted (and recorded how it was paid). */
|
|
11308
|
-
readonly paid_with?: components[
|
|
12691
|
+
readonly paid_with?: components["schemas"]["ResolvePaidWith"];
|
|
11309
12692
|
/** @description Quoted price in USD micros; `null` until quoted, `0` on the free tier. */
|
|
11310
12693
|
readonly quote_micro_usd: number | null;
|
|
11311
12694
|
/**
|
|
@@ -11313,9 +12696,9 @@ type components = {
|
|
|
11313
12696
|
* @description Normalised repository URL (trailing slash removed).
|
|
11314
12697
|
*/
|
|
11315
12698
|
readonly repo_url: string;
|
|
11316
|
-
readonly status: components[
|
|
12699
|
+
readonly status: components["schemas"]["ResolveJobStatus"];
|
|
11317
12700
|
/** @description Quote tier; `null` until triage completes. */
|
|
11318
|
-
readonly tier: components[
|
|
12701
|
+
readonly tier: components["schemas"]["ResolveTier"] | null;
|
|
11319
12702
|
readonly triage_reason: string | null;
|
|
11320
12703
|
};
|
|
11321
12704
|
/**
|
|
@@ -11324,11 +12707,11 @@ type components = {
|
|
|
11324
12707
|
* (triage refused) and `error` (infrastructure failure — retryable, never billed).
|
|
11325
12708
|
* @enum {string}
|
|
11326
12709
|
*/
|
|
11327
|
-
readonly ResolveJobStatus:
|
|
12710
|
+
readonly ResolveJobStatus: "triage" | "quoted" | "declined" | "accepted" | "running" | "resolved" | "failed" | "error";
|
|
11328
12711
|
/** Verification key */
|
|
11329
12712
|
readonly ResolveKey: {
|
|
11330
12713
|
/** @constant */
|
|
11331
|
-
readonly algorithm:
|
|
12714
|
+
readonly algorithm: "ECDSA_P256_SHA256";
|
|
11332
12715
|
/**
|
|
11333
12716
|
* @description Envelope and signature encoding.
|
|
11334
12717
|
* @example DSSE v1; signature DER, base64
|
|
@@ -11337,13 +12720,13 @@ type components = {
|
|
|
11337
12720
|
/** @description Key identifier (the Cloud KMS key version name). */
|
|
11338
12721
|
readonly keyid: string;
|
|
11339
12722
|
/** @constant */
|
|
11340
|
-
readonly payload_type:
|
|
12723
|
+
readonly payload_type: "application/vnd.codai.resolve.attestation+json;v=1";
|
|
11341
12724
|
/** @description SPKI public key, PEM. */
|
|
11342
12725
|
readonly public_key_pem: string;
|
|
11343
12726
|
};
|
|
11344
12727
|
/** Verification keys */
|
|
11345
12728
|
readonly ResolveKeys: {
|
|
11346
|
-
readonly keys: readonly components[
|
|
12729
|
+
readonly keys: readonly components["schemas"]["ResolveKey"][];
|
|
11347
12730
|
};
|
|
11348
12731
|
/**
|
|
11349
12732
|
* Payment method
|
|
@@ -11352,7 +12735,7 @@ type components = {
|
|
|
11352
12735
|
* Precedence: `free` > `intro` > `credit` > `wallet`.
|
|
11353
12736
|
* @enum {string}
|
|
11354
12737
|
*/
|
|
11355
|
-
readonly ResolvePaidWith:
|
|
12738
|
+
readonly ResolvePaidWith: "intro" | "credit" | "wallet" | "free";
|
|
11356
12739
|
/**
|
|
11357
12740
|
* Quote
|
|
11358
12741
|
* @description `201` body — the job was quoted (`quoted`) or auto-accepted on the free tier (`accepted`).
|
|
@@ -11388,8 +12771,8 @@ type components = {
|
|
|
11388
12771
|
* @description `accepted` only when the free tier was used (already dispatched).
|
|
11389
12772
|
* @enum {string}
|
|
11390
12773
|
*/
|
|
11391
|
-
readonly status:
|
|
11392
|
-
readonly tier: components[
|
|
12774
|
+
readonly status: "quoted" | "accepted";
|
|
12775
|
+
readonly tier: components["schemas"]["ResolveTier"];
|
|
11393
12776
|
/** @description One-line triage rationale shown with the quote. */
|
|
11394
12777
|
readonly triage_reason: string;
|
|
11395
12778
|
};
|
|
@@ -11411,7 +12794,7 @@ type components = {
|
|
|
11411
12794
|
* @description `free` (first 3 resolves per user), `t7` ($7), `t19` ($19), `t49` ($49). Prices are in USD micros on the wire.
|
|
11412
12795
|
* @enum {string}
|
|
11413
12796
|
*/
|
|
11414
|
-
readonly ResolveTier:
|
|
12797
|
+
readonly ResolveTier: "free" | "t7" | "t19" | "t49";
|
|
11415
12798
|
/**
|
|
11416
12799
|
* Validation details
|
|
11417
12800
|
* @description Zod `flatten()` output returned when the intake body fails schema validation.
|
|
@@ -11429,8 +12812,8 @@ type components = {
|
|
|
11429
12812
|
* @description JSON body POSTed to `callback_url`. Verify `x-codai-signature` over the raw bytes before trusting it.
|
|
11430
12813
|
*/
|
|
11431
12814
|
readonly ResolveWebhookEvent: {
|
|
11432
|
-
readonly event: components[
|
|
11433
|
-
readonly job: components[
|
|
12815
|
+
readonly event: components["schemas"]["ResolveWebhookEventName"];
|
|
12816
|
+
readonly job: components["schemas"]["ResolveWebhookJob"];
|
|
11434
12817
|
/**
|
|
11435
12818
|
* Format: date-time
|
|
11436
12819
|
* @description When this delivery attempt was built (UTC).
|
|
@@ -11442,7 +12825,7 @@ type components = {
|
|
|
11442
12825
|
* @description `job.quoted` (paid quote ready), `job.declined` (triage refused), `job.resolved` (verified fix + attestation), `job.failed` (no verified fix, hold refunded), `job.error` (infrastructure failure, hold refunded).
|
|
11443
12826
|
* @enum {string}
|
|
11444
12827
|
*/
|
|
11445
|
-
readonly ResolveWebhookEventName:
|
|
12828
|
+
readonly ResolveWebhookEventName: "job.quoted" | "job.declined" | "job.resolved" | "job.failed" | "job.error";
|
|
11446
12829
|
/**
|
|
11447
12830
|
* Webhook job snapshot
|
|
11448
12831
|
* @description Snapshot of the job at send time. Nullable fields are `null` until the corresponding stage has run.
|
|
@@ -11468,8 +12851,8 @@ type components = {
|
|
|
11468
12851
|
readonly quote_micro_usd: number | null;
|
|
11469
12852
|
/** Format: uri */
|
|
11470
12853
|
readonly repo_url: string;
|
|
11471
|
-
readonly status: components[
|
|
11472
|
-
readonly tier: components[
|
|
12854
|
+
readonly status: components["schemas"]["ResolveJobStatus"];
|
|
12855
|
+
readonly tier: components["schemas"]["ResolveTier"] | null;
|
|
11473
12856
|
};
|
|
11474
12857
|
};
|
|
11475
12858
|
responses: {
|
|
@@ -11484,7 +12867,7 @@ type components = {
|
|
|
11484
12867
|
readonly [name: string]: unknown;
|
|
11485
12868
|
};
|
|
11486
12869
|
content: {
|
|
11487
|
-
readonly
|
|
12870
|
+
readonly "application/json": components["schemas"]["ResolveError"];
|
|
11488
12871
|
};
|
|
11489
12872
|
};
|
|
11490
12873
|
/** @description The job is not in the `quoted` state (`job is <status>, only quoted jobs can be accepted`). */
|
|
@@ -11493,7 +12876,7 @@ type components = {
|
|
|
11493
12876
|
readonly [name: string]: unknown;
|
|
11494
12877
|
};
|
|
11495
12878
|
content: {
|
|
11496
|
-
readonly
|
|
12879
|
+
readonly "application/json": components["schemas"]["ResolveError"];
|
|
11497
12880
|
};
|
|
11498
12881
|
};
|
|
11499
12882
|
/**
|
|
@@ -11507,7 +12890,7 @@ type components = {
|
|
|
11507
12890
|
readonly [name: string]: unknown;
|
|
11508
12891
|
};
|
|
11509
12892
|
content: {
|
|
11510
|
-
readonly
|
|
12893
|
+
readonly "application/json": components["schemas"]["ResolveInsufficientFunds"];
|
|
11511
12894
|
};
|
|
11512
12895
|
};
|
|
11513
12896
|
/** @description The job row could not be inserted (`job insert failed`). */
|
|
@@ -11516,7 +12899,7 @@ type components = {
|
|
|
11516
12899
|
readonly [name: string]: unknown;
|
|
11517
12900
|
};
|
|
11518
12901
|
content: {
|
|
11519
|
-
readonly
|
|
12902
|
+
readonly "application/json": components["schemas"]["ResolveError"];
|
|
11520
12903
|
};
|
|
11521
12904
|
};
|
|
11522
12905
|
/** @description No such job/attestation, or the job belongs to another user. */
|
|
@@ -11525,7 +12908,7 @@ type components = {
|
|
|
11525
12908
|
readonly [name: string]: unknown;
|
|
11526
12909
|
};
|
|
11527
12910
|
content: {
|
|
11528
|
-
readonly
|
|
12911
|
+
readonly "application/json": components["schemas"]["ResolveError"];
|
|
11529
12912
|
};
|
|
11530
12913
|
};
|
|
11531
12914
|
/**
|
|
@@ -11538,7 +12921,7 @@ type components = {
|
|
|
11538
12921
|
readonly [name: string]: unknown;
|
|
11539
12922
|
};
|
|
11540
12923
|
content: {
|
|
11541
|
-
readonly
|
|
12924
|
+
readonly "application/json": components["schemas"]["ResolveError"];
|
|
11542
12925
|
};
|
|
11543
12926
|
};
|
|
11544
12927
|
/** @description Missing, malformed or revoked API key (`invalid or missing API key`). */
|
|
@@ -11547,7 +12930,7 @@ type components = {
|
|
|
11547
12930
|
readonly [name: string]: unknown;
|
|
11548
12931
|
};
|
|
11549
12932
|
content: {
|
|
11550
|
-
readonly
|
|
12933
|
+
readonly "application/json": components["schemas"]["ResolveError"];
|
|
11551
12934
|
};
|
|
11552
12935
|
};
|
|
11553
12936
|
};
|
|
@@ -11575,7 +12958,7 @@ interface operations {
|
|
|
11575
12958
|
readonly [name: string]: unknown;
|
|
11576
12959
|
};
|
|
11577
12960
|
content: {
|
|
11578
|
-
readonly
|
|
12961
|
+
readonly "application/json": components["schemas"]["ResolveHealth"];
|
|
11579
12962
|
};
|
|
11580
12963
|
};
|
|
11581
12964
|
};
|
|
@@ -11598,10 +12981,10 @@ interface operations {
|
|
|
11598
12981
|
readonly [name: string]: unknown;
|
|
11599
12982
|
};
|
|
11600
12983
|
content: {
|
|
11601
|
-
readonly
|
|
12984
|
+
readonly "application/json": components["schemas"]["ResolveAttestation"];
|
|
11602
12985
|
};
|
|
11603
12986
|
};
|
|
11604
|
-
readonly 404: components[
|
|
12987
|
+
readonly 404: components["responses"]["ResolveNotFound"];
|
|
11605
12988
|
};
|
|
11606
12989
|
};
|
|
11607
12990
|
readonly getResolveBalance: {
|
|
@@ -11619,10 +13002,10 @@ interface operations {
|
|
|
11619
13002
|
readonly [name: string]: unknown;
|
|
11620
13003
|
};
|
|
11621
13004
|
content: {
|
|
11622
|
-
readonly
|
|
13005
|
+
readonly "application/json": components["schemas"]["ResolveBalance"];
|
|
11623
13006
|
};
|
|
11624
13007
|
};
|
|
11625
|
-
readonly 401: components[
|
|
13008
|
+
readonly 401: components["responses"]["ResolveUnauthorized"];
|
|
11626
13009
|
};
|
|
11627
13010
|
};
|
|
11628
13011
|
readonly createResolveJob: {
|
|
@@ -11634,7 +13017,7 @@ interface operations {
|
|
|
11634
13017
|
};
|
|
11635
13018
|
readonly requestBody: {
|
|
11636
13019
|
readonly content: {
|
|
11637
|
-
readonly
|
|
13020
|
+
readonly "application/json": components["schemas"]["ResolveIntake"];
|
|
11638
13021
|
};
|
|
11639
13022
|
};
|
|
11640
13023
|
readonly responses: {
|
|
@@ -11644,7 +13027,7 @@ interface operations {
|
|
|
11644
13027
|
readonly [name: string]: unknown;
|
|
11645
13028
|
};
|
|
11646
13029
|
content: {
|
|
11647
|
-
readonly
|
|
13030
|
+
readonly "application/json": components["schemas"]["ResolveDeclined"];
|
|
11648
13031
|
};
|
|
11649
13032
|
};
|
|
11650
13033
|
/** @description Job created and quoted (or auto-accepted on the free tier). */
|
|
@@ -11653,13 +13036,13 @@ interface operations {
|
|
|
11653
13036
|
readonly [name: string]: unknown;
|
|
11654
13037
|
};
|
|
11655
13038
|
content: {
|
|
11656
|
-
readonly
|
|
13039
|
+
readonly "application/json": components["schemas"]["ResolveQuote"];
|
|
11657
13040
|
};
|
|
11658
13041
|
};
|
|
11659
|
-
readonly 400: components[
|
|
11660
|
-
readonly 401: components[
|
|
11661
|
-
readonly 429: components[
|
|
11662
|
-
readonly 500: components[
|
|
13042
|
+
readonly 400: components["responses"]["ResolveBadRequest"];
|
|
13043
|
+
readonly 401: components["responses"]["ResolveUnauthorized"];
|
|
13044
|
+
readonly 429: components["responses"]["ResolveRateLimited"];
|
|
13045
|
+
readonly 500: components["responses"]["ResolveInternalError"];
|
|
11663
13046
|
};
|
|
11664
13047
|
};
|
|
11665
13048
|
readonly getResolveJob: {
|
|
@@ -11668,7 +13051,7 @@ interface operations {
|
|
|
11668
13051
|
readonly header?: never;
|
|
11669
13052
|
readonly path: {
|
|
11670
13053
|
/** @description Job UUID returned by `POST /v1/resolve/jobs`. */
|
|
11671
|
-
readonly id: components[
|
|
13054
|
+
readonly id: components["parameters"]["JobId"];
|
|
11672
13055
|
};
|
|
11673
13056
|
readonly cookie?: never;
|
|
11674
13057
|
};
|
|
@@ -11680,11 +13063,11 @@ interface operations {
|
|
|
11680
13063
|
readonly [name: string]: unknown;
|
|
11681
13064
|
};
|
|
11682
13065
|
content: {
|
|
11683
|
-
readonly
|
|
13066
|
+
readonly "application/json": components["schemas"]["ResolveJob"];
|
|
11684
13067
|
};
|
|
11685
13068
|
};
|
|
11686
|
-
readonly 401: components[
|
|
11687
|
-
readonly 404: components[
|
|
13069
|
+
readonly 401: components["responses"]["ResolveUnauthorized"];
|
|
13070
|
+
readonly 404: components["responses"]["ResolveNotFound"];
|
|
11688
13071
|
};
|
|
11689
13072
|
};
|
|
11690
13073
|
readonly acceptResolveJob: {
|
|
@@ -11693,7 +13076,7 @@ interface operations {
|
|
|
11693
13076
|
readonly header?: never;
|
|
11694
13077
|
readonly path: {
|
|
11695
13078
|
/** @description Job UUID returned by `POST /v1/resolve/jobs`. */
|
|
11696
|
-
readonly id: components[
|
|
13079
|
+
readonly id: components["parameters"]["JobId"];
|
|
11697
13080
|
};
|
|
11698
13081
|
readonly cookie?: never;
|
|
11699
13082
|
};
|
|
@@ -11705,13 +13088,13 @@ interface operations {
|
|
|
11705
13088
|
readonly [name: string]: unknown;
|
|
11706
13089
|
};
|
|
11707
13090
|
content: {
|
|
11708
|
-
readonly
|
|
13091
|
+
readonly "application/json": components["schemas"]["ResolveAccepted"];
|
|
11709
13092
|
};
|
|
11710
13093
|
};
|
|
11711
|
-
readonly 401: components[
|
|
11712
|
-
readonly 402: components[
|
|
11713
|
-
readonly 404: components[
|
|
11714
|
-
readonly 409: components[
|
|
13094
|
+
readonly 401: components["responses"]["ResolveUnauthorized"];
|
|
13095
|
+
readonly 402: components["responses"]["ResolveInsufficientFunds"];
|
|
13096
|
+
readonly 404: components["responses"]["ResolveNotFound"];
|
|
13097
|
+
readonly 409: components["responses"]["ResolveConflict"];
|
|
11715
13098
|
};
|
|
11716
13099
|
};
|
|
11717
13100
|
readonly getResolveKeys: {
|
|
@@ -11729,7 +13112,7 @@ interface operations {
|
|
|
11729
13112
|
readonly [name: string]: unknown;
|
|
11730
13113
|
};
|
|
11731
13114
|
content: {
|
|
11732
|
-
readonly
|
|
13115
|
+
readonly "application/json": components["schemas"]["ResolveKeys"];
|
|
11733
13116
|
};
|
|
11734
13117
|
};
|
|
11735
13118
|
/** @description Attestation signing is not configured (`attestation signing not configured`). */
|
|
@@ -11738,7 +13121,7 @@ interface operations {
|
|
|
11738
13121
|
readonly [name: string]: unknown;
|
|
11739
13122
|
};
|
|
11740
13123
|
content: {
|
|
11741
|
-
readonly
|
|
13124
|
+
readonly "application/json": components["schemas"]["ResolveError"];
|
|
11742
13125
|
};
|
|
11743
13126
|
};
|
|
11744
13127
|
};
|
|
@@ -11748,18 +13131,18 @@ interface operations {
|
|
|
11748
13131
|
readonly query?: never;
|
|
11749
13132
|
readonly header: {
|
|
11750
13133
|
/** @description Idempotency key `<jobId>:<event>`, identical on every retry. */
|
|
11751
|
-
readonly
|
|
13134
|
+
readonly "x-codai-delivery": string;
|
|
11752
13135
|
/** @description Event name, same as `event` in the body. */
|
|
11753
|
-
readonly
|
|
13136
|
+
readonly "x-codai-event": components["schemas"]["ResolveWebhookEventName"];
|
|
11754
13137
|
/** @description `t=<unix seconds>,v1=<hex HMAC-SHA256 of "<t>.<raw body>">`. */
|
|
11755
|
-
readonly
|
|
13138
|
+
readonly "x-codai-signature": string;
|
|
11756
13139
|
};
|
|
11757
13140
|
readonly path?: never;
|
|
11758
13141
|
readonly cookie?: never;
|
|
11759
13142
|
};
|
|
11760
13143
|
readonly requestBody: {
|
|
11761
13144
|
readonly content: {
|
|
11762
|
-
readonly
|
|
13145
|
+
readonly "application/json": components["schemas"]["ResolveWebhookEvent"];
|
|
11763
13146
|
};
|
|
11764
13147
|
};
|
|
11765
13148
|
readonly responses: {
|
|
@@ -11883,7 +13266,7 @@ interface ResolveWaitOptions {
|
|
|
11883
13266
|
/** Called with every polled job (progress UIs). */
|
|
11884
13267
|
onPoll?: (job: ResolveJob) => void;
|
|
11885
13268
|
}
|
|
11886
|
-
type CallOpts$
|
|
13269
|
+
type CallOpts$6 = {
|
|
11887
13270
|
signal?: AbortSignal;
|
|
11888
13271
|
};
|
|
11889
13272
|
declare class Resolve {
|
|
@@ -11895,9 +13278,9 @@ declare class Resolve {
|
|
|
11895
13278
|
* (`status: 'accepted'`) or a decline (`status: 'declined'`). Never retried:
|
|
11896
13279
|
* a retry could create a second job.
|
|
11897
13280
|
*/
|
|
11898
|
-
submit(body: ResolveIntake, opts?: CallOpts$
|
|
13281
|
+
submit(body: ResolveIntake, opts?: CallOpts$6): Promise<ResolveSubmitResult>;
|
|
11899
13282
|
/** `GET /v1/resolve/jobs/{id}` — status, quote, reasons, cost and attestation pointer. */
|
|
11900
|
-
get(id: string, opts?: CallOpts$
|
|
13283
|
+
get(id: string, opts?: CallOpts$6): Promise<ResolveJob>;
|
|
11901
13284
|
/**
|
|
11902
13285
|
* `POST /v1/resolve/jobs/{id}/accept` — accept a paid quote and start the job.
|
|
11903
13286
|
* The result's `paid_with` says how it was paid (`intro` €1 hold, `credit`
|
|
@@ -11905,18 +13288,18 @@ declare class Resolve {
|
|
|
11905
13288
|
* carries `topupUrl`, plus `bundleUrl` for t7) when the wallet is short,
|
|
11906
13289
|
* `ResolveError` 409 when the job is not `quoted`.
|
|
11907
13290
|
*/
|
|
11908
|
-
accept(id: string, opts?: CallOpts$
|
|
13291
|
+
accept(id: string, opts?: CallOpts$6): Promise<ResolveAccepted>;
|
|
11909
13292
|
/**
|
|
11910
13293
|
* `GET /v1/resolve/attestations/{id}` — public execution proof (no auth needed
|
|
11911
13294
|
* server-side). Accepts the attestation id or the job's `attestation_url`.
|
|
11912
13295
|
*/
|
|
11913
|
-
attestation(idOrUrl: string, opts?: CallOpts$
|
|
13296
|
+
attestation(idOrUrl: string, opts?: CallOpts$6): Promise<ResolveAttestation>;
|
|
11914
13297
|
/** `GET /health` — liveness of the Resolve service. */
|
|
11915
|
-
health(opts?: CallOpts$
|
|
13298
|
+
health(opts?: CallOpts$6): Promise<ResolveHealth>;
|
|
11916
13299
|
/** `GET /v1/resolve/balance` — fix credits (t7 only), intro availability and wallet balance. */
|
|
11917
|
-
balance(opts?: CallOpts$
|
|
13300
|
+
balance(opts?: CallOpts$6): Promise<ResolveBalance>;
|
|
11918
13301
|
/** `GET /v1/resolve/keys` — public keys that sign attestations (no auth needed server-side). */
|
|
11919
|
-
keys(opts?: CallOpts$
|
|
13302
|
+
keys(opts?: CallOpts$6): Promise<ResolveKeys>;
|
|
11920
13303
|
/**
|
|
11921
13304
|
* Verify an attestation's signature and that the signed statement matches
|
|
11922
13305
|
* its fields. Fetches `keys()` unless `opts.keys` is given (pin them to
|
|
@@ -12003,7 +13386,21 @@ type SessionEventsPage = Reply<'listSessionEvents'>;
|
|
|
12003
13386
|
type SessionControl = Schema<'SessionControl'>;
|
|
12004
13387
|
type SessionControlRequest = Mutable<Body<'submitSessionControl'>>;
|
|
12005
13388
|
type SessionControlAccepted = Reply<'submitSessionControl', 202>;
|
|
12006
|
-
type
|
|
13389
|
+
type SessionDispatchBase = Omit<Mutable<Body<'dispatchToDevice'>>, 'mode' | 'text' | 'turn_id'>;
|
|
13390
|
+
/**
|
|
13391
|
+
* `POST …/dispatch` body. `send` (the default) needs `text` and runs it as a new turn on the
|
|
13392
|
+
* target; `open` is a handoff — the target only opens the session, so it takes no text/turn.
|
|
13393
|
+
*/
|
|
13394
|
+
type SessionDispatchRequest = (SessionDispatchBase & {
|
|
13395
|
+
mode?: 'send';
|
|
13396
|
+
text: string;
|
|
13397
|
+
turn_id?: string;
|
|
13398
|
+
}) | (SessionDispatchBase & {
|
|
13399
|
+
mode: 'open';
|
|
13400
|
+
text?: never;
|
|
13401
|
+
turn_id?: never;
|
|
13402
|
+
});
|
|
13403
|
+
type SessionDispatchMode = NonNullable<Body<'dispatchToDevice'>['mode']>;
|
|
12007
13404
|
type SessionDispatchResponse = Reply<'dispatchToDevice', 202>;
|
|
12008
13405
|
type SessionLeaseClaimRequest = Mutable<Body<'claimSessionLease'>>;
|
|
12009
13406
|
type SessionLeaseResponse = Reply<'claimSessionLease'>;
|
|
@@ -12011,7 +13408,7 @@ type SessionShare = Schema<'OrgSessionShare'>;
|
|
|
12011
13408
|
type SessionShareCreateRequest = Mutable<Body<'createSessionShare'>>;
|
|
12012
13409
|
type SessionShareCreated = Reply<'createSessionShare', 201>;
|
|
12013
13410
|
type SharedSession = Schema<'OrgSharedSession'>;
|
|
12014
|
-
type CallOpts$
|
|
13411
|
+
type CallOpts$5 = {
|
|
12015
13412
|
ext?: CodaiRequestExtensions;
|
|
12016
13413
|
signal?: AbortSignal;
|
|
12017
13414
|
};
|
|
@@ -12058,19 +13455,19 @@ declare class SessionLease {
|
|
|
12058
13455
|
private readonly http;
|
|
12059
13456
|
constructor(http: HttpClient);
|
|
12060
13457
|
/** `POST /v1/sessions/{id}/lease` — CAS claim; `force: true` takes over a live lease. */
|
|
12061
|
-
acquire(sessionId: string, body?: SessionLeaseClaimRequest, opts?: CallOpts$
|
|
13458
|
+
acquire(sessionId: string, body?: SessionLeaseClaimRequest, opts?: CallOpts$5): Promise<SessionLeaseResponse>;
|
|
12062
13459
|
/** `PUT /v1/sessions/{id}/lease` — heartbeat every 10 s (TTL 30 s). */
|
|
12063
|
-
renew(sessionId: string, opts?: CallOpts$
|
|
13460
|
+
renew(sessionId: string, opts?: CallOpts$5): Promise<SessionLeaseResponse>;
|
|
12064
13461
|
/** `DELETE /v1/sessions/{id}/lease` */
|
|
12065
|
-
release(sessionId: string, opts?: CallOpts$
|
|
13462
|
+
release(sessionId: string, opts?: CallOpts$5): Promise<Reply<'releaseSessionLease'>>;
|
|
12066
13463
|
}
|
|
12067
13464
|
declare class SessionEvents {
|
|
12068
13465
|
private readonly http;
|
|
12069
13466
|
constructor(http: HttpClient);
|
|
12070
13467
|
/** `GET /v1/sessions/{id}/events?after=&limit=` */
|
|
12071
|
-
list(sessionId: string, query?: Mutable<QueryOf<'listSessionEvents'>>, opts?: CallOpts$
|
|
13468
|
+
list(sessionId: string, query?: Mutable<QueryOf<'listSessionEvents'>>, opts?: CallOpts$5): Promise<SessionEventsPage>;
|
|
12072
13469
|
/** `POST /v1/sessions/{id}/events` — executor only (needs the live lease). */
|
|
12073
|
-
append(sessionId: string, body: SessionEventsAppendRequest, opts?: CallOpts$
|
|
13470
|
+
append(sessionId: string, body: SessionEventsAppendRequest, opts?: CallOpts$5): Promise<SessionEventsAppendResponse>;
|
|
12074
13471
|
}
|
|
12075
13472
|
declare class SessionControls {
|
|
12076
13473
|
private readonly http;
|
|
@@ -12079,25 +13476,25 @@ declare class SessionControls {
|
|
|
12079
13476
|
list(sessionId: string, query?: {
|
|
12080
13477
|
applied?: boolean;
|
|
12081
13478
|
target?: 'me' | string;
|
|
12082
|
-
}, opts?: CallOpts$
|
|
13479
|
+
}, opts?: CallOpts$5): Promise<SessionControl[]>;
|
|
12083
13480
|
/** `POST /v1/sessions/{id}/control` — send a control to the executor (editor+). */
|
|
12084
|
-
submit(sessionId: string, body: SessionControlRequest, opts?: CallOpts$
|
|
13481
|
+
submit(sessionId: string, body: SessionControlRequest, opts?: CallOpts$5): Promise<SessionControlAccepted>;
|
|
12085
13482
|
/** `POST /v1/sessions/{id}/control/{cid}/applied` — executor only. */
|
|
12086
|
-
markApplied(sessionId: string, controlId: string, opts?: CallOpts$
|
|
13483
|
+
markApplied(sessionId: string, controlId: string, opts?: CallOpts$5): Promise<Reply<'markSessionControlApplied'>>;
|
|
12087
13484
|
}
|
|
12088
13485
|
declare class SessionShares {
|
|
12089
13486
|
private readonly http;
|
|
12090
13487
|
constructor(http: HttpClient);
|
|
12091
13488
|
/** `GET /v1/sessions/{id}/shares` — owner only. */
|
|
12092
|
-
list(sessionId: string, opts?: CallOpts$
|
|
13489
|
+
list(sessionId: string, opts?: CallOpts$5): Promise<SessionShare[]>;
|
|
12093
13490
|
/** `POST /v1/sessions/{id}/shares` — `token` is returned once for link shares. */
|
|
12094
|
-
create(sessionId: string, body: SessionShareCreateRequest, opts?: CallOpts$
|
|
13491
|
+
create(sessionId: string, body: SessionShareCreateRequest, opts?: CallOpts$5): Promise<SessionShareCreated>;
|
|
12095
13492
|
/** `DELETE /v1/sessions/{id}/shares/{shareId}` */
|
|
12096
|
-
delete(sessionId: string, shareId: string, opts?: CallOpts$
|
|
13493
|
+
delete(sessionId: string, shareId: string, opts?: CallOpts$5): Promise<Reply<'deleteSessionShare'>>;
|
|
12097
13494
|
/** `GET /v1/sessions/shared-with-me` */
|
|
12098
13495
|
sharedWithMe(query?: {
|
|
12099
13496
|
archived?: boolean;
|
|
12100
|
-
}, opts?: CallOpts$
|
|
13497
|
+
}, opts?: CallOpts$5): Promise<SharedSession[]>;
|
|
12101
13498
|
}
|
|
12102
13499
|
declare class Sessions {
|
|
12103
13500
|
private readonly http;
|
|
@@ -12107,24 +13504,27 @@ declare class Sessions {
|
|
|
12107
13504
|
readonly shares: SessionShares;
|
|
12108
13505
|
constructor(http: HttpClient);
|
|
12109
13506
|
/** `POST /v1/sessions` — idempotent on `session_key` (200 existing / 201 created). */
|
|
12110
|
-
create(body?: SessionCreateRequest, opts?: CallOpts$
|
|
13507
|
+
create(body?: SessionCreateRequest, opts?: CallOpts$5): Promise<Session & {
|
|
12111
13508
|
created: boolean;
|
|
12112
13509
|
}>;
|
|
12113
13510
|
/** `GET /v1/sessions?limit=&archived=` — own sessions first, then shared. */
|
|
12114
13511
|
list(query?: {
|
|
12115
13512
|
limit?: number;
|
|
12116
13513
|
archived?: boolean;
|
|
12117
|
-
}, opts?: CallOpts$
|
|
13514
|
+
}, opts?: CallOpts$5): Promise<SessionListItem[]>;
|
|
12118
13515
|
/** `GET /v1/sessions/{id}` — detail with members, lease and presence. */
|
|
12119
13516
|
get(sessionId: string, query?: {
|
|
12120
13517
|
share?: string;
|
|
12121
|
-
}, opts?: CallOpts$
|
|
13518
|
+
}, opts?: CallOpts$5): Promise<SessionDetail>;
|
|
12122
13519
|
/** `PATCH /v1/sessions/{id}` — rename / archive (owner). */
|
|
12123
|
-
update(sessionId: string, body: SessionPatchRequest, opts?: CallOpts$
|
|
13520
|
+
update(sessionId: string, body: SessionPatchRequest, opts?: CallOpts$5): Promise<Session>;
|
|
12124
13521
|
/** `DELETE /v1/sessions/{id}` — irreversible (owner). */
|
|
12125
|
-
delete(sessionId: string, opts?: CallOpts$
|
|
12126
|
-
/**
|
|
12127
|
-
|
|
13522
|
+
delete(sessionId: string, opts?: CallOpts$5): Promise<Reply<'deleteSession'>>;
|
|
13523
|
+
/**
|
|
13524
|
+
* `POST /v1/sessions/{id}/dispatch` — queue a `send` for one device and wake it over FCM.
|
|
13525
|
+
* `{ mode: 'open' }` hands the session off instead: the target just opens it (no user turn).
|
|
13526
|
+
*/
|
|
13527
|
+
dispatch(sessionId: string, body: SessionDispatchRequest, opts?: CallOpts$5): Promise<SessionDispatchResponse>;
|
|
12128
13528
|
/**
|
|
12129
13529
|
* `GET /v1/sessions/{id}/stream?after=` — live SSE of `event` / `control` /
|
|
12130
13530
|
* `lease` / `presence` frames. `: ping` heartbeats are skipped. The server
|
|
@@ -12133,24 +13533,61 @@ declare class Sessions {
|
|
|
12133
13533
|
stream(sessionId: string, query?: {
|
|
12134
13534
|
after?: number;
|
|
12135
13535
|
share?: string;
|
|
12136
|
-
}, opts?: CallOpts$
|
|
13536
|
+
}, opts?: CallOpts$5): AsyncGenerator<SessionStreamEvent, void, undefined>;
|
|
12137
13537
|
}
|
|
12138
13538
|
|
|
12139
13539
|
/** `POST /v1/systemone` — typed decisions from codai-s1 (Choice / Score / Noul). */
|
|
12140
13540
|
|
|
12141
13541
|
type SystemOneRequest = Mutable<Body<'createSystemOne'>>;
|
|
12142
13542
|
type SystemOneResponse = Reply<'createSystemOne'>;
|
|
13543
|
+
type SystemOneState = NonNullable<SystemOneRequest['state']>;
|
|
13544
|
+
type SystemOneAnswers = NonNullable<SystemOneResponse['answers']>;
|
|
13545
|
+
/** Single-state call: `answers` is always present. */
|
|
13546
|
+
type SystemOneSingleRequest = Omit<SystemOneRequest, 'items'> & {
|
|
13547
|
+
state: SystemOneState;
|
|
13548
|
+
};
|
|
13549
|
+
type SystemOneSingleResponse = SystemOneResponse & {
|
|
13550
|
+
answers: SystemOneAnswers;
|
|
13551
|
+
};
|
|
13552
|
+
/** Batch call (1-16 items, same questions, run concurrently). */
|
|
13553
|
+
type SystemOneBatchRequest = Omit<SystemOneRequest, 'state' | 'items'> & {
|
|
13554
|
+
items: Array<{
|
|
13555
|
+
id: string;
|
|
13556
|
+
state: SystemOneState;
|
|
13557
|
+
}>;
|
|
13558
|
+
};
|
|
13559
|
+
type SystemOneBatchResponse = SystemOneResponse & {
|
|
13560
|
+
items: Array<{
|
|
13561
|
+
id: string;
|
|
13562
|
+
answers: SystemOneAnswers;
|
|
13563
|
+
}>;
|
|
13564
|
+
};
|
|
12143
13565
|
declare class SystemOne {
|
|
12144
13566
|
private readonly http;
|
|
12145
13567
|
constructor(http: HttpClient);
|
|
12146
13568
|
/**
|
|
12147
|
-
* Ask one or more typed questions about `state
|
|
12148
|
-
* error — keep a local fallback and catch it
|
|
13569
|
+
* Ask one or more typed questions about `state` (or about each of `items`). Throws on 503
|
|
13570
|
+
* `s1_unavailable` like any other error — keep a local fallback and catch it. The gateway
|
|
13571
|
+
* substitutes a generative model ONLY when you pass `fallback: 'codai-fast'`, and then the
|
|
13572
|
+
* response says `fallback_used: true`. `timeout_ms` (100-5000) bounds the s1 call.
|
|
12149
13573
|
*/
|
|
13574
|
+
create(body: SystemOneSingleRequest, opts?: {
|
|
13575
|
+
ext?: CodaiRequestExtensions;
|
|
13576
|
+
signal?: AbortSignal;
|
|
13577
|
+
}): Promise<SystemOneSingleResponse>;
|
|
13578
|
+
create(body: SystemOneBatchRequest, opts?: {
|
|
13579
|
+
ext?: CodaiRequestExtensions;
|
|
13580
|
+
signal?: AbortSignal;
|
|
13581
|
+
}): Promise<SystemOneBatchResponse>;
|
|
12150
13582
|
create(body: SystemOneRequest, opts?: {
|
|
12151
13583
|
ext?: CodaiRequestExtensions;
|
|
12152
13584
|
signal?: AbortSignal;
|
|
12153
13585
|
}): Promise<SystemOneResponse>;
|
|
13586
|
+
/** Same questions about up to 16 states in one call; results come back in `items` order. */
|
|
13587
|
+
batch(body: SystemOneBatchRequest, opts?: {
|
|
13588
|
+
ext?: CodaiRequestExtensions;
|
|
13589
|
+
signal?: AbortSignal;
|
|
13590
|
+
}): Promise<SystemOneBatchResponse>;
|
|
12154
13591
|
}
|
|
12155
13592
|
|
|
12156
13593
|
/** `/v1/tasks/*` — outcome-billing task lifecycle. */
|
|
@@ -12162,7 +13599,7 @@ type TaskListPage = Reply<'listTasks'>;
|
|
|
12162
13599
|
type TaskConfirmRequest = Mutable<Body<'confirmTask'>>;
|
|
12163
13600
|
type TaskConfirmResponse = Reply<'confirmTask'>;
|
|
12164
13601
|
type TaskListQuery = Mutable<QueryOf<'listTasks'>>;
|
|
12165
|
-
type CallOpts$
|
|
13602
|
+
type CallOpts$4 = {
|
|
12166
13603
|
ext?: CodaiRequestExtensions;
|
|
12167
13604
|
signal?: AbortSignal;
|
|
12168
13605
|
};
|
|
@@ -12170,15 +13607,15 @@ declare class Tasks {
|
|
|
12170
13607
|
private readonly http;
|
|
12171
13608
|
constructor(http: HttpClient);
|
|
12172
13609
|
/** `GET /v1/tasks` — newest first; page with `cursor` = previous `next_cursor`. */
|
|
12173
|
-
list(query?: TaskListQuery, opts?: CallOpts$
|
|
13610
|
+
list(query?: TaskListQuery, opts?: CallOpts$4): Promise<TaskListPage>;
|
|
12174
13611
|
/** `GET /v1/tasks/pending` — tasks awaiting your confirmation (max 100). */
|
|
12175
|
-
pending(opts?: CallOpts$
|
|
13612
|
+
pending(opts?: CallOpts$4): Promise<Task[]>;
|
|
12176
13613
|
/** `GET /v1/tasks/stats?since=` */
|
|
12177
|
-
stats(since?: string | Date, opts?: CallOpts$
|
|
13614
|
+
stats(since?: string | Date, opts?: CallOpts$4): Promise<TaskStats>;
|
|
12178
13615
|
/** `GET /v1/tasks/{id}` */
|
|
12179
|
-
get(id: string, opts?: CallOpts$
|
|
13616
|
+
get(id: string, opts?: CallOpts$4): Promise<Task>;
|
|
12180
13617
|
/** `POST /v1/tasks/{id}/confirm` — answer "Did codai solve it?". */
|
|
12181
|
-
confirm(id: string, body: TaskConfirmRequest, opts?: CallOpts$
|
|
13618
|
+
confirm(id: string, body: TaskConfirmRequest, opts?: CallOpts$4): Promise<TaskConfirmResponse>;
|
|
12182
13619
|
}
|
|
12183
13620
|
|
|
12184
13621
|
/** `/v1/triggers/*` + `/v1/notifications/*` — event triggers (webhooks → agent sessions) and the inbox. */
|
|
@@ -12197,7 +13634,7 @@ type NotificationsRead = Reply<'markNotificationsRead'>;
|
|
|
12197
13634
|
type NotificationsDeleted = {
|
|
12198
13635
|
readonly deleted: number;
|
|
12199
13636
|
};
|
|
12200
|
-
type CallOpts$
|
|
13637
|
+
type CallOpts$3 = {
|
|
12201
13638
|
ext?: CodaiRequestExtensions;
|
|
12202
13639
|
signal?: AbortSignal;
|
|
12203
13640
|
};
|
|
@@ -12205,22 +13642,22 @@ declare class Triggers {
|
|
|
12205
13642
|
private readonly http;
|
|
12206
13643
|
constructor(http: HttpClient);
|
|
12207
13644
|
/** `GET /v1/triggers` — never includes the signing secret. */
|
|
12208
|
-
list(opts?: CallOpts$
|
|
13645
|
+
list(opts?: CallOpts$3): Promise<TriggerList>;
|
|
12209
13646
|
/** `POST /v1/triggers` — the response carries the signing `secret` ONCE. */
|
|
12210
|
-
create(body: TriggerCreateRequest, opts?: CallOpts$
|
|
13647
|
+
create(body: TriggerCreateRequest, opts?: CallOpts$3): Promise<TriggerCreated>;
|
|
12211
13648
|
/** `PATCH /v1/triggers/{id}` — name / enabled / policy. */
|
|
12212
|
-
update(id: string, body: TriggerPatch, opts?: CallOpts$
|
|
13649
|
+
update(id: string, body: TriggerPatch, opts?: CallOpts$3): Promise<TriggerUpdated>;
|
|
12213
13650
|
/** `DELETE /v1/triggers/{id}` — its hook URL stops working immediately. */
|
|
12214
|
-
delete(id: string, opts?: CallOpts$
|
|
13651
|
+
delete(id: string, opts?: CallOpts$3): Promise<Reply<'deleteTrigger'>>;
|
|
12215
13652
|
/** `POST /v1/triggers/{id}/rotate-secret` — new secret, shown once. */
|
|
12216
|
-
rotateSecret(id: string, opts?: CallOpts$
|
|
13653
|
+
rotateSecret(id: string, opts?: CallOpts$3): Promise<Reply<'rotateTriggerSecret'>>;
|
|
12217
13654
|
/** `POST /v1/triggers/{id}/test` — manual fire through the full pipeline; returns the decision + reason. */
|
|
12218
13655
|
/** `PUT /v1/triggers/{id}/secret` — store a secret issued by the source (e.g. a Sentry integration's client secret). */
|
|
12219
|
-
setSecret(id: string, secret: string, opts?: CallOpts$
|
|
13656
|
+
setSecret(id: string, secret: string, opts?: CallOpts$3): Promise<Reply<'setTriggerSecret'>>;
|
|
12220
13657
|
/** `POST /v1/triggers/{id}/test` — manual fire through the full pipeline; returns the decision + reason. */
|
|
12221
|
-
test(id: string, body?: TriggerTestRequest, opts?: CallOpts$
|
|
13658
|
+
test(id: string, body?: TriggerTestRequest, opts?: CallOpts$3): Promise<TriggerTestResult>;
|
|
12222
13659
|
/** `GET /v1/triggers/{id}/events?limit=` — recent deliveries with decisions. */
|
|
12223
|
-
events(id: string, limit?: number, opts?: CallOpts$
|
|
13660
|
+
events(id: string, limit?: number, opts?: CallOpts$3): Promise<TriggerEvents>;
|
|
12224
13661
|
/**
|
|
12225
13662
|
* `POST /v1/hooks/{id}` — send an event to a `generic` / `form` trigger from your own code. Signs the body
|
|
12226
13663
|
* (`X-Codai-Signature: t=<unix>,v1=HMAC_SHA256(secret, "<t>.<body>")`, WebCrypto — Node 20+, browsers, Deno,
|
|
@@ -12235,7 +13672,7 @@ declare class Triggers {
|
|
|
12235
13672
|
labels?: string[];
|
|
12236
13673
|
dedupe_key?: string;
|
|
12237
13674
|
resolved?: boolean;
|
|
12238
|
-
}, opts?: CallOpts$
|
|
13675
|
+
}, opts?: CallOpts$3 & {
|
|
12239
13676
|
deliveryId?: string;
|
|
12240
13677
|
}): Promise<Reply<'receiveTriggerHook'>>;
|
|
12241
13678
|
}
|
|
@@ -12246,18 +13683,52 @@ declare class Notifications {
|
|
|
12246
13683
|
list(query?: {
|
|
12247
13684
|
unread?: boolean;
|
|
12248
13685
|
limit?: number;
|
|
12249
|
-
}, opts?: CallOpts$
|
|
13686
|
+
}, opts?: CallOpts$3): Promise<NotificationList>;
|
|
12250
13687
|
/** `POST /v1/notifications/read` — `ids` omitted = every unread one. */
|
|
12251
|
-
markRead(ids?: number[], opts?: CallOpts$
|
|
13688
|
+
markRead(ids?: number[], opts?: CallOpts$3): Promise<NotificationsRead>;
|
|
12252
13689
|
/** `DELETE /v1/notifications/:id` — `{ deleted: 0 }` when the id is missing or not yours. */
|
|
12253
|
-
delete(id: number, opts?: CallOpts$
|
|
13690
|
+
delete(id: number, opts?: CallOpts$3): Promise<NotificationsDeleted>;
|
|
12254
13691
|
/** `POST /v1/notifications/delete` — 1..200 ids; ids of other users are skipped. */
|
|
12255
|
-
deleteMany(ids: number[], opts?: CallOpts$
|
|
13692
|
+
deleteMany(ids: number[], opts?: CallOpts$3): Promise<NotificationsDeleted>;
|
|
13693
|
+
}
|
|
13694
|
+
|
|
13695
|
+
/** `/v1/prompts/*` — pending prompts: ready-to-paste prompts left for a future chat (handoffs, follow-ups). */
|
|
13696
|
+
|
|
13697
|
+
type Prompt = Schema<'Prompt'>;
|
|
13698
|
+
type PromptStatus = Schema<'PromptStatus'>;
|
|
13699
|
+
type PromptSource = Schema<'PromptSource'>;
|
|
13700
|
+
type PromptList = Reply<'listPrompts'>;
|
|
13701
|
+
type PromptListQuery = Mutable<QueryOf<'listPrompts'>>;
|
|
13702
|
+
type PromptCreateRequest = Mutable<Body<'createPrompt'>>;
|
|
13703
|
+
type PromptCreated = Reply<'createPrompt'>;
|
|
13704
|
+
type PromptPatch = Mutable<Body<'updatePrompt'>>;
|
|
13705
|
+
type PromptLaunched = Reply<'launchPrompt'>;
|
|
13706
|
+
type PromptDeleted = Reply<'deletePrompt'>;
|
|
13707
|
+
type CallOpts$2 = {
|
|
13708
|
+
ext?: CodaiRequestExtensions;
|
|
13709
|
+
signal?: AbortSignal;
|
|
13710
|
+
};
|
|
13711
|
+
declare class Prompts {
|
|
13712
|
+
private readonly http;
|
|
13713
|
+
constructor(http: HttpClient);
|
|
13714
|
+
/** `GET /v1/prompts?status=&limit=` — default `open`; `due` = open and `not_before` empty or passed. */
|
|
13715
|
+
list(query?: PromptListQuery, opts?: CallOpts$2): Promise<PromptList>;
|
|
13716
|
+
/** `POST /v1/prompts` — idempotent on the text (`created: false` for a duplicate); `goal_key` supersedes older open ones. */
|
|
13717
|
+
create(body: PromptCreateRequest, opts?: CallOpts$2): Promise<PromptCreated>;
|
|
13718
|
+
/** `GET /v1/prompts/{id}`. */
|
|
13719
|
+
get(id: string, opts?: CallOpts$2): Promise<Prompt>;
|
|
13720
|
+
/** `PATCH /v1/prompts/{id}` — edit, snooze (`not_before`), close (`status: 'done' | 'dismissed'`). */
|
|
13721
|
+
update(id: string, body: PromptPatch, opts?: CallOpts$2): Promise<Prompt>;
|
|
13722
|
+
/** `DELETE /v1/prompts/{id}` — `{ deleted: 0 }` when the id is missing or not yours. */
|
|
13723
|
+
delete(id: string, opts?: CallOpts$2): Promise<PromptDeleted>;
|
|
13724
|
+
/** `POST /v1/prompts/{id}/launch` — new shared session + `send` control on a device; the prompt becomes `launched`. */
|
|
13725
|
+
launch(id: string, deviceId?: string, opts?: CallOpts$2): Promise<PromptLaunched>;
|
|
12256
13726
|
}
|
|
12257
13727
|
|
|
12258
13728
|
/** `POST /v1/tokens` — ephemeral scoped tokens for browsers / webviews. */
|
|
12259
13729
|
|
|
12260
|
-
|
|
13730
|
+
/** `live` = realtime + audio in one token (a live co-host's speech-to-text and text-to-speech). */
|
|
13731
|
+
type EphemeralScope = 'realtime' | 'audio' | 'embeddings' | 'live';
|
|
12261
13732
|
type EphemeralTokenResponse = Reply<'createEphemeralToken'>;
|
|
12262
13733
|
interface EphemeralToken {
|
|
12263
13734
|
token: string;
|
|
@@ -12284,7 +13755,7 @@ type ToolSearchRequest = Mutable<Body<'toolsSearch'>>;
|
|
|
12284
13755
|
type ToolSearchResponse = Reply<'toolsSearch'>;
|
|
12285
13756
|
type ToolFetchRequest = Mutable<Body<'toolsFetch'>>;
|
|
12286
13757
|
type ToolFetchResponse = Reply<'toolsFetch'>;
|
|
12287
|
-
type CallOpts = {
|
|
13758
|
+
type CallOpts$1 = {
|
|
12288
13759
|
ext?: CodaiRequestExtensions;
|
|
12289
13760
|
signal?: AbortSignal;
|
|
12290
13761
|
};
|
|
@@ -12292,9 +13763,30 @@ declare class Tools {
|
|
|
12292
13763
|
private readonly http;
|
|
12293
13764
|
constructor(http: HttpClient);
|
|
12294
13765
|
/** `POST /v1/tools/search` — verified web search (never falls back to an unverified provider). */
|
|
12295
|
-
search(body: ToolSearchRequest, opts?: CallOpts): Promise<ToolSearchResponse>;
|
|
13766
|
+
search(body: ToolSearchRequest, opts?: CallOpts$1): Promise<ToolSearchResponse>;
|
|
12296
13767
|
/** `POST /v1/tools/fetch` — fetch + extract a public page (SSRF-guarded). */
|
|
12297
|
-
fetch(body: ToolFetchRequest, opts?: CallOpts): Promise<ToolFetchResponse>;
|
|
13768
|
+
fetch(body: ToolFetchRequest, opts?: CallOpts$1): Promise<ToolFetchResponse>;
|
|
13769
|
+
}
|
|
13770
|
+
|
|
13771
|
+
/**
|
|
13772
|
+
* `/v1/verify/agent-output*` — EXPERIMENTAL, unaudited (HIDE protocol) verification of
|
|
13773
|
+
* signed agent outputs. Provenance only, never authentication. Unauthenticated endpoints.
|
|
13774
|
+
*/
|
|
13775
|
+
|
|
13776
|
+
type EnvironmentTaskOutputSignature = Schema<'EnvironmentTaskOutputSignature'>;
|
|
13777
|
+
type AgentOutputKey = Reply<'getAgentOutputKey'>;
|
|
13778
|
+
type AgentOutputVerifyBody = Mutable<Body<'verifyAgentOutput'>>;
|
|
13779
|
+
type AgentOutputVerifyResult = Reply<'verifyAgentOutput'>;
|
|
13780
|
+
type CallOpts = {
|
|
13781
|
+
signal?: AbortSignal;
|
|
13782
|
+
};
|
|
13783
|
+
declare class Verify {
|
|
13784
|
+
private readonly http;
|
|
13785
|
+
constructor(http: HttpClient);
|
|
13786
|
+
/** `GET /v1/verify/agent-output/key` — `{ enabled: false }` when signing is off. */
|
|
13787
|
+
agentOutputKey(opts?: CallOpts): Promise<AgentOutputKey>;
|
|
13788
|
+
/** `POST /v1/verify/agent-output` — 503 `signing_disabled` when signing is off. */
|
|
13789
|
+
agentOutput(body: AgentOutputVerifyBody, opts?: CallOpts): Promise<AgentOutputVerifyResult>;
|
|
12298
13790
|
}
|
|
12299
13791
|
|
|
12300
13792
|
/**
|
|
@@ -12321,12 +13813,14 @@ declare const RESOLVE_OPERATION_METHODS: Record<string, string>;
|
|
|
12321
13813
|
* method — see `OPERATION_METHODS`). Resources hang off the `Codai` client:
|
|
12322
13814
|
*
|
|
12323
13815
|
* client.chat.completions.create / .stream client.messages / client.responses
|
|
12324
|
-
* client.embeddings / client.audio / client.tokens / client.models / client.health
|
|
12325
|
-
* client.systemOne.create (typed decisions, codai-s1)
|
|
13816
|
+
* client.embeddings / client.images / client.audio / client.tokens / client.models / client.health
|
|
13817
|
+
* client.systemOne.create / .batch (typed decisions, codai-s1)
|
|
13818
|
+
* client.realtime.connect (WebSocket live STT / voice; not an OpenAPI operation)
|
|
12326
13819
|
* client.agents.run + client.agents.runs.* client.tools.search / .fetch
|
|
12327
13820
|
* client.tasks.* client.sessions.* (events, controls, lease, shares, stream)
|
|
12328
13821
|
* client.devices.* / client.hosts.* client.orgs.* / client.account / client.receipt
|
|
12329
13822
|
* client.projects.* client.environments.* (members, ports, secrets)
|
|
13823
|
+
* client.verify.agentOutputKey / .agentOutput (EXPERIMENTAL HIDE-signed agent outputs)
|
|
12330
13824
|
* client.feedback / client.phoneModels
|
|
12331
13825
|
* client.resolve.* (verified bug fixes on https://resolve.codai.ro — resolve.yaml)
|
|
12332
13826
|
*
|
|
@@ -12397,10 +13891,14 @@ declare class Codai {
|
|
|
12397
13891
|
embeddings: number[][];
|
|
12398
13892
|
raw: unknown;
|
|
12399
13893
|
}>);
|
|
13894
|
+
/** Image generation and editing (`images.generate({ prompt })`, `images.edit({ prompt, image })`; codai-image = gemini-3.1-flash-image, EU). */
|
|
13895
|
+
readonly images: Images;
|
|
12400
13896
|
readonly audio: Audio;
|
|
12401
13897
|
/** Typed decisions from codai-s1 (`systemOne.create({ state, questions })`). */
|
|
12402
13898
|
readonly systemOne: SystemOne;
|
|
12403
13899
|
readonly tokens: Tokens;
|
|
13900
|
+
/** WebSocket realtime sessions (`realtime.connect({ model, language, token })`) — live STT and voice. */
|
|
13901
|
+
readonly realtime: Realtime;
|
|
12404
13902
|
readonly models: Models & (() => Promise<Array<{
|
|
12405
13903
|
id: string;
|
|
12406
13904
|
}>>);
|
|
@@ -12412,12 +13910,16 @@ declare class Codai {
|
|
|
12412
13910
|
readonly triggers: Triggers;
|
|
12413
13911
|
/** Inbox of trigger / cloud-task notifications. */
|
|
12414
13912
|
readonly notifications: Notifications;
|
|
13913
|
+
/** Pending prompts — ready-to-paste prompts left for a future chat (handoffs, dated follow-ups). */
|
|
13914
|
+
readonly prompts: Prompts;
|
|
12415
13915
|
readonly sessions: Sessions;
|
|
12416
13916
|
readonly devices: Devices;
|
|
12417
13917
|
readonly hosts: Hosts;
|
|
12418
13918
|
readonly orgs: Orgs;
|
|
12419
13919
|
readonly projects: Projects;
|
|
12420
13920
|
readonly environments: Environments;
|
|
13921
|
+
/** EXPERIMENTAL (HIDE, unaudited): verify signed agent outputs. Provenance only. */
|
|
13922
|
+
readonly verify: Verify;
|
|
12421
13923
|
readonly account: Account;
|
|
12422
13924
|
readonly receipt: Receipts;
|
|
12423
13925
|
readonly feedback: Feedback & ((requestId: string, rating: 1 | -1, comment?: string) => Promise<void>);
|
|
@@ -12433,4 +13935,4 @@ declare class Codai {
|
|
|
12433
13935
|
private legacyExt;
|
|
12434
13936
|
}
|
|
12435
13937
|
|
|
12436
|
-
export { Account, type AccountPatchRequest, type AccountPatchResponse, type AccountView, type AgentRun, type AgentRunAccepted, type AgentRunCreateRequest, type AgentRunRequest, type AgentRunResult, type AgentRunStats, type AgentRunStatus, type AgentRunStep, type AgentRunStreamEvent, AgentRuns, type AgentSyncResult, Agents, Audio, Chat, type ChatCallOptions, type ChatCompletionChunk, type ChatCompletionInput, type ChatCompletionRequest, type ChatCompletionResponse, ChatCompletions, type ChatMessage, type ChatOptions, type ChatResult, type ChatStream, type ChatStreamResult, type ChatTool, type ChatToolCall, type ChatUsage, Codai, type CodaiClientOptions, CodaiError, type CodaiRequestExtensions, type Device, type DevicePatch, type DevicePatched, Devices, type DispatchInbox, Embeddings, type EmbeddingsOptions, type EmbeddingsRequest, type EmbeddingsResponse, type EmbeddingsResult, type Environment, type EnvironmentAddMemberBody, type EnvironmentCreateBody, type EnvironmentDetail, type EnvironmentEnrollBody, type EnvironmentEnrollToken, type EnvironmentEnrolled, type EnvironmentMember, type EnvironmentMemberCreated, EnvironmentMembers, type EnvironmentPatchBody, type EnvironmentPort, type EnvironmentPortBody, EnvironmentPorts, type EnvironmentProvider, type EnvironmentRole, type EnvironmentSecret, type EnvironmentSecretSet, EnvironmentSecrets, type EnvironmentSshCa, type EnvironmentSshCert, type EnvironmentSshCertBody, type EnvironmentState, type EnvironmentTaskCreateBody, type EnvironmentTaskCreated, type EnvironmentTaskDetail, type EnvironmentTaskList, EnvironmentTasks, type EnvironmentTransition, Environments, type EphemeralScope, type EphemeralToken, type EphemeralTokenResponse, type ErrorCode, Feedback, type FeedbackRequest, type FeedbackResponse, Health, type HealthReadyResponse, type HealthResponse, type HostExecBody, type HostExecRequest, type HostExecResponse, type HostExecResultBody, type HostOp, type HostPresence, type HostStreamEvent, Hosts, HttpClient, type ListEnvironmentsQuery, type MessageCallOptions, type MessageInput, type MessageRequest, type MessageResponse, type MessageResult, type MessageStream, type MessageStreamEvent, type MessageStreamResult, Messages, type Model, type ModelList, Models, type NotificationList, Notifications, type NotificationsDeleted, type NotificationsRead, OPERATION_METHODS, type Org, type OrgAddMemberBody, type OrgMember, OrgMembers, type OrgRole, Orgs, type PhoneModel, PhoneModels, type Project, type ProjectCreateBody, type ProjectDetail, type ProjectIsolation, type ProjectPatchBody, Projects, RESOLVE_ATTESTATION_PAYLOAD_TYPE, RESOLVE_OPERATION_METHODS, RESOLVE_TERMINAL_STATUSES, type Receipt, Receipts, type RequestOptions, Resolve, type ResolveAccepted, type ResolveAttestation, type ResolveAttestationEnvelope, type ResolveAttestationVerifyResult, type ResolveBalance, type components as ResolveComponents, type ResolveDeclined, ResolveError, type ResolveHealth, type ResolveInsufficientFunds, ResolveInsufficientFundsError, type ResolveIntake, type ResolveJob, type ResolveJobStatus, type ResolveKey, type ResolveKeys, type operations as ResolveOperations, type ResolvePaidWith, type paths as ResolvePaths, type ResolveQuote, type ResolveReproTest, type ResolveSubmitResult, type ResolveTier, type ResolveValidationDetails, type ResolveWaitOptions, type ResolveWebhookEvent, type ResolveWebhookEventName, type ResolveWebhookJob, Responses, type ResponsesCallOptions, type ResponsesInput, type ResponsesRequest, type ResponsesResponse, type ResponsesResult, type ResponsesStream, type ResponsesStreamEvent, type ResponsesStreamResult, STREAMING_OPERATIONS, type Session, type SessionControl, type SessionControlAccepted, type SessionControlRequest, SessionControls, type SessionCreateRequest, type SessionDetail, type SessionDispatchRequest, type SessionDispatchResponse, type SessionEvent, SessionEvents, type SessionEventsAppendRequest, type SessionEventsAppendResponse, type SessionEventsPage, type SessionIncomingEvent, SessionLease, type SessionLeaseClaimRequest, type SessionLeaseResponse, type SessionListItem, type SessionPatchRequest, type SessionShare, type SessionShareCreateRequest, type SessionShareCreated, SessionShares, type SessionStreamEvent, Sessions, type SharedSession, type SpeechRequest, type SpeechResult, type SseFrame, type StatusResponse, type Task, type TaskConfirmRequest, type TaskConfirmResponse, type TaskListPage, type TaskListQuery, type TaskOutcome, type TaskStats, Tasks, type TokenUsage, Tokens, type ToolFetchRequest, type ToolFetchResponse, type ToolSearchRequest, type ToolSearchResponse, Tools, type TranscriptionOptions, type TranscriptionResponse, type TranscriptionResult, type TriggerCreateRequest, type TriggerCreated, type TriggerEvents, type TriggerList, type TriggerPatch, type TriggerTestRequest, type TriggerTestResult, type TriggerUpdated, Triggers, type VerifyResolveWebhookOptions, type components$1 as components, Codai as default, extensionHeaders, frameJson, mergeToolCall, type operations$1 as operations, type paths$1 as paths, readSse, resolveAttestationStatement, verifyAttestationWithKeys, verifyResolveWebhook };
|
|
13938
|
+
export { Account, type AccountPatchRequest, type AccountPatchResponse, type AccountView, type AgentOutputKey, type AgentOutputVerifyBody, type AgentOutputVerifyResult, type AgentRun, type AgentRunAccepted, type AgentRunCreateRequest, type AgentRunRequest, type AgentRunResult, type AgentRunStats, type AgentRunStatus, type AgentRunStep, type AgentRunStreamEvent, AgentRuns, type AgentSyncResult, Agents, Audio, Chat, type ChatCallOptions, type ChatCompletionChunk, type ChatCompletionInput, type ChatCompletionRequest, type ChatCompletionResponse, ChatCompletions, type ChatMessage, type ChatOptions, type ChatResult, type ChatStream, type ChatStreamResult, type ChatTool, type ChatToolCall, type ChatUsage, Codai, type CodaiClientOptions, CodaiError, type CodaiRequestExtensions, type Device, type DevicePatch, type DevicePatched, Devices, type DispatchInbox, Embeddings, type EmbeddingsOptions, type EmbeddingsRequest, type EmbeddingsResponse, type EmbeddingsResult, type Environment, type EnvironmentAddMemberBody, type EnvironmentCreateBody, type EnvironmentDetail, type EnvironmentEnrollBody, type EnvironmentEnrollToken, type EnvironmentEnrolled, type EnvironmentMember, type EnvironmentMemberCreated, EnvironmentMembers, type EnvironmentPatchBody, type EnvironmentPort, type EnvironmentPortBody, EnvironmentPorts, type EnvironmentProvider, type EnvironmentRole, type EnvironmentSecret, type EnvironmentSecretSet, EnvironmentSecrets, type EnvironmentSshCa, type EnvironmentSshCert, type EnvironmentSshCertBody, type EnvironmentState, type EnvironmentTaskCreateBody, type EnvironmentTaskCreated, type EnvironmentTaskDetail, type EnvironmentTaskList, type EnvironmentTaskOutputSignature, EnvironmentTasks, type EnvironmentTransition, Environments, type EphemeralScope, type EphemeralToken, type EphemeralTokenResponse, type ErrorCode, Feedback, type FeedbackRequest, type FeedbackResponse, Health, type HealthReadyResponse, type HealthResponse, type HostExecBody, type HostExecRequest, type HostExecResponse, type HostExecResultBody, type HostOp, type HostPresence, type HostStreamEvent, Hosts, HttpClient, type ImageEditRequest, Images, type ImagesRequest, type ImagesResponse, type ImagesResult, type ListEnvironmentsQuery, type MessageCallOptions, type MessageInput, type MessageRequest, type MessageResponse, type MessageResult, type MessageStream, type MessageStreamEvent, type MessageStreamResult, Messages, type Model, type ModelList, Models, type NotificationList, Notifications, type NotificationsDeleted, type NotificationsRead, OPERATION_METHODS, type Org, type OrgAddMemberBody, type OrgMember, OrgMembers, type OrgRole, Orgs, type PhoneModel, PhoneModels, type Project, type ProjectCreateBody, type ProjectDetail, type ProjectIsolation, type ProjectPatchBody, Projects, type Prompt, type PromptCreateRequest, type PromptCreated, type PromptDeleted, type PromptLaunched, type PromptList, type PromptListQuery, type PromptPatch, type PromptSource, type PromptStatus, Prompts, RESOLVE_ATTESTATION_PAYLOAD_TYPE, RESOLVE_OPERATION_METHODS, RESOLVE_TERMINAL_STATUSES, Realtime, type RealtimeAnyEvent, type RealtimeConnectOptions, type RealtimeEvent, type RealtimeModel, RealtimeSession, type RealtimeSocket, type RealtimeSocketCtor, type RealtimeUnknownEvent, type Receipt, Receipts, type RequestOptions, Resolve, type ResolveAccepted, type ResolveAttestation, type ResolveAttestationEnvelope, type ResolveAttestationVerifyResult, type ResolveBalance, type components as ResolveComponents, type ResolveDeclined, ResolveError, type ResolveHealth, type ResolveInsufficientFunds, ResolveInsufficientFundsError, type ResolveIntake, type ResolveJob, type ResolveJobStatus, type ResolveKey, type ResolveKeys, type operations as ResolveOperations, type ResolvePaidWith, type paths as ResolvePaths, type ResolveQuote, type ResolveReproTest, type ResolveSubmitResult, type ResolveTier, type ResolveValidationDetails, type ResolveWaitOptions, type ResolveWebhookEvent, type ResolveWebhookEventName, type ResolveWebhookJob, Responses, type ResponsesCallOptions, type ResponsesInput, type ResponsesRequest, type ResponsesResponse, type ResponsesResult, type ResponsesStream, type ResponsesStreamEvent, type ResponsesStreamResult, STREAMING_OPERATIONS, type Session, type SessionControl, type SessionControlAccepted, type SessionControlRequest, SessionControls, type SessionCreateRequest, type SessionDetail, type SessionDispatchMode, type SessionDispatchRequest, type SessionDispatchResponse, type SessionEvent, SessionEvents, type SessionEventsAppendRequest, type SessionEventsAppendResponse, type SessionEventsPage, type SessionIncomingEvent, SessionLease, type SessionLeaseClaimRequest, type SessionLeaseResponse, type SessionListItem, type SessionPatchRequest, type SessionShare, type SessionShareCreateRequest, type SessionShareCreated, SessionShares, type SessionStreamEvent, Sessions, type SharedSession, type SpeechRequest, type SpeechResult, type SpeechStreamEvent, type SpeechStreamEventSchema, type SpeechStreamRequest, type SseFrame, type StatusResponse, SystemOne, type SystemOneAnswers, type SystemOneBatchRequest, type SystemOneBatchResponse, type SystemOneRequest, type SystemOneResponse, type SystemOneSingleRequest, type SystemOneSingleResponse, type Task, type TaskConfirmRequest, type TaskConfirmResponse, type TaskListPage, type TaskListQuery, type TaskOutcome, type TaskStats, Tasks, type TokenUsage, Tokens, type ToolFetchRequest, type ToolFetchResponse, type ToolSearchRequest, type ToolSearchResponse, Tools, type TranscriptionOptions, type TranscriptionResponse, type TranscriptionResult, type TriggerCreateRequest, type TriggerCreated, type TriggerEvents, type TriggerList, type TriggerPatch, type TriggerTestRequest, type TriggerTestResult, type TriggerUpdated, Triggers, Verify, type VerifyResolveWebhookOptions, type components$1 as components, Codai as default, extensionHeaders, frameJson, mergeToolCall, type operations$1 as operations, type paths$1 as paths, readSse, realtimeUrl, resolveAttestationStatement, verifyAttestationWithKeys, verifyResolveWebhook };
|