כדי לאחזר הפניות למחלקות פרוטו כשמשתמשים ב-API, צריך להבין את ה-API לעומק או לחפש לעיתים קרובות את נתיב מרחב השמות המדויק במסמכי העזרה של הפרוטו.
ProtoLookupUtil
שיטות החיפוש ב-GoogleAdsClient (שמגובות על ידי Factories ו-ServiceLookup, ומחליפות את המחלקה הקודמת ProtoLookupUtil) מאפשרות לחפש וליצור מופעים של שירותים, פעולות, טיפוסי enum ומשאבים בלי לעקוב אחרי מספרי הגרסאות של ה-API ומרחבי השמות של המודולים. כברירת מחדל, השיטות האלה משתמשות בגרסת ה-API הגבוהה ביותר שנתמכת על ידי ה-gem המותקן (V26 בגרסה האחרונה, שבה גרסאות API משניות כמו v25.1 משתמשות במודול הגרסה הראשית שלהן V25), או שאתם יכולים לציין קידומת גרסה מפורשת (כמו v26) בקריאת החיפוש.
בלי כלי החיפוש, יוצרים מופע של משאב קמפיין ישירות ממרחב השמות שלו עם גרסה:
campaign =
Google::Ads::GoogleAds::V26::Resources::Campaign.new
בעזרת שיטות החיפוש של הלקוח, אפשר ליצור מופע של המשאב ישירות מהלקוח:
campaign = client.resource.campaign
כשמאחזרים משאב, שירות או פעולה, מוחזר מופע של אותה ישות:
# Instantiate an operation
operation = client.operation.campaign
חיפוש שירות
השתמשו ב-client.service כדי לאחזר לקוחות של שירותים, גם אם אתם לא משתמשים בכלי הזה לישויות אחרות. הפונקציה client.service מגדירה באופן אוטומטי את פרטי הכניסה לאימות ואת הגדרות ההעברה בלקוח השירות שמוחזר:
campaign_service = client.service.campaign
חיפוש ערכי ספירה
בשדות enum בהודעות protobuf, מקצים סמל Ruby ישירות במקום לחפש את מודול ה-enumeration:
campaign.status = :PAUSED
כדי לבדוק את כל הסמלים החוקיים של טיפוס מנייה בזמן הריצה או לעבור עליהם, משתמשים ב-client.enum, שמחזיר את ה-Google::Protobuf::EnumDescriptor של טיפוס המנייה הזה:
status_enum = client.enum.campaign_status
status_enum.each { |status| p status }