Améliorer vos campagnes publicitaires avec le PPS
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Vous pouvez envoyer des données d'audience et contextuelles en tant que signaux fournis par l'éditeur (PPS) dans les demandes d'annonces. Avec le PPS, vous pouvez utiliser vos données utilisateur pour améliorer la monétisation programmatique en communiquant les caractéristiques de votre audience aux enchérisseurs pour tous les types de transactions, à l'aide de taxonomies standards, sans avoir à partager d'identifiants utilisateur. Vos caractéristiques d'audience peuvent inclure des données sur le comportement et basées sur les centres d'intérêt (Taxonomie d'audience de l'IAB 1.1) et des données contextuelles (Taxonomie de contenu de l'IAB 2.2).
Vous pouvez également envoyer des signaux structurés fournis par l'éditeur, qui sont définis par Google et permettent d'envoyer des signaux supplémentaires.
Créer le fichier JSON des signaux utilisateur
Au niveau supérieur, créez un objet JSON avec une seule paire clé-valeur. La clé doit être PublisherProvidedTaxonomySignals
, et sa valeur doit être un tableau d'objets. Chaque objet du tableau doit comporter deux paires clé-valeur :
La clé taxonomy
, qui accepte les valeurs suivantes, mappées aux spécifications publiques de l'IAB suivantes:
IAB_AUDIENCE_1_1
pour la taxonomie d'audience 1.1
IAB_CONTENT_2_2
pour la taxonomie de contenu 2.2
Clé values
avec un tableau correspondant de valeurs de classification de chaîne.
Construire le tableau de signaux structurés
Pour les signaux structurés, ajoutez la clé PublisherProvidedStructuredSignals
avec une valeur correspondant à un tableau d'objets. Créez l'objet en vous basant sur la liste de clés-valeurs de signaux suivante:
Activer/Désactiver l'affichage du tableau des signaux structurés
Signal |
<code" dir="ltr" translate="no">Valeur "type"</code"> |
Valeurs possibles pour "single_value" |
Valeurs possibles pour "values" |
Type de flux audio |
"audio_feed" |
"af_1" : musique
"af_2" : diffusion
"af_3" : podcast
|
n/a |
Classification du contenu |
"content_rating" |
"cr_1" : G
"cr_2" : PG
"cr_3" : T
"cr_4" : MA
|
n/a |
Diffusion de contenu |
"delivery" |
n/a |
"cd_1" : streaming
"cd_2" : progressif
"cd_3" : téléchargement
|
Qualité de la production |
"prodq" |
"pq_1" : produit par des professionnels
"pq_2" : prosommateur
"pq_3" : contenu généré par les utilisateurs
|
n/a |
Consultez l'exemple suivant qui utilise IAB_AUDIENCE_1_1
et IAB_CONTENT_2_2
pour les signaux de taxonomie, et qui inclut des signaux structurés.
const userSignals = {
"PublisherProvidedTaxonomySignals": [{
"taxonomy": "IAB_AUDIENCE_1_1",
"values": ["6", "284"]
// '6' = 'Demographic | Age Range | 30-34'
// '284' = 'Interest | Business and Finance | Mergers and Acquisitions'
},
{
"taxonomy": "IAB_CONTENT_2_2",
"values": ["49", "138"]
// '49' = 'Books and Literature | Poetry'
// '138' = 'Education | College Education | College Planning'
}],
"PublisherProvidedStructuredSignals": [{
"type": "audio_feed",
"single_value": "af_1",
},
{
"type": "delivery",
"values": ["cd_1", "cd_3"],
},
],
};
Pour envoyer des PPS avec votre IMAStreamRequest
, procédez comme suit :
- Créez une chaîne JSON avec les centres d'intérêt, le comportement ou les données contextuelles de l'utilisateur.
- Créez une chaîne ASCII encodée en base64 à partir de la chaîne JSON ci-dessus.
- Ajoutez votre chaîne encodée à l'aide de
IMAStreamRequest.adTagParameters
.
let userSignals = """
{
"PublisherProvidedTaxonomySignals": [
{
"taxonomy": "IAB_AUDIENCE_1_1",
"values": [
"1",
"284"
]
}
],
}
"""
let base64Signals = Data(userSignals.utf8).base64EncodedString()
var encodedSignals = base64Signals.replacingOccurrences(of: "+", with: "%2B")
encodedSignals = encodedSignals.replacingOccurrences(of: "/", with: "%2F")
encodedSignals = encodedSignals.replacingOccurrences(of: "=", with: "%3D")
streamRequest.adTagParameters = { "ppsj" : encodedSignals}
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/08/21 (UTC).
[null,null,["Dernière mise à jour le 2025/08/21 (UTC)."],[[["\u003cp\u003ePublisher-provided signals (PPS) let you share audience and contextual data in ad requests to boost programmatic monetization, using standard taxonomies without exposing user identifiers.\u003c/p\u003e\n"],["\u003cp\u003ePPS uses IAB taxonomies like Audience Taxonomy 1.1 and Content Taxonomy 2.2 to categorize audience characteristics like behavior, interests, and content context.\u003c/p\u003e\n"],["\u003cp\u003eStructured signals, defined by Google, offer a way to send extra data points, such as content rating, audio feed type, and delivery method, alongside taxonomy signals.\u003c/p\u003e\n"],["\u003cp\u003eTo implement PPS, construct a JSON object containing your signals, encode it in Base64, and include it in your ad requests using \u003ccode\u003eIMAStreamRequest.adTagParameters\u003c/code\u003e.\u003c/p\u003e\n"]]],[],null,["# Improve ad campaigns with PPS\n\nYou can send audience and contextual data as\n[publisher provided signals](//support.google.com/admanager/answer/12451124)\n(PPS) in ad requests. With PPS, you can use your user data to improve\nprogrammatic monetization by communicating your audience characteristics to\nbidders in all\n[transaction types](//support.google.com/admanager/answer/2805834), using\nstandard taxonomies, without the need to share user identifiers. Your audience\ncharacteristics can include behavioral and interest-based data (\n[IAB Audience Taxonomy 1.1](//iabtechlab.com/standards/audience-taxonomy/)), and\ncontextual data (\n[IAB Content Taxonomy 2.2](https://iabtechlab.com/standards/content-taxonomy/)).\nYou can also send publisher provided structured signals, which are defined by\nGoogle, and allow for additional signals to be sent.\n\nConstruct the user signals JSON\n-------------------------------\n\nAt the top level, create a JSON object with a single key-value pair. The key\nshould be `PublisherProvidedTaxonomySignals`, and its value should be an array\nof objects. Each object in the array should have 2 key-value pairs:\n\n- The `taxonomy` key, which accepts the following values that are mapped to\n following IAB public specifications:\n\n - `IAB_AUDIENCE_1_1` for Audience Taxonomy 1.1\n - `IAB_CONTENT_2_2` for Content Taxonomy 2.2\n- The `values` key with a corresponding array of string taxonomy values.\n\n### Construct the structured signals array\n\nFor structured signals, add the `PublisherProvidedStructuredSignals` key with a\nvalue of an array of objects. Construct the object based on the following list\nof signal key-values: \n\n#### Toggle view of structured signals table\n\n| Signal | \"type\" Value | Possible `\"single_value\"` Values | Possible `\"values\"` Values |\n|--------------------|--------------------|-------------------------------------------------------------------------------------------|--------------------------------------------------------------------|\n| Audio Feed Type | `\"audio_feed\"` | - `\"af_1\"`: Music - `\"af_2\"`: Broadcast - `\"af_3\"`: Podcast | n/a |\n| Content Rating | `\"content_rating\"` | - `\"cr_1\"`: G - `\"cr_2\"`: PG - `\"cr_3\"`: T - `\"cr_4\"`: MA | n/a |\n| Content Delivery | `\"delivery\"` | n/a | - `\"cd_1\"`: Streaming - `\"cd_2\"`: Progressive - `\"cd_3\"`: Download |\n| Production Quality | `\"prodq\"` | - `\"pq_1\"`: Professionally Produced - `\"pq_2\"`: Prosumer - `\"pq_3\"`: User Generated (UGC) | n/a |\n\nSee the following example that uses the `IAB_AUDIENCE_1_1` and `IAB_CONTENT_2_2`\nfor taxonomy signals and includes structured signals. \n\n const userSignals = {\n \"PublisherProvidedTaxonomySignals\": [{\n \"taxonomy\": \"IAB_AUDIENCE_1_1\",\n \"values\": [\"6\", \"284\"]\n // '6' = 'Demographic | Age Range | 30-34'\n // '284' = 'Interest | Business and Finance | Mergers and Acquisitions'\n },\n {\n \"taxonomy\": \"IAB_CONTENT_2_2\",\n \"values\": [\"49\", \"138\"]\n // '49' = 'Books and Literature | Poetry'\n // '138' = 'Education | College Education | College Planning'\n }],\n \"PublisherProvidedStructuredSignals\": [{\n \"type\": \"audio_feed\",\n \"single_value\": \"af_1\",\n },\n {\n \"type\": \"delivery\",\n \"values\": [\"cd_1\", \"cd_3\"],\n },\n ],\n };\n\nConfigure your stream request\n-----------------------------\n\nFollow these steps to send PPS with your\n[`IMAStreamRequest`](/interactive-media-ads/docs/sdks/ios/dai/reference/Classes/IMAStreamRequest):\n\n- Create a JSON string with the user's interest, behavior, or contextual data.\n- Create a Base64-encoded ASCII string from the JSON string above.\n- Add your encoded string using [`IMAStreamRequest.adTagParameters`](/interactive-media-ads/docs/sdks/ios/dai/reference/Classes/IMAStreamRequest#adtagparameters).\n\n let userSignals = \"\"\"\n {\n \"PublisherProvidedTaxonomySignals\": [\n {\n \"taxonomy\": \"IAB_AUDIENCE_1_1\",\n \"values\": [\n \"1\",\n \"284\"\n ]\n }\n ],\n }\n \"\"\"\n let base64Signals = Data(userSignals.utf8).base64EncodedString()\n var encodedSignals = base64Signals.replacingOccurrences(of: \"+\", with: \"%2B\")\n encodedSignals = encodedSignals.replacingOccurrences(of: \"/\", with: \"%2F\")\n encodedSignals = encodedSignals.replacingOccurrences(of: \"=\", with: \"%3D\")\n\n streamRequest.adTagParameters = { \"ppsj\" : encodedSignals}"]]