2016-12-07 71 views
0

對於版本v2的surveymonkey api,'https://api.surveymonkey.net/v2/batch/send_flow'與包含數組中的recepients列表的主體將簡單地將所有收件人emailID添加到消息中。如何使用surveymonkey api v3添加批量電子郵件ID

但是,對於版本v3,是否有一種簡單的方法來添加批量中的所有收件人,併爲所有收件人發送電子郵件?以下發送消息的流程將只添加一個收件人電子郵件ID,否則我們必須每次使用新的電子郵件ID進行「POST /收集者/ {id} /消息/ {id} /收件人」的多次POST調用。我們如何通過一個API調用將所有的emailID添加到收件人列表中,並將消息發送到該收件人列表?

POST/surveys/{id}/collectors - > POST/collectors/{id}/messages - > POST/collectors/{id}/messages/{id}/recipients - > POST/collectors/{id }/messages/{id} /發送

回答

3

唯一的方法就是您現在在V3中建議的方式。我唯一要補充的是有一個bulk recipient endpoint

所以,你會爲喜歡拆分這些了原因

POST /surveys/{id}/collectors 
POST /collectors/{id}/messages 
POST /collectors/{id}/messages/{id}/recipients/bulk 
POST /collectors/{id}/messages/{id}/send 

部分是爲了更好的事務管理。例如,如果您調用send_flow並創建收集器和消息,則無論出於何種原因嘗試添加收件人時都會出錯,您將留下滯留的收集器/消息。這樣你就可以自己處理每個錯誤案例。 SurveyMonkey正在考慮發佈一些具有封裝功能的SDK,以及潛在的批量請求端點,但截至目前,這是在API中發送消息的過程。

例使用批量收件人端點:

您可以將聯繫人列表一次全部添加到您的消息是這樣的:

POST /collectors/{id}/messages/{id}/recipients/bulk 
{ 
    "contact_ids": ["1000", "10001"] 
} 

您可以從聯繫人列表中添加的所有聯繫人列出所有一次是這樣的:

POST /collectors/{id}/messages/{id}/recipients/bulk 
{ 
    "contact_list_ids": ["2000", "20001"] 
} 

或者,您可以通過電子郵件這樣的手動添加任何數量的聯繫人:

POST /collectors/{id}/messages/{id}/recipients/bulk 
{ 
    "contacts": [{ 
     "email": "[email protected]", 
     "first_name": "User 1", 
     "last_name": "Testing" 
    },{ 
     "email": "[email protected]", 
     "first_name": "User 2", 
     "last_name": "Testing" 
    }] 
} 

我相信你可以從一個請求中添加這三種方法。

+0

我有點困惑。這是說有沒有辦法批量添加收件人?另外,如果這就是它的意思,我們可以做一次創建收集器並創建消息步驟,無論我們需要添加多少收件人,然後執行循環並添加所需的所有收件人,然後發送一個? – whoopah

+0

@whoopah不,您可以在一個請求中添加所有收件人,我在我的回答中添加了示例(請參閱我鏈接的文檔以及https://developer.surveymonkey.com/api/v3/#collectors-id-messages-id -recipients散裝)。我所說的是你不能創建消息,創建收集器,添加收件人,並在一個請求中發送消息。您需要在4中完成此操作,但不需要爲每個收件人提出請求。 –

+0

感謝您的解釋和例子。那些真的很清楚。 – whoopah

相關問題