AssetSet

An asset set representing a collection of assets. Use AssetSetAsset to link an asset to the asset set.

JSON representation
{
  "id": string,
  "resourceName": string,
  "name": string,
  "type": enum (AssetSetType),
  "status": enum (AssetSetStatus),
  "merchantCenterFeed": {
    object (MerchantCenterFeed)
  },
  "locationGroupParentAssetSetId": string,
  "hotelPropertyData": {
    object (HotelPropertyData)
  },

  // Union field asset_set_source can be only one of the following:
  "locationSet": {
    object (LocationSet)
  },
  "businessProfileLocationGroup": {
    object (BusinessProfileLocationGroup)
  },
  "chainLocationGroup": {
    object (ChainLocationGroup)
  }
  // End of list of possible types for union field asset_set_source.
}
Fields
id

string (int64 format)

Output only. The ID of the asset set.

resourceName

string

Immutable. The resource name of the asset set. Asset set resource names have the form:

customers/{customerId}/assetSets/{asset_set_id}

name

string

Required. Name of the asset set. Required. It must have a minimum length of 1 and maximum length of 128.

type

enum (AssetSetType)

Required. Immutable. The type of the asset set. Required.

status

enum (AssetSetStatus)

Output only. The status of the asset set. Read-only.

merchantCenterFeed

object (MerchantCenterFeed)

Merchant ID and Feed Label from Google Merchant Center.

locationGroupParentAssetSetId

string (int64 format)

Immutable. Parent asset set id for the asset set where the elements of this asset set come from. For example: the sync level location AssetSet id where the the elements in LocationGroup AssetSet come from. This field is required and only applicable for Location Group typed AssetSet.

hotelPropertyData

object (HotelPropertyData)

Output only. For Performance Max for travel goals campaigns with a Hotel Center account link. Read-only.

Union field asset_set_source. Asset set data specific to each asset set type. Not all types have specific data. asset_set_source can be only one of the following:
locationSet

object (LocationSet)

Location asset set data. This will be used for sync level location set. This can only be set if AssetSet's type is LOCATION_SYNC.

businessProfileLocationGroup

object (BusinessProfileLocationGroup)

Business Profile location group asset set data.

chainLocationGroup

object (ChainLocationGroup)

Represents information about a Chain dynamic location group. Only applicable if the sync level AssetSet's type is LOCATION_SYNC and sync source is chain.

AssetSetStatus

The possible statuses of an asset set.

Enums
UNSPECIFIED The status has not been specified.
UNKNOWN The received value is not known in this version. This is a response-only value.
ENABLED The asset set is enabled.
REMOVED The asset set is removed.

MerchantCenterFeed

Merchant ID and Feed Label from Google Merchant Center.

JSON representation
{
  "merchantId": string,
  "feedLabel": string
}
Fields
merchantId

string (int64 format)

Required. Merchant ID from Google Merchant Center

feedLabel

string

Optional. Feed Label from Google Merchant Center.

HotelPropertyData

For Performance Max for travel goals campaigns with a Hotel Center account link. Read-only.

JSON representation
{
  "hotelCenterId": string,
  "partnerName": string
}
Fields
hotelCenterId

string (int64 format)

Output only. The hotel center ID of the partner.

partnerName

string

Output only. Name of the hotel partner.

LocationSet

Data related to location set. One of the Google Business Profile (previously known as Google My Business) data, Chain data, and map location data need to be specified.

JSON representation
{
  "locationOwnershipType": enum (LocationOwnershipType),

  // Union field source can be only one of the following:
  "businessProfileLocationSet": {
    object (BusinessProfileLocationSet)
  },
  "chainLocationSet": {
    object (ChainSet)
  },
  "mapsLocationSet": {
    object (MapsLocationSet)
  }
  // End of list of possible types for union field source.
}
Fields
locationOwnershipType

enum (LocationOwnershipType)

Required. Immutable. Location Ownership Type (owned location or affiliate location).

Union field source. Location data specific to each sync source. source can be only one of the following:
businessProfileLocationSet

object (BusinessProfileLocationSet)

Data used to configure a location set populated from Google Business Profile locations.

chainLocationSet

object (ChainSet)

Data used to configure a location on chain set populated with the specified chains.

mapsLocationSet

object (MapsLocationSet)

Only set if locations are synced based on selected maps locations

BusinessProfileLocationSet

Data used to configure a location set populated from Google Business Profile locations. Different types of filters are AND'ed together, if they are specified.

JSON representation
{
  "httpAuthorizationToken": string,
  "emailAddress": string,
  "businessNameFilter": string,
  "labelFilters": [
    string
  ],
  "listingIdFilters": [
    string
  ],
  "businessAccountId": string
}
Fields
httpAuthorizationToken

string

Required. Immutable. The HTTP authorization token used to obtain authorization.

emailAddress

string

Required. Immutable. Email address of a Google Business Profile account or email address of a manager of the Google Business Profile account.

businessNameFilter

string

Used to filter Google Business Profile listings by business name. If businessNameFilter is set, only listings with a matching business name are candidates to be sync'd into Assets.

labelFilters[]

string

Used to filter Google Business Profile listings by labels. If entries exist in labelFilters, only listings that have any of the labels set are candidates to be synchronized into Assets. If no entries exist in labelFilters, then all listings are candidates for syncing. Label filters are OR'ed together.

listingIdFilters[]

string (int64 format)

Used to filter Google Business Profile listings by listing id. If entries exist in listingIdFilters, only listings specified by the filters are candidates to be synchronized into Assets. If no entries exist in listingIdFilters, then all listings are candidates for syncing. Listing ID filters are OR'ed together.

businessAccountId

string

Immutable. The account ID of the managed business whose locations are to be used. If this field is not set, then all businesses accessible by the user (specified by the emailAddress) are used.

ChainSet

Data used to configure a location set populated with the specified chains.

JSON representation
{
  "relationshipType": enum (ChainRelationshipType),
  "chains": [
    {
      object (ChainFilter)
    }
  ]
}
Fields
relationshipType

enum (ChainRelationshipType)

Required. Immutable. Relationship type the specified chains have with this advertiser.

chains[]

object (ChainFilter)

Required. A list of chain level filters, all filters are OR'ed together.

ChainRelationshipType

Possible types of a relationship.

Enums
UNSPECIFIED Not specified.
UNKNOWN Used for return value only. Represents value unknown in this version.
AUTO_DEALERS Auto dealer relationship.
GENERAL_RETAILERS General retailer relationship.

ChainFilter

One chain level filter on location in a feed item set. The filtering logic among all the fields is AND.

JSON representation
{
  "chainId": string,
  "locationAttributes": [
    string
  ]
}
Fields
chainId

string (int64 format)

Required. Used to filter chain locations by chain id. Only chain locations that belong to the specified chain will be in the asset set.

locationAttributes[]

string

Used to filter chain locations by location attributes. Only chain locations that belong to all of the specified attribute(s) will be in the asset set. If this field is empty, it means no filtering on this field.

MapsLocationSet

Wrapper for multiple maps location sync data

JSON representation
{
  "mapsLocations": [
    {
      object (MapsLocationInfo)
    }
  ]
}
Fields
mapsLocations[]

object (MapsLocationInfo)

Required. A list of maps location info that user manually synced in.

MapsLocationInfo

Wrapper for place ids

JSON representation
{
  "placeId": string
}
Fields
placeId

string

Place ID of the Maps location.

BusinessProfileLocationGroup

Information about a Business Profile dynamic location group. Only applicable if the sync level AssetSet's type is LOCATION_SYNC and sync source is Business Profile.

JSON representation
{
  "dynamicBusinessProfileLocationGroupFilter": {
    object (DynamicBusinessProfileLocationGroupFilter)
  }
}
Fields
dynamicBusinessProfileLocationGroupFilter

object (DynamicBusinessProfileLocationGroupFilter)

Filter for dynamic Business Profile location sets.

DynamicBusinessProfileLocationGroupFilter

Represents a filter on Business Profile locations in an asset set. If multiple filters are provided, they are AND'ed together.

JSON representation
{
  "labelFilters": [
    string
  ],
  "listingIdFilters": [
    string
  ],
  "businessNameFilter": {
    object (BusinessProfileBusinessNameFilter)
  }
}
Fields
labelFilters[]

string

Used to filter Business Profile locations by label. Only locations that have any of the listed labels will be in the asset set. Label filters are OR'ed together.

listingIdFilters[]

string (int64 format)

Used to filter Business Profile locations by listing ids.

businessNameFilter

object (BusinessProfileBusinessNameFilter)

Used to filter Business Profile locations by business name.

BusinessProfileBusinessNameFilter

Business Profile location group business name filter.

JSON representation
{
  "businessName": string,
  "filterType": enum (LocationStringFilterType)
}
Fields
businessName

string

Business name string to use for filtering.

filterType

enum (LocationStringFilterType)

The type of string matching to use when filtering with businessName.

LocationStringFilterType

Possible types of a location string filter.

Enums
UNSPECIFIED Not specified.
UNKNOWN Used for return value only. Represents value unknown in this version.
EXACT The filter will use exact string matching.

ChainLocationGroup

Represents information about a Chain dynamic location group. Only applicable if the sync level AssetSet's type is LOCATION_SYNC and sync source is chain.

JSON representation
{
  "dynamicChainLocationGroupFilters": [
    {
      object (ChainFilter)
    }
  ]
}
Fields
dynamicChainLocationGroupFilters[]

object (ChainFilter)

Used to filter chain locations by chain ids. Only Locations that belong to the specified chain(s) will be in the asset set.