Google Ads · Schema

GoogleAdsGoogleadsV25Services__MutateCustomAudiencesRequest

Request message for CustomAudienceService.MutateCustomAudiences.

AdvertisingCampaign ManagementDigital AdvertisingGoogleMarketingPPCGoogle AdsAdTech

Properties

Name Type Description
operations array Required. The list of operations to perform on individual custom audiences.
validateOnly boolean If true, the request is validated but not executed. Only errors are returned, not results.
View JSON Schema on GitHub

JSON Schema

google-ads-google-ads-googleads-v25-services-mutate-custom-audiences-request-schema.json Raw ↑
{
  "$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-custom-audiences-request-schema.json",
  "title": "GoogleAdsGoogleadsV25Services__MutateCustomAudiencesRequest",
  "description": "Request message for CustomAudienceService.MutateCustomAudiences.",
  "x-generated": "2026-11-04",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/google-ads-customers-customaudiences-api-openapi.yml#/components/schemas/GoogleAdsGoogleadsV25Services__MutateCustomAudiencesRequest",
  "type": "object",
  "properties": {
    "operations": {
      "type": "array",
      "description": "Required. The list of operations to perform on individual custom audiences.",
      "items": {
        "$ref": "#/$defs/GoogleAdsGoogleadsV25Services__CustomAudienceOperation"
      }
    },
    "validateOnly": {
      "type": "boolean",
      "description": "If true, the request is validated but not executed. Only errors are returned, not results."
    }
  },
  "$defs": {
    "GoogleAdsGoogleadsV25Resources__CustomAudience": {
      "description": "A custom audience. This is a list of users by interest. The unique key of a custom audience consists of the following fields: name. Violating the unique key constraint produces error: CustomAudienceError.NAME_ALREADY_USED",
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "description": "Type of the custom audience. (\"INTEREST\" OR \"PURCHASE_INTENT\" is not allowed for newly created custom audience but kept for existing audiences)",
          "x-enumDescriptions": [
            "Not specified.",
            "Used for return value only. Represents value unknown in this version.",
            "Google Ads will auto-select the best interpretation at serving time.",
            "Matches users by their interests.",
            "Matches users by topics they are researching or products they are considering for purchase.",
            "Matches users by what they searched on Google Search."
          ],
          "enum": [
            "UNSPECIFIED",
            "UNKNOWN",
            "AUTO",
            "INTEREST",
            "PURCHASE_INTENT",
            "SEARCH"
          ]
        },
        "id": {
          "description": "Output only. ID of the custom audience.",
          "type": "string",
          "format": "int64"
        },
        "status": {
          "x-enumDescriptions": [
            "Not specified.",
            "Used for return value only. Represents value unknown in this version.",
            "Enabled status - custom audience is enabled and can be targeted.",
            "Removed status - custom audience is removed and cannot be used for targeting."
          ],
          "enum": [
            "UNSPECIFIED",
            "UNKNOWN",
            "ENABLED",
            "REMOVED"
          ],
          "type": "string",
          "description": "Output only. Status of this custom audience. Indicates whether the custom audience is enabled or removed."
        },
        "description": {
          "type": "string",
          "description": "Description of this custom audience."
        },
        "members": {
          "description": "List of custom audience members that this custom audience is composed of. Members can be added during CustomAudience creation. If members are presented in UPDATE operation, existing members will be overridden.",
          "items": {
            "$ref": "#/$defs/GoogleAdsGoogleadsV25Resources__CustomAudienceMember"
          },
          "type": "array"
        },
        "name": {
          "description": "Name of the custom audience. It should be unique for all custom audiences created by a customer. This field is required for creating operations.",
          "type": "string"
        },
        "resourceName": {
          "type": "string",
          "description": "Immutable. The resource name of the custom audience. Custom audience resource names have the form: `customers/{customer_id}/customAudiences/{custom_audience_id}`"
        }
      }
    },
    "GoogleAdsGoogleadsV25Resources__CustomAudienceMember": {
      "description": "A member of custom audience. A member can be a KEYWORD, URL, PLACE_CATEGORY or APP. It can only be created or removed but not changed.",
      "type": "object",
      "properties": {
        "app": {
          "type": "string",
          "description": "A package name of Android apps which users installed such as com.google.example."
        },
        "keyword": {
          "description": "A keyword or keyword phrase — at most 10 words and 80 characters. Languages with double-width characters such as Chinese, Japanese, or Korean, are allowed 40 characters, which describes the user's interests or actions.",
          "type": "string"
        },
        "memberType": {
          "type": "string",
          "description": "The type of custom audience member, KEYWORD, URL, PLACE_CATEGORY or APP.",
          "x-enumDescriptions": [
            "Not specified.",
            "Used for return value only. Represents value unknown in this version.",
            "Users whose interests or actions are described by a keyword.",
            "Users who have interests related to the website's content.",
            "Users who visit place types described by a place category.",
            "Users who have installed a mobile app."
          ],
          "enum": [
            "UNSPECIFIED",
            "UNKNOWN",
            "KEYWORD",
            "URL",
            "PLACE_CATEGORY",
            "APP"
          ]
        },
        "placeCategory": {
          "format": "int64",
          "description": "A place type described by a place category users visit.",
          "type": "string"
        },
        "url": {
          "type": "string",
          "description": "An HTTP URL, protocol-included — at most 2048 characters, which includes contents users have interests in."
        }
      }
    },
    "GoogleAdsGoogleadsV25Services__CustomAudienceOperation": {
      "description": "A single operation (create, update) on a custom audience.",
      "type": "object",
      "properties": {
        "remove": {
          "description": "Remove operation: A resource name for the removed custom audience is expected, in this format: `customers/{customer_id}/customAudiences/{custom_audience_id}`",
          "type": "string"
        },
        "update": {
          "description": "Update operation: The custom audience is expected to have a valid resource name.",
          "$ref": "#/$defs/GoogleAdsGoogleadsV25Resources__CustomAudience"
        },
        "updateMask": {
          "type": "string",
          "description": "FieldMask that determines which resource fields are modified in an update.",
          "format": "google-fieldmask"
        },
        "create": {
          "$ref": "#/$defs/GoogleAdsGoogleadsV25Resources__CustomAudience",
          "description": "Create operation: No resource name is expected for the new custom audience."
        }
      }
    }
  }
}

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.
All 92 tools →

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-custom-audiences-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.