Rozpocznij

Interfejs API Campaign Managera 360 zapewnia dostęp programowy do informacji z Twojego konta w tej usłudze. Służy on do zarządzania kampaniami i tworzenia raportów w taki sam sposób, jak w przypadku usług internetowych Campaign Managera 360 i Kreatora raportów.

W tym przewodniku znajdziesz informacje o tym, jak zacząć korzystać z interfejsu API Campaign Managera 360.

Wymagania wstępne

Zanim zaczniesz korzystać z interfejsu API Campaign Managera 360, musisz wykonać kilka czynności wstępnych:

  1. Musisz mieć konto Campaign Managera 360. Informacje o rejestracji znajdziesz w sekcji Reklamodawcy/agencje.

  2. Na koncie Campaign Managera 360 musisz włączyć dostęp do interfejsu API. Większość kont ma tę funkcję włączoną domyślnie. Jeśli nie masz pewności, skontaktuj się z przedstawicielem konta lub z zespołem pomocy Campaign Managera 360.

  3. Musisz mieć profil użytkownika z dostępem do tego konta. Poproś administratora konta Campaign Managera 360 o utworzenie profilu użytkownika powiązanego z tym kontem.

  4. Sprawdź uprawnienia profilu użytkownika w interfejsie Campaign Manager 360. Te ustawienia określają, do czego profil użytkownika może mieć dostęp za pomocą interfejsu API. Nie ma osobnych uprawnień interfejsu API.

Utwórz projekt

Aby rozpocząć korzystanie z interfejsu Campaign Manager 360 API, musisz najpierw utworzyć lub wybrać projekt w Konsoli interfejsów API Google i włączyć interfejs API. Ten link poprowadzi Cię przez proces i automatycznie aktywuje interfejs Campaign Managera 360.

Generowanie danych logowania

Wszystkie żądania wysyłane do interfejsu API Campaign Managera 360 muszą być autoryzowane. Aby uzyskać krótkie omówienie autoryzacji, przeczytaj artykuł o tym, jak autoryzować aplikację i identyfikować ją w Google.

W tych instrukcjach znajdziesz informacje o tworzeniu identyfikatora klienta OAuth 2.0 do użycia w przepływie dla zainstalowanej aplikacji. Instrukcje dotyczące generowania danych logowania do korzystania z procesu tworzenia konta usługi znajdziesz w przewodniku Konta usługi.

  1. Wykonaj czynności opisane w artykule Konfigurowanie projektu w Konsoli interfejsów API Google.

  2. W Konsoli interfejsów API otwórz stronę Dane logowania.
  3. Kliknij Utwórz dane logowania > Identyfikator klienta OAuth.

    1. Jeśli wcześniej nie skonfigurowano ekranu zgody OAuth w przypadku tego projektu, zostaniesz poproszony o jego skonfigurowanie. Kliknij SKONFIGURUJ EKRAN ZGODY.

    2. Wybierz typ użytkownika i kliknij UTWÓRZ.

    3. Wypełnij formularz początkowy. W razie potrzeby możesz je później zmienić. Gdy skończysz, kliknij Zapisz.

    4. Aby kontynuować, wróć do sekcji Dane logowania > Utwórz dane logowania > Identyfikator klienta OAuth.

  4. Jako typ aplikacji wybierz Aplikacja na komputer, nadaj jej nazwę i kliknij Utwórz.

Po zakończeniu zobaczysz identyfikator klienta OAuth 2.0 i obiekt tajny klienta, które możesz pobrać w formacie JSON i zapisać na później.

Instalowanie biblioteki klienta

Interfejs Campaign Manager 360 API został zaprojektowany na podstawie protokołu HTTP i JSON, więc każdy standardowy klient HTTP może wysyłać do niego żądania i analizować odpowiedzi.

Biblioteki klienta interfejsu API Google zapewniają jednak lepszą integrację językową, wyższy poziom bezpieczeństwa i obsługę wywołań autoryzowanych. Biblioteki klienta są dostępne w wielu językach programowania. Dzięki nim nie musisz ręcznie konfigurować żądań HTTP ani analizować odpowiedzi.

Aby rozpocząć, wybierz język programowania, w którym piszesz aplikację.

C#

Zainstaluj najnowszą bibliotekę klienta interfejsu Campaign Managera 360 API dla języka .NET. Zalecane jest zarządzanie instalacją za pomocą NuGet.

Otwórz konsolę menedżera pakietów NuGet i uruchom to polecenie:

Install-Package Google.Apis.Dfareporting.v3_4

Więcej informacji

Java

Zainstaluj najnowszą bibliotekę klienta interfejsu Campaign Managera 360 API dla języka Java. Zalecamy używanie Maven do zarządzania instalacją.

Dodaj do pliku pom.xml tę zależność:

<dependency>
  <groupId>com.google.apis</groupId>
  <artifactId>google-api-services-dfareporting</artifactId>
  <version>v4-rev20220611-1.32.1</version>
  <exclusions>
    <exclusion>
      <groupId>com.google.guava</groupId>
      <artifactId>guava-jdk5</artifactId>
    </exclusion>
  </exclusions>
</dependency>

Więcej informacji

PHP

Zainstaluj najnowszą bibliotekę klienta interfejsu Campaign Managera 360 API dla języka PHP. Zalecamy zarządzanie instalacją za pomocą Composera.

Otwórz terminal i uruchom to polecenie:

composer require google/apiclient

Jeśli masz już zainstalowaną bibliotekę i chcesz tylko zaktualizować ją do najnowszej wersji:

composer update google/apiclient

Zależnie od systemu konieczne może być poprzedzenie tych poleceń elementem sudo.

Więcej informacji

Python

Zainstaluj najnowszą bibliotekę klienta interfejsu API Campaign Managera 360 dla języka Python. Zalecamy zarządzanie instalacją za pomocą pakietu pip.

Otwórz terminal i uruchom to polecenie:

pip install --upgrade google-api-python-client

Zależnie od systemu konieczne może być poprzedzenie tych poleceń elementem sudo.

Więcej informacji

Ruby

Zainstaluj najnowszą bibliotekę klienta interfejsu API Campaign Managera 360 dla języka Ruby. Zalecamy zarządzanie instalacją za pomocą RubyGems.

Otwórz terminal i uruchom to polecenie:

gem install google-api-client

Jeśli masz już zainstalowaną bibliotekę i chcesz tylko zaktualizować ją do najnowszej wersji:

gem update -y google-api-client

Zależnie od systemu konieczne może być poprzedzenie tych poleceń elementem sudo.

Więcej informacji

Więcej informacji o obsługiwanych językach znajdziesz na stronie Biblioteki klienta.

Poproś

Po utworzeniu danych logowania OAuth 2.0zainstalowaniu biblioteki klienta możesz zacząć korzystać z interfejsu Campaign Manager 360 API. Aby dowiedzieć się, jak autoryzować i konfigurować klienta oraz wysyłać pierwsze żądania, wykonaj czynności opisane w poniższym przewodniku.

C#

  1. Wczytaj plik z tajnymi kluczami klienta i wygeneruj dane uwierzytelniające.

    Gdy wykonasz ten krok po raz pierwszy, w przeglądarce pojawi się prośba o autoryzację. Zanim zaakceptujesz, upewnij się, że korzystasz z konta Google, które ma dostęp do Campaign Managera 360. Aplikacja będzie mieć uprawnienia do uzyskiwania dostępu do danych w imieniu konta, na którym jest obecnie zalogowany użytkownik.

    // Load client secrets from the specified JSON file.
    GoogleClientSecrets clientSecrets;
    using(Stream json = new FileStream(pathToJsonFile, FileMode.Open, FileAccess.Read)) {
      clientSecrets = GoogleClientSecrets.Load(json);
    }
    
    // Create an asynchronous authorization task.
    //
    // Note: providing a data store allows auth credentials to be cached, so they survive multiple
    // runs of the application. This avoids prompting the user for authorization every time the
    // access token expires, by remembering the refresh token. The "user" value is used to
    // identify a specific set of credentials within the data store. You may provide different
    // values here to persist credentials for multiple users to the same data store.
    Task<UserCredential> authorizationTask = GoogleWebAuthorizationBroker.AuthorizeAsync(
        clientSecrets.Secrets,
        OAuthScopes,
        "user",
        CancellationToken.None,
        dataStore);
    
    // Authorize and persist credentials to the data store.
    UserCredential credential = authorizationTask.Result;
  2. Utwórz autoryzowanego klienta Dfareporting.

    // Create a Dfareporting service object.
    //
    // Note: application name should be replaced with a value that identifies your application.
    service = new DfareportingService(
        new BaseClientService.Initializer {
          HttpClientInitializer = credential,
          ApplicationName = "C# installed app sample"
        }
    );
  3. Wykonaj operację.

    // Retrieve and print all user profiles for the current authorized user.
    UserProfileList profiles = service.UserProfiles.List().Execute();
    
    foreach (UserProfile profile in profiles.Items) {
      Console.WriteLine("Found user profile with ID {0} and name \"{1}\".",
          profile.ProfileId, profile.UserName);
    }

Java

  1. Wczytaj plik z tajnymi kluczami klienta i wygeneruj dane uwierzytelniające.

    Gdy wykonasz ten krok po raz pierwszy, w przeglądarce pojawi się prośba o autoryzację. Zanim zaakceptujesz, upewnij się, że korzystasz z konta Google, które ma dostęp do Campaign Managera 360. Aplikacja będzie mieć uprawnienia do uzyskiwania dostępu do danych w imieniu konta, na którym jest obecnie zalogowany użytkownik.

    // Load the client secrets JSON file.
    GoogleClientSecrets clientSecrets =
        GoogleClientSecrets.load(
            jsonFactory, Files.newBufferedReader(Paths.get(pathToClientSecretsFile), UTF_8));
    
    // Set up the authorization code flow.
    //
    // Note: providing a DataStoreFactory allows auth credentials to be cached, so they survive
    // multiple runs of the program. This avoids prompting the user for authorization every time the
    // access token expires, by remembering the refresh token.
    GoogleAuthorizationCodeFlow flow =
        new GoogleAuthorizationCodeFlow.Builder(
                httpTransport, jsonFactory, clientSecrets, OAUTH_SCOPES)
            .setDataStoreFactory(dataStoreFactory)
            .build();
    
    // Authorize and persist credentials to the data store.
    //
    // Note: the "user" value below is used to identify a specific set of credentials in the data
    // store. You may provide different values here to persist credentials for multiple users to
    // the same data store.
    Credential credential =
        new AuthorizationCodeInstalledApp(flow, new LocalServerReceiver()).authorize("user");
  2. Utwórz autoryzowanego klienta Dfareporting.

    // Create a Dfareporting client instance.
    //
    // Note: application name below should be replaced with a value that identifies your
    // application. Suggested format is "MyCompany-ProductName/Version.MinorVersion".
    Dfareporting reporting =
        new Dfareporting.Builder(credential.getTransport(), credential.getJsonFactory(), credential)
            .setApplicationName("dfareporting-java-installed-app-sample")
            .build();
  3. Wykonaj operację.

    // Retrieve and print all user profiles for the current authorized user.
    UserProfileList profiles = reporting.userProfiles().list().execute();
    for (int i = 0; i < profiles.getItems().size(); i++) {
      System.out.printf("%d) %s%n", i + 1, profiles.getItems().get(i).getUserName());
    }

PHP

  1. Wczytaj plik z tajnymi kluczami klienta i wygeneruj dane uwierzytelniające.

    Gdy wykonasz ten krok po raz pierwszy, w przeglądarce pojawi się prośba o autoryzację. Zanim zaakceptujesz, upewnij się, że korzystasz z konta Google, które ma dostęp do Campaign Managera 360. Aplikacja będzie mieć uprawnienia do uzyskiwania dostępu do danych w imieniu konta, na którym jest obecnie zalogowany użytkownik.

    // Create a Google_Client instance.
    //
    // Note: application name should be replaced with a value that identifies
    // your application. Suggested format is "MyCompany-ProductName".
    $client = new Google_Client();
    $client->setAccessType('offline');
    $client->setApplicationName('PHP installed app sample');
    $client->setRedirectUri(self::OAUTH_REDIRECT_URI);
    $client->setScopes(self::$OAUTH_SCOPES);
    
    // Load the client secrets file.
    $client->setAuthConfig($pathToJsonFile);
    
    // Try to load cached credentials from the token store. Using a token store
    // allows auth credentials to be cached, so they survive multiple runs of
    // the application. This avoids prompting the user for authorization every
    // time the access token expires, by remembering the refresh token.
    if (file_exists($tokenStore) && filesize($tokenStore) > 0) {
        $client->setAccessToken(file_get_contents($tokenStore));
    } else {
        // If no cached credentials were found, authorize and persist
        // credentials to the token store.
        print 'Open this URL in your browser and authorize the application.';
        printf("\n\n%s\n\n", $client->createAuthUrl());
        print 'Enter the authorization code: ';
        $code = trim(fgets(STDIN));
        $client->authenticate($code);
    
        file_put_contents($tokenStore, json_encode($client->getAccessToken()));
    }
  2. Utwórz autoryzowanego klienta Dfareporting.

    // Create a Dfareporting service object.
    $service = new Google_Service_Dfareporting($client);
  3. Wykonaj operację.

    // Retrieve and print all user profiles for the current authorized user.
    $result = $service->userProfiles->listUserProfiles();
    foreach ($result['items'] as $userProfile) {
        printf(
            "User profile \"%s\" (ID: %d) found for account %d.\n",
            $userProfile->getUserName(),
            $userProfile->getProfileId(),
            $userProfile->getAccountId()
        );
    }

Python

  1. Wczytaj plik z tajnymi kluczami klienta i wygeneruj dane uwierzytelniające.

    Gdy wykonasz ten krok po raz pierwszy, w przeglądarce pojawi się prośba o autoryzację. Zanim zaakceptujesz, upewnij się, że korzystasz z konta Google, które ma dostęp do Campaign Managera 360. Aplikacja będzie mieć uprawnienia do uzyskiwania dostępu do danych w imieniu konta, na którym jest obecnie zalogowany użytkownik.

    # Set up a Flow object to be used if we need to authenticate.
    flow = client.flow_from_clientsecrets(
        path_to_client_secrets_file, scope=OAUTH_SCOPES)
    
    # Check whether credentials exist in the credential store. Using a credential
    # store allows auth credentials to be cached, so they survive multiple runs
    # of the application. This avoids prompting the user for authorization every
    # time the access token expires, by remembering the refresh token.
    storage = Storage(CREDENTIAL_STORE_FILE)
    credentials = storage.get()
    
    # If no credentials were found, go through the authorization process and
    # persist credentials to the credential store.
    if credentials is None or credentials.invalid:
      credentials = tools.run_flow(flow, storage,
                                   tools.argparser.parse_known_args()[0])
    
    # Use the credentials to authorize an httplib2.Http instance.
    http = credentials.authorize(httplib2.Http())
  2. Utwórz autoryzowanego klienta Dfareporting.

    # Construct a service object via the discovery service.
    service = discovery.build('dfareporting', 'v4', http=http)
  3. Wykonaj operację.

    # Construct the request.
    request = service.userProfiles().list()
    
    # Execute request and print response.
    response = request.execute()
    
    for profile in response['items']:
      print('Found user profile with ID %s and user name "%s".' %
            (profile['profileId'], profile['userName']))

Ruby

  1. Wczytaj plik z tajnymi kluczami klienta i wygeneruj dane uwierzytelniające.

    Gdy wykonasz ten krok po raz pierwszy, w przeglądarce pojawi się prośba o autoryzację. Zanim zaakceptujesz, upewnij się, że korzystasz z konta Google, które ma dostęp do Campaign Managera 360. Aplikacja będzie mieć uprawnienia do uzyskiwania dostępu do danych w imieniu konta, na którym jest obecnie zalogowany użytkownik.

    # Load client ID from the specified file.
    client_id = Google::Auth::ClientId.from_file(path_to_json_file)
    
    # Set up the user authorizer.
    #
    # Note: providing a token store allows auth credentials to be cached, so they
    # survive multiple runs of the application. This avoids prompting the user for
    # authorization every time the access token expires, by remembering the
    # refresh token.
    authorizer = Google::Auth::UserAuthorizer.new(
      client_id, [API_NAMESPACE::AUTH_DFAREPORTING], token_store
    )
    
    # Authorize and persist credentials to the data store.
    #
    # Note: the 'user' value below is used to identify a specific set of
    # credentials in the token store. You may provide different values here to
    # persist credentials for multiple users to the same token store.
    authorization = authorizer.get_credentials('user')
    if authorization.nil?
      puts format(
        "Open this URL in your browser and authorize the application.\n\n%s" \
        "\n\nEnter the authorization code:",
        authorizer.get_authorization_url(base_url: OAUTH_REDIRECT_URI)
      )
      code = STDIN.gets.chomp
      authorization = authorizer.get_and_store_credentials_from_code(
        base_url: OAUTH_REDIRECT_URI, code: code, user_id: 'user'
      )
    end
  2. Utwórz autoryzowanego klienta Dfareporting.

    # Create a Dfareporting service object.
    #
    # Note: application name should be replaced with a value that identifies
    # your application. Suggested format is "MyCompany-ProductName".
    service = API_NAMESPACE::DfareportingService.new
    service.authorization = authorization
    service.client_options.application_name = 'Ruby installed app sample'
    service.client_options.application_version = '1.0.0'
  3. Wykonaj operację.

    // Retrieve and print all user profiles for the current authorized user.
    UserProfileList profiles = service.UserProfiles.List().Execute();
    
    foreach (UserProfile profile in profiles.Items) {
      Console.WriteLine("Found user profile with ID {0} and name \"{1}\".",
          profile.ProfileId, profile.UserName);
    }

Więcej informacji

Aby dowiedzieć się więcej o wszystkich usługach oferowanych przez interfejs API, zapoznaj się z dokumentacją API. Każda strona z informacjami o metodach zawiera wbudowany przeglądarkę interfejsu API, za pomocą której możesz wysyłać żądania testowe bezpośrednio z przeglądarki.

Zapoznaj się z naszych innymi przewodnikami, które omawiają zaawansowane tematy i zawierają kompleksowe przykłady typowych zadań.

Gdy będziesz gotowy do pisania kodu, zapoznaj się z naszą obszerną kolekcją fragmentów kodu, które możesz modyfikować i rozszerzać, aby dostosować je do swoich potrzeb.