2016-10-31 32 views
1

我正在升級工作中使用的C#應用​​程序,以使用Survey Monkey收集客戶滿意度統計信息。升級是爲了使用Survey Monkey API V3而不是V2(因爲V2即將關閉)。我們的代碼的兩個版本都使用Ben Emmett的優秀.NET包裝(https://github.com/bcemmett/SurveyMonkeyApi),並使用適當的方法進行擴展,以支持創建新調查和發送邀請。Survey Monkey API V3 - 從現有調查創建時的調查標題

在版本2中,我們使用Create_Flow API方法根據現有的調查生成新的調查(我們有幾個現有的基礎調查,並根據我們正在調查的項目類型選擇適當的調查)。新調查的題目反映相關項目的名稱很重要。我們V2代碼中的相關部分看起來是這樣的:

 var data = new CreateFlowSettings(); 
     data.survey.survey_title = legislationTitle; 
     data.survey.from_survey_id = fromSurveyId; 
     data.collector.recipients = recipients; 
     data.email_message.subject = subject; 
     data.email_message.body_text = bodyText; 
     data.email_message.reply_email = replyEmail; 

     var serializedData = JsonConvert.SerializeObject(data); 

     const string endPoint = "/batch/create_flow"; 
     var response = MakeApiRequest(endPoint, serializedData); 
     var createFlowResponse = 
      JsonConvert.DeserializeObject<CreateFlowResponseObjects.CreateFlowResponse>(response.ToString()); 
     return createFlowResponse; 

在V3中,我們創建一個使用/調查我們的調查端點像這樣(在下面的代碼中使用的術語「模板」是不是在調查猴子參考模板調查的概念):

 public Survey CreateSurvey(string templateSurveyid, string newSurveyTitle) 
    { 
     const string endpoint = "/surveys"; 
     var requestData = new RequestData {{"from_survey_id", templateSurveyid}, {"title", newSurveyTitle}}; 
     var result = MakeApiRequest(endpoint, Verb.POST, requestData); 
     return result.ToObject<Survey>(); 
    } 

在V2調查的標題顯示在每一頁的在我們的新的調查頂部將反映「survey_title」我們的數據與API請求一起發送。然而,在V3中,'標題'值並不代替出現在每頁頂部的文字。它正確地確定網站上的調查名稱,但在每個頁面的頂部,我們可以看到新調查所依據的調查題目(將調查的id作爲'from_survey_id'傳遞給API)。

我想我已經使用了相當廣泛的搜索引擎,找不到任何其他人描述這個問題。任何想法我做錯了什麼?我需要在創建後修改調查代碼以在V3中實現此目的嗎?

回答

1

因此,事實證明這是API v3中的一個錯誤。複印調查中只有部分調查題目正在更新。

這個問題已經解決了 - 希望得到解決(可能在本週的某個時候),它會開始工作,沒有任何變化。

注意:調查中的PATCH應該正常工作(但除非必要,否則我不會推薦編碼)

相關問題