Mit der Bulk Uploader API können Sie Anzeigen-IDs in Authorized Buyers hinzufügen und daraus entfernen. Nutzerlisten für das Targeting verwenden.
Hier ist ein Beispiel für eine HTTPS Bulk Uploader API-URL:
https://cm.g.doubleclick.net/upload?nid={GoogleNetworkId}
Der Endpunkt akzeptiert HTTPS-POST-Anfragen.
Der Wert für GoogleNetworkId
sollte Ihre NID (Cookie-Abgleichnetzwerk-ID) sein.
Damit wird Ihr Konto für den Bulk-Uploader und
Cookie-Abgleich.
Die Nutzlast der HTTPS-POST-Anfrage ist eine codierte Protokollpuffer, der die zu ändernden Listen beschreibt. Das Schema für den Bulk-Uploader-Dienst finden Sie unter cookie-bulk-upload-proto.txt. Die Nutzlast der einzelnen Anfrage ist auf 100 KB begrenzt.
Weitere Informationen zum Kompilieren und Verwenden von cookie-bulk-upload.proto
für
Nachrichten zu serialisieren und zu parsen, finden Sie in der Anleitung für Ihre bevorzugte
Sprache.
Sie können die folgenden ID-Typen hochladen:
- Google-Nutzer-ID
- Vom Partner bereitgestellte ID
- IDFA für iOS
- Android-Werbe-ID
- Roku-ID
- Amazon Fire TV-ID
- Xbox- oder Microsoft-ID
Google-Nutzer-IDs hochladen
Google-Nutzer-IDs sind verschlüsselte IDs aus der Domain doubleclick.net
.
So laden Sie eine Google Nutzer-ID hoch:
- Richten Sie den Cookie-Abgleich mit Google ein und hosten Sie die Match-Table.
- Verwenden Sie die Match-Table, um die Nutzer-IDs in Google-Nutzer-IDs umzuwandeln.
- Google-Nutzer-IDs in die Nutzerliste hochladen
Angenommen, Sie erhalten beim Cookie-Abgleich Folgendes:
https://ad.network.com/pixel?google_gid=CAESEHIV8HXNp0pFdHgi2rElMfk&google_cver=1
Der Parameter google_gid
ist die verschlüsselte Google Nutzer-ID.
Wenn Sie sie einer Nutzerliste hinzufügen möchten, kopieren Sie sie in den Textkörper UpdateUsersDataRequest
:
ops {
user_id: "CAESEHIV8HXNp0pFdHgi2rElMfk"
user_list_id: 111
delete: false
user_id_type: GOOGLE_USER_ID
}
Von Partnern bereitgestellte IDs hochladen
Von Partnern bereitgestellte IDs sind IDs unter der eigenen Domain des Partners. So kannst du eine von einem Partner bereitgestellte ID hochladen:
Cookie-Abgleich mit Google einrichten und zulassen Ihre Match-Table von Google gehostet.
Laden Sie die von Partnern bereitgestellten IDs in die Nutzerliste hoch.
Wenn Sie z. B. eine Nutzer-ID für Ihre Domain auf
123456
festgelegt haben, können Sie in die von Google gehostete Match-Table mit Cookie-Abgleich füllen. Übereinstimmung muss ein websicheres Tag base64-codierte Version von Die demgoogle_hm
-Parameter zugewiesene ID, z. B.:https://cm.g.doubleclick.net/pixel?google_nid=cookie-monster&google_hm=MTIzNDU2&google_cm
Anschließend können Sie die vom Partner bereitgestellte ID in eine Nutzerliste mit
UpdateUsersDataRequest
:ops { user_id: "123456" user_list_id: 123 delete: false user_id_type: PARTNER_PROVIDED_ID }
Google übersetzt dann die Nutzerliste von den vom Partner bereitgestellten IDs in Google Nutzer-IDs und fügt die IDs Ihrer Nutzerliste hinzu.
IDFA- oder Android-Werbe-IDs hochladen
Sie können auch Geräte-IDs hochladen.
Geräte-ID mit
UpdateUsersDataRequest
hochladen:ops { user_id: "2024D65F-EBBD-11FF-23AB-823FC255913A" user_list_id: 111 delete: false user_id_type: IDFA }
Google wandelt die Nutzerliste dann von Geräte-IDs in Google-Nutzer-IDs um. werden die IDs Ihrer Nutzerliste hinzugefügt.
Workflow
Alle Beispiele für Anfragen und Antworten des Bulk-Uploaders sind in Text Format: Sie müssen sie als serialisierte Protokollzwischenspeicher-Nachrichten an den Bulk-Upload Uploader API-Endpunkt.
Wenn Sie beispielsweise eine IDFA und eine vom Partner bereitgestellte ID in die Nutzerliste 123
hochladen möchten,
UpdateUsersDataRequest
erstellen:
ops {
user_id: "2024D65F-EBBD-11FF-23AB-823FC255913A"
user_list_id: 123
delete: false
user_id_type: IDFA
}
ops {
user_id: "1234567"
user_list_id: 123
delete: false
user_id_type: PARTNER_PROVIDED_ID
}
# See warning before use. Requires affirmative end-user consent.
process_consent: true
Senden Sie dann eine HTTPS-POST-Anfrage mit dem serialisierten UpdateUsersDataRequest
Nachricht als Nutzlast.
Wenn alle Vorgänge erfolgreich waren, erhalten Sie Folgendes:
UpdateUsersDataResponse
:
status: NO_ERROR
Wenn einige der Vorgänge erfolgreich waren, enthält die Antwort ein
UpdateUsersDataResponse
mit einem Fehler für jeden fehlgeschlagenen Vorgang:
status: PARTIAL_SUCCESS
errors {
user_id: "1234567"
error_code: UNKNOWN_ID
user_id_type: PARTNER_PROVIDED_ID
}
Wenn keiner der Vorgänge erfolgreich war, enthält die Antwort einen
UpdateUsersDataResponse
, wobei status
auf BAD_COOKIE
festgelegt ist:
status: BAD_COOKIE
Beispiel
Dies ist ein Beispiel für ein Python-Script, das zeigt, wie Sie die Bibliothek verwenden können die von cookie-bulk-upload.proto generiert wurden, Nutzerliste mit einer bestimmten ID mithilfe des Bulk-Upload-Dienstes:
#!/usr/bin/python
#
# Copyright 2023 Google Inc. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
"""A sample demonstrating usage of the Authorized Buyers Bulk Upload service.
Successfully running this example will add the provided ID to the given user
list. To learn more about the bulk uploader service, see:
https://developers.google.com/authorized-buyers/rtb/bulk-uploader
"""
import argparse
import gen.cookie_bulk_upload_pb2
import requests
BULK_UPLOAD_ENDPOINT_TEMPLATE = 'https://cm.g.doubleclick.net/upload?nid=%s'
def main(account_nid, user_list_id, user_id, user_id_type):
# Build the bulk upload request.
update_request = gen.cookie_bulk_upload_pb2.UpdateUsersDataRequest()
update_request.send_notifications = True
ops = update_request.ops
op = ops.add()
op.user_list_id = user_list_id
op.user_id = user_id
op.user_id_type = user_id_type
user_id_type_value = gen.cookie_bulk_upload_pb2.UserIdType.Name(
user_id_type)
print(f'For NID "{account_nid}", adding user ID "{user_id}" of type '
f'"{user_id_type_value}" to user list ID "{user_list_id}"')
# Execute the bulk upload request.
response = requests.post(BULK_UPLOAD_ENDPOINT_TEMPLATE % account_nid,
data=update_request.SerializeToString())
# Parse and display the response.
update_response = gen.cookie_bulk_upload_pb2.UpdateUsersDataResponse()
update_response.ParseFromString(response.content)
print('Operation completed with the following:')
print(f'\tHTTP Status code: {response.status_code}')
status_value = gen.cookie_bulk_upload_pb2.ErrorCode.Name(
update_response.status)
print(f'\tUpdateUsersDataResponse.status: {status_value}')
print(f'\tUpdateUsersDataResponse.errors: {update_response.errors}')
print('\tUpdateUsersDataResponse.notifications: '
f'{update_response.notifications}')
n_status_value = gen.cookie_bulk_upload_pb2.NotificationStatus.Name(
update_response.notification_status)
print(f'\tUpdateUsersDataResponse.notification_status: {n_status_value}')
if __name__ == '__main__':
parser = argparse.ArgumentParser(
description=('A sample demonstrating usage of the Authorized Buyers '
'bulk uploader service.'))
parser.add_argument('-n', '--account_nid',
required=True, help='The Account NID.')
parser.add_argument('-u', '--user_id',
required=True, help='The User ID to be added.')
parser.add_argument('-l', '--user_list_id', type=int, required=True,
help='The user list that the ID is being added to.')
parser.add_argument('-t', '--user_id_type', type=int, required=True,
help=('The type of user ID being added. See '
'"UserIdType" enum for more details.'))
args = parser.parse_args()
main(args.account_nid, args.user_list_id, args.user_id, args.user_id_type)
Einwilligung zur Bulk-Upload-Anfrage verarbeiten
Partner, die die Bulk Upload API verwenden, müssen angeben, Rechtsgrundlage für die Weitergabe von Nutzerdaten an Google zu Zwecken des Bulk-Uploads unter „process_consent“ an. Diese Anforderung gilt für alle Bulk-Uploads -Anfragen.
Für Nutzerdaten, für die gemäß der EU von Google die Einwilligung des Endnutzers erforderlich ist
Richtlinie zur Einwilligung der Nutzer
(siehe https://www.google.com/about/company/user-consent-policy/)
oder gemäß anderen lokalen Gesetzen müssen Partner
der Endnutzer*innen und geben an, dass die Einwilligung eingeholt wurde.
durch Festlegen von process_consent=True
.
Für Nutzerdaten, die nicht den Einwilligungsanforderungen der Endnutzer unterliegen,
müssen Partner angeben, dass ihre Einwilligung
durch Festlegen von process_consent=True
erforderlich.
Anfragen, bei denen process_consent
fehlt, werden gefiltert und zurückgegeben
folgenden Fehler:
status: MISSING_CONSENT_WILL_BE_DROPPED
Anfragen, bei denen process_consent
auf false
gesetzt ist, werden gefiltert und
folgenden Fehler zurückgeben:
status: MISSING_CONSENT