Wenn Sie einen Bericht ausführen, wird eine vorhandene
Report
Vorlage ausgeführt, um Leistungsdaten für Ihr Curation-Konto zu erstellen.
In dieser Anleitung erfahren Sie, wie Sie einen Bericht zur Leistung Ihres Curation
-Kontos erstellen können, indem Sie mit der Curation Partners API eine
Report Vorlage ausführen.
Hinweis
Bevor Sie fortfahren, müssen Sie Folgendes tun:
Berichtsausführung starten
Verwenden Sie die
curators.reports.run
Methode, um einen vorhandenen Bericht auszuführen.
Im folgenden Beispiel wird eine POST-Anfrage gesendet, um eine Berichtsausführung zu starten:
REST
Anfrage
curl --request POST \
'https://curationpartners.googleapis.com/v1/curators/ACCOUNT_ID/reports/123456789:run' \
--header 'Authorization: Bearer ACCESS_TOKEN' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{}' \
--compressed
Ersetzen Sie Folgendes:
ACCOUNT_ID: Ihre Konto-ID.ACCESS_TOKEN: Ihr Zugriffstoken.
Antwort
{
"name": "curators/ACCOUNT_ID/reports/123456789/operations/10486370264",
"done": false,
"metadata": {
"@type": "type.googleapis.com/google.ads.curationpartners.v1.RunReportMetadata"
}
}
Java
/* * Copyright (c) 2026 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except * in compliance with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software distributed under the License * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express * or implied. See the License for the specific language governing permissions and limitations under * the License. */ package com.google.api.services.samples.curationpartners.v1.curators.reports; import com.google.api.services.curationpartners.v1.CurationPartners; import com.google.api.services.curationpartners.v1.model.Operation; import com.google.api.services.curationpartners.v1.model.RunReportRequest; import com.google.api.services.samples.curationpartners.v1.Utils; import java.io.IOException; import java.security.GeneralSecurityException; import net.sourceforge.argparse4j.ArgumentParsers; import net.sourceforge.argparse4j.inf.ArgumentParser; import net.sourceforge.argparse4j.inf.ArgumentParserException; import net.sourceforge.argparse4j.inf.Namespace; public class RunReport { /** * Executes the run operation for a report. * * @param curationPartnersClient the initialized Curation Partners API client. * @param accountId the account ID of the curator that created the report. * @param reportId the resource ID of the report to run. * @throws IOException if the API returns an error. */ public static void execute( CurationPartners curationPartnersClient, Long accountId, String reportId) throws IOException { String name = String.format("curators/%s/reports/%s", accountId, reportId); System.out.printf("Running report with name \"%s\".%n", name); RunReportRequest requestBody = new RunReportRequest(); // Run the specified report to start an asynchronous operation. Operation operation = curationPartnersClient .curators() .reports() .run(name, requestBody) .execute(); System.out.println("Successfully initiated report run operation:"); Utils.jsonPrettyPrint(operation); } /** * Creates and configures the ArgumentParser for this sample. * * @return the configured ArgumentParser. */ private static ArgumentParser createArgumentParser() { ArgumentParser parser = ArgumentParsers.newFor("RunReport") .build() .defaultHelp(true) .description("Runs a specified report asynchronously, returning an Operation " + "that can be used to track its progress."); // Required arguments. parser .addArgument("-a", "--account_id") .help("The account ID of the curator that created the report.") .required(true) .type(Long.class); parser .addArgument("-r", "--report_id") .help("The resource ID of the report to run.") .required(true); return parser; } public static void main(String[] args) { ArgumentParser parser = createArgumentParser(); Namespace parsedArgs = null; try { parsedArgs = parser.parseArgs(args); } catch (ArgumentParserException ex) { parser.handleError(ex); System.exit(1); } CurationPartners client = null; try { client = Utils.getCurationPartnersClient(); } catch (IOException ex) { System.out.printf("Unable to create Curation Partners API service:%n%s", ex); System.out.println("Did you specify a valid path to a service account key file?"); System.exit(1); } catch (GeneralSecurityException ex) { System.out.printf("Unable to establish secure HttpTransport:%n%s", ex); System.exit(1); } try { execute( client, parsedArgs.getLong("account_id"), parsedArgs.getString("report_id")); } catch (IOException ex) { System.out.printf("Curation Partners API returned error response:%n%s", ex); System.exit(1); } } }
Das Ausführen eines Berichts ist ein asynchroner Vorgang mit langer Ausführungszeit. Wenn Sie die
run Methode aufrufen, antwortet die Curation Partners API mit einer
Operation
Ressource. Das Feld name des Vorgangs gibt den Ausführungsvorgang an und hat das folgende Format:
curators/ACCOUNT_ID/reports/REPORT_ID/operations/OPERATION_ID
Das zurückgegebene Operation-Objekt enthält Folgendes:
name: der vom Server zugewiesene Name für den Vorgang mit langer Ausführungszeit.metadata: optionale dienstspezifische Informationen zum Fortschritt. Das Feldmetadataist möglicherweise nicht imOperation-Objekt enthalten, das Sie in dercurators.reports.run-Antwort erhalten.
Nachdem Sie eine Berichtsausführung gestartet haben, können Sie die Berichtsergebnisse erst sehen, wenn das Feld done des Vorgangs den Wert true hat. Die Dauer der Ausführung eines Berichts hängt von der Komplexität des Berichts ab.
Nächste Schritte
- Informationen zum Abrufen und Ansehen abgeschlossener Berichte mit der Curation Partners API
- Informationen zum Ansehen vorhandener Berichte mit der Curation Partners API