برخلاف مواردی که توسط سایر انواع آیتمهای خطی ارائه میشوند، تبلیغات Demand Gen در منابع AdGroupAd ساخته میشوند. تصاویر و ویدیوهای اختصاص داده شده به تبلیغات برای ساخت این تبلیغات، در رابط برنامهنویسی کاربردی Display & Video 360 توسط منابع AdAsset نمایش داده میشوند.
قبل از ایجاد یک منبع AdGroupAd ، منابع AdAsset مربوطه را که تبلیغ از آنها استفاده خواهد کرد، در صورت عدم وجود، ایجاد کنید. اگر قبلاً با استفاده از UI یا API ایجاد شدهاند، میتوانید داراییهای موجود را با استفاده از متدهای get و list سرویس advertisers.adAssets بازیابی کنید.
منابع تصویر و ویدئو AdAsset با استفاده از روشهای مختلفی ایجاد میشوند:
- تصاویر باید با استفاده از متد
advertisers.adAssets.uploadدر Display & Video 360 آپلود شوند. - فایلهای ویدیویی باید با استفاده از شناسه ویدیوی یوتیوب مرتبط شده و با استفاده از متد
advertisers.adAssets.createایجاد شوند.
adAssetId مربوط به یک منبع AdAsset برای مرتبط کردن یک دارایی با یک تبلیغ Demand Gen استفاده میشود.
بارگذاری تصاویر
فایلهای تصویری را آپلود کنید تا بتوانید داراییهای 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());
پایتون
# 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.")
پی اچ پی
// 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() );
ایجاد داراییهای یوتیوب
شناسههای ویدیوی یوتیوب را برای ایجاد داراییهای AD_ASSET_TYPE_YOUTUBE_VIDEO که میتوانند در تبلیغات ویدیویی Demand Gen استفاده شوند، ارائه دهید.
در اینجا نحوه ایجاد یک دارایی ویدیویی یوتیوب برای ایجاد یک منبع 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());
پایتون
# 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.")
پی اچ پی
// 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'] );