آپلود دارایی‌های خلاقانه

فایل‌های خلاقانه‌ای که توسط Display & Video 360 میزبانی می‌شوند، از اشیاء Asset ساخته می‌شوند. یک فایل توسط یک mediaId یا content متنی تعریف می‌شود. قبل از ایجاد شیء خلاقانه، از متد upload برای آپلود رسانه جهت استفاده در فایل‌ها استفاده کنید.

یک دارایی باید تبلیغ‌کننده‌ی اصلی‌اش با تبلیغ‌کننده‌ی اصلی که از آن استفاده می‌کند، یکسان باشد. برای استفاده از یک دارایی در بین تبلیغ‌کنندگان، فایل رسانه را زیر هر تبلیغ‌کننده آپلود کنید.

نحوه آپلود یک فایل رسانه‌ای به شرح زیر است:

جاوا

// 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
CreateAssetRequest content = new CreateAssetRequest().setFilename(assetFilename);

// 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 creative asset.
InputStreamContent assetStream =
    new InputStreamContent(mimeType, new FileInputStream(assetPath));

// Configure the asset upload request.
Assets.Upload assetRequest =
    service.advertisers().assets().upload(advertiserId, content, assetStream);

// Upload the asset.
CreateAssetResponse assetResponse = assetRequest.execute();

// Display the new asset media ID.
System.out.printf("Asset was created with media ID %s.", assetResponse.getAsset().getMediaId());

پایتون

# 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}

# 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()
    .assets()
    .upload(advertiserId=advertiser_id, body=body, media_body=media)
    .execute()
)

# Print resulting media ID.
print(
    f'Asset was created with media ID {upload_response["asset"]["mediaId"]}.'
)

پی اچ پی

// Configure the asset upload request.
$body = new Google_Service_DisplayVideo_CreateAssetRequest();
$body->setFilename(asset-filename);
$optParams = array(
    'data' => file_get_contents(asset-path),
    'mimeType' => mime_content_type(asset-filename),
    'uploadType' => 'media'
);

// Call the API to upload the creative asset.
try {
    $result = $service->advertisers_assets->upload(
        advertiser-id
        $body,
        $optParams
    );
} catch (\Exception $e) {
    $this->renderError($e);
    return;
}

// Display the new asset media ID.
printf(
    '<p>Asset was created with media ID %s.</p>',
    $result->getAsset()->getMediaId()
);

حلقه

curl --request POST \
  'https://displayvideo.googleapis.com/upload/v4/advertisers/advertiser-id/assets?uploadType=multipart'
  --header 'Authorization: Bearer access-token' \
   -F "data={\"filename\": \"asset-filename\"};type=application/json;charset=UTF-8" \
   -F "file=@asset-path;type=asset-mime-type"