Comenzar

La API de Campaign Manager 360 proporciona acceso programático a la información de tu cuenta de Campaign Manager 360. Se usa para administrar y crear campañas e informes, al igual que lo harías a través de los servicios web de Campaign Manager 360 y el Creador de informes.

En esta guía, se describe cómo comenzar a usar la API de Campaign Manager 360.

Requisitos previos

Antes de usar la API de Campaign Manager 360, deberás completar algunos pasos previos:

  1. Debes tener una cuenta de Campaign Manager 360. Consulta Anunciantes/Agencias para obtener información sobre el registro.

  2. Tu cuenta de Campaign Manager 360 debe estar habilitada para el acceso a la API. La mayoría de las cuentas tienen esta opción habilitada de forma predeterminada. Si no lo sabes con certeza, comunícate con tu representante de cuenta o con el equipo de asistencia al cliente de Campaign Manager 360 para obtener ayuda.

  3. Debes tener un perfil de usuario con acceso a esta cuenta. Pídele al administrador de tu cuenta de Campaign Manager 360 que cree un perfil de usuario asociado con esta cuenta.

  4. Verifica los permisos del perfil de usuario en la IU de Campaign Manager 360. Estos parámetros controlan a qué puede acceder el perfil del usuario desde la API. No hay permisos de API independientes.

Crea un proyecto

Para comenzar a usar la API de Campaign Manager 360, primero debes crear o seleccionar un proyecto en la Consola de APIs de Google y habilitar la API. Este vínculo te guía por el proceso y activa automáticamente la API de Campaign Manager 360.

Genera credenciales

Todas las solicitudes que realices a la API de Campaign Manager 360 deben estar autorizadas. Para obtener una breve descripción general de la autorización, consulta cómo autorizar e identificar tu aplicación en Google.

Las siguientes instrucciones te guiarán en el proceso de creación de un ID de cliente de OAuth 2.0 para usar con el flujo de aplicación instalada. Si deseas obtener instrucciones para generar credenciales para usar con el flujo de cuentas de servicio, consulta la guía de Cuentas de servicio.

  1. Sigue los pasos para configurar un proyecto de la Consola de APIs de Google.

  2. Abre la página Credenciales en la consola de API.
  3. Haz clic en CREAR CREDENCIALES > ID de cliente de OAuth.

    1. Si no habías configurado una pantalla de consentimiento de OAuth para este proyecto, se te indicará que lo hagas ahora. Haz clic en CONFIGURAR PANTALLA DE CONSENTIMIENTO.

    2. Selecciona el tipo de usuario y haz clic en CREAR.

    3. Completa el formulario inicial. Puedes editarlo más adelante si es necesario. Cuando termines, haz clic en Guardar.

    4. Regresa a Credenciales > CREAR CREDENCIALES > ID de cliente de OAuth para continuar.

  4. Selecciona App de escritorio como el tipo de aplicación, asígnale un nombre y, luego, haz clic en Crear.

Cuando termines, se te presentará un ID de cliente y un secreto del cliente de OAuth 2.0, que podrás descargar en formato JSON y guardar para usar más adelante.

Instala una biblioteca cliente

La API de Campaign Manager 360 se basa en HTTP y JSON, por lo que cualquier cliente HTTP estándar puede enviarle solicitudes y analizar las respuestas.

Sin embargo, las bibliotecas cliente de las APIs de Google ofrecen una mejor integración de lenguajes y una mayor seguridad. Además, admiten la realización de solicitudes autorizadas. Las bibliotecas cliente están disponibles en varios lenguajes de programación. Con ellas, podrás evitar la necesidad de configurar manualmente las solicitudes HTTP y de analizar las respuestas.

Para comenzar, selecciona el lenguaje de programación que usas.

C#

Instala la biblioteca cliente de la API de Campaign Manager 360 para .NET más reciente. Se recomienda usar NuGet para administrar la instalación.

Abre la Consola del Administrador de paquetes de NuGet y ejecuta el siguiente comando:

Install-Package Google.Apis.Dfareporting.v3_4

Más información

Java

Instala la biblioteca cliente de la API de Campaign Manager 360 para Java más reciente. Se recomienda usar Maven para administrar la instalación.

Agrega la siguiente dependencia a tu archivo pom.xml:

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

Más información

PHP

Instala la biblioteca cliente de la API de Campaign Manager 360 para PHP más reciente. Se recomienda usar Composer para administrar la instalación.

Abre una terminal y ejecuta el siguiente comando:

composer require google/apiclient

Si ya instalaste la biblioteca y solo quieres actualizar a la versión más reciente, ejecuta el siguiente comando:

composer update google/apiclient

Según tu sistema, es posible que debas anteponer sudo a estos comandos.

Más información

Python

Instala la biblioteca cliente de la API de Campaign Manager 360 para Python más reciente. Se recomienda usar pip para administrar la instalación.

Abre una terminal y ejecuta el siguiente comando:

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

Según tu sistema, es posible que debas anteponer sudo a estos comandos.

Más información

Ruby

Instala la biblioteca cliente de la API de Campaign Manager 360 para Ruby más reciente. Se recomienda usar RubyGems para administrar la instalación.

Abre una terminal y ejecuta el siguiente comando:

gem install google-api-client

Si ya instalaste la biblioteca y solo quieres actualizar a la versión más reciente, ejecuta el siguiente comando:

gem update -y google-api-client

Según tu sistema, es posible que debas anteponer sudo a estos comandos.

Más información

En la página Client Libraries, encontrarás más idiomas admitidos.

Haz una solicitud

Con las credenciales de OAuth 2.0 creadas y una biblioteca cliente instalada, ya puedes comenzar a usar la API de Campaign Manager 360. Sigue la guía de inicio rápido que se incluye a continuación para aprender a autorizar y configurar tu cliente, y realizar tu primera solicitud.

C#

  1. Carga el archivo de secretos del cliente y genera credenciales de autorización.

    La primera vez que realices este paso, se te pedirá que aceptes un mensaje de autorización en tu navegador. Antes de aceptar, asegúrate de haber accedido con una Cuenta de Google que tenga acceso a Campaign Manager 360. Tu aplicación estará autorizada para acceder a los datos en nombre de la cuenta a la que se haya accedido en ese momento.

    // 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. Crea un cliente autorizado de 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. Realiza una operación.

    // 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. Carga el archivo de secretos del cliente y genera credenciales de autorización.

    La primera vez que realices este paso, se te pedirá que aceptes un mensaje de autorización en tu navegador. Antes de aceptar, asegúrate de haber accedido con una Cuenta de Google que tenga acceso a Campaign Manager 360. Tu aplicación estará autorizada para acceder a los datos en nombre de la cuenta a la que se haya accedido en ese momento.

    // 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. Crea un cliente autorizado de 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. Realiza una operación.

    // 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. Carga el archivo de secretos del cliente y genera credenciales de autorización.

    La primera vez que realices este paso, se te pedirá que aceptes un mensaje de autorización en tu navegador. Antes de aceptar, asegúrate de haber accedido con una Cuenta de Google que tenga acceso a Campaign Manager 360. Tu aplicación estará autorizada para acceder a los datos en nombre de la cuenta a la que se haya accedido en ese momento.

    // 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. Crea un cliente autorizado de Dfareporting.

    // Create a Dfareporting service object.
    $service = new Google_Service_Dfareporting($client);
  3. Realiza una operación.

    // 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. Carga el archivo de secretos del cliente y genera credenciales de autorización.

    La primera vez que realices este paso, se te pedirá que aceptes un mensaje de autorización en tu navegador. Antes de aceptar, asegúrate de haber accedido con una Cuenta de Google que tenga acceso a Campaign Manager 360. Tu aplicación estará autorizada para acceder a los datos en nombre de la cuenta a la que se haya accedido en ese momento.

    # 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. Crea un cliente autorizado de Dfareporting.

    # Construct a service object via the discovery service.
    service = discovery.build('dfareporting', 'v4', http=http)
  3. Realiza una operación.

    # 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. Carga el archivo de secretos del cliente y genera credenciales de autorización.

    La primera vez que realices este paso, se te pedirá que aceptes un mensaje de autorización en tu navegador. Antes de aceptar, asegúrate de haber accedido con una Cuenta de Google que tenga acceso a Campaign Manager 360. Tu aplicación estará autorizada para acceder a los datos en nombre de la cuenta a la que se haya accedido en ese momento.

    # 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. Crea un cliente autorizado de 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. Realiza una operación.

    // 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);
    }

Más información

Visita la Referencia de la API para obtener información sobre todos los servicios que ofrece la API. Cada página de detalles del método tiene un Explorador de APIs integrado que puedes usar para realizar solicitudes de prueba directamente desde tu navegador.

Revisa nuestras otras guías, que abarcan temas avanzados y proporcionan ejemplos integrales para tareas comunes.

Cuando esté listo para comenzar a escribir código, no dude en explorar nuestra extensa colección de muestras de código, que se pueden modificar y extender para satisfacer sus necesidades.