Google Ads · Schema
GoogleAdsGoogleadsV25Services__MutateCampaignCriteriaRequest
Request message for CampaignCriterionService.MutateCampaignCriteria.
AdvertisingCampaign ManagementDigital AdvertisingGoogleMarketingPPCGoogle AdsAdTech
Properties
| Name | Type | Description |
|---|---|---|
| operations | array | Required. The list of operations to perform on individual criteria. |
| validateOnly | boolean | If true, the request is validated but not executed. Only errors are returned, not results. |
| responseContentType | string | The response content type setting. Determines whether the mutable resource or just the resource name should be returned post mutation. |
| partialFailure | boolean | If true, successful operations will be carried out and invalid operations will return errors. If false, all operations will be carried out in one transaction if and only if they are all valid. Default |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/google-ads/json-schema/google-ads-google-ads-googleads-v25-services-mutate-campaign-criteria-request-schema.json",
"title": "GoogleAdsGoogleadsV25Services__MutateCampaignCriteriaRequest",
"description": "Request message for CampaignCriterionService.MutateCampaignCriteria.",
"x-generated": "2026-11-04",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/google-ads-customers-campaigncriteria-api-openapi.yml#/components/schemas/GoogleAdsGoogleadsV25Services__MutateCampaignCriteriaRequest",
"type": "object",
"properties": {
"operations": {
"description": "Required. The list of operations to perform on individual criteria.",
"items": {
"$ref": "#/$defs/GoogleAdsGoogleadsV25Services__CampaignCriterionOperation"
},
"type": "array"
},
"validateOnly": {
"type": "boolean",
"description": "If true, the request is validated but not executed. Only errors are returned, not results."
},
"responseContentType": {
"type": "string",
"description": "The response content type setting. Determines whether the mutable resource or just the resource name should be returned post mutation.",
"x-enumDescriptions": [
"Not specified. Will return the resource name only in the response.",
"The mutate response will be the resource name.",
"The mutate response will contain the resource name and the resource with mutable fields if possible. Otherwise, only the resource name will be returned."
],
"enum": [
"UNSPECIFIED",
"RESOURCE_NAME_ONLY",
"MUTABLE_RESOURCE"
]
},
"partialFailure": {
"type": "boolean",
"description": "If true, successful operations will be carried out and invalid operations will return errors. If false, all operations will be carried out in one transaction if and only if they are all valid. Default is false."
}
},
"$defs": {
"GoogleAdsGoogleadsV25Common__ActivityCityInfo": {
"description": "The city where the travel activity is available.",
"type": "object",
"properties": {
"value": {
"type": "string",
"description": "String value of the activity city. The Geo Target Constant resource name."
}
}
},
"GoogleAdsGoogleadsV25Common__ActivityCountryInfo": {
"description": "The country where the travel activity is available.",
"type": "object",
"properties": {
"value": {
"type": "string",
"description": "String value of the activity country. The Geo Target Constant resource name."
}
}
},
"GoogleAdsGoogleadsV25Common__ActivityIdInfo": {
"description": "Advertiser-specific activity ID.",
"type": "object",
"properties": {
"value": {
"type": "string",
"description": "String value of the activity ID."
}
}
},
"GoogleAdsGoogleadsV25Common__ActivityRatingInfo": {
"description": "Rating of the activity as a number 1 to 5, where 5 is the best.",
"type": "object",
"properties": {
"value": {
"description": "Long value of the activity rating.",
"type": "string",
"format": "int64"
}
}
},
"GoogleAdsGoogleadsV25Common__ActivityStateInfo": {
"description": "The state where the travel activity is available.",
"type": "object",
"properties": {
"value": {
"type": "string",
"description": "String value of the activity state. The Geo Target Constant resource name."
}
}
},
"GoogleAdsGoogleadsV25Common__AdScheduleInfo": {
"type": "object",
"properties": {
"dayOfWeek": {
"description": "Day of the week the schedule applies to. This field is required for CREATE operations and is prohibited on UPDATE operations.",
"type": "string",
"x-enumDescriptions": [
"Not specified.",
"The value is unknown in this version.",
"Monday.",
"Tuesday.",
"Wednesday.",
"Thursday.",
"Friday.",
"Saturday.",
"Sunday."
],
"enum": [
"UNSPECIFIED",
"UNKNOWN",
"MONDAY",
"TUESDAY",
"WEDNESDAY",
"THURSDAY",
"FRIDAY",
"SATURDAY",
"SUNDAY"
]
},
"startHour": {
"type": "integer",
"description": "Starting hour in 24 hour time. This field must be between 0 and 23, inclusive. This field is required for CREATE operations and is prohibited on UPDATE operations.",
"format": "int32"
},
"endHour": {
"type": "integer",
"description": "Ending hour in 24 hour time; 24 signifies end of the day. This field must be between 0 and 24, inclusive. This field is required for CREATE operations and is prohibited on UPDATE operations.",
"format": "int32"
},
"endMinute": {
"type": "string",
"description": "Minutes after the end hour at which this schedule ends. The schedule is exclusive of the end minute. This field is required for CREATE operations and is prohibited on UPDATE operations.",
"x-enumDescriptions": [
"Not specified.",
"The value is unknown in this version.",
"Zero minutes past the hour.",
"Fifteen minutes past the hour.",
"Thirty minutes past the hour.",
"Forty-five minutes past the hour."
],
"enum": [
"UNSPECIFIED",
"UNKNOWN",
"ZERO",
"FIFTEEN",
"THIRTY",
"FORTY_FIVE"
]
},
"startMinute": {
"description": "Minutes after the start hour at which this schedule starts. This field is required for CREATE operations and is prohibited on UPDATE operations.",
"type": "string",
"x-enumDescriptions": [
"Not specified.",
"The value is unknown in this version.",
"Zero minutes past the hour.",
"Fifteen minutes past the hour.",
"Thirty minutes past the hour.",
"Forty-five minutes past the hour."
],
"enum": [
"UNSPECIFIED",
"UNKNOWN",
"ZERO",
"FIFTEEN",
"THIRTY",
"FORTY_FIVE"
]
}
},
"description": "Represents an AdSchedule criterion. AdSchedule is specified as the day of the week and a time interval within which ads will be shown. No more than six AdSchedules can be added for the same day."
},
"GoogleAdsGoogleadsV25Common__AddressInfo": {
"description": "Address for proximity criterion.",
"type": "object",
"properties": {
"cityName": {
"type": "string",
"description": "Name of the city."
},
"countryCode": {
"description": "Country code.",
"type": "string"
},
"postalCode": {
"type": "string",
"description": "Postal code."
},
"streetAddress": {
"type": "string",
"description": "Street address line 1."
},
"provinceCode": {
"description": "Province or state code.",
"type": "string"
},
"provinceName": {
"type": "string",
"description": "Province or state name."
},
"streetAddress2": {
"description": "Street address line 2. This field is write-only. It is only used for calculating the longitude and latitude of an address when geo_point is empty.",
"type": "string"
}
}
},
"GoogleAdsGoogleadsV25Common__AgeRangeInfo": {
"description": "An age range criterion.",
"type": "object",
"properties": {
"type": {
"x-enumDescriptions": [
"Not specified.",
"Used for return value only. Represents value unknown in this version.",
"Between 18 and 24 years old.",
"Between 25 and 34 years old.",
"Between 35 and 44 years old.",
"Between 45 and 54 years old.",
"Between 55 and 64 years old.",
"65 years old and beyond.",
"Undetermined age range."
],
"enum": [
"UNSPECIFIED",
"UNKNOWN",
"AGE_RANGE_18_24",
"AGE_RANGE_25_34",
"AGE_RANGE_35_44",
"AGE_RANGE_45_54",
"AGE_RANGE_55_64",
"AGE_RANGE_65_UP",
"AGE_RANGE_UNDETERMINED"
],
"type": "string",
"description": "Type of the age range."
}
}
},
"GoogleAdsGoogleadsV25Common__BrandListInfo": {
"type": "object",
"properties": {
"sharedSet": {
"description": "Shared set resource name of the brand list.",
"type": "string"
}
},
"description": "A Brand List Criterion is used to specify a list of brands. The list is represented as a SharedSet id type BRAND_HINT. A criterion of this type can be either targeted or excluded."
},
"GoogleAdsGoogleadsV25Common__CarrierInfo": {
"description": "Represents a Carrier Criterion.",
"type": "object",
"properties": {
"carrierConstant": {
"type": "string",
"description": "The Carrier constant resource name."
}
}
},
"GoogleAdsGoogleadsV25Common__CombinedAudienceInfo": {
"description": "A combined audience criterion.",
"type": "object",
"properties": {
"combinedAudience": {
"type": "string",
"description": "The CombinedAudience resource name."
}
}
},
"GoogleAdsGoogleadsV25Common__ContentLabelInfo": {
"type": "object",
"properties": {
"type": {
"x-enumDescriptions": [
"Not specified.",
"Used for return value only. Represents value unknown in this version.",
"Sexually suggestive content.",
"Below the fold placement.",
"Parked domain.",
"Juvenile, gross & bizarre content.",
"Profanity & rough language.",
"Death & tragedy.",
"Video.",
"Content rating: G.",
"Content rating: PG.",
"Content rating: T.",
"Content rating: MA.",
"Content rating: not yet rated.",
"Embedded video.",
"Live streaming video.",
"Sensitive social issues.",
"Content that's suitable for families to view together, including Made for Kids videos on YouTube.",
"Video games that simulate hand-to-hand fighting or combat with the use of modern or medieval weapons.",
"Video games that feature mature content, such as violence, inappropriate language, or sexual suggestiveness.",
"Health content that people might find sensitive or upsetting, such as medical procedures or images and descriptions of various medical conditions.",
"Health content from sources that may provide accurate information but aren't as commonly cited as other, more well-known sources.",
"News content that's been recently announced, regardless of the themes or people being reported on.",
"News content that people might find sensitive or upsetting, such as crimes, accidents, and natural incidents, or commentary on potentially controversial social and political issues.",
"News content from sources that aren't featured on Google News or YouTube News.",
"Political content, such as political statements made by well-known politicians, political elections, or events widely perceived to be political in nature.",
"Content with religious themes, such as religious teachings or customs, holy sites or places of worship, well-known religious figures or people dressed in religious attire, or religious opinions on social and political issues."
],
"enum": [
"UNSPECIFIED",
"UNKNOWN",
"SEXUALLY_SUGGESTIVE",
"BELOW_THE_FOLD",
"PARKED_DOMAIN",
"JUVENILE",
"PROFANITY",
"TRAGEDY",
"VIDEO",
"VIDEO_RATING_DV_G",
"VIDEO_RATING_DV_PG",
"VIDEO_RATING_DV_T",
"VIDEO_RATING_DV_MA",
"VIDEO_NOT_YET_RATED",
"EMBEDDED_VIDEO",
"LIVE_STREAMING_VIDEO",
"SOCIAL_ISSUES",
"BRAND_SUITABILITY_CONTENT_FOR_FAMILIES",
"BRAND_SUITABILITY_GAMES_FIGHTING",
"BRAND_SUITABILITY_GAMES_MATURE",
"BRAND_SUITABILITY_HEALTH_SENSITIVE",
"BRAND_SUITABILITY_HEALTH_SOURCE_UNDETERMINED",
"BRAND_SUITABILITY_NEWS_RECENT",
"BRAND_SUITABILITY_NEWS_SENSITIVE",
"BRAND_SUITABILITY_NEWS_SOURCE_NOT_FEATURED",
"BRAND_SUITABILITY_POLITICS",
"BRAND_SUITABILITY_RELIGION"
],
"description": "Content label type, required for CREATE operations.",
"type": "string"
}
},
"description": "Content Label for category exclusion."
},
"GoogleAdsGoogleadsV25Common__CustomAffinityInfo": {
"description": "A custom affinity criterion. A criterion of this type is only targetable.",
"type": "object",
"properties": {
"customAffinity": {
"type": "string",
"description": "The CustomInterest resource name."
}
}
},
"GoogleAdsGoogleadsV25Common__CustomAudienceInfo": {
"description": "A custom audience criterion.",
"type": "object",
"properties": {
"customAudience": {
"type": "string",
"description": "The CustomAudience resource name."
}
}
},
"GoogleAdsGoogleadsV25Common__DeviceInfo": {
"description": "A device criterion.",
"type": "object",
"properties": {
"type": {
"x-enumDescriptions": [
"Not specified.",
"The value is unknown in this version.",
"Mobile devices with full browsers.",
"Tablets with full browsers.",
"Computers.",
"Smart TVs and game consoles.",
"Other device types."
],
"enum": [
"UNSPECIFIED",
"UNKNOWN",
"MOBILE",
"TABLET",
"DESKTOP",
"CONNECTED_TV",
"OTHER"
],
"description": "Type of the device.",
"type": "string"
}
}
},
"GoogleAdsGoogleadsV25Common__ExtendedDemographicInfo": {
"description": "Represents an extended demographic criterion.",
"type": "object",
"properties": {
"extendedDemographicId": {
"format": "int64",
"type": "string",
"description": "Taxonomy id of the extended demographic group."
}
}
},
"GoogleAdsGoogleadsV25Common__GenderInfo": {
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "Type of the gender.",
"x-enumDescriptions": [
"Not specified.",
"Used for return value only. Represents value unknown in this version.",
"Male.",
"Female.",
"Undetermined gender."
],
"enum": [
"UNSPECIFIED",
"UNKNOWN",
"MALE",
"FEMALE",
"UNDETERMINED"
]
}
},
"description": "A gender criterion."
},
"GoogleAdsGoogleadsV25Common__GeoPointInfo": {
"description": "Geo point for proximity criterion.",
"type": "object",
"properties": {
"latitudeInMicroDegrees": {
"format": "int32",
"description": "Micro degrees for the latitude.",
"type": "integer"
},
"longitudeInMicroDegrees": {
"format": "int32",
"description": "Micro degrees for the longitude.",
"type": "integer"
}
}
},
"GoogleAdsGoogleadsV25Common__HotelCityInfo": {
"description": "City the hotel is located in.",
"type": "object",
"properties": {
"cityCriterion": {
"type": "string",
"description": "The Geo Target Constant resource name."
}
}
},
"GoogleAdsGoogleadsV25Common__HotelClassInfo": {
"type": "object",
"properties": {
"value": {
"format": "int64",
"type": "string",
"description": "Long value of the hotel class."
}
},
"description": "Class of the hotel as a number of stars 1 to 5."
},
"GoogleAdsGoogleadsV25Common__HotelCountryRegionInfo": {
"type": "object",
"properties": {
"countryRegionCriterion": {
"description": "The Geo Target Constant resource name.",
"type": "string"
}
},
"description": "Country or Region the hotel is located in."
},
"GoogleAdsGoogleadsV25Common__HotelIdInfo": {
"description": "Advertiser-specific hotel ID.",
"type": "object",
"properties": {
"value": {
"description": "String value of the hotel ID.",
"type": "string"
}
}
},
"GoogleAdsGoogleadsV25Common__HotelStateInfo": {
"type": "object",
"properties": {
"stateCriterion": {
"description": "The Geo Target Constant resource name.",
"type": "string"
}
},
"description": "State the hotel is located in."
},
"GoogleAdsGoogleadsV25Common__IncomeRangeInfo": {
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "Type of the income range.",
"x-enumDescriptions": [
"Not specified.",
"Used for return value only. Represents value unknown in this version.",
"0%-50%.",
"50% to 60%.",
"60% to 70%.",
"70% to 80%.",
"80% to 90%.",
"Greater than 90%.",
"Undetermined income range."
],
"enum": [
"UNSPECIFIED",
"UNKNOWN",
"INCOME_RANGE_0_50",
"INCOME_RANGE_50_60",
"INCOME_RANGE_60_70",
"INCOME_RANGE_70_80",
"INCOME_RANGE_80_90",
"INCOME_RANGE_90_UP",
"INCOME_RANGE_UNDETERMINED"
]
}
},
"description": "An income range criterion."
},
"GoogleAdsGoogleadsV25Common__IpBlockInfo": {
"type": "object",
"properties": {
"ipAddress": {
"type": "string",
"description": "The IP address or the CIDR block to be excluded."
}
},
"description": "An IpBlock criterion used for excluding IP addresses. We support excluding individual IP addresses or CIDR blocks. Create one IpBlockInfo criterion for each individual IP address or CIDR block you want to exclude. You can exclude up to 500 IP addresses per campaign. For more details, see [Exclude IP addresses](//support.google.com/google-ads/answer/2456098). IPv4 examples: * Individual address: 192.168.0.1 * Individual address as CIDR block: 192.168.0.1/32 * CIDR block: 192.168.0.0/24 IPv6 examples: * Individual address: 2001:db8:a0b:12f0::1 * Individual address as CIDR block: 2001:db8:a0b:12f0::1/128 * CIDR block: 2001:db8::/48"
},
"GoogleAdsGoogleadsV25Common__KeywordInfo": {
"type": "object",
"properties": {
"text": {
"type": "string",
"description": "The text of the keyword (at most 80 characters and 10 words)."
},
"matchType": {
"x-enumDescriptions": [
"Not specified.",
"Used for return value only. Represents value unknown in this version.",
"Exact match.",
"Phrase match.",
"Broad match."
],
"enum": [
"UNSPECIFIED",
"UNKNOWN",
"EXACT",
"PHRASE",
"BROAD"
],
"type": "string",
"description": "The match type of the keyword."
}
},
"description": "A keyword criterion."
},
"GoogleAdsGoogleadsV25Common__KeywordThemeInfo": {
"description": "A Smart Campaign keyword theme.",
"type": "object",
"properties": {
"keywordThemeConstant": {
"type": "string",
"description": "The resource name of a Smart Campaign keyword theme constant. `keywordThemeConstants/{keyword_theme_id}~{sub_keyword_theme_id}`"
},
"freeFormKeywordTheme": {
"type": "string",
"description": "Free-form text to be matched to a Smart Campaign keyword theme constant on a best-effort basis."
}
}
},
"GoogleAdsGoogleadsV25Common__LanguageInfo": {
"description": "A language criterion.",
"type": "object",
"properties": {
"languageConstant": {
"type": "string",
"description": "The language constant resource name."
}
}
},
"GoogleAdsGoogleadsV25Common__LifeEventInfo": {
"type": "object",
"properties": {
"lifeEventId": {
"format": "int64",
"description": "Taxonomy id of the life event.",
"type": "string"
}
},
"description": "Represents a life event criterion."
},
"GoogleAdsGoogleadsV25Common__ListingDimensionInfo": {
"type": "object",
"properties": {
"activityCountry": {
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__ActivityCountryInfo",
"description": "The country where the travel activity is available."
},
"productGrouping": {
"description": "Grouping of a product offer. This listing dimension is deprecated and it is supported only in Display campaigns.",
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__ProductGroupingInfo"
},
"productChannel": {
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__ProductChannelInfo",
"description": "Locality of a product offer."
},
"activityId": {
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__ActivityIdInfo",
"description": "Advertiser-specific activity ID."
},
"hotelCountryRegion": {
"description": "Country or Region the hotel is located in.",
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__HotelCountryRegionInfo"
},
"hotelCity": {
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__HotelCityInfo",
"description": "City the hotel is located in."
},
"productCustomAttribute": {
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__ProductCustomAttributeInfo",
"description": "Custom attribute of a product offer."
},
"hotelClass": {
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__HotelClassInfo",
"description": "Class of the hotel as a number of stars 1 to 5."
},
"productLabels": {
"description": "Labels of a product offer. This listing dimension is deprecated and it is supported only in Display campaigns.",
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__ProductLabelsInfo"
},
"productItemId": {
"description": "Item id of a product offer.",
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__ProductItemIdInfo"
},
"unknownListingDimension": {
"description": "Unknown dimension. Set when no other listing dimension is set.",
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__UnknownListingDimensionInfo"
},
"productCategory": {
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__ProductCategoryInfo",
"description": "Category of a product offer."
},
"activityRating": {
"description": "Rating of the activity as a number 1 to 5, where 5 is the best.",
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__ActivityRatingInfo"
},
"hotelState": {
"description": "State the hotel is located in.",
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__HotelStateInfo"
},
"productType": {
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__ProductTypeInfo",
"description": "Type of a product offer."
},
"hotelId": {
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__HotelIdInfo",
"description": "Advertiser-specific hotel ID."
},
"activityCity": {
"description": "The city where the travel activity is available.",
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__ActivityCityInfo"
},
"productBrand": {
"description": "Brand of a product offer.",
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__ProductBrandInfo"
},
"activityState": {
"description": "The state where the travel activity is available.",
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__ActivityStateInfo"
},
"productCondition": {
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__ProductConditionInfo",
"description": "Condition of a product offer."
},
"productLegacyCondition": {
"description": "Legacy condition of a product offer. This listing dimension is deprecated and it is supported only in Display campaigns.",
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__ProductLegacyConditionInfo"
},
"productTypeFull": {
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__ProductTypeFullInfo",
"description": "Full type of a product offer. This listing dimension is deprecated and it is supported only in Display campaigns."
},
"productChannelExclusivity": {
"description": "Availability of a product offer.",
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__ProductChannelExclusivityInfo"
}
},
"description": "Listing dimensions for listing group criterion."
},
"GoogleAdsGoogleadsV25Common__ListingScopeInfo": {
"description": "A listing scope criterion.",
"type": "object",
"properties": {
"dimensions": {
"description": "Scope of the campaign criterion.",
"items": {
"$ref": "#/$defs/GoogleAdsGoogleadsV25Common__ListingDimensionInfo"
},
"type": "array"
}
}
},
"GoogleAdsGoogleadsV25Common__LocalServiceIdInfo": {
"description": "A Local Services Ads service ID. Represents a service type (such as install_faucet) that a Local Services Campaign can target.",
"type": "object",
"properties": {
"serviceId": {
"type": "string",
"description": "The criterion resource name."
}
}
},
"GoogleAdsGoogleadsV25Common__LocationGroupInfo": {
"type": "object",
"properties": {
"enableCustomerLevelLocationAssetSet": {
"description": "Denotes that the latest customer level asset set is used for targeting. Used with radius and radius_units. Cannot be used with feed, geo target constants or feed item sets. When using asset sets, either this field or location_group_asset_sets should be specified. Both cannot be used at the same time. This can only be set in CREATE operations.",
"type": "boolean"
},
"locationGroupAssetSets": {
"description": "AssetSets whose Assets are targeted. If multiple IDs are specified, then all items that appear in at least one set are targeted. This field cannot be used with feed, geo target constants or feed item sets. When using asset sets, either this field or enable_customer_level_location_asset_set should be specified. Both cannot be used at the same time. This can only be set in CREATE operations.",
"items": {
"type": "string"
},
"type": "array"
},
"geoTargetConstants": {
"type": "array",
"description": "Geo target constant(s) restricting the scope of the geographic area within the feed. Currently only one geo target constant is allowed. Cannot be set with AssetSet fields.",
"items": {
"type": "string"
}
},
"radius": {
"format": "int64",
"type": "string",
"description": "Distance in units specifying the radius around targeted locations. This is required and must be set in CREATE operations."
},
"radiusUnits": {
"x-enumDescriptions": [
"Not specified.",
"Used for return value only. Represents value unknown in this version.",
"Meters",
"Miles",
"Milli Miles"
],
"enum": [
"UNSPECIFIED",
"UNKNOWN",
"METERS",
"MILES",
"MILLI_MILES"
],
"type": "string",
"description": "Unit of the radius. Miles and meters are supported for geo target constants. Milli miles and meters are supported for feed item sets and asset sets. This is required and must be set in CREATE operations."
},
"feedItemSets": {
"description": "FeedItemSets whose FeedItems are targeted. If multiple IDs are specified, then all items that appear in at least one set are targeted. This field cannot be used with geo_target_constants. This is optional and can only be set in CREATE operations. Cannot be set with AssetSet fields.",
"items": {
"type": "string"
},
"type": "array"
}
},
"description": "A radius around a list of locations specified through a feed or assetSet."
},
"GoogleAdsGoogleadsV25Common__LocationInfo": {
"type": "object",
"properties": {
"geoTargetConstant": {
"type": "string",
"description": "The geo target constant resource name."
}
},
"description": "A location criterion."
},
"GoogleAdsGoogleadsV25Common__MobileAppCategoryInfo": {
"description": "A mobile app category criterion.",
"type": "object",
"properties": {
"mobileAppCategoryConstant": {
"type": "string",
"description": "The mobile app category constant resource name."
}
}
},
"GoogleAdsGoogleadsV25Common__MobileApplicationInfo": {
"type": "object",
"properties": {
"appId": {
"description": "A string that uniquely identifies a mobile application to Google Ads API. The format of this string is \"{platform}-{platform_native_id}\", where platform is \"1\" for iOS apps and \"2\" for Android apps, and where platform_native_id is the mobile application identifier native to the corresponding platform. For iOS, this native identifier is the 9 digit string that appears at the end of an App Store URL (for example, \"476943146\" for \"Flood-It! 2\" whose App Store link is \"http://itunes.apple.com/us/app/flood-it!-2/id476943146\"). For Android, this native identifier is the application's package name (for example, \"com.labpixies.colordrips\" for \"Color Drips\" given Google Play link \"https://play.google.com/store/apps/details?id=com.labpixies.colordrips\"). A well formed app id for Google Ads API would thus be \"1-476943146\" for iOS and \"2-com.labpixies.colordrips\" for Android. This field is required and must be set in CREATE operations.",
"type": "string"
},
"name": {
"description": "Name of this mobile application.",
"type": "string"
}
},
"description": "A mobile application criterion."
},
"GoogleAdsGoogleadsV25Common__MobileDeviceInfo": {
"description": "A mobile device criterion.",
"type": "object",
"properties": {
"mobileDeviceConstant": {
"type": "string",
"description": "The mobile device constant resource name."
}
}
},
"GoogleAdsGoogleadsV25Common__OperatingSystemVersionInfo": {
"description": "Represents an operating system versio
# --- truncated at 32 KB (61 KB total) ---
# Full source: https://artifacts.apis.io/google-ads/json-schema/google-ads-google-ads-googleads-v25-services-mutate-campaign-criteria-request-schema.json
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/google-ads-google-ads-googleads-v25-services-mutate-campaign-criteria-request"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.