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

# Get search state

> Return the current lifecycle state of a search, including summary counters, webhook delivery status, and follow-up links.



## OpenAPI

````yaml /api-reference/openapi.json get /search/{id}
openapi: 3.1.0
info:
  title: Osintly API
  version: 1.0.0
  description: OpenAPI specification for the Osintly API service.
  contact:
    name: Osintly
    url: https://docs.osint.ly/api-reference/quick-start
servers:
  - url: https://api.osint.ly
    description: Production
security: []
tags:
  - name: System
    description: Health and service checks
  - name: Auth
    description: Authorization validation
  - name: Search
    description: Create, monitor and retrieve search results
  - name: Usage
    description: Rate limit and usage information
  - name: Radar
    description: Breach intelligence endpoints (free with API key)
  - name: Webhooks
    description: Webhook callback payloads configured from search creation
paths:
  /search/{id}:
    get:
      tags:
        - Search
      summary: Get search state
      description: >-
        Return the current lifecycle state of a search, including summary
        counters, webhook delivery status, and follow-up links.
      operationId: getSearchState
      parameters:
        - $ref: '#/components/parameters/SearchId'
      responses:
        '200':
          description: Search state and summary
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchStateResponse'
              examples:
                processing:
                  value:
                    data:
                      search:
                        id: d290f1ee-6c54-4b01-90e6-d701748f0851
                        status: processing
                        query:
                          type: Email Address
                          value: target@example.com
                        created_at: '2026-05-27T12:00:00.000Z'
                        started_at: '2026-05-27T12:00:02.000Z'
                        completed_at: null
                      summary:
                        module_results: 0
                        breached_accounts: 0
                        registered_accounts: 0
                        leak_sources: 0
                      delivery:
                        webhook:
                          status: pending
                          attempts: 0
                          sent_at: null
                          last_attempt_at: null
                      links:
                        stream: >-
                          https://api.osint.ly/search/d290f1ee-6c54-4b01-90e6-d701748f0851/stream
                        results: >-
                          https://api.osint.ly/search/d290f1ee-6c54-4b01-90e6-d701748f0851/results
                        byok: >-
                          https://api.osint.ly/search/d290f1ee-6c54-4b01-90e6-d701748f0851/byok
                        leaks: >-
                          https://api.osint.ly/search/d290f1ee-6c54-4b01-90e6-d701748f0851/results/leaks
                    meta:
                      environment: production
                      timestamp: '2026-05-27T12:00:05.000Z'
        '400':
          $ref: '#/components/responses/SearchApiError'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '500':
          $ref: '#/components/responses/SearchApiError'
      security:
        - bearerAuth: []
components:
  parameters:
    SearchId:
      name: id
      in: path
      required: true
      schema:
        type: string
        format: uuid
      description: Search UUID
  schemas:
    SearchStateResponse:
      type: object
      required:
        - data
        - meta
      properties:
        data:
          type: object
          required:
            - search
            - summary
            - delivery
            - links
          properties:
            search:
              type: object
              required:
                - id
                - status
                - query
                - created_at
                - started_at
                - completed_at
              properties:
                id:
                  type: string
                  format: uuid
                status:
                  type: string
                  enum:
                    - pending
                    - processing
                    - finished
                    - failed
                query:
                  $ref: '#/components/schemas/SearchQuery'
                created_at:
                  type: string
                  format: date-time
                started_at:
                  type:
                    - string
                    - 'null'
                  format: date-time
                completed_at:
                  type:
                    - string
                    - 'null'
                  format: date-time
            summary:
              type: object
              required:
                - module_results
                - breached_accounts
                - registered_accounts
                - leak_sources
              properties:
                module_results:
                  type: integer
                breached_accounts:
                  type: integer
                registered_accounts:
                  type: integer
                leak_sources:
                  type: integer
            delivery:
              type: object
              required:
                - webhook
              properties:
                webhook:
                  type: object
                  required:
                    - status
                    - attempts
                    - sent_at
                    - last_attempt_at
                  properties:
                    status:
                      type:
                        - string
                        - 'null'
                    attempts:
                      type: integer
                    sent_at:
                      type:
                        - string
                        - 'null'
                      format: date-time
                    last_attempt_at:
                      type:
                        - string
                        - 'null'
                      format: date-time
            links:
              type: object
              required:
                - stream
                - results
                - byok
                - leaks
              properties:
                stream:
                  type: string
                  format: uri
                results:
                  type: string
                  format: uri
                byok:
                  type: string
                  format: uri
                leaks:
                  type: string
                  format: uri
        meta:
          $ref: '#/components/schemas/ResponseMeta'
    SearchQuery:
      type: object
      required:
        - type
        - value
      properties:
        type:
          $ref: '#/components/schemas/SearchType'
        value:
          type: string
      additionalProperties: false
    ResponseMeta:
      type: object
      required:
        - timestamp
      properties:
        environment:
          type: string
        timestamp:
          type: string
          format: date-time
    SearchApiErrorResponse:
      type: object
      required:
        - error
        - meta
      properties:
        error:
          type: object
          required:
            - code
            - message
          properties:
            code:
              type: string
            message:
              type: string
            details:
              oneOf:
                - type: string
                - type: array
                  items:
                    $ref: '#/components/schemas/ValidationIssue'
        meta:
          $ref: '#/components/schemas/ResponseMeta'
    BasicErrorResponse:
      type: object
      required:
        - success
        - message
      properties:
        success:
          type: boolean
          enum:
            - false
        message:
          type: string
      additionalProperties: true
    SearchType:
      type: string
      enum:
        - Pseudonym
        - Email Address
        - Domain Name
        - Cryptocurrency
        - IP Address
    ValidationIssue:
      type: object
      required:
        - path
        - message
      properties:
        path:
          type: string
        message:
          type: string
  responses:
    SearchApiError:
      description: Search API error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SearchApiErrorResponse'
          examples:
            validation_error:
              value:
                error:
                  code: VALIDATION_ERROR
                  message: Invalid request parameters
                  details:
                    - path: query.value
                      message: query.value must be a valid email
                meta:
                  timestamp: '2026-05-27T12:00:00.000Z'
            rate_limited:
              value:
                error:
                  code: RATE_LIMIT_EXCEEDED
                  message: Rate limit exceeded
                  details: API usage limits have been reached
                meta:
                  environment: production
                  timestamp: '2026-05-27T12:00:00.000Z'
            run_not_found:
              value:
                error:
                  code: RUN_NOT_FOUND
                  message: Search run not available
                  details: No active run is associated with this search
                meta:
                  environment: production
                  timestamp: '2026-05-27T12:00:00.000Z'
            leak_source_not_found:
              value:
                error:
                  code: LEAK_SOURCE_NOT_FOUND
                  message: Leak source not found
                  details: No leaked results source matches 'unknown-source'
                meta:
                  environment: production
                  timestamp: '2026-05-27T12:00:00.000Z'
    UnauthorizedError:
      description: Unauthorized
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BasicErrorResponse'
          examples:
            unauthorized:
              value:
                success: false
                message: Unauthorized
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key

````