@talqing/sdk 0.4.1 → 0.4.2

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.
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  // This file is auto-generated by @hey-api/openapi-ts
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.TalqingApi = exports.Webhooks = exports.Tools2 = exports.Versions3 = exports.Telephony = exports.Providers = exports.PhoneNumbers = exports.Accounts = exports.Tasks2 = exports.Versions2 = exports.Runs = exports.Secrets = exports.Schemas = exports.Functions = exports.Observability = exports.Knowledge2 = exports.Pages = exports.Nodes = exports.Integrations = exports.Triggers = exports.McpTools = exports.Email = exports.Senders = exports.Batches2 = exports.Sends = exports.Recipients2 = exports.Copilot = exports.Tools = exports.Tasks = exports.Knowledge = exports.Agents2 = exports.Conversations = exports.Sessions = exports.Items = exports.Messages = exports.Catalog = exports.Voices = exports.Elevenlabs = exports.Avatars = exports.Calls = exports.ScreenRecording = exports.Recording = exports.Batches = exports.Recipients = exports.Analysis = exports.ProviderKeys = exports.Billing = exports.Credits = exports.Agents = exports.Versions = void 0;
4
+ exports.Tools2 = exports.Versions3 = exports.Tasks2 = exports.Versions2 = exports.Runs = exports.Telephony = exports.Providers = exports.PhoneNumbers = exports.Accounts = exports.Streams = exports.Secrets = exports.Schemas = exports.Functions = exports.Observability = exports.Knowledge2 = exports.Pages = exports.Nodes = exports.Integrations = exports.Triggers = exports.McpTools = exports.Email = exports.Senders = exports.Batches2 = exports.Sends = exports.Recipients2 = exports.Copilot = exports.Tools = exports.Tasks = exports.Knowledge = exports.Agents2 = exports.Conversations = exports.Sessions = exports.Items = exports.Messages = exports.Catalog = exports.Voices = exports.Elevenlabs = exports.Models = exports.Avatars = exports.Calls = exports.ScreenRecording = exports.Recording = exports.Batches = exports.Recipients = exports.Analysis = exports.ProviderKeys = exports.Billing = exports.Credits = exports.Agents = exports.Versions = void 0;
5
+ exports.TalqingApi = exports.Webhooks = void 0;
5
6
  const client_gen_js_1 = require("./client.gen.js");
6
7
  const index_js_1 = require("./client/index.js");
7
8
  class HeyApiClient {
@@ -1092,6 +1093,37 @@ class Avatars extends HeyApiClient {
1092
1093
  }
1093
1094
  }
1094
1095
  exports.Avatars = Avatars;
1096
+ class Models extends HeyApiClient {
1097
+ /**
1098
+ * Search Models
1099
+ *
1100
+ * Search the language models a provider offers too many of to list.
1101
+ *
1102
+ * `GET /catalog` carries every model except these. A provider marked
1103
+ * `browse: "search"` there — OpenRouter — reaches hundreds of models through
1104
+ * one key, so they are searched a page at a time instead. With no `q` the order
1105
+ * is real-world popularity. Everything returned is a valid `llm.model`.
1106
+ */
1107
+ search(parameters, options) {
1108
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [
1109
+ { in: 'query', key: 'q' },
1110
+ { in: 'query', key: 'limit' },
1111
+ { in: 'query', key: 'cursor' }
1112
+ ] }]);
1113
+ return (options?.client ?? this.client).get({
1114
+ responseStyle: 'data',
1115
+ security: [{ scheme: 'bearer', type: 'http' }, {
1116
+ in: 'cookie',
1117
+ name: 'talqing_session',
1118
+ type: 'apiKey'
1119
+ }],
1120
+ url: '/v1/catalog/models',
1121
+ ...options,
1122
+ ...params
1123
+ });
1124
+ }
1125
+ }
1126
+ exports.Models = Models;
1095
1127
  class Elevenlabs extends HeyApiClient {
1096
1128
  /**
1097
1129
  * Add Elevenlabs Voice
@@ -1207,6 +1239,10 @@ class Catalog extends HeyApiClient {
1207
1239
  * `realtime` lists the speech-to-speech models. One of those replaces `stt`,
1208
1240
  * `llm` and `tts` together, so an agent sets either `realtime` or the three
1209
1241
  * cascade slots, never both.
1242
+ *
1243
+ * One provider's models are NOT here: a `providers` entry whose `browse` is
1244
+ * `search` reaches hundreds of them through one key, and they are searched
1245
+ * through `GET /catalog/models` instead.
1210
1246
  */
1211
1247
  get(options) {
1212
1248
  return (options?.client ?? this.client).get({
@@ -1223,6 +1259,9 @@ class Catalog extends HeyApiClient {
1223
1259
  get avatars() {
1224
1260
  return this._avatars ?? (this._avatars = new Avatars({ client: this.client }));
1225
1261
  }
1262
+ get models() {
1263
+ return this._models ?? (this._models = new Models({ client: this.client }));
1264
+ }
1226
1265
  get voices() {
1227
1266
  return this._voices ?? (this._voices = new Voices({ client: this.client }));
1228
1267
  }
@@ -1804,7 +1843,8 @@ class Recipients2 extends HeyApiClient {
1804
1843
  * every row it refuses. Rows already sent or queued are never redrafted.
1805
1844
  *
1806
1845
  * This revives a batch that had finished drafting, and a person's edited cells
1807
- * survive unless you pass `clear_overrides`.
1846
+ * survive unless you pass `clear_overrides` — and are what the task is given.
1847
+ * Refused on a canceled batch, whose rows can never draft again.
1808
1848
  */
1809
1849
  redraft(parameters, options) {
1810
1850
  const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'batch_id' }, { key: 'redraftRequest', map: 'body' }] }]);
@@ -1852,11 +1892,10 @@ class Recipients2 extends HeyApiClient {
1852
1892
  /**
1853
1893
  * Skip Email Batch Recipients
1854
1894
  *
1855
- * Take drafted rows out of consideration. Reversible with `restore`.
1895
+ * Take rows out of consideration. Reversible with `restore`.
1856
1896
  *
1857
- * Takes either `recipient_ids` or `selection: "all_eligible"`, which here means
1858
- * every row that has a draft. The reversible verbs keep that shorthand while
1859
- * `send` does not, because the rule is about irreversibility rather than bulk.
1897
+ * Accepts drafted rows and rows whose drafting failed. Takes either
1898
+ * `recipient_ids` or `selection: "all_eligible"`, which here means both.
1860
1899
  */
1861
1900
  skip(parameters, options) {
1862
1901
  const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'batch_id' }, { key: 'selectRecipientsRequest', map: 'body' }] }]);
@@ -1941,8 +1980,8 @@ class Sends extends HeyApiClient {
1941
1980
  *
1942
1981
  * One send: where its rows are, and when it next does something.
1943
1982
  *
1944
- * `next_send_at` covers all three reasons a send waits a start time, a closed
1945
- * window, and a daily cap already spent.
1983
+ * `next_send_reason` says which gate is holding it`start`, `window`,
1984
+ * `daily_cap`, `retry` or `gap`.
1946
1985
  */
1947
1986
  get(parameters, options) {
1948
1987
  const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'batch_id' }, { in: 'path', key: 'send_id' }] }]);
@@ -3078,154 +3117,11 @@ class Secrets extends HeyApiClient {
3078
3117
  }
3079
3118
  }
3080
3119
  exports.Secrets = Secrets;
3081
- class Runs extends HeyApiClient {
3082
- /**
3083
- * List Task Runs
3084
- *
3085
- * This task's runs, newest first, each with its output, trace and cost.
3086
- *
3087
- * `task_version` says which published definition each one ran, and is null for
3088
- * a run of the draft.
3089
- */
3090
- list(parameters, options) {
3091
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [
3092
- { in: 'path', key: 'task_id' },
3093
- { in: 'query', key: 'limit' },
3094
- { in: 'query', key: 'offset' }
3095
- ] }]);
3096
- return (options?.client ?? this.client).get({
3097
- responseStyle: 'data',
3098
- security: [{ scheme: 'bearer', type: 'http' }, {
3099
- in: 'cookie',
3100
- name: 'talqing_session',
3101
- type: 'apiKey'
3102
- }],
3103
- url: '/v1/tasks/{task_id}/runs',
3104
- ...options,
3105
- ...params
3106
- });
3107
- }
3108
- /**
3109
- * Run Task
3110
- *
3111
- * Run the task once with the variables you supply, and wait for the result.
3112
- *
3113
- * **This executes for real**: the tools call your endpoints with your secrets,
3114
- * the MCP servers spend your credits, and the model spends your tokens. A task
3115
- * that books a slot, charges a card or sends a message will do so.
3116
- *
3117
- * Runs the published version unless `version` names another one, or `"draft"`
3118
- * to run the unpublished config. `vars` must match what that version declares
3119
- * — an unknown name is refused rather than dropped. The response is the whole
3120
- * run: the structured `output`, a `trace` of every tool call, the steps used
3121
- * and what the tokens cost. On failure `error.type` says whose problem it is.
3122
- * Secrets are redacted.
3123
- */
3124
- create(parameters, options) {
3125
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'task_id' }, { key: 'runTaskRequest', map: 'body' }] }]);
3126
- return (options?.client ?? this.client).post({
3127
- responseStyle: 'data',
3128
- security: [{ scheme: 'bearer', type: 'http' }, {
3129
- in: 'cookie',
3130
- name: 'talqing_session',
3131
- type: 'apiKey'
3132
- }],
3133
- url: '/v1/tasks/{task_id}/runs',
3134
- ...options,
3135
- ...params,
3136
- headers: {
3137
- 'Content-Type': 'application/json',
3138
- ...options?.headers,
3139
- ...params.headers
3140
- }
3141
- });
3142
- }
3143
- /**
3144
- * Get Task Run
3145
- *
3146
- * One run in full: what it produced, every tool it called on the way, and
3147
- * what it cost.
3148
- *
3149
- * This is what answers "why did it write that" for a caller holding one run id
3150
- * — an email batch's review table links each drafted row here. Secret values
3151
- * are redacted from the trace, and a trace that was cut reports it.
3152
- */
3153
- get(parameters, options) {
3154
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'task_id' }, { in: 'path', key: 'run_id' }] }]);
3155
- return (options?.client ?? this.client).get({
3156
- responseStyle: 'data',
3157
- security: [{ scheme: 'bearer', type: 'http' }, {
3158
- in: 'cookie',
3159
- name: 'talqing_session',
3160
- type: 'apiKey'
3161
- }],
3162
- url: '/v1/tasks/{task_id}/runs/{run_id}',
3163
- ...options,
3164
- ...params
3165
- });
3166
- }
3167
- }
3168
- exports.Runs = Runs;
3169
- class Versions2 extends HeyApiClient {
3170
- /**
3171
- * Get Task Version
3172
- *
3173
- * Fetch what one published version of a task actually contains.
3174
- *
3175
- * `get_task` lists the versions and when each was published; this returns the
3176
- * frozen definition itself — prompt, model, output fields and the tool
3177
- * versions it pinned, exactly as they were at that publish.
3178
- */
3179
- get(parameters, options) {
3180
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'task_id' }, { in: 'path', key: 'version' }] }]);
3181
- return (options?.client ?? this.client).get({
3182
- responseStyle: 'data',
3183
- security: [{ scheme: 'bearer', type: 'http' }, {
3184
- in: 'cookie',
3185
- name: 'talqing_session',
3186
- type: 'apiKey'
3187
- }],
3188
- url: '/v1/tasks/{task_id}/versions/{version}',
3189
- ...options,
3190
- ...params
3191
- });
3192
- }
3193
- /**
3194
- * Rollback Task Version
3195
- *
3196
- * Put an earlier published version of a task back into production.
3197
- *
3198
- * That version becomes live **immediately** and **replaces the current draft**,
3199
- * so any unpublished edits are lost. No new version is created. The restored
3200
- * draft tracks each tool's latest published version, not the ones this version
3201
- * pinned.
3202
- */
3203
- rollback(parameters, options) {
3204
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'task_id' }, { in: 'path', key: 'version' }] }]);
3205
- return (options?.client ?? this.client).post({
3206
- responseStyle: 'data',
3207
- security: [{ scheme: 'bearer', type: 'http' }, {
3208
- in: 'cookie',
3209
- name: 'talqing_session',
3210
- type: 'apiKey'
3211
- }],
3212
- url: '/v1/tasks/{task_id}/versions/{version}/rollback',
3213
- ...options,
3214
- ...params
3215
- });
3216
- }
3217
- }
3218
- exports.Versions2 = Versions2;
3219
- class Tasks2 extends HeyApiClient {
3120
+ class Streams extends HeyApiClient {
3220
3121
  /**
3221
- * List Tasks
3222
- *
3223
- * List the workspace's agent tasks.
3122
+ * List Stream Connections
3224
3123
  *
3225
- * A task is an agent nobody talks to: a prompt, one LLM, tools and MCP
3226
- * servers, the variables it takes as input, and the typed result it must
3227
- * produce. Each item carries the full draft config, the published version
3228
- * number (null while it has never been published), and `last_run`.
3124
+ * List WebSocket media-stream connections a partner can dial.
3229
3125
  */
3230
3126
  list(parameters, options) {
3231
3127
  const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'query', key: 'limit' }, { in: 'query', key: 'offset' }] }]);
@@ -3236,24 +3132,21 @@ class Tasks2 extends HeyApiClient {
3236
3132
  name: 'talqing_session',
3237
3133
  type: 'apiKey'
3238
3134
  }],
3239
- url: '/v1/tasks',
3135
+ url: '/v1/streams',
3240
3136
  ...options,
3241
3137
  ...params
3242
3138
  });
3243
3139
  }
3244
3140
  /**
3245
- * Create Task
3141
+ * Create Stream Connection
3246
3142
  *
3247
- * Create an agent task: an agent nobody talks to, which takes named inputs
3248
- * and returns a typed result.
3143
+ * Create a connection a streaming partner can dial.
3249
3144
  *
3250
- * `output` is what makes this a task rather than a chat agent declare the
3251
- * fields the model must produce and it is given a `submit_result` tool built
3252
- * from them. `vars` are its inputs, read as `{{vars.name}}`. The task starts
3253
- * unpublished; publish it before running it.
3145
+ * One connection per agent per dialect: the URL names both, so a second would
3146
+ * only be the same URL again.
3254
3147
  */
3255
3148
  create(parameters, options) {
3256
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ key: 'createTaskRequest', map: 'body' }] }]);
3149
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ key: 'createStreamConnectionRequest', map: 'body' }] }]);
3257
3150
  return (options?.client ?? this.client).post({
3258
3151
  responseStyle: 'data',
3259
3152
  security: [{ scheme: 'bearer', type: 'http' }, {
@@ -3261,7 +3154,7 @@ class Tasks2 extends HeyApiClient {
3261
3154
  name: 'talqing_session',
3262
3155
  type: 'apiKey'
3263
3156
  }],
3264
- url: '/v1/tasks',
3157
+ url: '/v1/streams',
3265
3158
  ...options,
3266
3159
  ...params,
3267
3160
  headers: {
@@ -3272,13 +3165,12 @@ class Tasks2 extends HeyApiClient {
3272
3165
  });
3273
3166
  }
3274
3167
  /**
3275
- * Delete Task
3168
+ * Delete Stream Connection
3276
3169
  *
3277
- * Delete a task and its published versions. Its runs survive, still named
3278
- * after it.
3170
+ * Delete a stream connection. Calls it already carried are kept.
3279
3171
  */
3280
3172
  delete(parameters, options) {
3281
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'task_id' }] }]);
3173
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'connection_id' }] }]);
3282
3174
  return (options?.client ?? this.client).delete({
3283
3175
  responseStyle: 'data',
3284
3176
  security: [{ scheme: 'bearer', type: 'http' }, {
@@ -3286,18 +3178,18 @@ class Tasks2 extends HeyApiClient {
3286
3178
  name: 'talqing_session',
3287
3179
  type: 'apiKey'
3288
3180
  }],
3289
- url: '/v1/tasks/{task_id}',
3181
+ url: '/v1/streams/{connection_id}',
3290
3182
  ...options,
3291
3183
  ...params
3292
3184
  });
3293
3185
  }
3294
3186
  /**
3295
- * Get Task
3187
+ * Get Stream Connection
3296
3188
  *
3297
- * Fetch one task's draft config, published version, history and last run.
3189
+ * One stream connection, with the URL to hand the partner.
3298
3190
  */
3299
3191
  get(parameters, options) {
3300
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'task_id' }] }]);
3192
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'connection_id' }] }]);
3301
3193
  return (options?.client ?? this.client).get({
3302
3194
  responseStyle: 'data',
3303
3195
  security: [{ scheme: 'bearer', type: 'http' }, {
@@ -3305,22 +3197,21 @@ class Tasks2 extends HeyApiClient {
3305
3197
  name: 'talqing_session',
3306
3198
  type: 'apiKey'
3307
3199
  }],
3308
- url: '/v1/tasks/{task_id}',
3200
+ url: '/v1/streams/{connection_id}',
3309
3201
  ...options,
3310
3202
  ...params
3311
3203
  });
3312
3204
  }
3313
3205
  /**
3314
- * Update Task
3206
+ * Patch Stream Connection
3315
3207
  *
3316
- * Replace the task's draft config with the one supplied.
3208
+ * Rename a connection, point it at another agent, or disable it.
3317
3209
  *
3318
- * The whole config is sent, so include every field you mean to keep. Writes
3319
- * land on the draft only — runs and email batches keep using the published
3320
- * version until you publish again.
3210
+ * Disabling refuses new calls immediately and is the only way to stop a URL
3211
+ * answering; calls already running are untouched.
3321
3212
  */
3322
3213
  update(parameters, options) {
3323
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'task_id' }, { key: 'patchTaskRequest', map: 'body' }] }]);
3214
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'connection_id' }, { key: 'patchStreamConnectionRequest', map: 'body' }] }]);
3324
3215
  return (options?.client ?? this.client).patch({
3325
3216
  responseStyle: 'data',
3326
3217
  security: [{ scheme: 'bearer', type: 'http' }, {
@@ -3328,7 +3219,7 @@ class Tasks2 extends HeyApiClient {
3328
3219
  name: 'talqing_session',
3329
3220
  type: 'apiKey'
3330
3221
  }],
3331
- url: '/v1/tasks/{task_id}',
3222
+ url: '/v1/streams/{connection_id}',
3332
3223
  ...options,
3333
3224
  ...params,
3334
3225
  headers: {
@@ -3338,61 +3229,8 @@ class Tasks2 extends HeyApiClient {
3338
3229
  }
3339
3230
  });
3340
3231
  }
3341
- /**
3342
- * Publish Task
3343
- *
3344
- * Freeze the current draft as a new immutable version and make it live.
3345
- *
3346
- * Validation must pass. Publishing pins every attached tool to the tool
3347
- * version live right now, so republishing a tool does not change this task
3348
- * until the task is published again.
3349
- */
3350
- publish(parameters, options) {
3351
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'task_id' }] }]);
3352
- return (options?.client ?? this.client).post({
3353
- responseStyle: 'data',
3354
- security: [{ scheme: 'bearer', type: 'http' }, {
3355
- in: 'cookie',
3356
- name: 'talqing_session',
3357
- type: 'apiKey'
3358
- }],
3359
- url: '/v1/tasks/{task_id}/publish',
3360
- ...options,
3361
- ...params
3362
- });
3363
- }
3364
- /**
3365
- * Validate Task
3366
- *
3367
- * Run publish-grade validation on the draft without publishing it.
3368
- *
3369
- * Covers everything a draft write checks plus what publishing adds: a
3370
- * workspace API key for the model, at least one output field, the operation
3371
- * trees of the attached tools, and the email batches already drafting with
3372
- * this task. Returns errors (blocking) and warnings (advisory).
3373
- */
3374
- validate(parameters, options) {
3375
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'task_id' }] }]);
3376
- return (options?.client ?? this.client).post({
3377
- responseStyle: 'data',
3378
- security: [{ scheme: 'bearer', type: 'http' }, {
3379
- in: 'cookie',
3380
- name: 'talqing_session',
3381
- type: 'apiKey'
3382
- }],
3383
- url: '/v1/tasks/{task_id}/validate',
3384
- ...options,
3385
- ...params
3386
- });
3387
- }
3388
- get runs() {
3389
- return this._runs ?? (this._runs = new Runs({ client: this.client }));
3390
- }
3391
- get versions() {
3392
- return this._versions ?? (this._versions = new Versions2({ client: this.client }));
3393
- }
3394
3232
  }
3395
- exports.Tasks2 = Tasks2;
3233
+ exports.Streams = Streams;
3396
3234
  class Accounts extends HeyApiClient {
3397
3235
  /**
3398
3236
  * List Telephony Accounts
@@ -3786,6 +3624,9 @@ class Providers extends HeyApiClient {
3786
3624
  }
3787
3625
  exports.Providers = Providers;
3788
3626
  class Telephony extends HeyApiClient {
3627
+ get streams() {
3628
+ return this._streams ?? (this._streams = new Streams({ client: this.client }));
3629
+ }
3789
3630
  get accounts() {
3790
3631
  return this._accounts ?? (this._accounts = new Accounts({ client: this.client }));
3791
3632
  }
@@ -3797,14 +3638,329 @@ class Telephony extends HeyApiClient {
3797
3638
  }
3798
3639
  }
3799
3640
  exports.Telephony = Telephony;
3800
- class Versions3 extends HeyApiClient {
3641
+ class Runs extends HeyApiClient {
3801
3642
  /**
3802
- * Get Tool Version
3643
+ * List Task Runs
3803
3644
  *
3804
- * Fetch what one published version of a tool actually contains.
3645
+ * This task's runs, newest first, each with its output, trace and cost.
3805
3646
  *
3806
- * `get_tool` lists the versions and when each was published; this returns the
3807
- * frozen definition itself the arguments, behaviour flags and operation tree
3647
+ * `task_version` says which published definition each one ran, and is null for
3648
+ * a run of the draft.
3649
+ */
3650
+ list(parameters, options) {
3651
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [
3652
+ { in: 'path', key: 'task_id' },
3653
+ { in: 'query', key: 'limit' },
3654
+ { in: 'query', key: 'offset' }
3655
+ ] }]);
3656
+ return (options?.client ?? this.client).get({
3657
+ responseStyle: 'data',
3658
+ security: [{ scheme: 'bearer', type: 'http' }, {
3659
+ in: 'cookie',
3660
+ name: 'talqing_session',
3661
+ type: 'apiKey'
3662
+ }],
3663
+ url: '/v1/tasks/{task_id}/runs',
3664
+ ...options,
3665
+ ...params
3666
+ });
3667
+ }
3668
+ /**
3669
+ * Run Task
3670
+ *
3671
+ * Run the task once with the variables you supply, and wait for the result.
3672
+ *
3673
+ * **This executes for real**: the tools call your endpoints with your secrets,
3674
+ * the MCP servers spend your credits, and the model spends your tokens. A task
3675
+ * that books a slot, charges a card or sends a message will do so.
3676
+ *
3677
+ * Runs the published version unless `version` names another one, or `"draft"`
3678
+ * to run the unpublished config. `vars` must match what that version declares
3679
+ * — an unknown name is refused rather than dropped. The response is the whole
3680
+ * run: the structured `output`, a `trace` of every tool call, the steps used
3681
+ * and what the tokens cost. On failure `error.type` says whose problem it is.
3682
+ * Secrets are redacted.
3683
+ */
3684
+ create(parameters, options) {
3685
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'task_id' }, { key: 'runTaskRequest', map: 'body' }] }]);
3686
+ return (options?.client ?? this.client).post({
3687
+ responseStyle: 'data',
3688
+ security: [{ scheme: 'bearer', type: 'http' }, {
3689
+ in: 'cookie',
3690
+ name: 'talqing_session',
3691
+ type: 'apiKey'
3692
+ }],
3693
+ url: '/v1/tasks/{task_id}/runs',
3694
+ ...options,
3695
+ ...params,
3696
+ headers: {
3697
+ 'Content-Type': 'application/json',
3698
+ ...options?.headers,
3699
+ ...params.headers
3700
+ }
3701
+ });
3702
+ }
3703
+ /**
3704
+ * Get Task Run
3705
+ *
3706
+ * One run in full: what it produced, every tool it called on the way, and
3707
+ * what it cost.
3708
+ *
3709
+ * This is what answers "why did it write that" for a caller holding one run id
3710
+ * — an email batch's review table links each drafted row here. Secret values
3711
+ * are redacted from the trace, and a trace that was cut reports it.
3712
+ */
3713
+ get(parameters, options) {
3714
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'task_id' }, { in: 'path', key: 'run_id' }] }]);
3715
+ return (options?.client ?? this.client).get({
3716
+ responseStyle: 'data',
3717
+ security: [{ scheme: 'bearer', type: 'http' }, {
3718
+ in: 'cookie',
3719
+ name: 'talqing_session',
3720
+ type: 'apiKey'
3721
+ }],
3722
+ url: '/v1/tasks/{task_id}/runs/{run_id}',
3723
+ ...options,
3724
+ ...params
3725
+ });
3726
+ }
3727
+ }
3728
+ exports.Runs = Runs;
3729
+ class Versions2 extends HeyApiClient {
3730
+ /**
3731
+ * Get Task Version
3732
+ *
3733
+ * Fetch what one published version of a task actually contains.
3734
+ *
3735
+ * `get_task` lists the versions and when each was published; this returns the
3736
+ * frozen definition itself — prompt, model, output fields and the tool
3737
+ * versions it pinned, exactly as they were at that publish.
3738
+ */
3739
+ get(parameters, options) {
3740
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'task_id' }, { in: 'path', key: 'version' }] }]);
3741
+ return (options?.client ?? this.client).get({
3742
+ responseStyle: 'data',
3743
+ security: [{ scheme: 'bearer', type: 'http' }, {
3744
+ in: 'cookie',
3745
+ name: 'talqing_session',
3746
+ type: 'apiKey'
3747
+ }],
3748
+ url: '/v1/tasks/{task_id}/versions/{version}',
3749
+ ...options,
3750
+ ...params
3751
+ });
3752
+ }
3753
+ /**
3754
+ * Rollback Task Version
3755
+ *
3756
+ * Put an earlier published version of a task back into production.
3757
+ *
3758
+ * That version becomes live **immediately** and **replaces the current draft**,
3759
+ * so any unpublished edits are lost. No new version is created. The restored
3760
+ * draft tracks each tool's latest published version, not the ones this version
3761
+ * pinned.
3762
+ */
3763
+ rollback(parameters, options) {
3764
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'task_id' }, { in: 'path', key: 'version' }] }]);
3765
+ return (options?.client ?? this.client).post({
3766
+ responseStyle: 'data',
3767
+ security: [{ scheme: 'bearer', type: 'http' }, {
3768
+ in: 'cookie',
3769
+ name: 'talqing_session',
3770
+ type: 'apiKey'
3771
+ }],
3772
+ url: '/v1/tasks/{task_id}/versions/{version}/rollback',
3773
+ ...options,
3774
+ ...params
3775
+ });
3776
+ }
3777
+ }
3778
+ exports.Versions2 = Versions2;
3779
+ class Tasks2 extends HeyApiClient {
3780
+ /**
3781
+ * List Tasks
3782
+ *
3783
+ * List the workspace's agent tasks.
3784
+ *
3785
+ * A task is an agent nobody talks to: a prompt, one LLM, tools and MCP
3786
+ * servers, the variables it takes as input, and the typed result it must
3787
+ * produce. Each item carries the full draft config, the published version
3788
+ * number (null while it has never been published), and `last_run`.
3789
+ */
3790
+ list(parameters, options) {
3791
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'query', key: 'limit' }, { in: 'query', key: 'offset' }] }]);
3792
+ return (options?.client ?? this.client).get({
3793
+ responseStyle: 'data',
3794
+ security: [{ scheme: 'bearer', type: 'http' }, {
3795
+ in: 'cookie',
3796
+ name: 'talqing_session',
3797
+ type: 'apiKey'
3798
+ }],
3799
+ url: '/v1/tasks',
3800
+ ...options,
3801
+ ...params
3802
+ });
3803
+ }
3804
+ /**
3805
+ * Create Task
3806
+ *
3807
+ * Create an agent task: an agent nobody talks to, which takes named inputs
3808
+ * and returns a typed result.
3809
+ *
3810
+ * `output` is what makes this a task rather than a chat agent — declare the
3811
+ * fields the model must produce and it is given a `submit_result` tool built
3812
+ * from them. `vars` are its inputs, read as `{{vars.name}}`. The task starts
3813
+ * unpublished; publish it before running it.
3814
+ */
3815
+ create(parameters, options) {
3816
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ key: 'createTaskRequest', map: 'body' }] }]);
3817
+ return (options?.client ?? this.client).post({
3818
+ responseStyle: 'data',
3819
+ security: [{ scheme: 'bearer', type: 'http' }, {
3820
+ in: 'cookie',
3821
+ name: 'talqing_session',
3822
+ type: 'apiKey'
3823
+ }],
3824
+ url: '/v1/tasks',
3825
+ ...options,
3826
+ ...params,
3827
+ headers: {
3828
+ 'Content-Type': 'application/json',
3829
+ ...options?.headers,
3830
+ ...params.headers
3831
+ }
3832
+ });
3833
+ }
3834
+ /**
3835
+ * Delete Task
3836
+ *
3837
+ * Delete a task and its published versions. Its runs survive, still named
3838
+ * after it.
3839
+ */
3840
+ delete(parameters, options) {
3841
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'task_id' }] }]);
3842
+ return (options?.client ?? this.client).delete({
3843
+ responseStyle: 'data',
3844
+ security: [{ scheme: 'bearer', type: 'http' }, {
3845
+ in: 'cookie',
3846
+ name: 'talqing_session',
3847
+ type: 'apiKey'
3848
+ }],
3849
+ url: '/v1/tasks/{task_id}',
3850
+ ...options,
3851
+ ...params
3852
+ });
3853
+ }
3854
+ /**
3855
+ * Get Task
3856
+ *
3857
+ * Fetch one task's draft config, published version, history and last run.
3858
+ */
3859
+ get(parameters, options) {
3860
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'task_id' }] }]);
3861
+ return (options?.client ?? this.client).get({
3862
+ responseStyle: 'data',
3863
+ security: [{ scheme: 'bearer', type: 'http' }, {
3864
+ in: 'cookie',
3865
+ name: 'talqing_session',
3866
+ type: 'apiKey'
3867
+ }],
3868
+ url: '/v1/tasks/{task_id}',
3869
+ ...options,
3870
+ ...params
3871
+ });
3872
+ }
3873
+ /**
3874
+ * Update Task
3875
+ *
3876
+ * Replace the task's draft config with the one supplied.
3877
+ *
3878
+ * The whole config is sent, so include every field you mean to keep. Writes
3879
+ * land on the draft only — runs and email batches keep using the published
3880
+ * version until you publish again.
3881
+ */
3882
+ update(parameters, options) {
3883
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'task_id' }, { key: 'patchTaskRequest', map: 'body' }] }]);
3884
+ return (options?.client ?? this.client).patch({
3885
+ responseStyle: 'data',
3886
+ security: [{ scheme: 'bearer', type: 'http' }, {
3887
+ in: 'cookie',
3888
+ name: 'talqing_session',
3889
+ type: 'apiKey'
3890
+ }],
3891
+ url: '/v1/tasks/{task_id}',
3892
+ ...options,
3893
+ ...params,
3894
+ headers: {
3895
+ 'Content-Type': 'application/json',
3896
+ ...options?.headers,
3897
+ ...params.headers
3898
+ }
3899
+ });
3900
+ }
3901
+ /**
3902
+ * Publish Task
3903
+ *
3904
+ * Freeze the current draft as a new immutable version and make it live.
3905
+ *
3906
+ * Validation must pass. Publishing pins every attached tool to the tool
3907
+ * version live right now, so republishing a tool does not change this task
3908
+ * until the task is published again.
3909
+ */
3910
+ publish(parameters, options) {
3911
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'task_id' }] }]);
3912
+ return (options?.client ?? this.client).post({
3913
+ responseStyle: 'data',
3914
+ security: [{ scheme: 'bearer', type: 'http' }, {
3915
+ in: 'cookie',
3916
+ name: 'talqing_session',
3917
+ type: 'apiKey'
3918
+ }],
3919
+ url: '/v1/tasks/{task_id}/publish',
3920
+ ...options,
3921
+ ...params
3922
+ });
3923
+ }
3924
+ /**
3925
+ * Validate Task
3926
+ *
3927
+ * Run publish-grade validation on the draft without publishing it.
3928
+ *
3929
+ * Covers everything a draft write checks plus what publishing adds: a
3930
+ * workspace API key for the model, at least one output field, the operation
3931
+ * trees of the attached tools, and the email batches already drafting with
3932
+ * this task. Returns errors (blocking) and warnings (advisory).
3933
+ */
3934
+ validate(parameters, options) {
3935
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'task_id' }] }]);
3936
+ return (options?.client ?? this.client).post({
3937
+ responseStyle: 'data',
3938
+ security: [{ scheme: 'bearer', type: 'http' }, {
3939
+ in: 'cookie',
3940
+ name: 'talqing_session',
3941
+ type: 'apiKey'
3942
+ }],
3943
+ url: '/v1/tasks/{task_id}/validate',
3944
+ ...options,
3945
+ ...params
3946
+ });
3947
+ }
3948
+ get runs() {
3949
+ return this._runs ?? (this._runs = new Runs({ client: this.client }));
3950
+ }
3951
+ get versions() {
3952
+ return this._versions ?? (this._versions = new Versions2({ client: this.client }));
3953
+ }
3954
+ }
3955
+ exports.Tasks2 = Tasks2;
3956
+ class Versions3 extends HeyApiClient {
3957
+ /**
3958
+ * Get Tool Version
3959
+ *
3960
+ * Fetch what one published version of a tool actually contains.
3961
+ *
3962
+ * `get_tool` lists the versions and when each was published; this returns the
3963
+ * frozen definition itself — the arguments, behaviour flags and operation tree
3808
3964
  * exactly as they were at that publish. Use it to see what changed between two
3809
3965
  * versions, or between a version and the current draft.
3810
3966
  */
@@ -4247,7 +4403,9 @@ class TalqingApi extends HeyApiClient {
4247
4403
  * Liveness probe: `200` once this process is serving. Unauthenticated.
4248
4404
  *
4249
4405
  * It answers for the API process, not its dependencies — a `200` here does
4250
- * not promise Postgres, Redis or LiveKit are reachable.
4406
+ * not promise Postgres, Redis or LiveKit are reachable. The one thing it
4407
+ * does report is `model_registry`, because that snapshot lives in this
4408
+ * process's memory and nothing else can see how old it is.
4251
4409
  */
4252
4410
  health(options) {
4253
4411
  return (options?.client ?? this.client).get({
@@ -4295,12 +4453,12 @@ class TalqingApi extends HeyApiClient {
4295
4453
  get secrets() {
4296
4454
  return this._secrets ?? (this._secrets = new Secrets({ client: this.client }));
4297
4455
  }
4298
- get tasks() {
4299
- return this._tasks ?? (this._tasks = new Tasks2({ client: this.client }));
4300
- }
4301
4456
  get telephony() {
4302
4457
  return this._telephony ?? (this._telephony = new Telephony({ client: this.client }));
4303
4458
  }
4459
+ get tasks() {
4460
+ return this._tasks ?? (this._tasks = new Tasks2({ client: this.client }));
4461
+ }
4304
4462
  get tools() {
4305
4463
  return this._tools ?? (this._tools = new Tools2({ client: this.client }));
4306
4464
  }