כשמגדירים שדות אופציונליים בבקשת API, צריך ליצור את אובייקט הודעת הבקשה ישירות ולהעביר אותו כפרמטר request יחיד ל-method של השירות.
שדות בקשה אופציונליים, כמו השדה validate_only ב-method GoogleAdsService.Search, מושמטים מחתימות method שטוחות כדי לשמור על ניהול קל של פרמטרים של מילות מפתח, ולכן צריך להגדיר אותם ישירות במופע של הודעת הבקשה.
כדי לקבוע אם שדה של אובייקט בקשה הוא שדה חובה או שדה אופציונלי, עיינו בהגדרות השירות של Google Ads API protobuf וחפשו שדות שמכילים את ההערה [(google.api.field_behavior) = REQUIRED].
שדות בלי ההערה הזו הם אופציונליים.
בדוגמה הבאה, יוצרים אובייקט SearchGoogleAdsRequest ומגדירים את השדה האופציונלי validate_only בבקשת GoogleAdsService.Search:
from google.ads.googleads.client import GoogleAdsClient
client = GoogleAdsClient.load_from_storage()
googleads_service = client.get_service("GoogleAdsService")
# Initialize the request object and set required fields.
request = client.get_type("SearchGoogleAdsRequest")
request.customer_id = customer_id
request.query = query
# Set the optional validate_only field.
request.validate_only = True
response = googleads_service.search(request=request)