【发布时间】:2017-02-11 05:08:51
【问题描述】:
我正在使用调查猴子 v3 API 发送调查电子邮件。在从一位收集者发送调查电子邮件时,我正在为同一收件人发送两条不同的调查消息。但是,在使用 api“/surveys/{id}/responses/bulk”收集调查猴子的调查回复时,我在其中找不到 messageID。那么我怎样才能找到哪个响应属于收集器的哪个消息呢?我必须使用不同的 API 吗?
【问题讨论】:
标签: surveymonkey
我正在使用调查猴子 v3 API 发送调查电子邮件。在从一位收集者发送调查电子邮件时,我正在为同一收件人发送两条不同的调查消息。但是,在使用 api“/surveys/{id}/responses/bulk”收集调查猴子的调查回复时,我在其中找不到 messageID。那么我怎样才能找到哪个响应属于收集器的哪个消息呢?我必须使用不同的 API 吗?
【问题讨论】:
标签: surveymonkey
跟踪特定消息的用例是什么?您有 recipient_id 和 first/last/email 字段。
您可以在/collectors/{collector_id}/recipients/{recipient_id} 获取收件人详细信息。除了使用 /collectors/{collector_id}/messages/{message_id}/recipients 搜索您的消息之外,没有其他方法(据我所知)查询此信息
一般来说,当您向邮件添加收件人时,他们会与收集者共享。没有真正跟踪到响应了哪个特定消息,跟踪 ID 是相对于收集器的 recipient_id。
如果您对消息统计感兴趣(例如,哪条消息得到更好的响应率),您可以使用message stats endpoint。
对于说不同的产品有不同的消息,不幸的是消息 ID 与响应无关,但有两个选项是:
1) 为每种产品使用不同的收集器(如果有很多,则不理想) 2)在收件人上使用额外的字段(见示例):
例子:
POST /v3/collectors/<collector_id>/messages/<message_id1>/recipients
{
"first_name": "Test",
"last_name": "Tester",
"email": "test@example.com",
"extra_fields": {
"product": "shoes"
}
}
POST /v3/collectors/<collector_id>/messages/<message_id2>/recipients
{
"first_name": "Test",
"last_name": "Tester",
"email": "test@example.com",
"extra_fields": {
"product": "shirts"
}
}
然后,当您获取响应时,您将在元数据中获取该信息,例如:
{
"id": "<response_id>",
"recipient_id": "<recipient_id>",
"collector_id": "<collector_id>",
...
"metadata": {
"contact": {
"product": {
"type": "string",
"value": "shoes"
},
"email": {
"type": "string",
"value": "test@example.com"
}
}
}
}
需要注意的一点是,来自联系人的额外字段当前不显示在 /responses/bulk 端点中,仅显示在单个 responses/<id> 端点中。此外,对于额外的字段,您无法过滤 product=shoes 或诸如此类的响应。这些是当前 API 的一些限制 - 但希望它至少现在能有所帮助。
【讨论】: