1

我目前无法弄清楚如何通过 API 获取多个自定义字段。Excel 提取提供了我需要的列,但我找不到 v3 GET 或 POST 协议来获取所需的字段。

来自:api.surveymonkey.net/v3/surveys/[survey_id]/details

我看到了所需的字段:

  1. custom_variables.a = [变量列名]
  2. custom_variables.b = [变量 b 列名]

使用以下内容:api.surveymonkey.net/v3/surveys/[survey_id]/responses/bulk?page=[#]&per_page=[#]

  1. data.0.custom_value = 空白
  2. data.0.recipient_id = 空白

2016 年 10 月 6 日更新:更改自定义变量计划要求

变更说明:使黄金计划及更高版本可访问调查自定义变量。

受影响的端点:/surveys、/surveys/{id}、/surveys/{id}/responses/bulk、/collectors/{id}/responses/bulk、/surveys/{id}/responses/{id}、/collectors /{id}/responses/{id}、/surveys/{id}/responses/{id}/details、/collectors/{id}/responses/{id}/details

我达到了 API 调用限制,但还无法运行 /collectors/{id}/responses。我认为最好现在问并得到正确的答案(这样我就可以完成这个项目并在我的“计数器”重置时达到我的截止日期)。作为信息,我正在使用 Alteryx 拨打电话,一旦我完成了这篇文章,将在 Alteryx 网站上发布工作流程(以回馈社区)。

预先感谢您的帮助!

-画

4

2 回答 2

1

所以这是两种不同的“自定义值”。

有一些自定义变量,它们基本上是 URL 参数,将被接受并与调查响应一起存储。这些仅适用于非基于电子邮件的收集器,尤其是 Weblink 收集器。自定义变量也存储在调查中,因此当您使用

GET /v3/surveys/<survey_id>

你会得到这样的回应

{
  "title": "My Survey",
  "custom_variables": {
    "name1": "label1",
    "name2": "label2"
    ...

  },
  ...
}

然后,当您获取调查回复时,假设它们已填写,您将收到如下回复:

GET /v3/surveys/<survey_id>/responses/<response_id>
{
  "id": "<response_id>",
  "response_status": "completed",
  "custom_variables": {
    "name1": "value1",
    "name2": "value2"
    ...
  },
  ...
}

关于自定义值,这些是存储在地址簿中联系人资源中的自定义数据,用于在电子邮件收集器(而不是调查)上创建收件人。

因此,当您在电子邮件收集器上创建新收件人custom_fields时,您可以设置存储在联系人和收件人上的收件人。当您获取该收件人时,它看起来像这样:

GET /v3/collectors/<collector_id>/recipients/<recipient_id>
{
    "id": "<recipient_id>",
    "email": "<email>",
    "first_name": "<first_name>",
    "last_name": "<last_name>",
    "custom_fields": {
      "1": "field1",
      "2": "field2",
      "3": "field3",
      ...
    }
    ...
}

然后,当该特定收件人回答调查并获取响应时,您将在响应元数据中获得联系信息,例如:

GET /v3/surveys/<survey_id>/responses/<response_id>
{
  "id": "<response_id>",
  "response_status": "completed",
  "metadata": {
    "contact": {
        {
          "id": "<response_id>",
          "response_status": "completed",
          "metadata": {
            "contact": {
                "first_name": {
                  "type": "string",
                  "value": "<first_name>"
                },
                "last_name": {
                  "type": "string",
                  "value": "<last_name>"
                },
                "name1": {
                  "type": "string",
                  "value": "value1"
                },
                "name2": {
                  "type": "string",
                  "value": "value2"
                },
                "name3": {
                  "type": "string",
                  "value": "value3"
                }
            },
            ...
          },
          ...
        }
        ...
    },
    ...
  }
}

请注意,元数据在批量响应端点中只有名字、姓氏和电子邮件。这是批量响应的当前限制。

希望这有助于澄清差异。

于 2017-03-01T18:38:36.883 回答
0

当您使用以下网址时

https://api.surveymonkey.net/v3/surveys/{SURVEY_ID}/responses/bulk

作为回应,您将获得自定义变量,

{
  "per_page": 50,
  "total": 6,
  "data": [
    {
      "total_time": 108,
      "href":"https://api.surveymonkey.net/v3/surveys/119486428/responses/6287196301",
      "custom_variables": {
      "key1": "value1",
      "key2": "value2"
    },
}    

我正在使用网络收集器。并将自定义变量添加为 url 参数。

于 2017-07-21T05:06:11.940 回答