iContact の API を使用して、単一の連絡先レコードの住所を更新する必要があります。
API はこちら: https://github.com/icontact/icontact-api-php
具体的には、更新したいですstreet2
。
API には、15 個のパラメーターを受け取る「updateContact」関数があります。次に例を示します。
updateContact($currentContactId, null, null, null, null, null, null,'My second address', null, null, null, null, null, null, null);
API が URI を作成するので、問題ありません。また、それを POST に設定します (これも、API が連絡先を更新するために必要なものです)。
API によって作成された URI の例を次に示します。
https://app.sandbox.icontact.com/icp/a/913463/c/133578/contacts/67295434
最後の桁67295434
は、連絡先の一意の ID です。
BODY リクエストも問題ないようです。
[{"street2":"My second address"}]
curl_exec
しかし、取得後の JSON 応答は次のとおりです。
{"contact":
{
"contactId":"67295434",
"prefix":"Mr.",
"firstName":"Joe",
"lastName":"Williams",
"suffix":"Jr.",
"street":"2365 Meridian Parkway",
"street2":"",
"city":"Durham",
"state":"NC",
"postalCode":"27713",
"phone":"8668039462",
"fax":"",
"business":"iContact",
"email":"joewilliams@icontact.com",
"createDate":"2013-03-30 21:22:28",
"bounceCount":"","status":"normal",
"interestedinseo":"1",
"wheredoyoulive":"New York"
},
"warnings":["Invalid field: 0"]
}
API にバグがあると思われますが、見つけられません。それとも私は愚かな何かを逃していますか?アイデアはありますか?