接口文档SDK业务专题开发者工具

朋友圈信息流 – 推广我的应用

                <?php
require_once __DIR__ . '/../../vendor/autoload.php'; // change path as needed
use TencentAds\TencentAds;
use TencentAds\Exception\TencentAdsResponseException;
use TencentAds\Exception\TencentAdsSDKException;

/*****
 * 本文件提供了一个创建一个微信推广IOS App的朋友圈单图广告的示例
 */
class AddWechatMomentAds
{
    public static $tads;
    public static $ACCESS_TOKEN           = 'YOUR ACCESS TOKEN';
    public static $ACCOUNT_ID             = 'YOUR ACCOUNT ID';
    public static $IOS_APP_ID             = 'YOUR APP ID'; // 这里放被推广的iOS App的ID,即App Store的数字ID
    public static $ADCREATIVE_TEMPLATE_ID = 310; // 单图规格
    public static $PROMOTED_OBJECT_TYPE   = 'PROMOTED_OBJECT_TYPE_APP_IOS'; // 推广IOS App
    public static $IMAGE_PATH             = 'YOUR AD IMAGE PATH'; // 广告主图文件路径,310规格要求:640x800, <300K, png/jpg
    public static $IMAGE_PROFILE_PATH     = 'YOUR AD IMAGE PATH'; // 如果未创建Profile的,提供Profile图片文件路径,200x200, <300K, png/jpg
    public static $PROFILE_ID             = ''; // 如果已经创建Profile的,可提供Profile ID
    public static $AD_TITLE               = 'YOUR AD TEXT'; // 广告文案,310规格要求:字数:1~40
    public static $PAGE_TYPE              = 'PAGE_TYPE_MOMENTS_SIMPLE_NATIVE_WECHAT'; // 外层落地页:简版原生页
    public static $WEBVIEW_URL            = 'YOUR WEBVIEW URL'; // 简版原生页内嵌页链接
    public static $LINK_PAGE_TYPE         = 'LINK_PAGE_TYPE_DEFAULT'; // 行动按钮跳转落地页:ios应用下载页
    public static $LINK_NAME_TYPE         = 'DOWNLOAD_APP'; // 行动按钮:下载应用

    public function init()
    {
        $tads = TencentAds::init([
            'access_token' => static::$ACCESS_TOKEN,
            'is_debug'     => true,
        ]);
        $tads->useSandbox(); // 默认访问沙箱环境,如访问正式环境,请切换为$tads->useProduction()
        static::$tads = $tads;

        return $tads;
    }

    public function main()
    {
        try {
            /* @var TencentAds $tads */
            $tads = static::$tads;

            // 第一步,创建推广计划
            $campaignType = 'CAMPAIGN_TYPE_NORMAL';
            $promotedObjectType = static::$PROMOTED_OBJECT_TYPE;
            $campaignId = $this->AddCampaign($tads, $campaignType, $promotedObjectType);
            // echo 'Campaign ID: ' . $campaignId . PHP_EOL;

            // 第二步,创建推广目标
            $promotedObjectId = $this->AddPromotedObject($tads, $promotedObjectType, static::$IOS_APP_ID);
            // echo 'Promoted object ID: ' . $promotedObjectId . PHP_EOL;

            // 第三步,创建广告组,不允许使用定向包,因此在广告组里创建定向
            $siteSet = ['SITE_SET_MOMENTS']; // 投放朋友圈流量
            $adgroupId = $this->AddAdgroup($tads, $campaignId, $promotedObjectType, $promotedObjectId, $siteSet);
            // echo 'Adgroup ID: ' . $adgroupId . PHP_EOL;

            // 第四步,上传素材
            $imageId = $this->AddImage($tads, static::$IMAGE_PATH);
            // echo 'Image ID: ' . $imageId . PHP_EOL;
            if (empty(static::$PROFILE_ID)) {
                $imageIdLeads = $this->AddImage($tads, static::$IMAGE_PROFILE_PATH);
                // echo 'Image ID: ' . $imageIdLeads . PHP_EOL;
                $profileId = $this->AddProfile($tads, $promotedObjectType, $imageIdLeads);
                // echo 'Profile ID: ' . $profileId . PHP_EOL;
            } else {
                $profileId = static::$PROFILE_ID;
            }

            // 第五步,创建创意
            $adcreativeId = $this->AddAdcreative($tads, static::$ADCREATIVE_TEMPLATE_ID, $campaignId,
                $promotedObjectType, $promotedObjectId, $siteSet, $imageId, static::$AD_TITLE, $profileId);
            // echo 'Adcreative ID: ' . $adcreativeId . PHP_EOL;

            // 第六步,创建广告
            $adId = $this->AddAd($tads, $adgroupId, $adcreativeId);

            // echo 'Ad ID: ' . $adId . PHP_EOL;

            return $adId;
        } catch (TencentAdsResponseException $e) {
            // When Api returns an error
            echo 'Tencent ads returned an error: ' . $e->getMessage() . PHP_EOL;
            throw $e;
        } catch (TencentAdsSDKException $e) {
            // When validation fails or other local issues
            echo 'Tencent ads SDK returned an error: ' . $e->getMessage() . PHP_EOL;
            throw $e;
        } catch (Exception $e) {
            echo 'Other exception: ' . $e->getMessage() . PHP_EOL;
            throw $e;
        }
    }

    // 创建朋友圈推广计划
    private function AddCampaign(TencentAds $tads, $campaignType, $promotedObjectType)
    {
        $campaignName = 'SDK计划' . uniqid();
        $campaignDailyBudget = 0;  // 不限日预算

        $campaign = $tads->campaigns()
                         ->add([
                             'account_id'           => static::$ACCOUNT_ID,
                             'campaign_name'        => $campaignName,
                             'campaign_type'        => $campaignType,
                             'promoted_object_type' => $promotedObjectType,
                             'daily_budget'         => $campaignDailyBudget,
                         ]);
        $campaignId = $campaign->getCampaignId();

        return $campaignId;
    }

    // 创建iOS App推广目标
    private function AddPromotedObject(TencentAds $tads, $promotedObjectType, $promotedObjectId)
    {
        $promotedObjects = $tads->promotedObjects()
                                ->get([
                                    'account_id' => static::$ACCOUNT_ID,
                                    'filtering'  => [
                                        [
                                            'field'    => 'promoted_object_id',
                                            'operator' => 'EQUALS',
                                            'values'   => [$promotedObjectId],
                                        ],
                                    ],
                                ]);
        if (count($promotedObjects->getList()) > 0) {
            // 从App Store更新推广目标的信息
            $promotedObjects = $tads->promotedObjects()
                                    ->update([
                                        'account_id'           => static::$ACCOUNT_ID,
                                        'promoted_object_type' => $promotedObjectType,
                                        'promoted_object_id'   => $promotedObjectId,
                                    ]);
        } else {
            // 创建推广目标
            $promotedObjects = $tads->promotedObjects()
                                    ->add([
                                        'account_id'           => static::$ACCOUNT_ID,
                                        'promoted_object_type' => $promotedObjectType,
                                        'promoted_object_id'   => $promotedObjectId,
                                    ]);
        }

        return $promotedObjectId;
    }

    // 创建广告组
    private function AddAdgroup(
        TencentAds $tads,
        $campaignId,
        $promotedObjectType,
        $promotedObjectId,
        $siteSet
    ) {
        $adgroupName = 'SDK sample adgroup ' . uniqid();
        $beginDate = date('Y-m-d', strtotime('+1 day')); // 开始投放日期
        $endDate = date('Y-m-d', strtotime('+10 day')); // 结束投放日期
        $bidMode = 'BID_MODE_OCPM'; // CPM
        $bidStrategy = 'BID_STRATEGY_AVERAGE_COST'; // 稳定拿量
        $bidAmount = 20000; // 200元(单位为分)
        $optimizationGoal = 'OPTIMIZATIONGOAL_APP_ACTIVATE'; // 优化目标APP激活
        $timeSeries = str_repeat('1', 48 * 7); // 全天投放
        $adgroupDailyBudget = 1000000; // 日预算10000元(单位为分)
        $expandEnabled = true; // 开启自动扩量
        $expandTargeting = ['age', 'geo_location', 'gender']; // 自动扩量定向范围

        $regionIds = ['310000', '110000']; // 上海,北京,朋友圈广告地域只能位于同一级别
        $targeting = [
            'age'          => [
                [ // 年龄定向,23~45岁
                  'min' => 23,
                  'max' => 45,
                ],
            ],
            'gender'       => ['MALE'], // 性别定向,男性
            'geo_location' => [ // 地域定向
                                'location_types' => ['LIVE_IN'],
                                'regions'        => $regionIds,
            ],
            'user_os'      => ['IOS'], // 操作系统定向
        ];

        $adgroup = $tads->adgroups()
                        ->add([
                            'account_id'           => static::$ACCOUNT_ID,
                            'campaign_id'          => $campaignId,
                            'adgroup_name'         => $adgroupName,
                            'promoted_object_type' => $promotedObjectType,
                            'begin_date'           => $beginDate,
                            'end_date'             => $endDate,
                            'bid_mode'             => $bidMode,
                            'bid_strategy'         => $bidStrategy,
                            'bid_amount'           => $bidAmount,
                            'optimization_goal'    => $optimizationGoal,
                            'time_series'          => $timeSeries,
                            'site_set'             => $siteSet,
                            'daily_budget'         => $adgroupDailyBudget,
                            'promoted_object_id'   => $promotedObjectId,
                            'targeting'            => $targeting,
                            'expand_enabled'       => $expandEnabled,
                            'expand_targeting'     => $expandTargeting,
                        ]);
        $adgroupId = $adgroup->getAdgroupId();

        return $adgroupId;
    }

    // 上传素材
    private function AddImage(TencentAds $tads, $imageFile)
    {
        $imageSignature = md5_file($imageFile);
        $uploadType = 'UPLOAD_TYPE_FILE';
        $image = $tads->images()
                      ->add([
                          'account_id'  => static::$ACCOUNT_ID,
                          'upload_type' => $uploadType,
                          'file'        => $imageFile,
                          'signature'   => $imageSignature,
                      ]);
        $imageId = $image->getImageId();

        return $imageId;
    }

    // 创建profile
    protected function AddProfile(TencentAds $tads, $promotedObjectType, $imageId)
    {
        $profile = $tads->profiles()
                        ->add([
                            'account_id'           => static::$ACCOUNT_ID,
                            'profile_name'         => 'SDK用例' . uniqid(),
                            'profile_type'         => 'PROFILE_TYPE_DEFINITION',
                            'promoted_object_type' => $promotedObjectType,
                            'head_image_id'        => $imageId,
                            'description'          => 'SDK sample',
                        ]);

        return $profile->getProfileId();
    }

    // 创建创意
    private function AddAdcreative(
        TencentAds $tads,
        $adcreativeTemplateId,
        $campaignId,
        $promotedObjectType,
        $promotedObjectId,
        $siteSet,
        $imageId,
        $adTitle,
        $profileId
    ) {
        $adcreativeName = 'SDK sample adcreative ' . uniqid();
        $adcreativeElements = [
            'image_list' => [$imageId],
            'title'      => $adTitle,
        ];
        $shareContentSpec = [
            'share_title'       => '分享',
            'share_description' => '分享详情',
        ];

        $adcreative = $tads->adcreatives()
                           ->add([
                               'account_id'             => static::$ACCOUNT_ID,
                               'campaign_id'            => $campaignId,
                               'adcreative_name'        => $adcreativeName,
                               'adcreative_template_id' => $adcreativeTemplateId,
                               'adcreative_elements'    => $adcreativeElements,
                               'promoted_object_type'   => $promotedObjectType,
                               'page_type'              => static::$PAGE_TYPE,
                               //'page_spec'              => [],
                               'site_set'               => $siteSet,
                               'promoted_object_id'     => $promotedObjectId,
                               'link_page_type'         => static::$LINK_PAGE_TYPE,
                               'link_name_type'         => static::$LINK_NAME_TYPE,
                               //'link_page_spec'         => [],
                               'profile_id'             => $profileId,
                               'webview_url'            => static::$WEBVIEW_URL,
                               'share_content_spec'     => $shareContentSpec,
                           ]);
        $adcreativeId = $adcreative->getAdcreativeId();

        return $adcreativeId;
    }

    // 创建广告
    private function AddAd(TencentAds $tads, $adgroupId, $adcreativeId)
    {
        $adName = 'SDK sample ad ' . uniqid();

        $ad = $tads->ads()
                   ->add([
                       'account_id'    => static::$ACCOUNT_ID,
                       'adgroup_id'    => $adgroupId,
                       'adcreative_id' => $adcreativeId,
                       'ad_name'       => $adName,
                   ]);
        $adId = $ad->getAdId();

        return $adId;
    }
}

if (basename($_SERVER['PHP_SELF']) == basename(__FILE__)) {
    try {
        $example = new AddWechatMomentAds();
        $example->init();
        $example->main();
    } catch (\Exception $e) {
        exit(-1);
    }
}
            
                package com.tencent.ads.examples.WechatAds;

import com.tencent.ads.ApiContextConfig;
import com.tencent.ads.ApiException;
import com.tencent.ads.TencentAds;
import com.tencent.ads.exception.TencentAdsResponseException;
import com.tencent.ads.exception.TencentAdsSDKException;
import com.tencent.ads.model.AdcreativeCreativeElementsMp;
import com.tencent.ads.model.AdcreativesAddRequest;
import com.tencent.ads.model.AdcreativesAddResponseData;
import com.tencent.ads.model.AdgroupsAddRequest;
import com.tencent.ads.model.AdgroupsAddResponseData;
import com.tencent.ads.model.AdsAddRequest;
import com.tencent.ads.model.AdsAddResponseData;
import com.tencent.ads.model.AgeStruct;
import com.tencent.ads.model.BillingEvent;
import com.tencent.ads.model.CampaignType;
import com.tencent.ads.model.CampaignsAddRequest;
import com.tencent.ads.model.CampaignsAddResponseData;
import com.tencent.ads.model.DestinationType;
import com.tencent.ads.model.FilteringStruct;
import com.tencent.ads.model.GeoLocations;
import com.tencent.ads.model.ImagesAddResponseData;
import com.tencent.ads.model.LinkNameType;
import com.tencent.ads.model.OptimizationGoal;
import com.tencent.ads.model.PageSpec;
import com.tencent.ads.model.PromotedObjectType;
import com.tencent.ads.model.PromotedObjectsAddRequest;
import com.tencent.ads.model.PromotedObjectsGetResponseData;
import com.tencent.ads.model.PromotedObjectsUpdateRequest;
import com.tencent.ads.model.WriteTargetingSettingForAdgroup;
import com.tencent.ads.utils.SignatureUtils;
import java.io.File;
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Calendar;
import java.util.List;
import java.util.UUID;

/** *** 本文件提供了一个创建一个微信推广IOS App的朋友圈单图广告的示例 */
public class AddWechatMomentAds {

  /** YOUR ACCESS TOKEN */
  public String ACCESS_TOKEN = "YOUR ACCESS TOKEN";
  /** YOUR ACCOUNT ID */
  public Long ACCOUNT_ID = 0L;
  /** YOUR IOS_APP_ID */
  public static String IOS_APP_ID = "IOS_APP_ID"; // 这里放被推广的iOS App的ID,即App Store的数字ID
  /** YOUR ADCREATIVE_TEMPLATE_ID */
  public static Long ADCREATIVE_TEMPLATE_ID = 310L; // 单图规格
  /** YOUR AD IMAGE PATH */
  public static String IMAGE_PATH =
      "YOUR AD IMAGE PATH"; // 广告主图文件路径,310规格要求:640x800, <300K, png/jpg
  /** YOUR AD TEXT */
  public static String AD_TITLE = "YOUR AD TEXT"; // 广告文案,310规格要求:字数:1~40
  /** TencentAds */
  public TencentAds tencentAds;

  private SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");

  public void init() {
    this.tencentAds = TencentAds.getInstance();
    this.tencentAds.init(
        new ApiContextConfig().accessToken(ACCESS_TOKEN).isDebug(true)); // debug==true 会打印请求详细信息
    this.tencentAds.useSandbox(); // 默认使用沙箱环境,如果要请求线上,这里需要设为线上环境
  }

  public Long addWechatMomentAds() throws Exception {

    // 第一步,创建推广计划
    CampaignType campaignType = CampaignType.WECHAT_MOMENTS; // 朋友圈广告
    PromotedObjectType promotedObjectType = PromotedObjectType.APP_IOS; // 推广IOS App
    Long campaignId = addCampaign(campaignType, promotedObjectType);

    // 第二步,创建推广目标
    String promotedObjectId = addPromotedObject(promotedObjectType, IOS_APP_ID);

    // 第三步,创建广告组,不允许使用定向包,因此在广告组里创建定向
    List<String> siteSet = Arrays.asList("SITE_SET_WECHAT"); // 投放微信流量
    Long adgroupId = addAdgroup(campaignId, promotedObjectType, promotedObjectId, siteSet);

    // 第四步,上传素材
    String imageId = addImage(IMAGE_PATH);

    // 第五步,创建创意
    Long adcreativeId =
        addAdcreative(
            ADCREATIVE_TEMPLATE_ID,
            campaignId,
            promotedObjectType,
            promotedObjectId,
            siteSet,
            imageId,
            AD_TITLE);

    // 第六步,创建广告
    Long adId = addAd(adgroupId, adcreativeId);
    return adId;
  }

  public static void main(String[] args) {
    try {
      AddWechatMomentAds addWechatMomentAds = new AddWechatMomentAds();
      addWechatMomentAds.init();
      Long adId = addWechatMomentAds.addWechatMomentAds();

    } catch (TencentAdsResponseException e) {
      e.printStackTrace();
    } catch (TencentAdsSDKException e) {
      e.printStackTrace();
    } catch (Exception e) {
      e.printStackTrace();
    }
  }

  // 创建朋友圈推广计划
  private Long addCampaign(CampaignType campaignType, PromotedObjectType promotedObjectType)
      throws ApiException {
    String campaignName = "SDK计划" + UUID.randomUUID().toString().substring(0, 10);

    Long campaignDailyBudget = 0L; // 不限日预算

    CampaignsAddResponseData response =
        tencentAds
            .campaigns()
            .campaignsAdd(
                new CampaignsAddRequest()
                    .accountId(ACCOUNT_ID)
                    .campaignName(campaignName)
                    .campaignType(campaignType)
                    .promotedObjectType(promotedObjectType)
                    .dailyBudget(campaignDailyBudget));
    return response.getCampaignId();
  }

  // 创建iOS App推广目标
  private String addPromotedObject(PromotedObjectType promotedObjectType, String promotedObjectId)
      throws ApiException {

    PromotedObjectsGetResponseData getResponseData =
        tencentAds
            .promotedObjects()
            .promotedObjectsGet(
                ACCOUNT_ID,
                Arrays.asList(
                    new FilteringStruct()
                        .field("promoted_object_id")
                        .operator("EQUALS")
                        .values(Arrays.asList(String.valueOf(promotedObjectId)))),
                null,
                null,
                null);
    if (getResponseData != null && getResponseData.getList().size() > 0) {
      tencentAds
          .promotedObjects()
          .promotedObjectsUpdate(
              new PromotedObjectsUpdateRequest()
                  .accountId(ACCOUNT_ID)
                  .promotedObjectType(promotedObjectType)
                  .promotedObjectId(promotedObjectId));
    } else {
      tencentAds
          .promotedObjects()
          .promotedObjectsAdd(
              new PromotedObjectsAddRequest()
                  .accountId(ACCOUNT_ID)
                  .promotedObjectType(promotedObjectType)
                  .promotedObjectId(promotedObjectId));
    }

    return promotedObjectId;
  }

  // 创建广告组
  private Long addAdgroup(
      Long campaignId,
      PromotedObjectType promotedObjectType,
      String promotedObjectId,
      List<String> siteSet)
      throws ApiException {
    String adgroupName = "SDK sample adgroup " + UUID.randomUUID().toString().substring(0, 10);
    Calendar calendar = Calendar.getInstance();
    calendar.add(Calendar.DATE, 1);
    String beginDate = sdf.format(calendar.getTime());
    calendar.add(Calendar.DATE, 10);
    String endDate = sdf.format(calendar.getTime());
    BillingEvent billingEvent = BillingEvent.IMPRESSION; // CPM
    Long bidAmount = 20000L; // 200元(单位为分)
    OptimizationGoal optimizationGoal = OptimizationGoal.APP_ACTIVATE; // 优化目标APP激活
    String timeSeries =
        "11111111111111111111111"
            + "1111111111111111111111111111111111111111111"
            + "1111111111111111111111111111111111111111111"
            + "1111111111111111111111111111111111111111111"
            + "1111111111111111111111111111111111111111111"
            + "1111111111111111111111111111111111111111111"
            + "1111111111111111111111111111111111111111111"
            + "1111111111111111111111111111111111111111111111111111111"; // 全天投放
    Long adgroupDailyBudget = 1000000L; // 日预算10000元(单位为分)
    boolean expandEnabled = true; // 开启自动扩量
    List<String> expandTargeting = Arrays.asList("age", "geo_location", "gender"); // 自动扩量定向范围

    List<Long> regionIds = Arrays.asList(310000L, 110000L); // 上海,北京,朋友圈广告地域只能位于同一级别
    AdgroupsAddResponseData responseData =
        tencentAds
            .adgroups()
            .adgroupsAdd(
                new AdgroupsAddRequest()
                    .accountId(ACCOUNT_ID)
                    .campaignId(campaignId)
                    .adgroupName(adgroupName)
                    .promotedObjectType(promotedObjectType)
                    .beginDate(beginDate)
                    .endDate(endDate)
                    .billingEvent(billingEvent)
                    .bidAmount(bidAmount)
                    .optimizationGoal(optimizationGoal)
                    .timeSeries(timeSeries)
                    .siteSet(siteSet)
                    .dailyBudget(adgroupDailyBudget)
                    .promotedObjectId(promotedObjectId)
                    .targeting(
                        new WriteTargetingSettingForAdgroup()
                            .age(Arrays.asList(new AgeStruct().max(45L).min(23L)))
                            .gender(Arrays.asList("MALE"))
                            .geoLocation(
                                new GeoLocations()
                                    .locationTypes(Arrays.asList("LIVE_IN"))
                                    .regions(regionIds))
                            .userOs(Arrays.asList("IOS")))
                    .expandEnabled(expandEnabled)
                    .expandTargeting(expandTargeting));

    return responseData.getAdgroupId();
  }

  // 上传素材
  private String addImage(String imageFile) throws Exception {
    String imageSignature = SignatureUtils.getMD5Checksum(imageFile);
    String uploadType = "UPLOAD_TYPE_FILE";
    ImagesAddResponseData responseData =
        tencentAds
            .images()
            .imagesAdd(
                ACCOUNT_ID,
                uploadType,
                imageSignature,
                new File(imageFile),
                null,
                null,
                null,
                null,
                null,
                null);

    return responseData.getImageId();
  }

  // 创建创意
  private Long addAdcreative(
      Long adcreativeTemplateId,
      Long campaignId,
      PromotedObjectType promotedObjectType,
      String promotedObjectId,
      List<String> siteSet,
      String imageId,
      String adTitle)
      throws ApiException {
    String adcreativeName = "SDK sample adcreative " + UUID.randomUUID().toString();
    LinkNameType linkNameType = LinkNameType.VIEW_DETAILS;
    DestinationType pageType = DestinationType.DEFAULT; // 'PAGE_TYPE_FULL_SCREEN_WECHAT';
    String linkPageType = "LANK_PAGE_TYPE_IOS_APP_WECHAT";

    AdcreativesAddResponseData responseData =
        tencentAds
            .adcreatives()
            .adcreativesAdd(
                new AdcreativesAddRequest()
                    .accountId(ACCOUNT_ID)
                    .campaignId(campaignId)
                    .adcreativeName(adcreativeName)
                    .adcreativeTemplateId(adcreativeTemplateId)
                    .adcreativeElements(
                        new AdcreativeCreativeElementsMp()
                            .imageList(Arrays.asList(imageId))
                            .title(adTitle)
                            .linkNameType(linkNameType))
                    .promotedObjectType(promotedObjectType)
                    .pageType(pageType)
                    .pageSpec(new PageSpec())
                    .siteSet(siteSet)
                    .promotedObjectId(promotedObjectId));

    return responseData.getAdcreativeId();
  }

  // 创建广告
  private Long addAd(Long adgroupId, Long adcreativeId) throws ApiException {
    String adName = "SDK sample ad " + UUID.randomUUID().toString().substring(0, 10);

    AdsAddResponseData responseData =
        tencentAds
            .ads()
            .adsAdd(
                new AdsAddRequest()
                    .accountId(ACCOUNT_ID)
                    .adgroupId(adgroupId)
                    .adcreativeId(adcreativeId)
                    .adName(adName));

    return responseData.getAdId();
  }
}