على عكس تصاميم الإعلانات التي تعرضها أنواع أخرى من البنود الإعلانية، يتم إنشاء تصاميم الإعلانات التي تعرضها إعلانات "حملات زيادة الطلب" في AdGroupAd نفسها. يتم تمثيل مواد عرض الصور والفيديوهات المعيّنة للإعلانات من أجل إنشاء تصاميم الإعلانات هذه في واجهة برمجة التطبيقات الخاصة بـ "مساحة العرض والفيديو 360" من خلال موارد AdAsset.
قبل إنشاء مرجع AdGroupAd، أنشئ مراجع AdAsset ذات الصلة التي سيستخدمها الإعلان إذا لم تكن متوفّرة. إذا تم إنشاؤها سابقًا باستخدام واجهة المستخدم أو واجهة برمجة التطبيقات، يمكنك استرداد مواد العرض الحالية باستخدام خدمة advertisers.adAssets والطريقتَين get وlist.
يتم إنشاء موارد الصور والفيديوهات AdAsset باستخدام طرق مختلفة:
- يجب تحميل ملفات أصول الصور إلى "مساحة العرض والفيديو 360" باستخدام طريقة
advertisers.adAssets.upload. - يجب ربط مواد عرض الفيديو باستخدام معرّف فيديو على YouTube وإنشاؤها باستخدام طريقة
advertisers.adAssets.create.
يتم استخدام adAssetId لأحد موارد AdAsset لربط مادة عرض بإعلان زيادة الطلب.
تحميل مواد عرض الصور
حمِّل ملفات الصور لإنشاء مواد عرض AD_ASSET_TYPE_IMAGE يمكن استخدامها كإعلانات بانر مصاحبة وشعارات وصور تسويقية.
في ما يلي كيفية تحميل مادة عرض صورة لإنشاء AdAsset:
جافا
// Provide the parent advertiser ID to upload the media file under. long advertiserId = advertiser-id; // Provide the local path to the media file. String assetPath = asset-path; // Get filename from path. String assetFilename = new File(assetPath).getName(); // Create the asset upload request content. UploadAdAssetRequest content = new UploadAdAssetRequest() .setFilename(assetFilename) .setAdAssetType("AD_ASSET_TYPE_IMAGE"); // Parse filename for appropriate MIME type. FileNameMap filenameMap = URLConnection.getFileNameMap(); String mimeType = filenameMap.getContentTypeFor(assetFilename); if (mimeType == null) { mimeType = "application/octet-stream"; } // Create input stream for the ad asset. InputStreamContent assetStream = new InputStreamContent(mimeType, new FileInputStream(assetPath)); // Configure the ad asset upload request. AdAssets.Upload uploadRequest = service .advertisers() .adAssets() .upload(advertiserId, content, assetStream); // Upload the asset. UploadAdAssetResponse assetResponse = uploadRequest.execute(); // Display the new asset media ID. System.out.printf( "Ad asset was created with asset ID %s.", assetResponse.getAdAsset().getAdAssetId());
Python
# Import the object used as the media body for the upload request. from apiclient.http import MediaFileUpload # Provide the parent advertiser ID to upload the media file under. advertiser_id = advertiser-id # Provide the filename and local path to the media file. asset_filename = asset-filename asset_path = asset-path # Create the request body. body = {"filename": asset_filename, "adAssetType": "AD_ASSET_TYPE_IMAGE"} # Create the upload object and use a default MIME type if not identified. media = MediaFileUpload(asset_path) if not media.mimetype(): media = MediaFileUpload(asset_path, "application/octet-stream") # Upload the asset. upload_response = ( service.advertisers() .adAssets() .upload(advertiserId=advertiser_id, body=body, media_body=media) .execute() ) # Display the new ad asset. print(f"Ad asset {upload_response['adAsset']['name']} was created.")
PHP
// Provide the parent advertiser ID to upload the media file under. $advertiserId = advertiser-id; // Provide the local path to the media file. $assetPath = asset-path; // Provide the name of the media file. $assetFilename = asset-filename; // Create the request object. $body = new Google_Service_DisplayVideo_UploadAdAssetRequest(); $body->setFilename($assetFilename); $body->setAdAssetType('AD_ASSET_TYPE_IMAGE'); // Set the query parameters $optParams = array( 'data' => file_get_contents($assetPath), 'mimeType' => mime_content_type($assetFilename), 'uploadType' => 'media' ); // Upload the asset. try { $result = $this->service->advertisers_adAssets->upload( $advertiserId, $body, $optParams ); } catch (\Exception $e) { $this->renderError($e); return; } // Display the new ad asset. printf( '<p>Ad Asset was created with asset ID %s.</p>', $result->getAdAsset()->getAdAssetId() );
إنشاء مواد عرض على YouTube
قدِّم معرّفات فيديوهات على YouTube لإنشاء مواد عرض AD_ASSET_TYPE_YOUTUBE_VIDEO يمكن استخدامها في إعلانات الفيديو لزيادة الطلب.
إليك كيفية إنشاء مادة عرض فيديو على YouTube لإنشاء مورد
AdAsset:
جافا
// Provide the ID of the parent advertiser. long advertiserId = advertiser-id; // Provide the YouTube video ID. String youtubeVideoId = youtube-video-id; // Create the ad asset structure. AdAsset adAsset = new AdAsset() .setAdAssetType("AD_ASSET_TYPE_YOUTUBE_VIDEO") .setYoutubeVideoAsset( new YoutubeVideoAsset().setYoutubeVideoId(youtubeVideoId)); // Configure the create request. AdAssets.Create request = service .advertisers() .adAssets() .create( advertiserId, new CreateAdAssetRequest().setAdAsset(adAsset)); // Create the ad asset. AdAsset response = request.execute(); // Display the new ad asset. System.out.printf("Ad asset %s was created.", response.getName());
Python
# Provide the ID of the parent advertiser. advertiser_id = advertiser-id # Provide the YouTube video ID. youtube_video_id = youtube-video-id # Create the ad asset structure. ad_asset_create_body = { "adAsset": { "adAssetType": "AD_ASSET_TYPE_YOUTUBE_VIDEO", "youtubeVideoAsset": {"youtubeVideoId": youtube_video_id}, } } # Create the ad asset. response = ( service.advertisers() .adAssets() .create(advertiserId=advertiser_id, body=ad_asset_create_body) .execute() ) # Display the new ad asset. print(f"Ad asset {response['name']} was created.")
PHP
// Provide the ID of the parent advertiser. $advertiserId = advertiser-id; // Provide the YouTube video ID. $youtubeVideoId = youtube-video-id; // Create the ad asset structure. $youtubeVideoAsset = new Google_Service_DisplayVideo_YoutubeVideoAsset(); $youtubeVideoAsset->setYoutubeVideoId($youtubeVideoId); $adAsset = new Google_Service_DisplayVideo_AdAsset(); $adAsset->setAdAssetType('AD_ASSET_TYPE_YOUTUBE_VIDEO'); $adAsset->setYoutubeVideoAsset($youtubeVideoAsset); // Create the create request. $createAdAssetRequest = new Google_Service_DisplayVideo_CreateAdAssetRequest(); $createAdAssetRequest->setAdAsset($adAsset); // Create the ad asset. try { $result = $this->service->advertisers_adAssets->create( $advertiserId, $createAdAssetRequest ); } catch (\Exception $e) { $this->renderError($e); return; } // Display the new ad asset. printf( '<p>Ad Asset was created with asset ID %s.</p>', $result['adAssetId'] );