2016-05-26 5 views
0

Alle Variablen geben korrekte Werte zurück, aber die Urlchetch-Antwort gibt 403 oder 401 (Zugriff verweigert) zurück.Mailchimp Google Blatt Problem mit dem API-Schlüssel

enter image description here

Erste Logausgabe:

var payload = { 
    "apikey": API_KEY, 
    "filters": { 
     "sendtime_start": REPORT_START_DATE, 
     "sendtime_end": REPORT_END_DATE 
    } 
}; 
Logger.log(payload); 

Zweite Protokollausgabe:

var params = { 
    "method": "POST", //what MC specifies 
    "muteHttpExceptions": true, 
    "payload": payload, 
    "limit": 100 
}; 
Logger.log(params); 

dritte Protokollausgabe:

var apiCall = function(endpoint) { 

    //issue with syntax here? 

    var apiResponse = UrlFetchApp.fetch(automationsList, params); 
    var json = JSON.parse(apiResponse); 
    Logger.log(apiResponse); 
    return json; 
}; 

Automation API-Aufruf, die nicht wo ist rking:

var automations = apiCall(automationsList); 
var automationsData = automations.data; 

for (var i = 0; i < automationsData.length; i++) { 


    // are these response parameters? are these specific values getting pulled from MC - these are the type of values i want? 
    var a = automationsData[i]; 
    var aid = a.id; // identifies unique campaign *** does this have anything to do with the call function above - it used to be as cid b/c this was for campaigns before?? 
    var emails_sent = a.emails_sent; 
    var recipients = a.recipients; 
    var report_summary = a.report_summary; 
    var settings = a.settings; 

    if (send_time) { 

     var r = apiCall(reports, cid); // why does this have cid? but the other one didn't?? 
     var emails_sent = r.emails_sent; 
     var opens = r.opens; 
     var unique_opens = r.unique_opens; 
     var clicks = r.clicks; 
     var unique_clicks = r.unique_clicks; 
     var open_rate = (unique_opens/emails_sent).toFixed(4); 
     var click_rate = (unique_clicks/emails_sent).toFixed(4); 

    } 

Die for-Schleife nicht einmal ausgeführt wird, weil ich für automationsData folgende Fehlermeldung erhalten:

TypeError: Cannot read property "data" from undefined. (line 82, file "Code")

Die apiResponse gibt es irgendwie nicht funktioniert, ist jede Hilfe dankbar.

Antwort

0

Wie sich herausstellte, habe ich v3.0 für die Mailchimp API verwendet, während ich 2.0 verwenden musste.

1

Das Problem besteht darin, wie Sie Ihr Projekt in der Developers Console einrichten. Versuchen Sie erneut den Prozess here für Sie zu verfolgen, um zu überprüfen, ob Sie es bereits in der richtigen Weise tun.

Sie können auch die Lösung hier in dieser SO question überprüfen, er/sie erklärte es hier, warum er/sie die gleichen 401 und 403 Fehler, die Sie bekommen.