telnyx-missions-javascript

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese
<!-- Auto-generated from Telnyx OpenAPI specs. Do not edit. -->
<!-- 由Telnyx OpenAPI规范自动生成,请勿编辑。 -->

Telnyx Missions - JavaScript

Telnyx Missions - JavaScript

Installation

安装

bash
npm install telnyx
bash
npm install telnyx

Setup

设置

javascript
import Telnyx from 'telnyx';

const client = new Telnyx({
  apiKey: process.env['TELNYX_API_KEY'], // This is the default and can be omitted
});
All examples below assume
client
is already initialized as shown above.
javascript
import Telnyx from 'telnyx';

const client = new Telnyx({
  apiKey: process.env['TELNYX_API_KEY'], // 这是默认配置,可省略
});
以下所有示例均假设
client
已按上述方式初始化完成。

List missions

列出任务

List all missions for the organization
GET /ai/missions
javascript
// Automatically fetches more pages as needed.
for await (const missionListResponse of client.ai.missions.list()) {
  console.log(missionListResponse.mission_id);
}
列出组织下的所有任务
GET /ai/missions
javascript
// 自动按需获取更多页面数据
for await (const missionListResponse of client.ai.missions.list()) {
  console.log(missionListResponse.mission_id);
}

Create mission

创建任务

Create a new mission definition
POST /ai/missions
— Required:
name
Optional:
description
(string),
execution_mode
(enum),
instructions
(string),
metadata
(object),
model
(string)
javascript
const mission = await client.ai.missions.create({ name: 'name' });

console.log(mission.data);
创建新的任务定义
POST /ai/missions
— 必填参数:
name
可选参数:
description
(字符串)、
execution_mode
(枚举类型)、
instructions
(字符串)、
metadata
(对象)、
model
(字符串)
javascript
const mission = await client.ai.missions.create({ name: 'name' });

console.log(mission.data);

List recent events

列出近期事件

List recent events across all missions
GET /ai/missions/events
javascript
// Automatically fetches more pages as needed.
for await (const missionListEventsResponse of client.ai.missions.listEvents()) {
  console.log(missionListEventsResponse.event_id);
}
列出所有任务的近期事件
GET /ai/missions/events
javascript
// 自动按需获取更多页面数据
for await (const missionListEventsResponse of client.ai.missions.listEvents()) {
  console.log(missionListEventsResponse.event_id);
}

List recent runs

列出近期运行实例

List recent runs across all missions
GET /ai/missions/runs
javascript
// Automatically fetches more pages as needed.
for await (const runListRunsResponse of client.ai.missions.runs.listRuns()) {
  console.log(runListRunsResponse.mission_id);
}
列出所有任务的近期运行实例
GET /ai/missions/runs
javascript
// 自动按需获取更多页面数据
for await (const runListRunsResponse of client.ai.missions.runs.listRuns()) {
  console.log(runListRunsResponse.mission_id);
}

Get mission

获取任务详情

Get a mission by ID (includes tools, knowledge_bases, mcp_servers)
GET /ai/missions/{mission_id}
javascript
const mission = await client.ai.missions.retrieve('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e');

console.log(mission.data);
通过ID获取任务详情(包含工具、知识库、mcp_servers)
GET /ai/missions/{mission_id}
javascript
const mission = await client.ai.missions.retrieve('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e');

console.log(mission.data);

Update mission

更新任务

Update a mission definition
PUT /ai/missions/{mission_id}
Optional:
description
(string),
execution_mode
(enum),
instructions
(string),
metadata
(object),
model
(string),
name
(string)
javascript
const response = await client.ai.missions.updateMission('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e');

console.log(response.data);
更新任务定义
PUT /ai/missions/{mission_id}
可选参数:
description
(字符串)、
execution_mode
(枚举类型)、
instructions
(字符串)、
metadata
(对象)、
model
(字符串)、
name
(字符串)
javascript
const response = await client.ai.missions.updateMission('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e');

console.log(response.data);

Delete mission

删除任务

Delete a mission
DELETE /ai/missions/{mission_id}
javascript
await client.ai.missions.deleteMission('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e');
删除任务
DELETE /ai/missions/{mission_id}
javascript
await client.ai.missions.deleteMission('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e');

Clone mission

克隆任务

Clone an existing mission
POST /ai/missions/{mission_id}/clone
javascript
const response = await client.ai.missions.cloneMission('mission_id');

console.log(response);
克隆现有任务
POST /ai/missions/{mission_id}/clone
javascript
const response = await client.ai.missions.cloneMission('mission_id');

console.log(response);

List runs for mission

列出任务的运行实例

List all runs for a specific mission
GET /ai/missions/{mission_id}/runs
javascript
// Automatically fetches more pages as needed.
for await (const runListResponse of client.ai.missions.runs.list(
  '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
)) {
  console.log(runListResponse.mission_id);
}
列出指定任务的所有运行实例
GET /ai/missions/{mission_id}/runs
javascript
// 自动按需获取更多页面数据
for await (const runListResponse of client.ai.missions.runs.list(
  '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
)) {
  console.log(runListResponse.mission_id);
}

Start a run

启动运行实例

Start a new run for a mission
POST /ai/missions/{mission_id}/runs
Optional:
input
(object),
metadata
(object)
javascript
const run = await client.ai.missions.runs.create('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e');

console.log(run.data);
为任务启动新的运行实例
POST /ai/missions/{mission_id}/runs
可选参数:
input
(对象)、
metadata
(对象)
javascript
const run = await client.ai.missions.runs.create('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e');

console.log(run.data);

Get run details

获取运行实例详情

Get details of a specific run
GET /ai/missions/{mission_id}/runs/{run_id}
javascript
const run = await client.ai.missions.runs.retrieve('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
});

console.log(run.data);
获取指定运行实例的详情
GET /ai/missions/{mission_id}/runs/{run_id}
javascript
const run = await client.ai.missions.runs.retrieve('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
});

console.log(run.data);

Update run

更新运行实例

Update run status and/or result
PATCH /ai/missions/{mission_id}/runs/{run_id}
Optional:
error
(string),
metadata
(object),
result_payload
(object),
result_summary
(string),
status
(enum)
javascript
const run = await client.ai.missions.runs.update('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
});

console.log(run.data);
更新运行实例的状态和/或结果
PATCH /ai/missions/{mission_id}/runs/{run_id}
可选参数:
error
(字符串)、
metadata
(对象)、
result_payload
(对象)、
result_summary
(字符串)、
status
(枚举类型)
javascript
const run = await client.ai.missions.runs.update('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
});

console.log(run.data);

Cancel run

取消运行实例

Cancel a running or paused run
POST /ai/missions/{mission_id}/runs/{run_id}/cancel
javascript
const response = await client.ai.missions.runs.cancelRun('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
});

console.log(response.data);
取消正在运行或暂停的运行实例
POST /ai/missions/{mission_id}/runs/{run_id}/cancel
javascript
const response = await client.ai.missions.runs.cancelRun('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
});

console.log(response.data);

List events

列出事件

List events for a run (paginated)
GET /ai/missions/{mission_id}/runs/{run_id}/events
javascript
// Automatically fetches more pages as needed.
for await (const eventListResponse of client.ai.missions.runs.events.list(
  '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
  { mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e' },
)) {
  console.log(eventListResponse.event_id);
}
列出运行实例的事件(分页)
GET /ai/missions/{mission_id}/runs/{run_id}/events
javascript
// 自动按需获取更多页面数据
for await (const eventListResponse of client.ai.missions.runs.events.list(
  '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
  { mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e' },
)) {
  console.log(eventListResponse.event_id);
}

Log event

记录事件

Log an event for a run
POST /ai/missions/{mission_id}/runs/{run_id}/events
— Required:
type
,
summary
Optional:
agent_id
(string),
idempotency_key
(string),
payload
(object),
step_id
(string)
javascript
const response = await client.ai.missions.runs.events.log('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
  summary: 'summary',
  type: 'status_change',
});

console.log(response.data);
为运行实例记录事件
POST /ai/missions/{mission_id}/runs/{run_id}/events
— 必填参数:
type
summary
可选参数:
agent_id
(字符串)、
idempotency_key
(字符串)、
payload
(对象)、
step_id
(字符串)
javascript
const response = await client.ai.missions.runs.events.log('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
  summary: 'summary',
  type: 'status_change',
});

console.log(response.data);

Get event details

获取事件详情

Get details of a specific event
GET /ai/missions/{mission_id}/runs/{run_id}/events/{event_id}
javascript
const response = await client.ai.missions.runs.events.getEventDetails('event_id', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
  run_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
});

console.log(response.data);
获取指定事件的详情
GET /ai/missions/{mission_id}/runs/{run_id}/events/{event_id}
javascript
const response = await client.ai.missions.runs.events.getEventDetails('event_id', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
  run_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
});

console.log(response.data);

Pause run

暂停运行实例

Pause a running run
POST /ai/missions/{mission_id}/runs/{run_id}/pause
javascript
const response = await client.ai.missions.runs.pauseRun('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
});

console.log(response.data);
暂停正在运行的实例
POST /ai/missions/{mission_id}/runs/{run_id}/pause
javascript
const response = await client.ai.missions.runs.pauseRun('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
});

console.log(response.data);

Get plan

获取计划

Get the plan (all steps) for a run
GET /ai/missions/{mission_id}/runs/{run_id}/plan
javascript
const plan = await client.ai.missions.runs.plan.retrieve('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
});

console.log(plan.data);
获取运行实例的计划(所有步骤)
GET /ai/missions/{mission_id}/runs/{run_id}/plan
javascript
const plan = await client.ai.missions.runs.plan.retrieve('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
});

console.log(plan.data);

Create initial plan

创建初始计划

Create the initial plan for a run
POST /ai/missions/{mission_id}/runs/{run_id}/plan
— Required:
steps
javascript
const plan = await client.ai.missions.runs.plan.create('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
  steps: [
    {
      description: 'description',
      sequence: 0,
      step_id: 'step_id',
    },
  ],
});

console.log(plan.data);
为运行实例创建初始计划
POST /ai/missions/{mission_id}/runs/{run_id}/plan
— 必填参数:
steps
javascript
const plan = await client.ai.missions.runs.plan.create('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
  steps: [
    {
      description: 'description',
      sequence: 0,
      step_id: 'step_id',
    },
  ],
});

console.log(plan.data);

Add step(s) to plan

向计划添加步骤

Add one or more steps to an existing plan
POST /ai/missions/{mission_id}/runs/{run_id}/plan/steps
— Required:
steps
javascript
const response = await client.ai.missions.runs.plan.addStepsToPlan(
  '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
  {
    mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
    steps: [
      {
        description: 'description',
        sequence: 0,
        step_id: 'step_id',
      },
    ],
  },
);

console.log(response.data);
向现有计划添加一个或多个步骤
POST /ai/missions/{mission_id}/runs/{run_id}/plan/steps
— 必填参数:
steps
javascript
const response = await client.ai.missions.runs.plan.addStepsToPlan(
  '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
  {
    mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
    steps: [
      {
        description: 'description',
        sequence: 0,
        step_id: 'step_id',
      },
    ],
  },
);

console.log(response.data);

Get step details

获取步骤详情

Get details of a specific plan step
GET /ai/missions/{mission_id}/runs/{run_id}/plan/steps/{step_id}
javascript
const response = await client.ai.missions.runs.plan.getStepDetails('step_id', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
  run_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
});

console.log(response.data);
获取计划中指定步骤的详情
GET /ai/missions/{mission_id}/runs/{run_id}/plan/steps/{step_id}
javascript
const response = await client.ai.missions.runs.plan.getStepDetails('step_id', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
  run_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
});

console.log(response.data);

Update step status

更新步骤状态

Update the status of a plan step
PATCH /ai/missions/{mission_id}/runs/{run_id}/plan/steps/{step_id}
Optional:
metadata
(object),
status
(enum)
javascript
const response = await client.ai.missions.runs.plan.updateStep('step_id', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
  run_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
});

console.log(response.data);
更新计划步骤的状态
PATCH /ai/missions/{mission_id}/runs/{run_id}/plan/steps/{step_id}
可选参数:
metadata
(对象)、
status
(枚举类型)
javascript
const response = await client.ai.missions.runs.plan.updateStep('step_id', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
  run_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
});

console.log(response.data);

Resume run

恢复运行实例

Resume a paused run
POST /ai/missions/{mission_id}/runs/{run_id}/resume
javascript
const response = await client.ai.missions.runs.resumeRun('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
});

console.log(response.data);
恢复暂停的运行实例
POST /ai/missions/{mission_id}/runs/{run_id}/resume
javascript
const response = await client.ai.missions.runs.resumeRun('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
});

console.log(response.data);

List linked Telnyx agents

列出关联的Telnyx Agent

List all Telnyx agents linked to a run
GET /ai/missions/{mission_id}/runs/{run_id}/telnyx-agents
javascript
const telnyxAgents = await client.ai.missions.runs.telnyxAgents.list(
  '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
  { mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e' },
);

console.log(telnyxAgents.data);
列出运行实例关联的所有Telnyx Agent
GET /ai/missions/{mission_id}/runs/{run_id}/telnyx-agents
javascript
const telnyxAgents = await client.ai.missions.runs.telnyxAgents.list(
  '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
  { mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e' },
);

console.log(telnyxAgents.data);

Link Telnyx agent to run

关联Telnyx Agent到运行实例

Link a Telnyx AI agent (voice/messaging) to a run
POST /ai/missions/{mission_id}/runs/{run_id}/telnyx-agents
— Required:
telnyx_agent_id
javascript
const response = await client.ai.missions.runs.telnyxAgents.link(
  '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
  { mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', telnyx_agent_id: 'telnyx_agent_id' },
);

console.log(response.data);
将Telnyx AI Agent(语音/消息)关联到运行实例
POST /ai/missions/{mission_id}/runs/{run_id}/telnyx-agents
— 必填参数:
telnyx_agent_id
javascript
const response = await client.ai.missions.runs.telnyxAgents.link(
  '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
  { mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', telnyx_agent_id: 'telnyx_agent_id' },
);

console.log(response.data);

Unlink Telnyx agent

解除Telnyx Agent关联

Unlink a Telnyx agent from a run
DELETE /ai/missions/{mission_id}/runs/{run_id}/telnyx-agents/{telnyx_agent_id}
javascript
await client.ai.missions.runs.telnyxAgents.unlink('telnyx_agent_id', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
  run_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
});
解除运行实例与Telnyx Agent的关联
DELETE /ai/missions/{mission_id}/runs/{run_id}/telnyx-agents/{telnyx_agent_id}
javascript
await client.ai.missions.runs.telnyxAgents.unlink('telnyx_agent_id', {
  mission_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
  run_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
});