2017-01-05 36 views
0

我试图订阅用户到列表使用Mailchimp API和由于某种原因,它一直提交状态为“等待“,即使我已将其设置为”订阅“。我试图直接订阅用户而不提示构造电子邮件。Mailchimp API v3.0“状态”:“订阅”总是导致“状态”:“正在等待”

代码:

$data = [ 
    'email'  => '[email protected]', 
    'status' => 'subscribed', 
    'firstname' => 'john', 
    'lastname' => 'doe' 
]; 

syncMailchimp($data); 



function syncMailchimp($data) { 
    $apiKey = ###; 
    $listId = ###; 

    $memberId = md5(strtolower($data['email'])); 
    $dataCenter = substr($apiKey,strpos($apiKey,'-')+1); 
    $url = 'https://' . $dataCenter . '.api.mailchimp.com/3.0/lists/' . $listId . '/members/' . $memberId; 

    $json = json_encode([ 
     'email_address' => $data['email'], 
     'status'  => $data['status'], // "subscribed","unsubscribed","cleaned","pending" 
     'merge_fields' => [ 
      'FNAME'  => $data['firstname'], 
      'LNAME'  => $data['lastname'] 
     ] 
    ]); 

    $ch = curl_init($url); 

    curl_setopt($ch, CURLOPT_USERPWD, 'user:' . $apiKey); 
    curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
    curl_setopt($ch, CURLOPT_TIMEOUT, 10); 
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT'); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
    curl_setopt($ch, CURLOPT_POSTFIELDS, $json); 



    $result = curl_exec($ch); 
    $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE); 
    curl_close($ch); 

    return $httpCode; 
} 

响应:

{ 
    "id": "44848d9005a4ed1d5272c10e46031670", 
    "email_address": "[email protected]", 
    "unique_email_id": "37a0bec0fb", 
    "email_type": "html", 
    "status": "pending", 
    "merge_fields": { 
     "FNAME": "john", 
     "LNAME": "doe" 
    }, 
    "stats": { 
     "avg_open_rate": 0, 
     "avg_click_rate": 0 
    }, 
    "ip_signup": "", 
    "timestamp_signup": "", 
    "ip_opt": "50.62.176.151", 
    "timestamp_opt": "2017-01-05T17:20:22+00:00", 
    "member_rating": 2, 
    "last_changed": "2017-01-05T18:40:57+00:00", 
    "language": "", 
    "vip": false, 
    "email_client": "", 
    "location": { 
     "latitude": 0, 
     "longitude": 0, 
     "gmtoff": 0, 
     "dstoff": 0, 
     "country_code": "", 
     "timezone": "" 
    }, 
    "list_id": "ec3297395e", 
    "_links": [{ 
     "rel": "self", 
     "href": "https://us5.api.mailchimp.com/3.0/lists/ec3297395e/members/44848d9005a4ed1d5272c10e46031670", 
     "method": "GET", 
     "targetSchema": "https://us5.api.mailchimp.com/schema/3.0/Definitions/Lists/Members/Response.json" 
    }, { 
     "rel": "parent", 
     "href": "https://us5.api.mailchimp.com/3.0/lists/ec3297395e/members", 
     "method": "GET", 
     "targetSchema": "https://us5.api.mailchimp.com/schema/3.0/Definitions/Lists/Members/CollectionResponse.json", 
     "schema": "https://us5.api.mailchimp.com/schema/3.0/CollectionLinks/Lists/Members.json" 
    }, { 
     "rel": "update", 
     "href": "https://us5.api.mailchimp.com/3.0/lists/ec3297395e/members/44848d9005a4ed1d5272c10e46031670", 
     "method": "PATCH", 
     "targetSchema": "https://us5.api.mailchimp.com/schema/3.0/Definitions/Lists/Members/Response.json", 
     "schema": "https://us5.api.mailchimp.com/schema/3.0/Definitions/Lists/Members/PATCH.json" 
    }, { 
     "rel": "upsert", 
     "href": "https://us5.api.mailchimp.com/3.0/lists/ec3297395e/members/44848d9005a4ed1d5272c10e46031670", 
     "method": "PUT", 
     "targetSchema": "https://us5.api.mailchimp.com/schema/3.0/Definitions/Lists/Members/Response.json", 
     "schema": "https://us5.api.mailchimp.com/schema/3.0/Definitions/Lists/Members/PUT.json" 
    }, { 
     "rel": "delete", 
     "href": "https://us5.api.mailchimp.com/3.0/lists/ec3297395e/members/44848d9005a4ed1d5272c10e46031670", 
     "method": "DELETE" 
    }, { 
     "rel": "activity", 
     "href": "https://us5.api.mailchimp.com/3.0/lists/ec3297395e/members/44848d9005a4ed1d5272c10e46031670/activity", 
     "method": "GET", 
     "targetSchema": "https://us5.api.mailchimp.com/schema/3.0/Definitions/Lists/Members/Activity/Response.json" 
    }, { 
     "rel": "goals", 
     "href": "https://us5.api.mailchimp.com/3.0/lists/ec3297395e/members/44848d9005a4ed1d5272c10e46031670/goals", 
     "method": "GET", 
     "targetSchema": "https://us5.api.mailchimp.com/schema/3.0/Definitions/Lists/Members/Goals/Response.json" 
    }, { 
     "rel": "notes", 
     "href": "https://us5.api.mailchimp.com/3.0/lists/ec3297395e/members/44848d9005a4ed1d5272c10e46031670/notes", 
     "method": "GET", 
     "targetSchema": "https://us5.api.mailchimp.com/schema/3.0/Definitions/Lists/Members/Notes/CollectionResponse.json" 
    }] 
} 

回答

0

有许多的东西,可怎么回事,但你可能希望确保该帐户的API密钥属于没有任何MailChimp合规性相关事件阻止您直接订阅地址。

+0

是的,我之前就曾想过这件事,并且正在四处寻找各种限制,限制等 - 但从来没有发现任何东西。有没有哪个地方可以列出我所忽略的? –

+0

如果您点击导航栏中的“帐户”标签,登录该帐户时,该通知将成为通知。 – jhut89

+0

谢谢@ jhut89!这绝对是问题。 –