Ich versuche, einen Bericht aus der AdExchange Seller API abrufen. Ich verwende die maximal zulässige Menge an Dimensionen und Metriken, so dass die Berichte ziemlich groß sind (> 100.000 Zeilen). Gemäß der documentation on large reports ist dies möglich, indem die Grenzwertunterbrechungsfunktion durch Hinzufügen des Parameters alt=media
verwendet wird. Aber ich kann nicht herausfinden, wie man diesen Parameter unter Verwendung der Google API client for PHP hinzufügt. Ich würde es vorziehen, bei den offiziellen Google-Bibliotheken zu bleiben, aber ich bin offen für Vorschläge.Hinzufügen von `alt` Parameter beim Generieren von Berichten von AdExchange Seller API
Hinweis: Hinzufügen alt=csv
oder 10 zu der optParams
funktioniert nicht und ich kann problemlos auf die Daten zugreifen, wenn ich einige der Dimensionen und Metriken entfernen.
Genauer gesagt verwende ich die accounts_reports
Ressource und dann die generate
Methode. Betrachtet man den Quellcode (siehe unten), kann ich nirgendwo sehen, dass es einen alt
Parameter akzeptieren würde, aber ich vermisse offensichtlich etwas.
$this->accounts_reports = new Google_Service_AdExchangeSeller_Resource_AccountsReports(
$this,
$this->serviceName,
'reports',
array(
'methods' => array(
'generate' => array(
'path' => 'accounts/{accountId}/reports',
'httpMethod' => 'GET',
'parameters' => array(
'accountId' => array(
'location' => 'path',
'type' => 'string',
'required' => true,
),
'startDate' => array(
'location' => 'query',
'type' => 'string',
'required' => true,
),
'endDate' => array(
'location' => 'query',
'type' => 'string',
'required' => true,
),
'dimension' => array(
'location' => 'query',
'type' => 'string',
'repeated' => true,
),
'filter' => array(
'location' => 'query',
'type' => 'string',
'repeated' => true,
),
'locale' => array(
'location' => 'query',
'type' => 'string',
),
'maxResults' => array(
'location' => 'query',
'type' => 'integer',
),
'metric' => array(
'location' => 'query',
'type' => 'string',
'repeated' => true,
),
'sort' => array(
'location' => 'query',
'type' => 'string',
'repeated' => true,
),
'startIndex' => array(
'location' => 'query',
'type' => 'integer',
),
),
),
)
)
);
Graben weiter fand ich diese Aussage in der Google_Service_AdExchangeSeller_Resource_AccountsReports
Klasse.
Generieren eines Ad Exchange-Berichts basierend auf der Berichtsanforderung, die in der Abfrage Parameter gesendet wurde. Gibt das Ergebnis als JSON zurück; Zum Abrufen der Ausgabe im CSV-Format geben Sie "alt = csv" als Abfrageparameter an. (reports.generate)
Aber wie genau würde das funktionieren? Soweit ich herausfinden kann, tut es das nicht.
Danke für die Antwort! Ich bin froh, dass jemand meine geistige Gesundheit bestätigen kann. Ich habe tatsächlich versucht, den Code der Client-Bibliothek zu ändern, aber ich habe nicht zu viel Zeit damit verbracht, es zu versuchen. Ich werde es bald wieder versuchen.Mir ist jedoch klargeworden, dass das Hinzufügen des alt = media-Parameters die CSV-Datei, die in der Dokumentation angegeben ist, tatsächlich zurückgibt. Also werde ich diese Lösung für jetzt verwenden. Danke für die Antwort. Ich werde dich als richtig markieren. –