> ## Documentation Index
> Fetch the complete documentation index at: https://technologychecker.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# List audiences API

> List every saved audience on your API key, with your plan's audience count limit and computed-member cap. Free.

## Frequently asked questions

<AccordionGroup>
  <Accordion title="What is an audience?">
    A saved group of domains you can profile, slice and monitor. It comes from one of two places: a list you upload, or a recipe we compute — company attributes (`firmo`), a technology expression (`technology`), or a saved adoption or churn query (`signal`). Whichever way it was made, every audience carries a materialized membership, so all the reporting endpoints work the same on all of them.
  </Accordion>

  <Accordion title="What is the difference between limit and member_limit?">
    `limit` is how many audiences you may save: 2 on Free, 10 on Pro, 25 on Scale, 100 on Enterprise. `member_limit` is how large a single *computed* audience may build to: 1,000 on Free, 10,000 on Pro, 25,000 on Scale, 100,000 on Enterprise. Uploaded lists have their own separate caps of 100, 2,500, 10,000 and 100,000.
  </Accordion>

  <Accordion title="What does status tell me?">
    `ready` means membership is built and every reporting endpoint will work. `uploading` means a build is in progress. `failed` means the build errored — patch the audience with a definition or domains to retry.
  </Accordion>
</AccordionGroup>


## OpenAPI

````yaml GET /v1/segments
openapi: 3.1.0
info:
  title: TechnologyChecker API
  description: >-
    Discover technology stacks, track market trends, and enrich data with
    company intelligence.
  version: 1.0.0
  contact:
    name: TechnologyChecker Support
    email: support@technologychecker.io
    url: https://technologychecker.io
servers:
  - url: https://api.technologychecker.io
    description: Production
security:
  - bearerAuth: []
tags:
  - name: Domain technologies
    description: Look up technologies detected on any domain
  - name: Technology data
    description: Search, look up, and get details on tracked technologies
  - name: Market intelligence
    description: Technology stats, trends, and market share
  - name: Company data
    description: Firmographic and company intelligence
  - name: Live detection
    description: Real-time technology detection with browser rendering
  - name: Signals
    description: >-
      Intent signals derived from technology state transitions: who adopted, who
      churned, who switched, and who has a gap in their stack.
  - name: Alerts
    description: >-
      Saved signal queries delivered to your webhook. Every signal you can
      query, you can subscribe to.
  - name: Audiences
    description: >-
      Saved groups of domains — uploaded lists or computed recipes — that you
      can profile, slice and monitor.
  - name: Lead lists
    description: >-
      Build and export targeted domain lists combining technology detection with
      company data.
paths:
  /v1/segments:
    get:
      tags:
        - Audiences
      summary: List audiences API
      description: >-
        List every audience saved by the calling API key, newest first, along
        with your plan's audience count limit and computed-member cap. Free.
      operationId: listAudiences
      responses:
        '200':
          description: Your audiences and plan limits
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  data:
                    type: object
                    properties:
                      segments:
                        type: array
                        items:
                          $ref: '#/components/schemas/Audience'
                      count:
                        type: integer
                        example: 3
                      limit:
                        type: integer
                        description: Maximum saved audiences on your plan.
                        example: 10
                      member_limit:
                        type: integer
                        description: >-
                          Maximum members a computed audience may build to on
                          your plan.
                        example: 10000
        '401':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/RateLimited'
components:
  schemas:
    Audience:
      type: object
      properties:
        id:
          type: string
          example: seg_8f3a2c1b
        name:
          type: string
          example: YC W25 portfolio
        type:
          type: string
          enum:
            - filter
            - list
          description: >-
            `list` for an uploaded set of domains, `filter` for a computed
            recipe. Immutable.
          example: list
        kind:
          type: string
          enum:
            - upload
            - firmo
            - technology
            - signal
          description: >-
            How membership was produced. `upload` is a pasted list; the rest are
            computed recipes.
          example: upload
        definition:
          type: object
          nullable: true
          description: The recipe that produced membership. `null`-ish for uploads.
        domain_count:
          type: integer
          description: Members in the current generation.
          example: 5914
        status:
          type: string
          enum:
            - uploading
            - ready
            - failed
          example: ready
        membership_at:
          type: string
          nullable: true
          description: >-
            When membership was last built. Computed audiences are point-in-time
            snapshots — re-send the definition to refresh.
          example: '2026-07-29T10:14:02.000Z'
        matched_total:
          type: integer
          nullable: true
        crawl_cadence:
          type: string
          enum:
            - none
            - weekly
            - daily
          default: none
          example: none
        last_dispatched_at:
          type: string
          nullable: true
        created_at:
          type: string
          example: '2026-07-29T10:12:00.000Z'
        updated_at:
          type: string
          example: '2026-07-29T10:14:02.000Z'
    ApiError:
      type: object
      properties:
        success:
          type: boolean
          example: false
        error:
          type: object
          properties:
            code:
              type: string
              example: UNAUTHORIZED
            message:
              type: string
              example: Missing or invalid API key
  responses:
    Unauthorized:
      description: Missing or invalid API key
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiError'
    RateLimited:
      description: Rate limit exceeded
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiError'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        API key in format `tapi_live_[32-char]` (live) or `tapi_test_[32-char]`
        (test)

````