mirror of
https://github.com/simstudioai/sim.git
synced 2026-02-17 18:02:09 -05:00
* fix: update i18n.lock * feat(docs): enhance documentation with new sections on file handling, form deployment, quick reference, agent skills, and A2A integration
398 lines
13 KiB
Plaintext
398 lines
13 KiB
Plaintext
---
|
||
title: SendGrid
|
||
description: 使用 SendGrid 发送电子邮件并管理联系人、列表和模板
|
||
---
|
||
|
||
import { BlockInfoCard } from "@/components/ui/block-info-card"
|
||
|
||
<BlockInfoCard
|
||
type="sendgrid"
|
||
color="#1A82E2"
|
||
/>
|
||
|
||
{/* MANUAL-CONTENT-START:intro */}
|
||
[SendGrid](https://sendgrid.com) 是一个领先的基于云的电子邮件发送平台,受到开发者和企业的信赖,可大规模发送可靠的事务性和营销电子邮件。通过其强大的 API 和工具,SendGrid 使您能够管理电子邮件通信的各个方面,从发送通知和收据到管理复杂的营销活动。
|
||
|
||
SendGrid 为用户提供了一整套电子邮件操作功能,使您能够自动化关键的电子邮件工作流,并密切管理联系人列表、模板和收件人参与度。它与 Sim 的无缝集成使代理和工作流能够发送目标消息,维护动态联系人和收件人列表,通过模板触发个性化电子邮件,并实时跟踪结果。
|
||
|
||
SendGrid 的主要功能包括:
|
||
|
||
- **事务性电子邮件:** 发送自动化和大批量的事务性电子邮件(如通知、收据和密码重置)。
|
||
- **动态模板:** 使用丰富的 HTML 或文本模板和动态数据,实现大规模高度个性化的通信。
|
||
- **联系人管理:** 添加和更新营销联系人,管理收件人列表,并针对活动目标群体进行细分。
|
||
- **附件支持:** 在电子邮件中包含一个或多个文件附件。
|
||
- **全面的 API 覆盖:** 以编程方式管理电子邮件、联系人、列表、模板、抑制组等。
|
||
|
||
通过将 SendGrid 与 Sim 连接,您的代理可以:
|
||
|
||
- 在任何工作流中发送简单或高级(模板化或多收件人)的电子邮件。
|
||
- 自动管理和细分联系人和列表。
|
||
- 利用模板实现一致性和动态个性化。
|
||
- 在自动化流程中跟踪和响应电子邮件参与情况。
|
||
|
||
此集成允许您自动化所有关键的通信流程,确保消息到达正确的受众,并直接从 Sim 工作流中维护对您组织电子邮件策略的控制。
|
||
{/* MANUAL-CONTENT-END */}
|
||
|
||
## 使用说明
|
||
|
||
将 SendGrid 集成到您的工作流中。发送事务性电子邮件,管理营销联系人和列表,并使用电子邮件模板。支持动态模板、附件和全面的联系人管理。
|
||
|
||
## 工具
|
||
|
||
### `sendgrid_send_mail`
|
||
|
||
使用 SendGrid API 发送电子邮件
|
||
|
||
#### 输入
|
||
|
||
| 参数 | 类型 | 必需 | 描述 |
|
||
| --------- | ---- | -------- | ----------- |
|
||
| `apiKey` | string | 是 | SendGrid API 密钥 |
|
||
| `from` | string | 是 | 发件人电子邮件地址 \(必须在 SendGrid 中验证\) |
|
||
| `fromName` | string | 否 | 发件人名称 |
|
||
| `to` | string | 是 | 收件人电子邮件地址 |
|
||
| `toName` | string | 否 | 收件人名称 |
|
||
| `subject` | string | 否 | 电子邮件主题 \(除非使用具有预定义主题的模板,否则必需\) |
|
||
| `content` | string | 否 | 电子邮件正文内容 \(除非使用具有预定义内容的模板,否则必需\) |
|
||
| `contentType` | string | 否 | 内容类型 \(text/plain 或 text/html\) |
|
||
| `cc` | string | 否 | 抄送电子邮件地址 |
|
||
| `bcc` | string | 否 | 密送电子邮件地址 |
|
||
| `replyTo` | string | 否 | 回复电子邮件地址 |
|
||
| `replyToName` | string | 否 | 回复名称 |
|
||
| `attachments` | file[] | 否 | 附加到电子邮件的文件 |
|
||
| `templateId` | string | 否 | 要使用的 SendGrid 模板 ID |
|
||
| `dynamicTemplateData` | json | 否 | 动态模板数据的 JSON 对象 |
|
||
|
||
#### 输出
|
||
|
||
| 参数 | 类型 | 描述 |
|
||
| --------- | ---- | ----------- |
|
||
| `success` | boolean | 邮件是否成功发送 |
|
||
| `messageId` | string | SendGrid 消息 ID |
|
||
| `to` | string | 收件人邮箱地址 |
|
||
| `subject` | string | 邮件主题 |
|
||
|
||
### `sendgrid_add_contact`
|
||
|
||
向 SendGrid 添加新联系人
|
||
|
||
#### 输入
|
||
|
||
| 参数 | 类型 | 必需 | 描述 |
|
||
| --------- | ---- | -------- | ----------- |
|
||
| `apiKey` | string | 是 | SendGrid API 密钥 |
|
||
| `email` | string | 是 | 联系人邮箱地址 |
|
||
| `firstName` | string | 否 | 联系人名字 |
|
||
| `lastName` | string | 否 | 联系人姓氏 |
|
||
| `customFields` | json | 否 | 自定义字段键值对的 JSON 对象 \(使用字段 ID,如 e1_T, e2_N, e3_D,而不是字段名称\) |
|
||
| `listIds` | string | 否 | 用逗号分隔的列表 ID,用于添加联系人 |
|
||
|
||
#### 输出
|
||
|
||
| 参数 | 类型 | 描述 |
|
||
| --------- | ---- | ----------- |
|
||
| `jobId` | string | 用于跟踪异步联系人创建的作业 ID |
|
||
| `email` | string | 联系人邮箱地址 |
|
||
| `firstName` | string | 联系人名字 |
|
||
| `lastName` | string | 联系人姓氏 |
|
||
| `message` | string | 状态消息 |
|
||
|
||
### `sendgrid_get_contact`
|
||
|
||
通过 ID 从 SendGrid 获取特定联系人
|
||
|
||
#### 输入
|
||
|
||
| 参数 | 类型 | 必需 | 描述 |
|
||
| --------- | ---- | -------- | ----------- |
|
||
| `apiKey` | string | 是 | SendGrid API 密钥 |
|
||
| `contactId` | string | 是 | 联系人 ID |
|
||
|
||
#### 输出
|
||
|
||
| 参数 | 类型 | 描述 |
|
||
| --------- | ---- | ----------- |
|
||
| `id` | string | 联系人 ID |
|
||
| `email` | string | 联系人邮箱地址 |
|
||
| `firstName` | string | 联系人名字 |
|
||
| `lastName` | string | 联系人姓氏 |
|
||
| `createdAt` | string | 创建时间戳 |
|
||
| `updatedAt` | string | 最后更新时间戳 |
|
||
| `listIds` | json | 联系人所属列表 ID 的数组 |
|
||
| `customFields` | json | 自定义字段值 |
|
||
|
||
### `sendgrid_search_contacts`
|
||
|
||
使用查询在 SendGrid 中搜索联系人
|
||
|
||
#### 输入
|
||
|
||
| 参数 | 类型 | 必需 | 描述 |
|
||
| --------- | ---- | -------- | ----------- |
|
||
| `apiKey` | string | 是 | SendGrid API 密钥 |
|
||
| `query` | string | 是 | 搜索查询 \(例如,\"email LIKE '%example.com%' AND CONTAINS\(list_ids, 'list-id'\)\"\) |
|
||
|
||
#### 输出
|
||
|
||
| 参数 | 类型 | 描述 |
|
||
| --------- | ---- | ----------- |
|
||
| `contacts` | json | 匹配联系人的数组 |
|
||
| `contactCount` | number | 找到的联系人总数 |
|
||
|
||
### `sendgrid_delete_contacts`
|
||
|
||
从 SendGrid 中删除一个或多个联系人
|
||
|
||
#### 输入
|
||
|
||
| 参数 | 类型 | 必需 | 描述 |
|
||
| --------- | ---- | -------- | ----------- |
|
||
| `apiKey` | string | 是 | SendGrid API 密钥 |
|
||
| `contactIds` | string | 是 | 要删除的联系人 ID,逗号分隔 |
|
||
|
||
#### 输出
|
||
|
||
| 参数 | 类型 | 描述 |
|
||
| --------- | ---- | ----------- |
|
||
| `jobId` | string | 删除请求的作业 ID |
|
||
|
||
### `sendgrid_create_list`
|
||
|
||
在 SendGrid 中创建一个新的联系人列表
|
||
|
||
#### 输入
|
||
|
||
| 参数 | 类型 | 必需 | 描述 |
|
||
| --------- | ---- | -------- | ----------- |
|
||
| `apiKey` | string | 是 | SendGrid API 密钥 |
|
||
| `name` | string | 是 | 列表名称 |
|
||
|
||
#### 输出
|
||
|
||
| 参数 | 类型 | 描述 |
|
||
| --------- | ---- | ----------- |
|
||
| `id` | string | 列表 ID |
|
||
| `name` | string | 列表名称 |
|
||
| `contactCount` | number | 列表中的联系人数量 |
|
||
|
||
### `sendgrid_get_list`
|
||
|
||
通过 ID 从 SendGrid 获取特定列表
|
||
|
||
#### 输入
|
||
|
||
| 参数 | 类型 | 必需 | 描述 |
|
||
| --------- | ---- | -------- | ----------- |
|
||
| `apiKey` | string | 是 | SendGrid API 密钥 |
|
||
| `listId` | string | 是 | 列表 ID |
|
||
|
||
#### 输出
|
||
|
||
| 参数 | 类型 | 描述 |
|
||
| --------- | ---- | ----------- |
|
||
| `id` | string | 列表 ID |
|
||
| `name` | string | 列表名称 |
|
||
| `contactCount` | number | 列表中的联系人数量 |
|
||
|
||
### `sendgrid_list_all_lists`
|
||
|
||
从 SendGrid 获取所有联系人列表
|
||
|
||
#### 输入
|
||
|
||
| 参数 | 类型 | 必需 | 描述 |
|
||
| --------- | ---- | -------- | ----------- |
|
||
| `apiKey` | string | 是 | SendGrid API 密钥 |
|
||
| `pageSize` | number | 否 | 每页返回的列表数量 \(默认值: 100\) |
|
||
|
||
#### 输出
|
||
|
||
| 参数 | 类型 | 描述 |
|
||
| --------- | ---- | ----------- |
|
||
| `lists` | json | 列表数组 |
|
||
|
||
### `sendgrid_delete_list`
|
||
|
||
从 SendGrid 删除联系人列表
|
||
|
||
#### 输入
|
||
|
||
| 参数 | 类型 | 必需 | 描述 |
|
||
| --------- | ---- | -------- | ----------- |
|
||
| `apiKey` | string | 是 | SendGrid API 密钥 |
|
||
| `listId` | string | 是 | 要删除的列表 ID |
|
||
|
||
#### 输出
|
||
|
||
| 参数 | 类型 | 描述 |
|
||
| --------- | ---- | ----------- |
|
||
| `message` | string | 成功消息 |
|
||
|
||
### `sendgrid_add_contacts_to_list`
|
||
|
||
在 SendGrid 中添加或更新联系人并将其分配到列表中(使用 PUT /v3/marketing/contacts)
|
||
|
||
#### 输入
|
||
|
||
| 参数 | 类型 | 必需 | 描述 |
|
||
| --------- | ---- | -------- | ----------- |
|
||
| `apiKey` | string | 是 | SendGrid API 密钥 |
|
||
| `listId` | string | 是 | 要添加联系人的列表 ID |
|
||
| `contacts` | json | 是 | 联系人对象的 JSON 数组。每个联系人必须至少包含:email(或 phone_number_id/external_id/anonymous_id)。示例:\[\{"email": "user@example.com", "first_name": "John"\}\] |
|
||
|
||
#### 输出
|
||
|
||
| 参数 | 类型 | 描述 |
|
||
| --------- | ---- | ----------- |
|
||
| `jobId` | string | 用于跟踪异步操作的作业 ID |
|
||
| `message` | string | 状态消息 |
|
||
|
||
### `sendgrid_remove_contacts_from_list`
|
||
|
||
从 SendGrid 的特定列表中移除联系人
|
||
|
||
#### 输入
|
||
|
||
| 参数 | 类型 | 必需 | 描述 |
|
||
| --------- | ---- | -------- | ----------- |
|
||
| `apiKey` | string | 是 | SendGrid API 密钥 |
|
||
| `listId` | string | 是 | 列表 ID |
|
||
| `contactIds` | string | 是 | 要从列表中移除的逗号分隔的联系人 ID |
|
||
|
||
#### 输出
|
||
|
||
| 参数 | 类型 | 描述 |
|
||
| --------- | ---- | ----------- |
|
||
| `jobId` | string | 请求的作业 ID |
|
||
|
||
### `sendgrid_create_template`
|
||
|
||
在 SendGrid 中创建一个新的电子邮件模板
|
||
|
||
#### 输入
|
||
|
||
| 参数 | 类型 | 必需 | 描述 |
|
||
| --------- | ---- | -------- | ----------- |
|
||
| `apiKey` | string | 是 | SendGrid API 密钥 |
|
||
| `name` | string | 是 | 模板名称 |
|
||
| `generation` | string | 否 | 模板生成类型(legacy 或 dynamic,默认值:dynamic) |
|
||
|
||
#### 输出
|
||
|
||
| 参数 | 类型 | 描述 |
|
||
| --------- | ---- | ----------- |
|
||
| `id` | string | 模板 ID |
|
||
| `name` | string | 模板名称 |
|
||
| `generation` | string | 模板生成 |
|
||
| `updatedAt` | string | 最后更新时间戳 |
|
||
| `versions` | json | 模板版本数组 |
|
||
|
||
### `sendgrid_get_template`
|
||
|
||
通过 ID 从 SendGrid 获取特定模板
|
||
|
||
#### 输入
|
||
|
||
| 参数 | 类型 | 必需 | 描述 |
|
||
| --------- | ---- | -------- | ----------- |
|
||
| `apiKey` | string | 是 | SendGrid API 密钥 |
|
||
| `templateId` | string | 是 | 模板 ID |
|
||
|
||
#### 输出
|
||
|
||
| 参数 | 类型 | 描述 |
|
||
| --------- | ---- | ----------- |
|
||
| `id` | string | 模板 ID |
|
||
| `name` | string | 模板名称 |
|
||
| `generation` | string | 模板生成 |
|
||
| `updatedAt` | string | 最后更新时间戳 |
|
||
| `versions` | json | 模板版本数组 |
|
||
|
||
### `sendgrid_list_templates`
|
||
|
||
从 SendGrid 获取所有电子邮件模板
|
||
|
||
#### 输入
|
||
|
||
| 参数 | 类型 | 必需 | 描述 |
|
||
| --------- | ---- | -------- | ----------- |
|
||
| `apiKey` | string | 是 | SendGrid API 密钥 |
|
||
| `generations` | string | 否 | 按生成方式筛选 \(legacy、dynamic 或 both\) |
|
||
| `pageSize` | number | 否 | 每页返回的模板数量 \(默认值: 20\) |
|
||
|
||
#### 输出
|
||
|
||
| 参数 | 类型 | 描述 |
|
||
| --------- | ---- | ----------- |
|
||
| `templates` | json | 模板数组 |
|
||
|
||
### `sendgrid_delete_template`
|
||
|
||
从 SendGrid 删除电子邮件模板
|
||
|
||
#### 输入
|
||
|
||
| 参数 | 类型 | 必需 | 描述 |
|
||
| --------- | ---- | -------- | ----------- |
|
||
| `apiKey` | string | 是 | SendGrid API 密钥 |
|
||
| `templateId` | string | 是 | 要删除的模板 ID |
|
||
|
||
#### 输出
|
||
|
||
| 参数 | 类型 | 描述 |
|
||
| --------- | ---- | ----------- |
|
||
| `success` | boolean | 操作成功状态 |
|
||
| `message` | string | 状态或成功消息 |
|
||
| `messageId` | string | 邮件消息 ID \(send_mail\) |
|
||
| `to` | string | 收件人邮箱地址 \(send_mail\) |
|
||
| `subject` | string | 邮件主题 \(send_mail, create_template_version\) |
|
||
| `id` | string | 资源 ID |
|
||
| `jobId` | string | 异步操作的作业 ID |
|
||
| `email` | string | 联系人邮箱地址 |
|
||
| `firstName` | string | 联系人名字 |
|
||
| `lastName` | string | 联系人姓氏 |
|
||
| `createdAt` | string | 创建时间戳 |
|
||
| `updatedAt` | string | 最后更新时间戳 |
|
||
| `listIds` | json | 联系人所属列表 ID 的数组 |
|
||
| `customFields` | json | 自定义字段值 |
|
||
| `contacts` | json | 联系人数组 |
|
||
| `contactCount` | number | 联系人数 |
|
||
| `lists` | json | 列表数组 |
|
||
| `name` | string | 资源名称 |
|
||
| `templates` | json | 模板数组 |
|
||
| `generation` | string | 模板生成 |
|
||
| `versions` | json | 模板版本数组 |
|
||
| `templateId` | string | 模板 ID |
|
||
| `active` | boolean | 模板版本是否激活 |
|
||
| `htmlContent` | string | HTML 内容 |
|
||
| `plainContent` | string | 纯文本内容 |
|
||
|
||
### `sendgrid_create_template_version`
|
||
|
||
在 SendGrid 中创建一个新的电子邮件模板版本
|
||
|
||
#### 输入
|
||
|
||
| 参数 | 类型 | 必需 | 描述 |
|
||
| --------- | ---- | -------- | ----------- |
|
||
| `apiKey` | string | 是 | SendGrid API 密钥 |
|
||
| `templateId` | string | 是 | 模板 ID |
|
||
| `name` | string | 是 | 版本名称 |
|
||
| `subject` | string | 是 | 电子邮件主题行 |
|
||
| `htmlContent` | string | 否 | 模板的 HTML 内容 |
|
||
| `plainContent` | string | 否 | 模板的纯文本内容 |
|
||
| `active` | boolean | 否 | 此版本是否为激活状态(默认:true) |
|
||
|
||
#### 输出
|
||
|
||
| 参数 | 类型 | 描述 |
|
||
| --------- | ---- | ----------- |
|
||
| `id` | string | 版本 ID |
|
||
| `templateId` | string | 模板 ID |
|
||
| `name` | string | 版本名称 |
|
||
| `subject` | string | 电子邮件主题 |
|
||
| `active` | boolean | 此版本是否为激活状态 |
|
||
| `htmlContent` | string | HTML 内容 |
|
||
| `plainContent` | string | 纯文本内容 |
|
||
| `updatedAt` | string | 最后更新时间戳 |
|