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

# List Custom Signal Definitions

> The definitions you can filter GET /signals/custom by: every global definition plus your own team's. Free of charge — it is the catalogue, not data. Each entry's `slug` is the value to pass as `type`; `description` is the rule a post must satisfy to count; `attributes` names the definition-specific fields its signals carry.



## OpenAPI

````yaml GET /signals/custom/definitions
openapi: 3.1.0
info:
  title: Custom Signals API
  description: >-
    Signals produced by custom signal definitions — signal types defined as data
    (out of stealth, new office or market entry, first or founding hire, …)
    rather than the four built-in families. One endpoint serves every
    definition; `type` selects which. A free companion endpoint lists the
    definitions, and a team can create, start, pause and remove definitions of
    its own.
  license:
    name: MIT
  version: 2.1.0
servers:
  - url: https://www.trysignalbase.com/api/v2
security:
  - bearerAuth: []
paths:
  /signals/custom/definitions:
    get:
      summary: List Custom Signal Definitions
      description: >-
        The definitions you can filter GET /signals/custom by: every global
        definition plus your own team's. Free of charge — it is the catalogue,
        not data. Each entry's `slug` is the value to pass as `type`;
        `description` is the rule a post must satisfy to count; `attributes`
        names the definition-specific fields its signals carry.
      operationId: listCustomSignalDefinitions
      parameters:
        - name: include_disabled
          in: query
          description: Also list definitions that are not currently being swept (drafts).
          schema:
            type: boolean
            default: false
      responses:
        '200':
          description: The definitions catalogue
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DefinitionsResponse'
              example:
                success: true
                data:
                  - slug: founding_hire
                    name: First or founding hire
                    description: >-
                      The author's own company is hiring its first employee in a
                      function, or is building its founding team.
                    status: active
                    scope: global
                    attributes:
                      - role
                      - function
                      - location
                      - stage
                    createdAt: '2026-10-15T08:00:00.000Z'
                  - slug: new_office
                    name: New office or market entry
                    description: >-
                      The author's own company opens a new office, moves
                      headquarters, enters a new country or city market, or
                      establishes a local presence there (first local hire,
                      boots on the ground, a local team). The post must name the
                      place.
                    status: active
                    scope: global
                    attributes:
                      - location
                      - kind
                      - first_hire_role
                      - mentions_hiring
                    createdAt: '2026-10-15T08:00:00.000Z'
                  - slug: stealth_exit
                    name: Out of stealth
                    description: >-
                      The author's own company is leaving stealth or publicly
                      launching for the first time.
                    status: active
                    scope: global
                    attributes:
                      - product
                      - stealth_duration
                      - mentions_hiring
                      - funding_mentioned
                    createdAt: '2026-10-15T08:00:00.000Z'
                pagination:
                  currentPage: 1
                  totalPages: 1
                  totalCount: 3
                  hasNextPage: false
                  hasPreviousPage: false
                meta:
                  endpoint: signals.customDefinitions
                  creditsUsed: 0
        '400':
          description: >-
            Bad request — unknown query parameter, malformed slug in `type`, or
            an out-of-range value
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                success: false
                error: >-
                  Unknown query parameter: types (use "type" (comma-separated
                  definition slugs)). Supported parameters: filter_version,
                  count, page, limit, include_total, dateFrom, dateTo,
                  date_preset, type, keyword, min_confidence, search, countries,
                  exclude_countries, subcategories, company_name,
                  company_domain, company_linkedin_url, sort_by, sort_order.
        '401':
          description: Unauthorized - Invalid or missing API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                success: false
                error: Invalid API key
        '429':
          description: Rate limit exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                success: false
                error: Rate limit exceeded
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                success: false
                error: Failed to fetch custom signals
components:
  schemas:
    DefinitionsResponse:
      type: object
      properties:
        success:
          type: boolean
        data:
          type: array
          items:
            $ref: '#/components/schemas/Definition'
        pagination:
          $ref: '#/components/schemas/Pagination'
        meta:
          $ref: '#/components/schemas/Meta'
    ErrorResponse:
      type: object
      properties:
        success:
          type: boolean
          example: false
        error:
          type: string
    Definition:
      type: object
      properties:
        slug:
          type: string
          description: >-
            Pass as `type` on GET /signals/custom, or in a monitor's
            signal_types.
        name:
          type: string
        description:
          type: string
          description: The rule a post must satisfy to count.
        status:
          type: string
          enum:
            - compiling
            - testing
            - ready
            - active
            - paused
            - disabled
            - failed
          description: >-
            Global definitions are active or disabled. Your own walk compiling →
            testing → ready → active, and can be paused, disabled or failed.
        scope:
          type: string
          enum:
            - global
            - team
        attributes:
          type: array
          items:
            type: string
        createdAt:
          type: string
          format: date-time
    Pagination:
      type: object
      properties:
        currentPage:
          type: integer
        totalPages:
          type:
            - integer
            - 'null'
        totalCount:
          type:
            - integer
            - 'null'
        hasNextPage:
          type: boolean
        hasPreviousPage:
          type: boolean
    Meta:
      type: object
      properties:
        endpoint:
          type: string
        creditsUsed:
          type: integer
        creditsRemaining:
          type: integer
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API key
      description: API key authentication. Include as Bearer token in Authorization header.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.