> ## 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 signal types API

> List every intent signal type you can query and the shared firmographic filter vocabulary. Free endpoint — returns metadata only and consumes no credits.

## Frequently asked questions

<AccordionGroup>
  <Accordion title="What are signals?">
    A signal is a state transition in a domain's technology stack. **Adoption** means a domain newly started using a technology, **churn** means it dropped one, **switch** means it replaced one technology with a competitor in the same category, and **whitespace** means it runs an anchor technology but nothing at all in a target category. Each is a different question a sales or competitive team asks.
  </Accordion>

  <Accordion title="Does this endpoint cost credits?">
    No. `GET /v1/signals` returns metadata only and is free. It is also exempt from the tighter signals rate limit that applies to the other `/v1/signals/*` endpoints. The data endpoints cost 1 credit each.
  </Accordion>

  <Accordion title="What is the firmographics block for?">
    It lists every filter you can apply to a signal query. The `filters` array holds LinkedIn company predicates like `country` and `employees`. The `web_filters` array holds crawl-derived predicates like `has_email` and `language`. Passing any of them narrows results to matching companies; passing `company=true` alone attaches company cards without narrowing anything.
  </Accordion>
</AccordionGroup>


## OpenAPI

````yaml GET /v1/signals
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/signals:
    get:
      tags:
        - Signals
      summary: List signal types API
      description: >-
        List the signal types available to query, along with the shared
        firmographic filter vocabulary. Free — this endpoint is metadata only
        and consumes no credits.
      operationId: listSignalTypes
      responses:
        '200':
          description: Available signal types and the shared filter vocabulary
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  data:
                    type: object
                    properties:
                      signals:
                        type: array
                        items:
                          type: object
                          properties:
                            type:
                              type: string
                              example: adoption
                            verb:
                              type: string
                              example: adopted
                            description:
                              type: string
                      firmographics:
                        type: object
                        properties:
                          filters:
                            type: array
                            items:
                              type: string
                          web_filters:
                            type: array
                            items:
                              type: string
                          enrich_only:
                            type: string
                            example: company=true
                          saved_segment:
                            type: string
                          applies_to:
                            type: array
                            items:
                              type: string
        '401':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/RateLimited'
components:
  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'
  schemas:
    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
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        API key in format `tapi_live_[32-char]` (live) or `tapi_test_[32-char]`
        (test)

````