---
title: "POST /v23/customers/{+customerId}:generateAudienceCompositionInsights"
method: POST
path: "/v23/customers/{+customerId}:generateAudienceCompositionInsights"
tags: ["customers"]
---

# POST /v23/customers/{+customerId}:generateAudienceCompositionInsights

`POST /v23/customers/{+customerId}:generateAudienceCompositionInsights`

## Request

- Base URL: `https://searchads360.googleapis.com`
- URL: `https://searchads360.googleapis.com/v23/customers/{+customerId}:generateAudienceCompositionInsights`
- Auth: OAuth 2 (implicit, authorization URL `https://accounts.google.com/o/oauth2/auth`, scopes: `https://www.googleapis.com/auth/doubleclicksearch`) and OAuth 2 (authorization code, authorization URL `https://accounts.google.com/o/oauth2/auth`, token URL `https://accounts.google.com/o/oauth2/token`, scopes: `https://www.googleapis.com/auth/doubleclicksearch`)

Returns a collection of attributes that are represented in an audience of interest, with metrics that compare each attribute's share of the audience with its share of a baseline audience. List of thrown errors: [AudienceInsightsError]() [AuthenticationError]() [AuthorizationError]() [FieldError]() [HeaderError]() [InternalError]() [QuotaError]() [RangeError]() [RequestError]()

## Path parameters

- `customerId` string, required

## Request body

- GoogleAdsSearchads360V23ServicesGenerateAudienceCompositionInsightsRequest: Request message for AudienceInsightsService.GenerateAudienceCompositionInsights.
  - `audience` GoogleAdsSearchads360V23ServicesInsightsAudience: A set of users, defined by various characteristics, for which insights can be requested in AudienceInsightsService.
    - `ageRanges` GoogleAdsSearchads360V23CommonAgeRangeInfo[]: Age ranges for the audience. If absent, the audience represents all people over 18 that match the other attributes.
      - `type` '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 of the age range.
    - `countryLocations` GoogleAdsSearchads360V23CommonLocationInfo[]: Required. The countries for the audience.
      - `geoTargetConstant` string: The geo target constant resource name.
    - `gender` GoogleAdsSearchads360V23CommonGenderInfo: A gender criterion.
      - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'MALE' | 'FEMALE' | 'UNDETERMINED': Type of the gender.
    - `incomeRanges` GoogleAdsSearchads360V23CommonIncomeRangeInfo[]: Household income percentile ranges for the audience. If absent, the audience does not restrict by household income range.
      - `type` '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': Type of the income range.
    - `lineups` GoogleAdsSearchads360V23CommonAudienceInsightsLineup[]: Lineups representing the YouTube content viewed by the audience.
      - `lineupId` string: Required. The numeric ID of the lineup.
    - `parentalStatus` GoogleAdsSearchads360V23CommonParentalStatusInfo: A parental status criterion.
      - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'PARENT' | 'NOT_A_PARENT' | 'UNDETERMINED': Type of the parental status.
    - `subCountryLocations` GoogleAdsSearchads360V23CommonLocationInfo[]: Sub-country geographic location attributes. If present, each of these must be contained in one of the countries in this audience. If absent, the audience is geographically to the country_locations and no further.
      - `geoTargetConstant` string: The geo target constant resource name.
    - `topicAudienceCombinations` GoogleAdsSearchads360V23ServicesInsightsAudienceAttributeGroup[]: A combination of entity, category and user interest attributes defining the audience. The combination has a logical AND-of-ORs structure: Attributes within each InsightsAudienceAttributeGroup are combined with OR, and the combinations themselves are combined together with AND. For example, the expression (Entity OR Affinity) AND (In-Market OR Category) can be formed using two InsightsAudienceAttributeGroups with two Attributes each.
      - `attributes` GoogleAdsSearchads360V23CommonAudienceInsightsAttribute[]: Required. A collection of audience attributes to be combined with logical OR. Attributes need not all be the same dimension. Only Knowledge Graph entities, Product & Service Categories, and Affinity and In-Market audiences are supported in this context.
        - `ageRange` GoogleAdsSearchads360V23CommonAgeRangeInfo: An age range criterion.
          - `type` '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 of the age range.
        - `category` GoogleAdsSearchads360V23CommonAudienceInsightsCategory: A Product and Service category.
          - `categoryId` string: Required. The criterion ID of the category.
        - `device` GoogleAdsSearchads360V23CommonDeviceInfo: A device criterion.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'MOBILE' | 'TABLET' | 'DESKTOP' | 'CONNECTED_TV' | 'OTHER': Type of the device.
        - `entity` GoogleAdsSearchads360V23CommonAudienceInsightsEntity: A Knowledge Graph entity, represented by its machine id.
          - `knowledgeGraphMachineId` string: Required. The machine ID (mid) of the Knowledge Graph entity.
        - `gender` GoogleAdsSearchads360V23CommonGenderInfo: A gender criterion.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'MALE' | 'FEMALE' | 'UNDETERMINED': Type of the gender.
        - `incomeRange` GoogleAdsSearchads360V23CommonIncomeRangeInfo: An income range criterion.
          - `type` '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': Type of the income range.
        - `lineup` GoogleAdsSearchads360V23CommonAudienceInsightsLineup: A YouTube Lineup.
          - `lineupId` string: Required. The numeric ID of the lineup.
        - `location` GoogleAdsSearchads360V23CommonLocationInfo: A location criterion.
          - `geoTargetConstant` string: The geo target constant resource name.
        - `parentalStatus` GoogleAdsSearchads360V23CommonParentalStatusInfo: A parental status criterion.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'PARENT' | 'NOT_A_PARENT' | 'UNDETERMINED': Type of the parental status.
        - `userInterest` GoogleAdsSearchads360V23CommonUserInterestInfo: Represents a particular interest-based topic to be targeted.
          - `userInterestCategory` string: The UserInterest resource name.
        - `userList` GoogleAdsSearchads360V23CommonUserListInfo: A User List criterion. Represents a user list that is defined by the advertiser to be targeted.
          - `userList` string: The User List resource name.
        - `youtubeChannel` GoogleAdsSearchads360V23CommonYouTubeChannelInfo: A YouTube Channel criterion.
          - `channelId` string: The YouTube uploader channel id or the channel code of a YouTube channel.
        - `youtubeVideo` GoogleAdsSearchads360V23CommonYouTubeVideoInfo: A YouTube Video criterion.
          - `videoId` string: YouTube video id as it appears on the YouTube watch page.
    - `userList` GoogleAdsSearchads360V23CommonUserListInfo: A User List criterion. Represents a user list that is defined by the advertiser to be targeted.
      - `userList` string: The User List resource name.
  - `baselineAudience` GoogleAdsSearchads360V23ServicesInsightsAudience: A set of users, defined by various characteristics, for which insights can be requested in AudienceInsightsService.
    - `ageRanges` GoogleAdsSearchads360V23CommonAgeRangeInfo[]: Age ranges for the audience. If absent, the audience represents all people over 18 that match the other attributes.
      - `type` '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 of the age range.
    - `countryLocations` GoogleAdsSearchads360V23CommonLocationInfo[]: Required. The countries for the audience.
      - `geoTargetConstant` string: The geo target constant resource name.
    - `gender` GoogleAdsSearchads360V23CommonGenderInfo: A gender criterion.
      - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'MALE' | 'FEMALE' | 'UNDETERMINED': Type of the gender.
    - `incomeRanges` GoogleAdsSearchads360V23CommonIncomeRangeInfo[]: Household income percentile ranges for the audience. If absent, the audience does not restrict by household income range.
      - `type` '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': Type of the income range.
    - `lineups` GoogleAdsSearchads360V23CommonAudienceInsightsLineup[]: Lineups representing the YouTube content viewed by the audience.
      - `lineupId` string: Required. The numeric ID of the lineup.
    - `parentalStatus` GoogleAdsSearchads360V23CommonParentalStatusInfo: A parental status criterion.
      - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'PARENT' | 'NOT_A_PARENT' | 'UNDETERMINED': Type of the parental status.
    - `subCountryLocations` GoogleAdsSearchads360V23CommonLocationInfo[]: Sub-country geographic location attributes. If present, each of these must be contained in one of the countries in this audience. If absent, the audience is geographically to the country_locations and no further.
      - `geoTargetConstant` string: The geo target constant resource name.
    - `topicAudienceCombinations` GoogleAdsSearchads360V23ServicesInsightsAudienceAttributeGroup[]: A combination of entity, category and user interest attributes defining the audience. The combination has a logical AND-of-ORs structure: Attributes within each InsightsAudienceAttributeGroup are combined with OR, and the combinations themselves are combined together with AND. For example, the expression (Entity OR Affinity) AND (In-Market OR Category) can be formed using two InsightsAudienceAttributeGroups with two Attributes each.
      - `attributes` GoogleAdsSearchads360V23CommonAudienceInsightsAttribute[]: Required. A collection of audience attributes to be combined with logical OR. Attributes need not all be the same dimension. Only Knowledge Graph entities, Product & Service Categories, and Affinity and In-Market audiences are supported in this context.
        - `ageRange` GoogleAdsSearchads360V23CommonAgeRangeInfo: An age range criterion.
          - `type` '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 of the age range.
        - `category` GoogleAdsSearchads360V23CommonAudienceInsightsCategory: A Product and Service category.
          - `categoryId` string: Required. The criterion ID of the category.
        - `device` GoogleAdsSearchads360V23CommonDeviceInfo: A device criterion.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'MOBILE' | 'TABLET' | 'DESKTOP' | 'CONNECTED_TV' | 'OTHER': Type of the device.
        - `entity` GoogleAdsSearchads360V23CommonAudienceInsightsEntity: A Knowledge Graph entity, represented by its machine id.
          - `knowledgeGraphMachineId` string: Required. The machine ID (mid) of the Knowledge Graph entity.
        - `gender` GoogleAdsSearchads360V23CommonGenderInfo: A gender criterion.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'MALE' | 'FEMALE' | 'UNDETERMINED': Type of the gender.
        - `incomeRange` GoogleAdsSearchads360V23CommonIncomeRangeInfo: An income range criterion.
          - `type` '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': Type of the income range.
        - `lineup` GoogleAdsSearchads360V23CommonAudienceInsightsLineup: A YouTube Lineup.
          - `lineupId` string: Required. The numeric ID of the lineup.
        - `location` GoogleAdsSearchads360V23CommonLocationInfo: A location criterion.
          - `geoTargetConstant` string: The geo target constant resource name.
        - `parentalStatus` GoogleAdsSearchads360V23CommonParentalStatusInfo: A parental status criterion.
          - `type` 'UNSPECIFIED' | 'UNKNOWN' | 'PARENT' | 'NOT_A_PARENT' | 'UNDETERMINED': Type of the parental status.
        - `userInterest` GoogleAdsSearchads360V23CommonUserInterestInfo: Represents a particular interest-based topic to be targeted.
          - `userInterestCategory` string: The UserInterest resource name.
        - `userList` GoogleAdsSearchads360V23CommonUserListInfo: A User List criterion. Represents a user list that is defined by the advertiser to be targeted.
          - `userList` string: The User List resource name.
        - `youtubeChannel` GoogleAdsSearchads360V23CommonYouTubeChannelInfo: A YouTube Channel criterion.
          - `channelId` string: The YouTube uploader channel id or the channel code of a YouTube channel.
        - `youtubeVideo` GoogleAdsSearchads360V23CommonYouTubeVideoInfo: A YouTube Video criterion.
          - `videoId` string: YouTube video id as it appears on the YouTube watch page.
    - `userList` GoogleAdsSearchads360V23CommonUserListInfo: A User List criterion. Represents a user list that is defined by the advertiser to be targeted.
      - `userList` string: The User List resource name.
  - `customerInsightsGroup` string: The name of the customer being planned for. This is a user-defined value.
  - `dataMonth` string: The one-month range of historical data to use for insights, in the format "yyyy-mm". If unset, insights will be returned for the last thirty days of data.
  - `dimensions` string[]: Required. The audience dimensions for which composition insights should be returned. Supported dimensions are KNOWLEDGE_GRAPH, GEO_TARGET_COUNTRY, SUB_COUNTRY_LOCATION, YOUTUBE_CHANNEL, YOUTUBE_LINEUP, AFFINITY_USER_INTEREST, IN_MARKET_USER_INTEREST, .
  - `insightsApplicationInfo` GoogleAdsSearchads360V23CommonAdditionalApplicationInfo: Additional information about the application/tool issuing the request. This field is only used by ContentCreatorInsightsService, AudienceInsightsService, and ReachPlanService APIs.
    - `applicationId` string: The unique identifier of the agency proprietary application. This identifier is generated by Google. Reach out to your Google representative to request an application_id for each new application being integrated.
    - `applicationInstance` 'UNSPECIFIED' | 'UNKNOWN' | 'DEVELOPMENT_AND_TESTING' | 'PRODUCTION': The instance type of the application sending the request.

## Response `200`

Successful response

## Changes

- **2026-10-10** `3c8ec4f526ec`: 2 breaking
  - removed the request body
  - removed the media type `*/*` for the response with the status `200`

[Operation history](https://skmtc.dev/google/apis/searchads360/changes/v23/customers/:customerId:generateAudienceCompositionInsights/post.md)

---

[API](https://skmtc.dev/google/apis/searchads360.md) · [All operations](https://skmtc.dev/google/apis/searchads360/llms.txt) · [OpenAPI document](https://skmtc.dev/google/apis/searchads360/revisions/3c8ec4f526ec?raw)
