未在SurveyMonkey API调用中获取调查信息

时间:2016-08-19 15:05:12

标签: surveymonkey

我试图通过API获取有关SurveyMonkey调查的输入信息。但是我收到以下返回消息:"此时无法验证对调查的访问权限,请稍后再试。",状态为5(系统错误)。

我正在使用处于草稿状态的APP。我的应用程序中的所有范围都是可选的。其他api调用(比如get_survey_list)确实给了我数据。

我正在使用php,但API控制台(https://developer.surveymonkey.com/docs/api_console/)也为我提供了这些结果。

我是否缺少额外的权限图层?人们需要通过oauth批准某事吗?

2 个答案:

答案 0 :(得分:1)

API控制台是针对API的V2(已弃用或可能很快弃用),我建议使用V3(https://developer.surveymonkey.com/api/v3

您可以使用

获取调查列表
GET /v3/surveys

您可以使用

进行特定调查
GET /v3/surveys/<id>

按照路径获取单个页面/问题,或者如果您希望立即扩展整个调查,请使用:

GET /v3/surveys/<id>/details

关于你正在使用API​​ v2的请求,我可能需要更多的信息,如果你正在使用一个空的机构来发送get_survey_list并且正在解决这个问题我可能会联系他们的客户支持查看它看起来像服务器错误。但我建议你去V3,看看一切是否适合你。

答案 1 :(得分:1)

就像一般发布的那样,v3运行正常。以下是我的POC的代码:

// GET USER
$requestHeaders = array(
    'Content-Type: application/json',
    'Authorization: Bearer [ACCESS_TOKEN]',
);

$url = 'https://api.surveymonkey.net/v3/users/me?api_key=[API_KEY]';

$ch  = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, $requestHeaders);
$result = curl_exec($ch);
curl_close($ch);

以上只是获取用户基本信息的简单调用。

下一个电话会获得通过特定收集者给出的答案中给出的答案。

// GET THE ANSWERS OF THE SURVEY
$requestHeaders = array(
    'Content-Type: application/json',
    'Authorization: Bearer [ACCESS_TOKEN]',
);

$url = 'https://api.surveymonkey.net/v3/collectors/[COLLECTOR_ID]/responses/bulk?api_key=[API_KEY]';

$ch  = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, $requestHeaders);
$result = curl_exec($ch);
curl_close($ch);

您还可以将API导入Postman。文档站点上有一个按钮。非常好:)