Прежде чем создавать кампанию для создания спроса, важно импортировать все объекты, которые вы планируете в ней использовать. Вы всегда можете вернуться и добавить объекты позже, но для начала вам нужен набор объектов.
При планировании кампании для создания спроса ознакомьтесь с требованиями к объектам и рекомендациями.
Изображения и видеообъекты – это основные типы объектов. В этом руководстве рассказывается, как их загружать. Эти принципы можно распространить и на другие типы объектов. Независимо от того, какой тип объекта вы создаете, используйте AssetOperation.
Объекты можно создавать с помощью AdsApp без использования mutate, но для единообразия в этом руководстве используется тот же способ, что и для всех остальных операций. Обратите внимание, что вы можете и должны повторно использовать существующие объекты, если они у вас уже есть. Таким образом, хотя для создания кампании для создания спроса вам нужны объекты, вам не обязательно создавать их в процессе создания кампании.
Графические объекты
Объекты изображений загружаются в формате base-64. Поскольку вы не можете загружать изображения непосредственно в скрипты Google Рекламы, у вас есть выбор из двух разных подходов к получению данных изображения и их кодированию для загрузки.
Чтобы получить изображение с Google Диска, сначала нужно узнать его идентификатор. Это лучший способ однозначно идентифицировать изображение. Один из способов получить идентификатор – скопировать ссылку общего доступа из интерфейса Google Диска и извлечь идентификатор. Вы также можете программно получить серию файлов и выбрать те, которые хотите загрузить. В примере ниже показано, как загрузить одно изображение с известным идентификатором.
const file = DriveApp.getFileById(fileId);
const imageAsset = {
"assetOperation": {
"create": {
"resourceName": `customers/${customerId}/assets/${getNextTempId()}`,
"name": "Marketing Logo",
"type": "IMAGE",
"imageAsset": {
"data": Utilities.base64Encode(file.getBlob().getBytes())
}
}
}
}
Вы также можете получить изображение, размещенное на веб-сервере, по его URL-адресу с помощью UrlFetchApp:
const file = UrlFetchApp.fetch(imageUrl);
Затем вы можете вызвать getBlob для этого файла так же, как и для файла на Диске, поэтому построение операции идентично шагам для файла на Google Диске.
Видеообъекты
Видеообъекты управляются через видео YouTube. Если вы загружаете объекты в рамках создания кампании, используйте временный идентификатор. В противном случае запишите возвращенное название ресурса, чтобы использовать его в будущем, когда вам потребуется сослаться на объект, чтобы добавить его в группу объектов.
const videoAsset = {
"assetOperation": {
"create": {
"resourceName": `customers/${customerId}/assets/${getNextTempId()}`,
"name": "Marketing video",
"type": "YOUTUBE_VIDEO",
"youtube_video_asset": {
"youtube_video_title": "Demand Gen video",
"youtube_video_id": "123456789"
}
}
}
}
operations.push(videoAsset);