GroundTruth Audiences API

The Audiences API from GroundTruth — 2 operation(s) for audiences.

Business capability
Digital Marketing Management BC-400.60

Operations 3

GET /audiences/audience_taxonomy Get Audience Taxonomy #
GET /audiences/audience_taxonomy/v2 Get Audience Taxonomy V2 #
POST /audiences/recommendations Get Audience Recommendations #

Work with this as data

Every API 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 apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • 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 API
curl "https://apis.io/api/v1/apis/groundtruth:groundtruth-audiences-api"
All apis
curl "https://apis.io/api/v1/apis?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.

OpenAPI Specification

groundtruth-audiences-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Ads Manager Audiences API
  description: Ads Manager API
  version: 1.0.0
tags:
- name: Audiences
paths:
  /audiences/audience_taxonomy:
    get:
      tags:
      - Audiences
      summary: Get Audience Taxonomy
      description: Gets entire audience taxonomy for a tenant and account
      operationId: get_audience_taxonomy
      security:
      - api-key: []
      - user-id: []
      - session: []
      parameters:
      - name: tenant_id
        in: query
        required: true
        schema:
          type: integer
          title: Tenant Id
      - name: account_id
        in: query
        required: true
        schema:
          type: integer
          title: Account Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AudienceTaxonomy'
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponseModel'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponseModel'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponseModel'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponseModel'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponseModel'
          description: Internal Server Error
  /audiences/audience_taxonomy/v2:
    get:
      tags:
      - Audiences
      summary: Get Audience Taxonomy V2
      description: Gets entire audience taxonomy for a tenant and account, split into deterministic, predictive, and premium audiences
      operationId: get_audience_taxonomy_v2
      security:
      - api-key: []
      - user-id: []
      - session: []
      parameters:
      - name: tenant_id
        in: query
        required: true
        schema:
          type: integer
          title: Tenant Id
      - name: account_id
        in: query
        required: true
        schema:
          type: integer
          title: Account Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AudienceTaxonomyV2'
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponseModel'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponseModel'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponseModel'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponseModel'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponseModel'
          description: Internal Server Error
  /audiences/recommendations:
    post:
      tags:
      - Audiences
      summary: Get Audience Recommendations
      description: Gets audience recommendations based on current selections
      operationId: get_audience_recommendations
      security:
      - api-key: []
      - user-id: []
      - session: []
      parameters:
      - name: tenant_id
        in: query
        required: true
        schema:
          type: integer
          title: Tenant Id
      - name: account_id
        in: query
        required: true
        schema:
          type: integer
          title: Account Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AudienceRecommendationsRequestModel'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AudienceRecommendationsModel'
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponseModel'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponseModel'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponseModel'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponseModel'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponseModel'
          description: Internal Server Error
components:
  schemas:
    ErrorResponseModel:
      properties:
        errors:
          items:
            $ref: '#/components/schemas/ErrorModel'
          type: array
          title: Errors
      type: object
      required:
      - errors
      title: ErrorResponseModel
    Audience:
      properties:
        id:
          type: string
          title: Id
        type:
          $ref: '#/components/schemas/AudienceType'
        name:
          type: string
          title: Name
        size:
          anyOf:
          - type: integer
          - type: 'null'
          title: Size
        description:
          anyOf:
          - type: string
          - type: 'null'
          title: Description
        sensitivity:
          anyOf:
          - $ref: '#/components/schemas/Sensitivity'
          - type: 'null'
        subtype:
          anyOf:
          - $ref: '#/components/schemas/AudienceSubtype'
          - type: 'null'
        backend_key:
          anyOf:
          - type: string
          - type: 'null'
          title: Backend Key
        sic_code:
          anyOf:
          - type: string
          - type: 'null'
          title: Sic Code
        location_group_metadata:
          anyOf:
          - $ref: '#/components/schemas/app__services__audience__types__LocationGroupMetadata'
          - type: 'null'
        category_id:
          anyOf:
          - type: integer
          - type: 'null'
          title: Category Id
        status:
          anyOf:
          - type: string
          - type: 'null'
          title: Status
      type: object
      required:
      - id
      - type
      - name
      - size
      - description
      - sensitivity
      - subtype
      - backend_key
      - sic_code
      - location_group_metadata
      - category_id
      - status
      title: Audience
    LocationGroupBuildStatus:
      oneOf:
      - const: not_required
        title: NOT_REQUIRED
      - const: initial
        title: INITIAL
      - const: in_progress
        title: IN_PROGRESS
      - const: updating
        title: UPDATING
      - const: ready
        title: READY
      - const: expired
        title: EXPIRED
      type: string
      enum:
      - not_required
      - initial
      - in_progress
      - updating
      - ready
      - expired
      title: LocationGroupBuildStatus
      x-enum-varnames:
      - NOT_REQUIRED
      - INITIAL
      - IN_PROGRESS
      - UPDATING
      - READY
      - EXPIRED
    Sensitivity:
      oneOf:
      - const: 0
        title: WHITELIST
      - const: 1
        title: GRAYLIST
      - const: 2
        title: SEMI_SENSITIVE
      - const: 3
        title: BLACKLIST
      type: integer
      enum:
      - 0
      - 1
      - 2
      - 3
      title: Sensitivity
      x-enum-varnames:
      - WHITELIST
      - GRAYLIST
      - SEMI_SENSITIVE
      - BLACKLIST
    AudienceTaxonomyType:
      properties:
        name:
          type: string
          title: Name
        categories:
          items:
            $ref: '#/components/schemas/DetailedAudienceCategory'
          type: array
          title: Categories
      type: object
      required:
      - name
      - categories
      title: AudienceTaxonomyType
    AudienceRecommendationsModel:
      properties:
        recommendations:
          items:
            $ref: '#/components/schemas/Audience'
          type: array
          title: Recommendations
      type: object
      required:
      - recommendations
      title: AudienceRecommendationsModel
    AudienceSubtype:
      oneOf:
      - const: deterministic
        title: DETERMINISTIC
        description: How an audience was derived, as reported by the audience service's `audience_subclass`.
      - const: predictive
        title: PREDICTIVE
        description: How an audience was derived, as reported by the audience service's `audience_subclass`.
      - const: premium
        title: PREMIUM
        description: How an audience was derived, as reported by the audience service's `audience_subclass`.
      type: string
      enum:
      - deterministic
      - predictive
      - premium
      title: AudienceSubtype
      description: How an audience was derived, as reported by the audience service's `audience_subclass`.
      x-enum-varnames:
      - DETERMINISTIC
      - PREDICTIVE
      - PREMIUM
    AudienceType:
      oneOf:
      - const: behavior
        title: BEHAVIOR
      - const: custom_audience
        title: CUSTOM_AUDIENCE
      - const: segment
        title: SEGMENT
      - const: brand
        title: BRAND
      - const: category
        title: CATEGORY
      - const: location_group
        title: LOCATION_GROUP
      - const: third_party
        title: THIRD_PARTY
      type: string
      enum:
      - behavior
      - custom_audience
      - segment
      - brand
      - category
      - location_group
      - third_party
      title: AudienceType
      x-enum-varnames:
      - BEHAVIOR
      - CUSTOM_AUDIENCE
      - SEGMENT
      - BRAND
      - CATEGORY
      - LOCATION_GROUP
      - THIRD_PARTY
    AudienceTaxonomy:
      properties:
        items:
          items:
            $ref: '#/components/schemas/AudienceTaxonomyType'
          type: array
          title: Items
      type: object
      required:
      - items
      title: AudienceTaxonomy
    ErrorModel:
      properties:
        code:
          type: string
          title: Code
        message:
          type: string
          title: Message
        fields:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Fields
      type: object
      required:
      - code
      - message
      - fields
      title: ErrorModel
    LocationGroupType:
      oneOf:
      - const: 0
        title: BUSINESS
      - const: 1
        title: RESIDENTIAL
      type: integer
      enum:
      - 0
      - 1
      title: LocationGroupType
      x-enum-varnames:
      - BUSINESS
      - RESIDENTIAL
    app__services__audience__types__LocationGroupMetadata:
      properties:
        type:
          anyOf:
          - $ref: '#/components/schemas/LocationGroupType'
          - type: 'null'
        url:
          anyOf:
          - type: string
          - type: 'null'
          title: Url
        accepted:
          type: integer
          title: Accepted
        rejected:
          type: integer
          title: Rejected
        invalid:
          type: integer
          title: Invalid
        conflict:
          type: integer
          title: Conflict
        build_status:
          $ref: '#/components/schemas/LocationGroupBuildStatus'
        is_sensitive:
          type: boolean
          title: Is Sensitive
      type: object
      required:
      - type
      - url
      - accepted
      - rejected
      - invalid
      - conflict
      - build_status
      - is_sensitive
      title: LocationGroupMetadata
    DetailedAudienceCategory:
      properties:
        name:
          type: string
          title: Name
        description:
          anyOf:
          - type: string
          - type: 'null'
          title: Description
        audiences:
          items:
            $ref: '#/components/schemas/Audience'
          type: array
          title: Audiences
        subtype:
          anyOf:
          - $ref: '#/components/schemas/AudienceSubtype'
          - type: 'null'
        size:
          anyOf:
          - type: integer
          - type: 'null'
          title: Size
        category_id:
          anyOf:
          - type: integer
          - type: 'null'
          title: Category Id
      type: object
      required:
      - name
      - description
      - audiences
      title: DetailedAudienceCategory
    AudienceRecommendationsRequestModel:
      properties:
        audience_ids:
          items:
            type: string
          type: array
          title: Audience Ids
      type: object
      required:
      - audience_ids
      title: AudienceRecommendationsRequestModel
    AudienceTaxonomyV2:
      properties:
        deterministic:
          items:
            $ref: '#/components/schemas/AudienceTaxonomyType'
          type: array
          title: Deterministic
        predictive:
          items:
            $ref: '#/components/schemas/AudienceTaxonomyType'
          type: array
          title: Predictive
        premium:
          items:
            $ref: '#/components/schemas/DetailedAudienceCategory'
          type: array
          title: Premium
      type: object
      required:
      - deterministic
      - predictive
      - premium
      title: AudienceTaxonomyV2
      description: Premium audiences have no audience type grouping, so they are a flat list of categories.
  securitySchemes:
    api-key:
      type: apiKey
      in: header
      name: x-gt-api-key
    user-id:
      type: apiKey
      in: header
      name: x-gt-user-id
x-provenance:
  method: harvested
  publisher: GroundTruth
  source: https://api-public.groundtruth.com/openapi.json
  note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
    stamped by stamp-openapi-provenance.py (roadmap#793)