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

# Browse topic inventory

> Browse topic inventory using the public Orbit API



## OpenAPI

````yaml https://api.aws53.cloud/openapi-intent.json GET /v1/intent/topics
openapi: 3.1.0
info:
  title: Orbit API
  version: 1.0.0
  description: >-
    Orbit Audience Intent API: topic discovery, site analysis, curated ICP
    filters, saved audiences, materialization runs, stats, and CSV export.
    Discovery endpoints are public; audience management accepts either Bearer
    JWT or X-API-Key auth.
servers:
  - url: https://api.aws53.cloud
    description: Production
security: []
tags:
  - name: Topic Discovery
    description: Browse, search, and analyze available intent topics
  - name: Site Analysis
    description: Analyze a website URL to find matching intent topics
  - name: Site Topics
    description: Recent organization site-topic analyses
  - name: Audience Builder
    description: >-
      Curated filters, preview, saved audiences, runs, exports, webhooks, and
      managed destinations
paths:
  /v1/intent/topics:
    get:
      tags:
        - Topic Discovery
      summary: Browse all available intent topics
      description: >-
        Returns the available intent-topic catalog with optional type, industry,
        category, and text filters. Results are ordered by topic name with no
        guaranteed secondary ordering for equal names. The whole matching
        catalog is returned without pagination. Catalog results are cached for
        24 hours, with stale fallback if refresh fails. Industry and category
        filters use case-insensitive exact matching; q uses a case-insensitive
        topic-name substring. This public operation allows 2 requests per source
        IP per 60 seconds without valid authentication, or 200 with a valid
        bearer token or active organization API key.
      operationId: browseAllAvailableIntentTopics
      parameters:
        - schema:
            type: string
            enum:
              - b2b
              - b2c
              - both
            description: >-
              Restrict topics to the selected classification; both matches that
              literal classification.
            example: b2b
          required: false
          description: >-
            Restrict topics to the selected classification; both matches that
            literal classification.
          name: type
          in: query
          example: b2b
        - schema:
            type: string
            maxLength: 100
            description: Filter by industry name.
            example: Technology
          required: false
          description: Filter by industry name.
          name: industry
          in: query
          example: Technology
        - schema:
            type: string
            maxLength: 100
            description: Case-insensitive exact category name.
            example: Cloud Computing
          required: false
          description: Case-insensitive exact category name.
          name: category
          in: query
          example: Cloud Computing
        - schema:
            type: string
            maxLength: 100
            description: Case-insensitive substring of the topic name.
            example: cloud
          required: false
          description: Case-insensitive substring of the topic name.
          name: q
          in: query
          example: cloud
      responses:
        '200':
          description: Topic catalog
          headers:
            RateLimit-Limit:
              description: Maximum requests allowed per source IP in 60 seconds.
              schema:
                type: integer
                example: 2
            RateLimit-Remaining:
              description: Requests remaining in the current source-IP window.
              schema:
                type: integer
                example: 0
            RateLimit-Reset:
              description: Seconds until the current source-IP window resets.
              schema:
                type: integer
                example: 60
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TopicInventoryResponse'
              examples:
                populated:
                  value:
                    data:
                      - topicId: 1001
                        topicName: Example cloud platform
                        type: b2b
                        industry: Technology
                        category: Cloud Computing
                    meta:
                      count: 1
                      total: 3
                      filters:
                        type: b2b
                        industry: null
                        category: null
                        q: cloud
                empty:
                  value:
                    data: []
                    meta:
                      count: 0
                      total: 3
                      filters:
                        type: null
                        industry: null
                        category: null
                        q: unmatched-example-topic
        '429':
          description: >-
            Source-IP allowance exceeded: 2 requests per 60 seconds without
            valid authentication, or 200 with a valid bearer token or active
            organization API key.
          headers:
            RateLimit-Limit:
              description: Maximum requests allowed per source IP in 60 seconds.
              schema:
                type: integer
                example: 2
            RateLimit-Remaining:
              description: Requests remaining in the current source-IP window.
              schema:
                type: integer
                example: 0
            RateLimit-Reset:
              description: Seconds until the current source-IP window resets.
              schema:
                type: integer
                example: 60
            Retry-After:
              description: Seconds to wait before retrying.
              schema:
                type: integer
                example: 60
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                      message:
                        type: string
                      details: {}
                    required:
                      - code
                      - message
                  meta:
                    type: object
                    properties:
                      timestamp:
                        type: string
                      request_id:
                        type: string
                    required:
                      - timestamp
                      - request_id
                required:
                  - error
                  - meta
              example:
                error:
                  code: RATE_LIMIT_EXCEEDED
                  message: Too many requests, please try again later
                meta:
                  timestamp: '2026-01-15T12:00:00.000Z'
                  request_id: example-request
      security: []
components:
  schemas:
    TopicInventoryResponse:
      type: object
      properties:
        data:
          type: array
          items:
            type: object
            properties:
              topicId:
                type: number
              topicName:
                type: string
              type:
                type: string
              industry:
                type: string
              category:
                type: string
            required:
              - topicId
              - topicName
              - type
              - industry
              - category
        meta:
          type: object
          properties:
            count:
              type: number
              description: Number of topics matching the supplied filters.
            total:
              type: number
              description: Number of topics in the catalog before filters.
            filters:
              type: object
              properties:
                type:
                  type:
                    - string
                    - 'null'
                industry:
                  type:
                    - string
                    - 'null'
                category:
                  type:
                    - string
                    - 'null'
                q:
                  type:
                    - string
                    - 'null'
              required:
                - type
                - industry
                - category
                - q
          required:
            - count
            - total
            - filters
      required:
        - data
        - meta

````