调查猴子api:没有提供授权令牌错误

时间:2016-05-24 14:33:11

标签: oauth surveymonkey

我正在尝试使用调查猴子API来从我们上周发布的调查中提取数据,但我一直在收到错误。我已经在开发人员门户中注册了一个应用程序我添加了“OAuth重定向网址”'以这种格式" https://api.surveymonkey.com/oauth/authorize?response_type=code&redirect_uri=https%3A%2F%2Fapi.surveymonkey.com%2Fapi_console%2Foauth2callback&client_id=SurveyMonkeyApiConsole&api_key=u366xz3zv6s9jje5mm3495fk"正如Survey Monkey OAuth开发人员备忘单(https://gist.github.com/api-admin/11302313)中所述。我还设置范围并将应用状态标记为' public'。

以下是我调用API的代码。

import requests
url = "https://api.surveymonkey.net/v3/surveys/%s?api_key=%s" % (survey_id, YOUR_API_KEY)
s = requests.Session()
s.get(url).text

这是我得到的错误。

Out[41]: u'{"error": {"docs": "https://developer.surveymonkey.com/api/v3/#error-codes", "message": "The authorization token was not provided.", "id": "1010", "name": "Authorization Error", "http_status_code": 401}}'

使用API​​下载数据还需要做些什么?我正在使用SELECT年度计划订阅。

1 个答案:

答案 0 :(得分:1)

您需要在标头中设置访问令牌。我刚检查了文档中的示例,但是缺少了。文档应该修复。

OAuth示例为here。因此,特别是对于该请求,您需要执行以下操作:

headers = {
    'Content-Type': 'application/json',
    'Authorization': 'bearer ACCESS_TOKEN_HERE'
}

s.get(url, headers=headers)

那应该适合你。