Compartir audiencias personalizadas entre cuentas de Business Manager

La API de Business Manager establece de forma clara roles y responsabilidades al acceder a una audiencia que pertenece a otra empresa.

Cuando una audiencia personalizada se comparte entre distintas partes, primero se debe establecer una relación de colaboración entre las cuentas de Business Manager. Esto se encuentra en la sección Partners de Business Settings, en Business Manager. La parte que comparte la audiencia también debe afirmar que cumplirá con las condiciones del servicio de audiencias personalizadas de Business Manager; consulta Facebook, Condiciones de las audiencias personalizadas.

Una vez establecida, una relación de uso compartido permite a una empresa compartir audiencias con otra cuenta de Business Manager. Sin embargo, las audiencias solo se pueden compartir en una dirección. Esto significa que la audiencia se comparte desde la empresa 1 a la empresa 2. La empresa 2 no podrá volver a compartir las audiencias con la empresa 1 a menos que se establezca una relación de uso compartido independiente desde la empresa 2 a la empresa 1.

Desde 2018, para compartir una audiencia personalizada entre cuentas de Business Manager, las empresas deben establecer una relación de uso compartido de audiencias de la siguiente forma. Necesitas permiso de administrador de Business Manager para solicitar una relación a fin de compartir una audiencia. Si dos cuentas de Business Manager ya han establecido la relación, un anunciante puede compartir directamente la audiencia con la otra empresa. Consulta también Referencia, Audiencia Personalizada y Referencia, Información de cuentas compartidas con audiencias personalizadas.

Para crear una relación, realiza esta llamada a un valor específico de custom_audience_id:

POST {custom_audience_id}/adaccounts?adaccounts=[<ad_account_id>]&relationship_type=[<relationship_type>] 

Gestionamos una solicitud en función del estado de la relación con la otra empresa:

  • En el caso de las cuentas publicitarias que tienen una relación existente aprobada, compartimos la audiencia directamente con ellas.
  • En el caso de las cuentas publicitarias que tienen una relación existente en curso, añadimos el identificador de la audiencia a la solicitud para que, cuando la empresa receptora apruebe esta solicitud, podamos compartir la audiencia.
  • En el caso de las cuentas publicitarias que no tienen ninguna relación, creamos un acuerdo de uso compartido al que se adjunta el identificador de la audiencia para que, cuando la empresa receptora apruebe esta solicitud, podamos compartir la audiencia.

Facebook devuelve un objeto sharing_data para cada cuenta publicitaria que se pasa en la solicitud. Por ejemplo:

{  
    success: true,
    sharing_data : [
     {         
       "ad_acct_id": "<AD_ACCOUNT_ID>"
       "audience_share_status" : "in progress"
       "errors" : []
     },
     ...
    ]
}

Las opciones y los parámetros de esta solicitud son los siguientes:

Nivel Descripción

adaccounts

Tipo: list:numericstring

Identificadores de las cuentas publicitarias con las que quieres compartir la audiencia.

relationship_type

Tipo: list:string

Obligatorio.

Indica la relación entre la empresa propietaria de la audiencia y la empresa receptora con la que se comparte la audiencia. Matriz de todos los valores que se aplican.


Posibles valores: Audience Info Provider, Information Manager, Ad Optimizer y Agency.

Ejemplos

Si no tienes permisos de administrador para Business Manager e intentas compartir una audiencia, obtienes un error similar al siguiente:

[   
    {         
       "ad_acct_id": "<AD_ACCOUNT_ID>"
       "audience_share_status" : "not shared"
       "errors" : [
        "You don't have permission to initiate a sharing relationship for this ad account/business"
       ]
    }
...
]

Después de realizar una solicitud, la empresa propietaria de la cuenta publicitaria receptora puede recibir una solicitud de relación de audiencia compartida pendiente si no tiene ninguna relación contigo. La empresa puede ver este estado en su cuenta de Business Manager. En el punto en que la empresa puede aprobar o rechazar la solicitud de relación:

POST <SHARING_RELATIONSHIP_ID>?request_response=approve

Si la operación se lleva a cabo correctamente, la empresa recibe esta respuesta:

{  
    success: bool
}

Las opciones son las siguientes:

Nombre Descripción

request_response

Tipo: cadena

Indica si la empresa que recibe una solicitud de relación la aprueba o la rechaza.


Posibles valores: approve y decline.

Cuando la empresa que recibe una solicitud de relación la aprueba, puedes compartir la audiencia con ella. Al realizar una solicitud, sharing_data tiene un aspecto similar al siguiente:

[   
    {         
       "ad_acct_id": "<AD_ACCOUNT_ID>"
       "audience_share_status" : "shared"
       "errors" : []
    }
...
]

Si eres un administrador de Business Manager y compartes una audiencia con una solicitud de relación pendiente, Facebook añade el identificador de la audiencia a la relación existente:

[   
    {         
       "ad_acct_id": "<AD_ACCOUNT_ID>"
       "audience_share_status" : "in progress"
       "errors" : []
    }
...
]

Como puedes especificar varias cuentas publicitarias en la solicitud para compartir una audiencia, en la respuesta aparecen los resultados de cada cuenta:

[   
    {         
       "ad_acct_id": "<AD_ACCOUNT_ID>"
       "audience_share_status" : "shared"
       "errors" : []
    }
    {         
       "ad_acct_id": "<AD_ACCOUNT_ID>"
       "audience_share_status" : "in progress"
       "errors" : []
    }
    {         
       "ad_acct_id": "<AD_ACCOUNT_ID>"
       "audience_share_status" : "not shared"
       "errors" : [
        "You don't have permission to initiate a sharing relationship for this ad account/business"
       ]
    }
...
]

Si quieres ver las solicitudes para compartir una audiencia que tu empresa ha recibido:

GET <BUSINESS_ID>/received_audience_sharing_requests?fields=custom_audiences,initiator,recipient,relationship_type,request_status,request_type

La respuesta tiene un aspecto similar al siguiente:

{
    "data": [   
        {         
           "initiator": {            
               "id": "<BUSINESS_ID>",            
               "name": "business_name1"         
            }, 
            "recipient": {            
               "id": "<BUSINESS_ID>",            
               "name": "business_name2"         
            },         
            "request_status": "IN_PROGRESS",
            "relationship_type": "[<relationship_type>]",
            "id": "<SHARING_RELATIONSHIP_ID>",
            "custom_audiences": [
                {
                    "id": "<CUSTOM_AUDIENCE_ID>",
                    "name": "<CUSTOM_AUDIENCE_NAME>",
                    "share_account_name": "<ACCOUNT_NAME>",
                    "share_account_id": "<ACCOUNT_ID>"
                }
            ]     
         }
         ...
    ],
    "paging": {
        "cursors": {
            "before": "<CURSOR>",
            "after": "<CURSOR>"
        }
    }
}

Si quieres ver las solicitudes que tu empresa ha enviado para compartir una audiencia con otras cuentas:

GET <BUSINESS_ID>/initiated_audience_sharing_requests?fields=custom_audiences,initiator,recipient,relationship_type,request_status,request_type

La respuesta tiene un aspecto similar al siguiente:

{
    "data": [
        {         
            "initiator": {            
                "id": "<BUSINESS_ID>",            
                "name": "business_name1"         
            }, 
            "recipient": {            
                "id": "<BUSINESS_ID>",            
                "name": "business_name2"         
            },         
            "request_status": "IN_PROGRESS",
            "relationship_type": "[<relationship_type>]",         
            "id": "<SHARING_RELATIONSHIP_ID>",
            "custom_audiences": [
                {
                    "id": "<CUSTOM_AUDIENCE_ID>",
                    "name": "<CUSTOM_AUDIENCE_NAME>",
                    "share_account_name": "<ACCOUNT_NAME>",
                    "share_account_id": "<ACCOUNT_ID>"
                }
            ]    
        }
        ...
    ],
    "paging": {
        "cursors": {
            "before": "<CURSOR>",
            "after": "<CURSOR>"
        }
    }
}