«میانای برنامهسازی کاربردی AdMob» به شما امکان میدهد گروههای واسطهگری را ایجاد، فهرست، و بهروز کنید، ازجمله:
- مشخص کردن هدفیابی گروه واسطهگری شامل هدفیابی براساس منطقه، قالب، پلاتفرم، و IDFA
- افزودن خطوط گروه واسطهگری جدید به گروه واسطهگری موجود
- مشاهده اینکه کدام گروههای واسطهگری بخشی از آزمایش A/B واسطهگری هستند و خطوط گروه واسطهگری به کدام گونه تعلق دارند: A یا B
مثالها
با اعتبارنامههای OAuth 2.0 ایجادشده، آمادهاید که استفاده از AdMob API را شروع کنید. برای درخواست دسترسی بااستفاده از OAuth 2.0، برنامه شما به اطلاعات محدوده نیز نیاز خواهد داشت.
در اینجا اطلاعات محدوده OAuth 2.0 آمده است:
| حوزه | معنی |
|---|---|
https://www.googleapis.com/auth/admob.monetization |
دیدن، ایجاد، و ویرایش تنظیمات درآمدزایی AdMob. |
https://www.googleapis.com/auth/admob.readonly |
دیدن همه دادههای AdMob. این دادهها ممکن است شامل اطلاعات حساب، تنظیمات موجودی و میانجیگری، گزارشها، و دادههای دیگر باشد. این دادهها شامل دادههای حساس مثل پرداختها یا جزئیات پویش نمیشود. |
ایجاد کردن
برای ایجاد گروه واسطهگری، باید اطلاعات هدفیابی گروه واسطهگری را، ازجمله واحدهای آگهی مربوطه، مشخص کنید. مثال زیر گروه واسطهای جدیدی برای آگهیهای بینابینی Android برای ۲ واحد آگهی ایجاد میکند. یک خط گروه میانجیگری هنگام ایجاد برای منبع آگهی InMobi اضافه میشود. لازم نیست شبکه AdMob را اضافه کنید زیرا بهطور پیشفرض در زمان ایجاد اضافه خواهد شد.
در تکهکد زیر، pub-XXXXXXXXXXXXXXXX را با شناسه
ناشر خود جایگزین کنید.
سپس YYYYYYYYYY را با ۱۰ رقم آخر شناسه واحد آگهی جایگزین کنید و
از این قالب پیروی کنید:
ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY
ازآنجاییکه در این مثال دو واحد آگهی وجود دارد، YYYYY11111 به اولین واحد آگهی و WWWWW11111 به تخصیص اولین واحد آگهی اشاره دارد. YYYYY22222 و
WWWWW22222 به واحد آگهی دوم و تخصیص واحد آگهی اشاره دارند.
curl (خط فرمان)
WWWWWWWWWW را با شناسه تخصیص واحد آگهی خودتان جایگزین کنید. شناسه تخصیص واحد آگهی را
میتوانید بااستفاده از روش
accounts.adUnits.adUnitMappings.list
پیدا کنید.
curl --http1.0 -X POST https://admob.googleapis.com/v1beta/accounts/pub-XXXXXXXXXXXXXXXX/mediationGroups
-H "Content-Type:application/json"
-H "$(oauth2l header --json path_to_credentials_json --scope admob.monetization)"
--data @- << EOF
{
"displayName": "Test Mediation Group"
"targeting": {
"platform": "ANDROID",
"format": "INTERSTITIAL"
"adUnitIds":["ca-app-pub-XXXXXXXXXXXXXXXX/YYYYY11111", "ca-app-pub-XXXXXXXXXXXXXXXX/YYYYY22222"}
}
"mediationGroupLines": {
"-1": {
"displayName": "test line",
"adSourceId": "7681903010231960328",
"cpmMode": "MANUAL",
"cpmMicros": "150000",
"state": "ENABLED",
"adUnitMappings": {
"ca-app-pub-XXXXXXXXXXXXXXXX/YYYYY11111": "accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYY11111/adUnitMappings/WWWWW11111",
"ca-app-pub-XXXXXXXXXXXXXXXX/YYYYY22222": "accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYY22222/adUnitMappings/WWWWW22222"
}
}
}
فهرست
برای مشاهده گروههای واسطهگری خود، pub-XXXXXXXXXXXXXXXX را با شناسه
ناشر خود جایگزین کنید.
curl (خط فرمان)
درخواست نمونه:
curl --http1.0 -X GET https://admob.googleapis.com/v1beta/accounts/pub-XXXXXXXXXXXXXXXX/mediationGroups \ -H "$(oauth2l header --json path_to_credentials_json --scope admob.monetization)"
پاسخ نمونه:
{ "mediationGroups": [ { "name": "accounts/pub-XXXXXXXXXXXXXXXX/mediationGroups/ZZZZZZZZZZ", "mediationGroupId": "ZZZZZZZZZZ", "displayName": "Test Mediation Group", "state": "ENABLED", "state": "NOT_RUNNING", "targeting": { "platform": "iOS", "format": "BANNER", "targetedRegionCodes": "[CA]", "adUnits": ["YYYYY11111", "YYYYY22222"] }, "mediationGroupLines": { "11111111111111111": { "id": "11111111111111111", "displayName": "AdMob Network", "adSourceId": "5450213213286189855", "cpmMode": "LIVE", "state": "ENABLED", "experimentVariant": "ORIGINAL" }, "22222222222222222": { "id": "22222222222222222", "displayName": "test line", "adSourceId": "7681903010231960328", "cpmMode": "MANUAL", "cpmMicros": "150000", "adUnitMappings": { "ca-app-pub-XXXXXXXXXXXXXXXX/YYYYY11111": "accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYY11111/adUnitMappings/WWWWW11111", "ca-app-pub-XXXXXXXXXXXXXXXX/YYYYY22222": "accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYY22222/adUnitMappings/WWWWW22222" }, "state": "ENABLED", "experimentVariant": "ORIGINAL" } }, }] }
وصله
در اینجا فهرست پوششهای فیلد برای بهروزرسانی گروه واسطهگری آمده است. بهروزرسانیهای فیلدهای تکراری، مانند موارد موجود در فهرست، بهطور کامل مقادیر موجود را با مقادیر جدید جایگزین میکنند. بهروزرسانی مقادیر تکی در نقشه را میتوان ازطریق نمایهگذاری براساس کلید انجام داد.
پوششهای فیلد زیر برای بهروزرسانیهای گروه واسطهگری پشتیبانی میشوند:
targeting.adUnitIdsmediationGroupLines[mediationGroupLineId]mediationGroupLines[mediationGroupLineId].statemediationGroupLines[mediationGroupLineId].adUnitMappings[adUnitId]
برای بهروز کردن گروه واسطهگری با خط گروه واسطهگری جدید، از عدد منفی متمایزی برای mediationGroupLineId استفاده کنید. برای بهروزرسانی خطوط گروه واسطهگری موجود، به شناسه خط گروه واسطهگری در هر دو update_mask و
بار که در زیر نشان داده شده است ارجاع دهید.
"updateMask" {
paths: "mediation_group_lines["123"].ad_unit_mappings["456"]"
}
"mediationGroup" {
"mediationGroupLines": {
"123": {
"id": "123"
"adUnitMappings": {
"456": "newAdUnitMappingId"
}
}
}
}
curl (خط فرمان)
مثال زیر ۳ خط واسطهگری جدید را به گروه واسطهگری موجود اضافه میکند.
updateMask شامل ۳ خط گروه واسط با مقادیر منفی متمایز بهعنوان جایبان است:
updateMask=mediationGroupLines["-1"],mediationGroupLines["-2"],mediationGroupLines["-3"]
باید نویسههای ویژه را ترجمه کنید زیرا همه نشانیهای وب باید با
دستور زبان مشخصشده در مشخصات «شناسه منبع یکنواخت» (URI)
مطابقت داشته باشند، بنابراین updateMask به این صورت درمیآید:
updateMask=mediationGroupLines%5B%22-1%22%5D,mediationGroupLines%5B%22-2%22%5D,mediationGroupLines%5B%22-3%22%5D
برای اجرای مثال زیر، pub-XXXXXXXXXXXXXXXX را با شناسه
ناشر و ZZZZZZZZZZ را با شناسه گروه واسطهگری جایگزین کنید. شناسه گروه واسطهگری را میتوانید در «واسط کاربر AdMob» یا بااستفاده از روش accounts.mediationGroups:list پیدا کنید.
YYYYYYYYYY را با ۱۰ رقم آخر شناسه واحد آگهی خود جایگزین کنید، و از این قالب پیروی کنید:
ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY`
WWWWWWWWWW را با شناسه تخصیص واحد آگهی خودتان جایگزین کنید. شناسه تخصیص واحد آگهی را
میتوانید بااستفاده از روش
accounts.adUnits.adUnitMappings.list
پیدا کنید.
curl --http1.0 -X PATCH https://admob.googleapis.com/v1beta/accounts/pub-XXXXXXXXXXXXXXXX/mediationGroups/ZZZZZZZZZZ?
updateMask=mediationGroupLines%5B%22-1%22%5D,mediationGroupLines%5B%22-2%22%5D,mediationGroupLines%5B%22-3%22%5D
-H "Content-Type:application/json"
-H "$(oauth2l header --json path_to_credentials_json --scope admob.monetization)"
--data @- << EOF
{
"mediationGroupLines": {
"-1": {
"displayName": "test line 2",
"adSourceId": "7681903010231960458",
"cpmMode": "MANUAL",
"cpmMicros": "150000",
"state": "ENABLED",
"adUnitMappings": {
"ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY": "accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYYYYYYY/adUnitMappings/WWWWWWWWWW"
}
},
"-2": {
"displayName": "test line 3",
"adSourceId": "7681903010231960328",
"cpmMode": "MANUAL",
"cpmMicros": "120000",
"state": "ENABLED",
"adUnitMappings": {
"ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY": "accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYYYYYYY/adUnitMappings/WWWWWWWWWW"
}
},
"-3": {
"displayName": "test line 4",
"adSourceId": "7681903010231960328",
"cpmMode": "MANUAL",
"cpmMicros": "130000",
"state": "ENABLED",
"adUnitMappings": {
"ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY": "accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYYYYYYY/adUnitMappings/WWWWWWWWWW"
}
}
}
}
EOF