Compartir a través de


Introducción al uso de PHP con Bing Ads API

Para empezar a desarrollar aplicaciones de API de Bing Ads con PHP, puede empezar con los ejemplos proporcionados o seguir uno de los tutoriales de aplicación para una aplicación web o de escritorio . Los ejemplos se han desarrollado con el SDK de PHP de Bing Ads y se ejecutan con PHP 7.0.6. Debe poder usar otras versiones de PHP (mayor que 5.6), paquetes y sistemas operativos. Sin embargo, es posible que se deba cambiar ciertas partes del código y la configuración. Para obtener información sobre cómo configurar un entorno de desarrollo php para usar servicios web, consulte la documentación de las herramientas. Las extensiones SOAP y OpenSSL también deben habilitarse en el archivo PHP.ini. Habilite la extensión curl para ejecutar los ejemplos de carga masiva.

extension=php_soap.dll
extension=php_openssl.dll
extension=php_curl.dll

Necesitará credenciales de usuario con acceso a Microsoft Advertising en producción o espacio aislado. Para el entorno de producción, necesitará un token de desarrollador de producción. Todos los clientes de espacio aislado pueden usar el token de desarrollador de espacio aislado universal, es decir, BBD37VB98. Para obtener más información, consulte Introducción a la API y elespacio aislado de Bing Ads.

Para autenticarse a través de OAuth, también debe registrar una aplicación y obtener el identificador de cliente correspondiente. También debe tomar nota del secreto de cliente y el URI de redirección si está desarrollando una aplicación web. Para obtener más información sobre cómo registrar una aplicación en producción y el flujo de concesión de código de autorización, consulte Autenticación con OAuth y Autenticación con los SDK. Aunque en producción debe usar su propio identificador de aplicación (por ejemplo, el identificador de cliente), todos los clientes de Microsoft Advertising pueden usar el identificador de cliente público "Aplicación de ejemplo de tutorial" en el espacio aislado, es decir, 4c0b021c-00c3-4508-838f-d3127e8167ff. Para obtener más información, consulte Espacio aislado.

Instalar el SDK

Puede instalar el SDK de PHP de Bing Ads mediante el administrador de paquetes de Composer para capturar desde Packagist, o bien puede clonar el origen de GitHub. En esta guía se describe cómo puede usar Composer para obtener la versión más reciente del SDK de PHP de Bing Ads.

  1. Descargue e instale Composer. Los usuarios de Microsoft Windows también deben agregar composer.phar a la variable PATH .

  2. Abra un símbolo del sistema y escriba composer require microsoft/bingads.

    Nota:

    Los usuarios de Windows que no agregaron composer.phara PATH deberán escribir php composer.phar require microsoft/bingads en su lugar.

  3. Para obtener actualizaciones en el futuro, escriba composer update. Si hay actualizaciones disponibles en packagist, composer instalará la versión más reciente.

Tutoriales

Una vez instalado el SDK de PHP de Bing Ads, puede examinar los ejemplos de código de API de Bing Ads, descargar los ejemplos en GitHub o seguir uno de los tutoriales de aplicación para una aplicación web o de escritorio .

Uso de SoapVar

Para enviar un tipo complejo que hereda de una clase base, debe codificar el objeto como SoapVar. En el ejemplo siguiente, se codifican Los valores BiddableCampaignCriterion (derivados de CampaignCriterion), LocationCriterion (derivados de Criterion) y BidMultiplier (derivados de CriterionBid).

$campaignCriterions = array();

$locationBiddableCampaignCriterion = new BiddableCampaignCriterion();
$locationBiddableCampaignCriterion->CampaignId = $campaignId;
$locationCriterion = new LocationCriterion();
$locationCriterion->LocationId = 190;
$encodedLocationCriterion = new SoapVar($locationCriterion, SOAP_ENC_OBJECT, 'LocationCriterion', $GLOBALS['CampaignProxy']->GetNamespace());
$locationBiddableCampaignCriterion->Criterion = $encodedLocationCriterion;
$bidMultiplier = new BidMultiplier();
$bidMultiplier->Multiplier = 0;
$encodedBidMultiplier = new SoapVar($bidMultiplier, SOAP_ENC_OBJECT, 'BidMultiplier', $GLOBALS['CampaignProxy']->GetNamespace());
$locationBiddableCampaignCriterion->CriterionBid = $encodedBidMultiplier;

$encodedCriterion = new SoapVar($locationBiddableCampaignCriterion, SOAP_ENC_OBJECT, 'BiddableCampaignCriterion', $GLOBALS['CampaignProxy']->GetNamespace());
$campaignCriterions[] = $encodedCriterion;

Si no codifica CriterionBid como tipo concreto BidMultiplier, la solicitud generada SOAP es un elemento CriterionBid abstracto vacío. Esto dará lugar a una excepción de serialización con el mensaje "No se puede crear una clase abstracta".

<ns1:CriterionBid>

El objeto debe codificarse correctamente con el tipo complejo, por ejemplo, BidMultiplier.

<ns1:CriterionBid xsi:type="ns1:BidMultiplier">
    <ns1:Type xsi:nil="true" />
    <ns1:Multiplier>0</ns1:Multiplier>
</ns1:CriterionBid>

La documentación de referencia de cada objeto de datos especifica si el tipo complejo se deriva o no de un tipo base, por ejemplo, consulte BiddableCampaignCriterion, LocationCriterion y BidMultiplier.

WSDL también define la jerarquía, por ejemplo, la siguiente definición para BidMultiplier.

<xs:complexType name="BidMultiplier">
  <xs:complexContent mixed="false">
    <xs:extension base="tns:CriterionBid">
      <xs:sequence>
        <xs:element minOccurs="0" name="Multiplier" type="xs:double"/>
      </xs:sequence>
    </xs:extension>
  </xs:complexContent>
</xs:complexType>
<xs:element name="BidMultiplier" nillable="true" type="tns:BidMultiplier"/>

Consulta también

Bibliotecas de cliente de api de Bing Ads
Ejemplos de código de api de Bing Ads
Direcciones del servicio web de la API de Bing Ads
Control de errores y excepciones del servicio
Espacio aislado