如何使用 API v1 contact_sync/contact_add 将联系人添加到 ActiveCampaign

Posted

技术标签:

【中文标题】如何使用 API v1 contact_sync/contact_add 将联系人添加到 ActiveCampaign【英文标题】:How to add a contact to ActiveCampaign using API v1 contact_sync/contact_add 【发布时间】:2021-12-03 06:44:15 【问题描述】:

我在向 ActiveCampaign 添加联系人时遇到问题。我在这里阅读了一篇文章:How to add a contact to a list in ActiveCampaign API v3,并且正在使用 API 的 v1。我尽我所能使用了他们的contact_sync 文档。

我正在使用 Gatsby/React --> GitHub --> Netlify 进行开发,对 POST 请求使用 lamda 函数。

这是我的 axios POST:


  method: 'post',
  url: 'https://ACCOUNT.api-us1.com/admin/api.php?api_key=xxxxxxxxxxxx&api_action=contact_sync&api_output=json',
  headers:  'Content-Type': 'Content-Type: application/x-www-form-urlencoded' ,
  body: 
    email: 'email@email.com',
    first_name: 'John'
  

并收到如下回复:


  result_code: 0,
  result_message: 'Could not add contact; missing email address',
  result_output: 'json'

我正在与他们的端点交谈。我只是不知道如何向端点提供电子邮件地址?

有没有人愿意分享一个可行的例子?任何形式的指导将不胜感激!

【问题讨论】:

【参考方案1】:

我想确保关闭它并分享我的答案。

非常感谢@reza jafari 在此post 中的评论,他让我注意到Postman 右边距的代码窗口,您可以从下拉列表中选择语言/服务器,它提供了格式正确的响应。

(我没有足够的声誉来支持@reza 的回复,所以想在这里承认它。)

我能够让我的帖子在 Postman 中工作,这个小技巧让我摆脱了困境。我将继续发布我的解决方案以关闭此帖子。

const axios = require("axios")
const qs = require("qs")

exports.handler = async function (event) 
  const  email, first_name  = JSON.parse(event.body)

  const data = qs.stringify(
    email: email,
    first_name: first_name,
    tags: '"api"',
    "p[1]": "1",
  )
  const config = 
    method: "post",
    url: "https://ACCOUNT.api-us1.com/admin/api.php?api_key=xxxxxxxxx&api_action=contact_sync&api_output=json",
    headers: 
      "Api-Token":
        "xxxxxxxxx",
      "Content-Type": "application/x-www-form-urlencoded",
    ,
    data: data,
  

  try 
    const response = await axios(config)
    return 
      statusCode: 200,
      body: JSON.stringify(response.data),
    
   catch (err) 
    return 
      statusCode: 500,
      body: JSON.stringify(err),
    
  


【讨论】:

以上是关于如何使用 API v1 contact_sync/contact_add 将联系人添加到 ActiveCampaign的主要内容,如果未能解决你的问题,请参考以下文章

如何将所有 kubernetes 入口 yamls 转换为使用 API 版本networking.k8s.io/v1

10月31日V1被取消后,如何继续使用PHP客户端库'googleapis / google-api-php-client'访问'Youtube Analytics API&#

如何按照硬币市场api v1按价格对美元进行排序?

Locust 负载测试:如何在所有其他 API 中为一个特定 API 分配单个用户

如何将应用签名从 V1 升级到 V2?

cordova phonegap-plugin-push v1.x - 如何使其与 Android 8.1(API 级别 27)一起使用