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

# List Scrape Logs

> Retrieve your scrape history with filtering

## Filtering Examples

```bash theme={null}
# Get only successful scrapes
/api/scrape-logs?status=success

# Search by URL
/api/scrape-logs?searchTerm=amazon.com

# Date range
/api/scrape-logs?dateStart=2025-12-01&dateEnd=2025-12-31

# Combine filters with pagination
/api/scrape-logs?status=success&searchTerm=blog&limit=20&page=2
```

<Note>
  The list endpoint excludes `result_data` for performance. Use the single-log endpoint to get full results.
</Note>


## OpenAPI

````yaml GET /scrape-logs
openapi: 3.1.0
info:
  title: Spidra API
  version: 1.0.0
  description: >-
    Public API endpoints for web scraping via Spidra. Authentication is via API
    key passed in the `x-api-key` header.
servers:
  - url: https://api.spidra.io/api
security:
  - ApiKeyAuth: []
paths:
  /scrape-logs:
    get:
      tags:
        - Scrape Logs
      summary: List Scrape Logs
      parameters:
        - name: page
          in: query
          schema:
            type: integer
            default: 1
            minimum: 1
          description: Page number
        - name: limit
          in: query
          schema:
            type: integer
            default: 10
            minimum: 1
            maximum: 100
          description: Results per page
        - name: status
          in: query
          schema:
            type: string
            enum:
              - success
              - error
              - in_progress
          description: Filter by status
        - name: searchTerm
          in: query
          schema:
            type: string
          description: Search by URL
        - name: dateStart
          in: query
          schema:
            type: string
            format: date
          description: Filter from date (YYYY-MM-DD)
        - name: dateEnd
          in: query
          schema:
            type: string
            format: date
          description: Filter to date (YYYY-MM-DD)
      responses:
        '200':
          description: Paginated list of scrape logs
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    enum:
                      - success
                  data:
                    type: object
                    properties:
                      logs:
                        type: array
                        items:
                          $ref: '#/components/schemas/ScrapeLogSummary'
                      total:
                        type: integer
                        description: Total matching logs
              example:
                status: success
                data:
                  logs:
                    - uuid: log-uuid-1
                      status: success
                      started_at: '2025-06-07T15:00:00Z'
                      finished_at: '2025-06-07T15:00:05Z'
                      error_message: null
                      urls:
                        - url: https://example.com
                      extraction_prompt: Get the title
                      tokens_used: 1500
                      latency_ms: 5000
                      credits_used: 2
                  total: 42
        '401':
          description: Invalid or missing API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                status: error
                message: Access token invalid or expired
components:
  schemas:
    ScrapeLogSummary:
      type: object
      description: Summary of a scrape log (excludes result_data for performance)
      properties:
        uuid:
          type: string
          description: Unique identifier for the log
        status:
          type: string
          enum:
            - success
            - error
            - in_progress
        started_at:
          type: string
          format: date-time
        finished_at:
          type: string
          format: date-time
          nullable: true
        error_message:
          type: string
          nullable: true
        urls:
          type: array
          items:
            $ref: '#/components/schemas/ScrapeUrl'
        extraction_prompt:
          type: string
          nullable: true
        input_tokens:
          type: number
          nullable: true
        output_tokens:
          type: number
          nullable: true
        tokens_used:
          type: number
          nullable: true
        captcha_solved_count:
          type: number
          nullable: true
        scraped_sites_count:
          type: number
          nullable: true
        latency_ms:
          type: number
          nullable: true
        credits_used:
          type: number
          nullable: true
    ErrorResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - error
        message:
          type: string
      required:
        - status
        - message
    ScrapeUrl:
      type: object
      required:
        - url
      properties:
        url:
          type: string
          format: uri
          description: The URL to scrape
        actions:
          type: array
          items:
            $ref: '#/components/schemas/ScrapeAction'
          description: Optional browser actions to perform before scraping
        useProxy:
          type: boolean
          description: Override the request-level useProxy setting for this specific URL
    ScrapeAction:
      type: object
      required:
        - type
      properties:
        type:
          type: string
          enum:
            - click
            - type
            - wait
            - scroll
            - check
            - uncheck
            - forEach
          description: Action type to perform on the page
        selector:
          type: string
          description: >-
            CSS selector or XPath for the target element (e.g., '#button',
            '.submit-btn')
        value:
          type:
            - string
            - number
          description: >-
            For click/check/uncheck: plain English element description for AI
            targeting. For type: the text to type. For wait: milliseconds. For
            scroll: percentage ('50%') or pixels. For forEach: natural language
            instruction describing elements to find.
        timeout:
          type: number
          description: Timeout in milliseconds for element visibility
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key

````