telnyx 5.25.0 → 5.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (182) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/client.js.map +1 -1
  3. package/client.mjs.map +1 -1
  4. package/package.json +1 -1
  5. package/resources/ai/ai.d.mts +8 -0
  6. package/resources/ai/ai.d.mts.map +1 -1
  7. package/resources/ai/ai.d.ts +8 -0
  8. package/resources/ai/ai.d.ts.map +1 -1
  9. package/resources/ai/ai.js +8 -0
  10. package/resources/ai/ai.js.map +1 -1
  11. package/resources/ai/ai.mjs +8 -0
  12. package/resources/ai/ai.mjs.map +1 -1
  13. package/resources/ai/assistants/scheduled-events.d.mts +21 -0
  14. package/resources/ai/assistants/scheduled-events.d.mts.map +1 -1
  15. package/resources/ai/assistants/scheduled-events.d.ts +21 -0
  16. package/resources/ai/assistants/scheduled-events.d.ts.map +1 -1
  17. package/resources/ai/index.d.mts +2 -0
  18. package/resources/ai/index.d.mts.map +1 -1
  19. package/resources/ai/index.d.ts +2 -0
  20. package/resources/ai/index.d.ts.map +1 -1
  21. package/resources/ai/index.js +5 -1
  22. package/resources/ai/index.js.map +1 -1
  23. package/resources/ai/index.mjs +2 -0
  24. package/resources/ai/index.mjs.map +1 -1
  25. package/resources/ai/missions/index.d.mts +6 -0
  26. package/resources/ai/missions/index.d.mts.map +1 -0
  27. package/resources/ai/missions/index.d.ts +6 -0
  28. package/resources/ai/missions/index.d.ts.map +1 -0
  29. package/resources/ai/missions/index.js +15 -0
  30. package/resources/ai/missions/index.js.map +1 -0
  31. package/resources/ai/missions/index.mjs +7 -0
  32. package/resources/ai/missions/index.mjs.map +1 -0
  33. package/resources/ai/missions/knowledge-bases.d.mts +84 -0
  34. package/resources/ai/missions/knowledge-bases.d.mts.map +1 -0
  35. package/resources/ai/missions/knowledge-bases.d.ts +84 -0
  36. package/resources/ai/missions/knowledge-bases.d.ts.map +1 -0
  37. package/resources/ai/missions/knowledge-bases.js +89 -0
  38. package/resources/ai/missions/knowledge-bases.js.map +1 -0
  39. package/resources/ai/missions/knowledge-bases.mjs +85 -0
  40. package/resources/ai/missions/knowledge-bases.mjs.map +1 -0
  41. package/resources/ai/missions/mcp-servers.d.mts +84 -0
  42. package/resources/ai/missions/mcp-servers.d.mts.map +1 -0
  43. package/resources/ai/missions/mcp-servers.d.ts +84 -0
  44. package/resources/ai/missions/mcp-servers.d.ts.map +1 -0
  45. package/resources/ai/missions/mcp-servers.js +89 -0
  46. package/resources/ai/missions/mcp-servers.js.map +1 -0
  47. package/resources/ai/missions/mcp-servers.mjs +85 -0
  48. package/resources/ai/missions/mcp-servers.mjs.map +1 -0
  49. package/resources/ai/missions/missions.d.mts +168 -0
  50. package/resources/ai/missions/missions.d.mts.map +1 -0
  51. package/resources/ai/missions/missions.d.ts +168 -0
  52. package/resources/ai/missions/missions.d.ts.map +1 -0
  53. package/resources/ai/missions/missions.js +131 -0
  54. package/resources/ai/missions/missions.js.map +1 -0
  55. package/resources/ai/missions/missions.mjs +126 -0
  56. package/resources/ai/missions/missions.mjs.map +1 -0
  57. package/resources/ai/missions/runs/events.d.mts +161 -0
  58. package/resources/ai/missions/runs/events.d.mts.map +1 -0
  59. package/resources/ai/missions/runs/events.d.ts +161 -0
  60. package/resources/ai/missions/runs/events.d.ts.map +1 -0
  61. package/resources/ai/missions/runs/events.js +67 -0
  62. package/resources/ai/missions/runs/events.js.map +1 -0
  63. package/resources/ai/missions/runs/events.mjs +63 -0
  64. package/resources/ai/missions/runs/events.mjs.map +1 -0
  65. package/resources/ai/missions/runs/index.d.mts +5 -0
  66. package/resources/ai/missions/runs/index.d.mts.map +1 -0
  67. package/resources/ai/missions/runs/index.d.ts +5 -0
  68. package/resources/ai/missions/runs/index.d.ts.map +1 -0
  69. package/resources/ai/missions/runs/index.js +13 -0
  70. package/resources/ai/missions/runs/index.js.map +1 -0
  71. package/resources/ai/missions/runs/index.mjs +6 -0
  72. package/resources/ai/missions/runs/index.mjs.map +1 -0
  73. package/resources/ai/missions/runs/plan.d.mts +190 -0
  74. package/resources/ai/missions/runs/plan.d.mts.map +1 -0
  75. package/resources/ai/missions/runs/plan.d.ts +190 -0
  76. package/resources/ai/missions/runs/plan.d.ts.map +1 -0
  77. package/resources/ai/missions/runs/plan.js +112 -0
  78. package/resources/ai/missions/runs/plan.js.map +1 -0
  79. package/resources/ai/missions/runs/plan.mjs +108 -0
  80. package/resources/ai/missions/runs/plan.mjs.map +1 -0
  81. package/resources/ai/missions/runs/runs.d.mts +213 -0
  82. package/resources/ai/missions/runs/runs.d.mts.map +1 -0
  83. package/resources/ai/missions/runs/runs.d.ts +213 -0
  84. package/resources/ai/missions/runs/runs.d.ts.map +1 -0
  85. package/resources/ai/missions/runs/runs.js +148 -0
  86. package/resources/ai/missions/runs/runs.js.map +1 -0
  87. package/resources/ai/missions/runs/runs.mjs +143 -0
  88. package/resources/ai/missions/runs/runs.mjs.map +1 -0
  89. package/resources/ai/missions/runs/telnyx-agents.d.mts +90 -0
  90. package/resources/ai/missions/runs/telnyx-agents.d.mts.map +1 -0
  91. package/resources/ai/missions/runs/telnyx-agents.d.ts +90 -0
  92. package/resources/ai/missions/runs/telnyx-agents.d.ts.map +1 -0
  93. package/resources/ai/missions/runs/telnyx-agents.js +67 -0
  94. package/resources/ai/missions/runs/telnyx-agents.js.map +1 -0
  95. package/resources/ai/missions/runs/telnyx-agents.mjs +63 -0
  96. package/resources/ai/missions/runs/telnyx-agents.mjs.map +1 -0
  97. package/resources/ai/missions/runs.d.mts +2 -0
  98. package/resources/ai/missions/runs.d.mts.map +1 -0
  99. package/resources/ai/missions/runs.d.ts +2 -0
  100. package/resources/ai/missions/runs.d.ts.map +1 -0
  101. package/resources/ai/missions/runs.js +6 -0
  102. package/resources/ai/missions/runs.js.map +1 -0
  103. package/resources/ai/missions/runs.mjs +3 -0
  104. package/resources/ai/missions/runs.mjs.map +1 -0
  105. package/resources/ai/missions/tools.d.mts +79 -0
  106. package/resources/ai/missions/tools.d.mts.map +1 -0
  107. package/resources/ai/missions/tools.d.ts +79 -0
  108. package/resources/ai/missions/tools.d.ts.map +1 -0
  109. package/resources/ai/missions/tools.js +84 -0
  110. package/resources/ai/missions/tools.js.map +1 -0
  111. package/resources/ai/missions/tools.mjs +80 -0
  112. package/resources/ai/missions/tools.mjs.map +1 -0
  113. package/resources/ai/missions.d.mts +2 -0
  114. package/resources/ai/missions.d.mts.map +1 -0
  115. package/resources/ai/missions.d.ts +2 -0
  116. package/resources/ai/missions.d.ts.map +1 -0
  117. package/resources/ai/missions.js +6 -0
  118. package/resources/ai/missions.js.map +1 -0
  119. package/resources/ai/missions.mjs +3 -0
  120. package/resources/ai/missions.mjs.map +1 -0
  121. package/resources/ai/openai/embeddings.d.mts +133 -0
  122. package/resources/ai/openai/embeddings.d.mts.map +1 -0
  123. package/resources/ai/openai/embeddings.d.ts +133 -0
  124. package/resources/ai/openai/embeddings.d.ts.map +1 -0
  125. package/resources/ai/openai/embeddings.js +41 -0
  126. package/resources/ai/openai/embeddings.js.map +1 -0
  127. package/resources/ai/openai/embeddings.mjs +37 -0
  128. package/resources/ai/openai/embeddings.mjs.map +1 -0
  129. package/resources/ai/openai/index.d.mts +3 -0
  130. package/resources/ai/openai/index.d.mts.map +1 -0
  131. package/resources/ai/openai/index.d.ts +3 -0
  132. package/resources/ai/openai/index.d.ts.map +1 -0
  133. package/resources/ai/openai/index.js +9 -0
  134. package/resources/ai/openai/index.js.map +1 -0
  135. package/resources/ai/openai/index.mjs +4 -0
  136. package/resources/ai/openai/index.mjs.map +1 -0
  137. package/resources/ai/openai/openai.d.mts +10 -0
  138. package/resources/ai/openai/openai.d.mts.map +1 -0
  139. package/resources/ai/openai/openai.d.ts +10 -0
  140. package/resources/ai/openai/openai.d.ts.map +1 -0
  141. package/resources/ai/openai/openai.js +17 -0
  142. package/resources/ai/openai/openai.js.map +1 -0
  143. package/resources/ai/openai/openai.mjs +12 -0
  144. package/resources/ai/openai/openai.mjs.map +1 -0
  145. package/resources/ai/openai.d.mts +2 -0
  146. package/resources/ai/openai.d.mts.map +1 -0
  147. package/resources/ai/openai.d.ts +2 -0
  148. package/resources/ai/openai.d.ts.map +1 -0
  149. package/resources/ai/openai.js +6 -0
  150. package/resources/ai/openai.js.map +1 -0
  151. package/resources/ai/openai.mjs +3 -0
  152. package/resources/ai/openai.mjs.map +1 -0
  153. package/resources/shared.d.mts +4 -3
  154. package/resources/shared.d.mts.map +1 -1
  155. package/resources/shared.d.ts +4 -3
  156. package/resources/shared.d.ts.map +1 -1
  157. package/src/client.ts +1 -1
  158. package/src/resources/ai/ai.ts +40 -0
  159. package/src/resources/ai/assistants/scheduled-events.ts +18 -0
  160. package/src/resources/ai/index.ts +16 -0
  161. package/src/resources/ai/missions/index.ts +66 -0
  162. package/src/resources/ai/missions/knowledge-bases.ts +136 -0
  163. package/src/resources/ai/missions/mcp-servers.ts +136 -0
  164. package/src/resources/ai/missions/missions.ts +365 -0
  165. package/src/resources/ai/missions/runs/events.ts +271 -0
  166. package/src/resources/ai/missions/runs/index.ts +53 -0
  167. package/src/resources/ai/missions/runs/plan.ts +271 -0
  168. package/src/resources/ai/missions/runs/runs.ts +384 -0
  169. package/src/resources/ai/missions/runs/telnyx-agents.ts +139 -0
  170. package/src/resources/ai/missions/runs.ts +3 -0
  171. package/src/resources/ai/missions/tools.ts +119 -0
  172. package/src/resources/ai/missions.ts +3 -0
  173. package/src/resources/ai/openai/embeddings.ts +168 -0
  174. package/src/resources/ai/openai/index.ts +9 -0
  175. package/src/resources/ai/openai/openai.ts +25 -0
  176. package/src/resources/ai/openai.ts +3 -0
  177. package/src/resources/shared.ts +5 -3
  178. package/src/version.ts +1 -1
  179. package/version.d.mts +1 -1
  180. package/version.d.ts +1 -1
  181. package/version.js +1 -1
  182. package/version.mjs +1 -1
@@ -0,0 +1,271 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../../../../core/resource';
4
+ import { APIPromise } from '../../../../core/api-promise';
5
+ import { RequestOptions } from '../../../../internal/request-options';
6
+ import { path } from '../../../../internal/utils/path';
7
+
8
+ export class Plan extends APIResource {
9
+ /**
10
+ * Create the initial plan for a run
11
+ *
12
+ * @example
13
+ * ```ts
14
+ * const plan = await client.ai.missions.runs.plan.create(
15
+ * '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
16
+ * {
17
+ * mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
18
+ * steps: [
19
+ * {
20
+ * description: 'description',
21
+ * sequence: 0,
22
+ * step_id: 'step_id',
23
+ * },
24
+ * ],
25
+ * },
26
+ * );
27
+ * ```
28
+ */
29
+ create(runID: string, params: PlanCreateParams, options?: RequestOptions): APIPromise<PlanCreateResponse> {
30
+ const { mission_id, ...body } = params;
31
+ return this._client.post(path`/ai/missions/${mission_id}/runs/${runID}/plan`, { body, ...options });
32
+ }
33
+
34
+ /**
35
+ * Get the plan (all steps) for a run
36
+ *
37
+ * @example
38
+ * ```ts
39
+ * const plan = await client.ai.missions.runs.plan.retrieve(
40
+ * '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
41
+ * { mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e' },
42
+ * );
43
+ * ```
44
+ */
45
+ retrieve(
46
+ runID: string,
47
+ params: PlanRetrieveParams,
48
+ options?: RequestOptions,
49
+ ): APIPromise<PlanRetrieveResponse> {
50
+ const { mission_id } = params;
51
+ return this._client.get(path`/ai/missions/${mission_id}/runs/${runID}/plan`, options);
52
+ }
53
+
54
+ /**
55
+ * Add one or more steps to an existing plan
56
+ *
57
+ * @example
58
+ * ```ts
59
+ * const response =
60
+ * await client.ai.missions.runs.plan.addStepsToPlan(
61
+ * '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
62
+ * {
63
+ * mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
64
+ * steps: [
65
+ * {
66
+ * description: 'description',
67
+ * sequence: 0,
68
+ * step_id: 'step_id',
69
+ * },
70
+ * ],
71
+ * },
72
+ * );
73
+ * ```
74
+ */
75
+ addStepsToPlan(
76
+ runID: string,
77
+ params: PlanAddStepsToPlanParams,
78
+ options?: RequestOptions,
79
+ ): APIPromise<PlanAddStepsToPlanResponse> {
80
+ const { mission_id, ...body } = params;
81
+ return this._client.post(path`/ai/missions/${mission_id}/runs/${runID}/plan/steps`, { body, ...options });
82
+ }
83
+
84
+ /**
85
+ * Get details of a specific plan step
86
+ *
87
+ * @example
88
+ * ```ts
89
+ * const response =
90
+ * await client.ai.missions.runs.plan.getStepDetails(
91
+ * 'step_id',
92
+ * {
93
+ * mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
94
+ * run_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
95
+ * },
96
+ * );
97
+ * ```
98
+ */
99
+ getStepDetails(
100
+ stepID: string,
101
+ params: PlanGetStepDetailsParams,
102
+ options?: RequestOptions,
103
+ ): APIPromise<PlanGetStepDetailsResponse> {
104
+ const { mission_id, run_id } = params;
105
+ return this._client.get(path`/ai/missions/${mission_id}/runs/${run_id}/plan/steps/${stepID}`, options);
106
+ }
107
+
108
+ /**
109
+ * Update the status of a plan step
110
+ *
111
+ * @example
112
+ * ```ts
113
+ * const response =
114
+ * await client.ai.missions.runs.plan.updateStep('step_id', {
115
+ * mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
116
+ * run_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
117
+ * });
118
+ * ```
119
+ */
120
+ updateStep(
121
+ stepID: string,
122
+ params: PlanUpdateStepParams,
123
+ options?: RequestOptions,
124
+ ): APIPromise<PlanUpdateStepResponse> {
125
+ const { mission_id, run_id, ...body } = params;
126
+ return this._client.patch(path`/ai/missions/${mission_id}/runs/${run_id}/plan/steps/${stepID}`, {
127
+ body,
128
+ ...options,
129
+ });
130
+ }
131
+ }
132
+
133
+ export interface PlanStepData {
134
+ description: string;
135
+
136
+ run_id: string;
137
+
138
+ sequence: number;
139
+
140
+ status: 'pending' | 'in_progress' | 'completed' | 'skipped' | 'failed';
141
+
142
+ step_id: string;
143
+
144
+ completed_at?: string;
145
+
146
+ metadata?: { [key: string]: unknown };
147
+
148
+ parent_step_id?: string;
149
+
150
+ started_at?: string;
151
+ }
152
+
153
+ export interface PlanCreateResponse {
154
+ data: Array<PlanStepData>;
155
+ }
156
+
157
+ export interface PlanRetrieveResponse {
158
+ data: Array<PlanStepData>;
159
+ }
160
+
161
+ export interface PlanAddStepsToPlanResponse {
162
+ data: Array<PlanStepData>;
163
+ }
164
+
165
+ export interface PlanGetStepDetailsResponse {
166
+ data: PlanStepData;
167
+ }
168
+
169
+ export interface PlanUpdateStepResponse {
170
+ data: PlanStepData;
171
+ }
172
+
173
+ export interface PlanCreateParams {
174
+ /**
175
+ * Path param
176
+ */
177
+ mission_id: string;
178
+
179
+ /**
180
+ * Body param
181
+ */
182
+ steps: Array<PlanCreateParams.Step>;
183
+ }
184
+
185
+ export namespace PlanCreateParams {
186
+ export interface Step {
187
+ description: string;
188
+
189
+ sequence: number;
190
+
191
+ step_id: string;
192
+
193
+ metadata?: { [key: string]: unknown };
194
+
195
+ parent_step_id?: string;
196
+ }
197
+ }
198
+
199
+ export interface PlanRetrieveParams {
200
+ mission_id: string;
201
+ }
202
+
203
+ export interface PlanAddStepsToPlanParams {
204
+ /**
205
+ * Path param
206
+ */
207
+ mission_id: string;
208
+
209
+ /**
210
+ * Body param
211
+ */
212
+ steps: Array<PlanAddStepsToPlanParams.Step>;
213
+ }
214
+
215
+ export namespace PlanAddStepsToPlanParams {
216
+ export interface Step {
217
+ description: string;
218
+
219
+ sequence: number;
220
+
221
+ step_id: string;
222
+
223
+ metadata?: { [key: string]: unknown };
224
+
225
+ parent_step_id?: string;
226
+ }
227
+ }
228
+
229
+ export interface PlanGetStepDetailsParams {
230
+ mission_id: string;
231
+
232
+ run_id: string;
233
+ }
234
+
235
+ export interface PlanUpdateStepParams {
236
+ /**
237
+ * Path param
238
+ */
239
+ mission_id: string;
240
+
241
+ /**
242
+ * Path param
243
+ */
244
+ run_id: string;
245
+
246
+ /**
247
+ * Body param
248
+ */
249
+ metadata?: { [key: string]: unknown };
250
+
251
+ /**
252
+ * Body param
253
+ */
254
+ status?: 'pending' | 'in_progress' | 'completed' | 'skipped' | 'failed';
255
+ }
256
+
257
+ export declare namespace Plan {
258
+ export {
259
+ type PlanStepData as PlanStepData,
260
+ type PlanCreateResponse as PlanCreateResponse,
261
+ type PlanRetrieveResponse as PlanRetrieveResponse,
262
+ type PlanAddStepsToPlanResponse as PlanAddStepsToPlanResponse,
263
+ type PlanGetStepDetailsResponse as PlanGetStepDetailsResponse,
264
+ type PlanUpdateStepResponse as PlanUpdateStepResponse,
265
+ type PlanCreateParams as PlanCreateParams,
266
+ type PlanRetrieveParams as PlanRetrieveParams,
267
+ type PlanAddStepsToPlanParams as PlanAddStepsToPlanParams,
268
+ type PlanGetStepDetailsParams as PlanGetStepDetailsParams,
269
+ type PlanUpdateStepParams as PlanUpdateStepParams,
270
+ };
271
+ }
@@ -0,0 +1,384 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../../../../core/resource';
4
+ import * as EventsAPI from './events';
5
+ import {
6
+ EventGetEventDetailsParams,
7
+ EventGetEventDetailsResponse,
8
+ EventListParams,
9
+ EventListResponse,
10
+ EventListResponsesDefaultFlatPagination,
11
+ EventLogParams,
12
+ EventLogResponse,
13
+ Events,
14
+ } from './events';
15
+ import * as PlanAPI from './plan';
16
+ import {
17
+ Plan,
18
+ PlanAddStepsToPlanParams,
19
+ PlanAddStepsToPlanResponse,
20
+ PlanCreateParams,
21
+ PlanCreateResponse,
22
+ PlanGetStepDetailsParams,
23
+ PlanGetStepDetailsResponse,
24
+ PlanRetrieveParams,
25
+ PlanRetrieveResponse,
26
+ PlanStepData,
27
+ PlanUpdateStepParams,
28
+ PlanUpdateStepResponse,
29
+ } from './plan';
30
+ import * as TelnyxAgentsAPI from './telnyx-agents';
31
+ import {
32
+ TelnyxAgentLinkParams,
33
+ TelnyxAgentLinkResponse,
34
+ TelnyxAgentListParams,
35
+ TelnyxAgentListResponse,
36
+ TelnyxAgentUnlinkParams,
37
+ TelnyxAgents,
38
+ } from './telnyx-agents';
39
+ import { APIPromise } from '../../../../core/api-promise';
40
+ import {
41
+ DefaultFlatPagination,
42
+ type DefaultFlatPaginationParams,
43
+ PagePromise,
44
+ } from '../../../../core/pagination';
45
+ import { RequestOptions } from '../../../../internal/request-options';
46
+ import { path } from '../../../../internal/utils/path';
47
+
48
+ export class Runs extends APIResource {
49
+ events: EventsAPI.Events = new EventsAPI.Events(this._client);
50
+ plan: PlanAPI.Plan = new PlanAPI.Plan(this._client);
51
+ telnyxAgents: TelnyxAgentsAPI.TelnyxAgents = new TelnyxAgentsAPI.TelnyxAgents(this._client);
52
+
53
+ /**
54
+ * Start a new run for a mission
55
+ *
56
+ * @example
57
+ * ```ts
58
+ * const run = await client.ai.missions.runs.create(
59
+ * '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
60
+ * );
61
+ * ```
62
+ */
63
+ create(
64
+ missionID: string,
65
+ body: RunCreateParams | null | undefined = {},
66
+ options?: RequestOptions,
67
+ ): APIPromise<RunCreateResponse> {
68
+ return this._client.post(path`/ai/missions/${missionID}/runs`, { body, ...options });
69
+ }
70
+
71
+ /**
72
+ * Get details of a specific run
73
+ *
74
+ * @example
75
+ * ```ts
76
+ * const run = await client.ai.missions.runs.retrieve(
77
+ * '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
78
+ * { mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e' },
79
+ * );
80
+ * ```
81
+ */
82
+ retrieve(
83
+ runID: string,
84
+ params: RunRetrieveParams,
85
+ options?: RequestOptions,
86
+ ): APIPromise<RunRetrieveResponse> {
87
+ const { mission_id } = params;
88
+ return this._client.get(path`/ai/missions/${mission_id}/runs/${runID}`, options);
89
+ }
90
+
91
+ /**
92
+ * Update run status and/or result
93
+ *
94
+ * @example
95
+ * ```ts
96
+ * const run = await client.ai.missions.runs.update(
97
+ * '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
98
+ * { mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e' },
99
+ * );
100
+ * ```
101
+ */
102
+ update(runID: string, params: RunUpdateParams, options?: RequestOptions): APIPromise<RunUpdateResponse> {
103
+ const { mission_id, ...body } = params;
104
+ return this._client.patch(path`/ai/missions/${mission_id}/runs/${runID}`, { body, ...options });
105
+ }
106
+
107
+ /**
108
+ * List all runs for a specific mission
109
+ *
110
+ * @example
111
+ * ```ts
112
+ * // Automatically fetches more pages as needed.
113
+ * for await (const missionRunData of client.ai.missions.runs.list(
114
+ * '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
115
+ * )) {
116
+ * // ...
117
+ * }
118
+ * ```
119
+ */
120
+ list(
121
+ missionID: string,
122
+ query: RunListParams | null | undefined = {},
123
+ options?: RequestOptions,
124
+ ): PagePromise<MissionRunDataDefaultFlatPagination, MissionRunData> {
125
+ return this._client.getAPIList(
126
+ path`/ai/missions/${missionID}/runs`,
127
+ DefaultFlatPagination<MissionRunData>,
128
+ { query, ...options },
129
+ );
130
+ }
131
+
132
+ /**
133
+ * Cancel a running or paused run
134
+ *
135
+ * @example
136
+ * ```ts
137
+ * const response = await client.ai.missions.runs.cancelRun(
138
+ * '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
139
+ * { mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e' },
140
+ * );
141
+ * ```
142
+ */
143
+ cancelRun(
144
+ runID: string,
145
+ params: RunCancelRunParams,
146
+ options?: RequestOptions,
147
+ ): APIPromise<RunCancelRunResponse> {
148
+ const { mission_id } = params;
149
+ return this._client.post(path`/ai/missions/${mission_id}/runs/${runID}/cancel`, options);
150
+ }
151
+
152
+ /**
153
+ * List recent runs across all missions
154
+ *
155
+ * @example
156
+ * ```ts
157
+ * // Automatically fetches more pages as needed.
158
+ * for await (const missionRunData of client.ai.missions.runs.listRuns()) {
159
+ * // ...
160
+ * }
161
+ * ```
162
+ */
163
+ listRuns(
164
+ query: RunListRunsParams | null | undefined = {},
165
+ options?: RequestOptions,
166
+ ): PagePromise<MissionRunDataDefaultFlatPagination, MissionRunData> {
167
+ return this._client.getAPIList('/ai/missions/runs', DefaultFlatPagination<MissionRunData>, {
168
+ query,
169
+ ...options,
170
+ });
171
+ }
172
+
173
+ /**
174
+ * Pause a running run
175
+ *
176
+ * @example
177
+ * ```ts
178
+ * const response = await client.ai.missions.runs.pauseRun(
179
+ * '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
180
+ * { mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e' },
181
+ * );
182
+ * ```
183
+ */
184
+ pauseRun(
185
+ runID: string,
186
+ params: RunPauseRunParams,
187
+ options?: RequestOptions,
188
+ ): APIPromise<RunPauseRunResponse> {
189
+ const { mission_id } = params;
190
+ return this._client.post(path`/ai/missions/${mission_id}/runs/${runID}/pause`, options);
191
+ }
192
+
193
+ /**
194
+ * Resume a paused run
195
+ *
196
+ * @example
197
+ * ```ts
198
+ * const response = await client.ai.missions.runs.resumeRun(
199
+ * '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
200
+ * { mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e' },
201
+ * );
202
+ * ```
203
+ */
204
+ resumeRun(
205
+ runID: string,
206
+ params: RunResumeRunParams,
207
+ options?: RequestOptions,
208
+ ): APIPromise<RunResumeRunResponse> {
209
+ const { mission_id } = params;
210
+ return this._client.post(path`/ai/missions/${mission_id}/runs/${runID}/resume`, options);
211
+ }
212
+ }
213
+
214
+ export type MissionRunDataDefaultFlatPagination = DefaultFlatPagination<MissionRunData>;
215
+
216
+ export interface MissionRunData {
217
+ mission_id: string;
218
+
219
+ run_id: string;
220
+
221
+ started_at: string;
222
+
223
+ status: 'pending' | 'running' | 'paused' | 'succeeded' | 'failed' | 'cancelled';
224
+
225
+ updated_at: string;
226
+
227
+ error?: string;
228
+
229
+ finished_at?: string;
230
+
231
+ input?: { [key: string]: unknown };
232
+
233
+ metadata?: { [key: string]: unknown };
234
+
235
+ result_payload?: { [key: string]: unknown };
236
+
237
+ result_summary?: string;
238
+ }
239
+
240
+ export interface RunCreateResponse {
241
+ data: MissionRunData;
242
+ }
243
+
244
+ export interface RunRetrieveResponse {
245
+ data: MissionRunData;
246
+ }
247
+
248
+ export interface RunUpdateResponse {
249
+ data: MissionRunData;
250
+ }
251
+
252
+ export interface RunCancelRunResponse {
253
+ data: MissionRunData;
254
+ }
255
+
256
+ export interface RunPauseRunResponse {
257
+ data: MissionRunData;
258
+ }
259
+
260
+ export interface RunResumeRunResponse {
261
+ data: MissionRunData;
262
+ }
263
+
264
+ export interface RunCreateParams {
265
+ input?: { [key: string]: unknown };
266
+
267
+ metadata?: { [key: string]: unknown };
268
+ }
269
+
270
+ export interface RunRetrieveParams {
271
+ mission_id: string;
272
+ }
273
+
274
+ export interface RunUpdateParams {
275
+ /**
276
+ * Path param
277
+ */
278
+ mission_id: string;
279
+
280
+ /**
281
+ * Body param
282
+ */
283
+ error?: string;
284
+
285
+ /**
286
+ * Body param
287
+ */
288
+ metadata?: { [key: string]: unknown };
289
+
290
+ /**
291
+ * Body param
292
+ */
293
+ result_payload?: { [key: string]: unknown };
294
+
295
+ /**
296
+ * Body param
297
+ */
298
+ result_summary?: string;
299
+
300
+ /**
301
+ * Body param
302
+ */
303
+ status?: 'pending' | 'running' | 'paused' | 'succeeded' | 'failed' | 'cancelled';
304
+ }
305
+
306
+ export interface RunListParams extends DefaultFlatPaginationParams {
307
+ status?: string;
308
+ }
309
+
310
+ export interface RunCancelRunParams {
311
+ mission_id: string;
312
+ }
313
+
314
+ export interface RunListRunsParams extends DefaultFlatPaginationParams {
315
+ status?: string;
316
+ }
317
+
318
+ export interface RunPauseRunParams {
319
+ mission_id: string;
320
+ }
321
+
322
+ export interface RunResumeRunParams {
323
+ mission_id: string;
324
+ }
325
+
326
+ Runs.Events = Events;
327
+ Runs.Plan = Plan;
328
+ Runs.TelnyxAgents = TelnyxAgents;
329
+
330
+ export declare namespace Runs {
331
+ export {
332
+ type MissionRunData as MissionRunData,
333
+ type RunCreateResponse as RunCreateResponse,
334
+ type RunRetrieveResponse as RunRetrieveResponse,
335
+ type RunUpdateResponse as RunUpdateResponse,
336
+ type RunCancelRunResponse as RunCancelRunResponse,
337
+ type RunPauseRunResponse as RunPauseRunResponse,
338
+ type RunResumeRunResponse as RunResumeRunResponse,
339
+ type MissionRunDataDefaultFlatPagination as MissionRunDataDefaultFlatPagination,
340
+ type RunCreateParams as RunCreateParams,
341
+ type RunRetrieveParams as RunRetrieveParams,
342
+ type RunUpdateParams as RunUpdateParams,
343
+ type RunListParams as RunListParams,
344
+ type RunCancelRunParams as RunCancelRunParams,
345
+ type RunListRunsParams as RunListRunsParams,
346
+ type RunPauseRunParams as RunPauseRunParams,
347
+ type RunResumeRunParams as RunResumeRunParams,
348
+ };
349
+
350
+ export {
351
+ Events as Events,
352
+ type EventListResponse as EventListResponse,
353
+ type EventGetEventDetailsResponse as EventGetEventDetailsResponse,
354
+ type EventLogResponse as EventLogResponse,
355
+ type EventListResponsesDefaultFlatPagination as EventListResponsesDefaultFlatPagination,
356
+ type EventListParams as EventListParams,
357
+ type EventGetEventDetailsParams as EventGetEventDetailsParams,
358
+ type EventLogParams as EventLogParams,
359
+ };
360
+
361
+ export {
362
+ Plan as Plan,
363
+ type PlanStepData as PlanStepData,
364
+ type PlanCreateResponse as PlanCreateResponse,
365
+ type PlanRetrieveResponse as PlanRetrieveResponse,
366
+ type PlanAddStepsToPlanResponse as PlanAddStepsToPlanResponse,
367
+ type PlanGetStepDetailsResponse as PlanGetStepDetailsResponse,
368
+ type PlanUpdateStepResponse as PlanUpdateStepResponse,
369
+ type PlanCreateParams as PlanCreateParams,
370
+ type PlanRetrieveParams as PlanRetrieveParams,
371
+ type PlanAddStepsToPlanParams as PlanAddStepsToPlanParams,
372
+ type PlanGetStepDetailsParams as PlanGetStepDetailsParams,
373
+ type PlanUpdateStepParams as PlanUpdateStepParams,
374
+ };
375
+
376
+ export {
377
+ TelnyxAgents as TelnyxAgents,
378
+ type TelnyxAgentListResponse as TelnyxAgentListResponse,
379
+ type TelnyxAgentLinkResponse as TelnyxAgentLinkResponse,
380
+ type TelnyxAgentListParams as TelnyxAgentListParams,
381
+ type TelnyxAgentLinkParams as TelnyxAgentLinkParams,
382
+ type TelnyxAgentUnlinkParams as TelnyxAgentUnlinkParams,
383
+ };
384
+ }