Hi,
I updated the MultiAssetResponsiveDisplayAd image using PHP library, but it 
does not return imageUrl.
I wonder if there is a reason why you don't return imageUrl. If not, ask if 
you can return imageUrl.  
Please refer to the attached source code I wrote and the return result.  

-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
Also find us on our blog:
https://googleadsdeveloper.blogspot.com/
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~

You received this message because you are subscribed to the Google
Groups "AdWords API and Google Ads API Forum" group.
To post to this group, send email to adwords-api@googlegroups.com
To unsubscribe from this group, send email to
adwords-api+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/adwords-api?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"AdWords API and Google Ads API Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to adwords-api+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/adwords-api/8f7ca030-4b41-4d35-89f6-11a3532f0d54n%40googlegroups.com.
class SetDisplayMutiAssetResponsiveDisplayAdUpdate
{
    const PAGE_LIMIT = 1000;

    public static function runExample(
        AdWordsServices $adWordsServices,
        AdWordsSessionBuilder $sessionBuilder,
        $customerId,
        $adId,
        $datas
    )
    {
        $rows = json_decode($datas);

        $session = $sessionBuilder->build();
        $assetService = $adWordsServices->get($session, AssetService::class);
        $adService = $adWordsServices->get($session, AdService::class);

        $operations = [];
        $multiAssetResponsiveDisplayAd = new MultiAssetResponsiveDisplayAd();
        $multiAssetResponsiveDisplayAd->setId($adId);

        if(!empty($rows->multiImage)){
            $isSquareMarketing = false;
            $isMarketing = false;
            $imgWidth = 0;
            $imgHeight = 0;
            for($i=0;$i<count($rows->multiImage);$i++){
                $imgSize = getimagesize($rows->multiImage[$i]);
                $imgWidth = $imgSize[0];
                $imgHeight = $imgSize[1];
                $imageAsset[$i] = new ImageAsset();
                $imageAsset[$i]->setAssetId(
                    self::uploadImageAsset($assetService, $rows->multiImage[$i])
                );
                if($imgWidth == $imgHeight){
                    $isSquareMarketing = true;
                    $squareMarketingAssetLink[] = new 
AssetLink($imageAsset[$i]);
                }elseif($imgWidth > $imgHeight){
                    $isMarketing = true;
                    $marketingAssetLink[] = new AssetLink($imageAsset[$i]);
                }
            }

            if($isSquareMarketing){
                
$multiAssetResponsiveDisplayAd->setSquareMarketingImages($squareMarketingAssetLink);
            }
            if($isMarketing){
                
$multiAssetResponsiveDisplayAd->setMarketingImages($marketingAssetLink);
            }

        }

        // Create ad group ad operation and add it to the list.
        $operation = new AdOperation();
        $operation->setOperand($multiAssetResponsiveDisplayAd);
        $operation->setOperator(Operator::SET);
        $operations[] = $operation;

        $result = $adService->mutate($operations);
        $ad = $result->getValue()[0];
        }

        private static function uploadImageAsset(AssetService $assetService, 
$url)
    {
        // Creates an image asset and upload it to the server.
        $imageAsset = new ImageAsset();
        // Optional: Provide a unique friendly name to identify your asset. If
        // you specify the assetName field, then both the asset name and the
        // image being uploaded should be unique, and should not match another
        // ACTIVE asset in this customer account.
        // $imageAsset->setAssetName('Image asset #' . uniqid());
        $imageAsset->setImageData(file_get_contents($url));

        // Create an asset operation.
        $operation = new AssetOperation();
        $operation->setOperand($imageAsset);
        $operation->setOperator(Operator::ADD);

        return $assetService->mutate([$operation])->getValue()[0]->getAssetId();
    }
}
Google\AdsApi\AdWords\v201809\cm\MultiAssetResponsiveDisplayAd Object( 
    [marketingImages:protected] => Array
        (
            [0] => Google\AdsApi\AdWords\v201809\cm\AssetLink Object
                (
                    [asset:protected] => 
Google\AdsApi\AdWords\v201809\cm\ImageAsset Object
                        (
                            [imageData:protected] => 
                            [imageFileSize:protected] => 67844
                            [imageMimeType:protected] => IMAGE_JPEG
                            [fullSizeInfo:protected] => 
Google\AdsApi\AdWords\v201809\cm\ImageDimensionInfo Object
                                (
                                    [imageHeight:protected] => 837
                                    [imageWidth:protected] => 1600
                                    [imageUrl:protected] => 
                                )

                            [assetId:protected] => 11843068884
                            [assetName:protected] => 
iphone12pro-iphone12pro-max-01.jpg
                            [assetSubtype:protected] => IMAGE
                            [assetStatus:protected] => 
                            [AssetType:protected] => ImageAsset
                            
[parameterMap:Google\AdsApi\AdWords\v201809\cm\Asset:private] => Array
                                (
                                    [Asset.Type] => AssetType
                                )

                        )

                    [pinnedField:protected] => 
                    [assetPolicySummaryInfo:protected] => 
                    [assetPerformanceLabel:protected] => 
                )

        )

    [squareMarketingImages:protected] => Array
        (
            [0] => Google\AdsApi\AdWords\v201809\cm\AssetLink Object
                (
                    [asset:protected] => 
Google\AdsApi\AdWords\v201809\cm\ImageAsset Object
                        (
                            [imageData:protected] => 
                            [imageFileSize:protected] => 45667
                            [imageMimeType:protected] => IMAGE_JPEG
                            [fullSizeInfo:protected] => 
Google\AdsApi\AdWords\v201809\cm\ImageDimensionInfo Object
                                (
                                    [imageHeight:protected] => 837
                                    [imageWidth:protected] => 837
                                    [imageUrl:protected] => 
                                )

                            [assetId:protected] => 12107036965
                            [assetName:protected] => 
iphone12pro-iphone12pro-max-01.jpg
                            [assetSubtype:protected] => IMAGE
                            [assetStatus:protected] => 
                            [AssetType:protected] => ImageAsset
                            
[parameterMap:Google\AdsApi\AdWords\v201809\cm\Asset:private] => Array
                                (
                                    [Asset.Type] => AssetType
                                )

                        )

                    [pinnedField:protected] => 
                    [assetPolicySummaryInfo:protected] => 
                    [assetPerformanceLabel:protected] => 
                )

        )

    [logoImages:protected] => 
    [landscapeLogoImages:protected] => 
    [headlines:protected] => Array
        (
            [0] => Google\AdsApi\AdWords\v201809\cm\AssetLink Object
                (
                    [asset:protected] => 
Google\AdsApi\AdWords\v201809\cm\TextAsset Object
                        (
                            [assetText:protected] => 리드-디스플레이광고제목테스트
                            [assetId:protected] => 12107037184
                            [assetName:protected] => 
                            [assetSubtype:protected] => TEXT
                            [assetStatus:protected] => 
                            [AssetType:protected] => TextAsset
                            
[parameterMap:Google\AdsApi\AdWords\v201809\cm\Asset:private] => Array
                                (
                                    [Asset.Type] => AssetType
                                )

                        )

                    [pinnedField:protected] => 
                    [assetPolicySummaryInfo:protected] => 
                    [assetPerformanceLabel:protected] => 
                )

        )

    [longHeadline:protected] => Google\AdsApi\AdWords\v201809\cm\AssetLink 
Object
        (
            [asset:protected] => Google\AdsApi\AdWords\v201809\cm\TextAsset 
Object
                (
                    [assetText:protected] => 리드-디스플레이긴 광고제목테스트
                    [assetId:protected] => 12107037187
                    [assetName:protected] => 
                    [assetSubtype:protected] => TEXT
                    [assetStatus:protected] => 
                    [AssetType:protected] => TextAsset
                    
[parameterMap:Google\AdsApi\AdWords\v201809\cm\Asset:private] => Array
                        (
                            [Asset.Type] => AssetType
                        )

                )

            [pinnedField:protected] => 
            [assetPolicySummaryInfo:protected] => 
            [assetPerformanceLabel:protected] => 
        )

    [descriptions:protected] => Array
        (
            [0] => Google\AdsApi\AdWords\v201809\cm\AssetLink Object
                (
                    [asset:protected] => 
Google\AdsApi\AdWords\v201809\cm\TextAsset Object
                        (
                            [assetText:protected] => 리드-디스플레이광고설명테스트
                            [assetId:protected] => 12107037190
                            [assetName:protected] => 
                            [assetSubtype:protected] => TEXT
                            [assetStatus:protected] => 
                            [AssetType:protected] => TextAsset
                            
[parameterMap:Google\AdsApi\AdWords\v201809\cm\Asset:private] => Array
                                (
                                    [Asset.Type] => AssetType
                                )

                        )

                    [pinnedField:protected] => 
                    [assetPolicySummaryInfo:protected] => 
                    [assetPerformanceLabel:protected] => 
                )

        )

    [youTubeVideos:protected] => Array
        (
            [0] => Google\AdsApi\AdWords\v201809\cm\AssetLink Object
                (
                    [asset:protected] => 
Google\AdsApi\AdWords\v201809\cm\YouTubeVideoAsset Object
                        (
                            [youTubeVideoId:protected] => wqmOahw1EV4
                            [assetId:protected] => 12138135976
                            [assetName:protected] => 
                            [assetSubtype:protected] => YOUTUBE_VIDEO
                            [assetStatus:protected] => 
                            [AssetType:protected] => YoutubeVideoAsset
                            
[parameterMap:Google\AdsApi\AdWords\v201809\cm\Asset:private] => Array
                                (
                                    [Asset.Type] => AssetType
                                )

                        )

                    [pinnedField:protected] => 
                    [assetPolicySummaryInfo:protected] => 
                    [assetPerformanceLabel:protected] => 
                )

        )

    [businessName:protected] => 디바운드테스트2
    [mainColor:protected] => 
    [accentColor:protected] => 
    [allowFlexibleColor:protected] => 1
    [callToActionText:protected] => 설치하기
    [dynamicSettingsPricePrefix:protected] => 
    [dynamicSettingsPromoText:protected] => 
    [formatSetting:protected] => ALL_FORMATS
    [id:protected] => 479579150838
    [url:protected] => 
    [displayUrl:protected] => 
    [finalUrls:protected] => Array
        (
            [0] => http://picknshare.com
        )

    [finalMobileUrls:protected] => 
    [finalAppUrls:protected] => 
    [trackingUrlTemplate:protected] => 
    [finalUrlSuffix:protected] => 
    [urlCustomParameters:protected] => 
    [urlData:protected] => 
    [automated:protected] => 
    [type:protected] => MULTI_ASSET_RESPONSIVE_DISPLAY_AD
    [devicePreference:protected] => 
    [systemManagedEntitySource:protected] => 
    [AdType:protected] => MultiAssetResponsiveDisplayAd
    [parameterMap:Google\AdsApi\AdWords\v201809\cm\Ad:private] => Array
        (
            [Ad.Type] => AdType
        )

)

Reply via email to