0

我正在尝试在 Javascript 中设置一个 Post 调用,以在我的 hubspot 帐户中创建一个联系人。我是 Rest API 的新手,以及这一切是如何工作的。这就是文档所说的这样做。

必需参数 如何使用 说明 HubSpot API 密钥 ----- hapikey=X ---- 在请求 URL 中使用 您正在调用的门户的 HubSpot API 密钥。

联系人 JSON -----在请求正文中使用----这是代表您正在创建的联系人的 JSON。这应该是下面给出的代码示例中看到的格式。

电子邮件地址----- 在请求正文中使用----- 请注意,电子邮件地址是您在创建新联系人时发布到 HubSpot 的 JSON 的必需部分。可选参数 使用方法 描述

无 无 此方法没有可选参数。

POST 到的示例 URL: https ://api.hubapi.com/contacts/v1/contact/?hapikey=demo

我得到了这个例子,我可以使用 hapikey=demo 拨打电话。我不明白的是请求正文中的使用。这完全意味着什么以及我如何实现它。我找不到任何文档来实际将 JSON 加载到 post 调用中。

这是我所拥有的

var testContact = '{"properties":['+
                '{"property":"email","value":"testing@hubspot.com"},'+
                '{"property":"firstname","value":"Peter"},'+
                '{"property":"lastname","value":"xxxxx"}]}';

                var test = JSON.parse(testContact);
                //alert(test.properties[1].value);
                //console.log(test.properties[1].firstname);

                $.post("https://api.hubapi.com/contacts/v1/contact/?hapikey=demo&contact=" + testContact + "&email=" + test.properties[0].value,function(result){
                console.log(result);
                });

我不断收到来自服务器的错误请求,因此它必须正在连接并且我设置的信息错误。

更新

所以我取消了“字符串化”,当我尝试传递我只是得到一个对象而不是整个字符串时,有趣的是什么。

https://api.hubapi.com/contacts/v1/contact/?hapikey=3fd8a881-2859-4c85-bec8-690bd989a889&contact=[object%20Object]&email=testingapis@hubspot.com

var testContact = {
                "properties": [
                {
                    "property": "email",
                    "value": "testingapis@hubspot.com"
                },
                {
                    "property": "firstname",
                    "value": "Adrian"
                },
                {
                    "property": "lastname",
                    "value": "Mott"
                }]};


                $.post("https://api.hubapi.com/contacts/v1/contact/?hapikey=3fd8a881-2859-4c85-bec8-690bd989a889&contact=" + testContact + "&email=" + testContact.properties[0].value,function(result){
                console.log(result);
                });
4

1 回答 1

0

您的 JSON 不正确,无需“字符串化”然后对其进行解析......只需发送一个像这样的对象:

我知道你看过这个页面:http: //developers.hubspot.com/docs/methods/contacts/create_contact

尝试准确复制他们在该页面上拥有的对象,除了取消不需要发送的属性外,不要修改它...

{
            "properties": [
                {
                    "property": "email",
                    "value": "testingapis@hubspot.com"
                },
                {
                    "property": "phone",
                    "value": "555-122-2323"
                },
                {
                    "property": "address",
                    "value": "25 First Street"
                },
                {
                    "property": "city",
                    "value": "Cambridge"
                },
                {
                    "property": "state",
                    "value": "MA"
                },
                {
                    "property": "zip",
                    "value": "02139"
                }
            ]
        }
于 2016-04-23T00:01:47.787 回答