> ## 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 Presets

> Your saved presets, newest first.

Lists your presets, newest first, 10 per page by default (up to 50 with `limit`), with `total` across every page.

```bash theme={null}
curl "https://api.spidra.io/api/presets?limit=2" \
  -H "Authorization: Bearer $SPIDRA_API_KEY"
```

```json theme={null}
{
  "status": "success",
  "data": {
    "presets": [
      { "id": "15415447-7680-4dc5-90a0-f7a900c7f418", "name": "Dentists in Lekki", "kind": "template", "tool": "batch", "inputsSummary": "dentist · Lekki, Lagos · 1" },
      { "id": "a044216c-075e-4397-abdc-75d8b2a5593e", "name": "Python docs: asyncio pages", "kind": "tool", "tool": "map", "inputsSummary": null }
    ],
    "total": 11
  }
}
```

Each preset has every field shown in [Get a Preset](https://docs.spidra.io/api-reference/presets/get.md); the example above is shortened.


## OpenAPI

````yaml GET /presets
openapi: 3.1.0
info:
  title: Spidra API
  version: 1.0.0
  description: >-
    Public API endpoints for web scraping via Spidra. Authenticate with
    `Authorization: Bearer YOUR_API_KEY`.
servers:
  - url: https://api.spidra.io/api
security:
  - BearerAuth: []
  - ApiKeyAuth: []
paths:
  /presets:
    get:
      tags:
        - Presets
      summary: List Presets
      description: Your presets, newest first.
      parameters:
        - name: page
          in: query
          required: false
          schema:
            type: integer
            default: 1
            minimum: 1
          description: Page number.
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            default: 10
            minimum: 1
            maximum: 50
          description: Presets per page.
      responses:
        '200':
          description: The presets.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    enum:
                      - success
                  data:
                    type: object
                    properties:
                      presets:
                        type: array
                        items:
                          $ref: '#/components/schemas/Preset'
                      total:
                        type: integer
        '401':
          description: Missing or invalid API key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    Preset:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        description:
          type:
            - string
            - 'null'
        kind:
          type: string
          enum:
            - template
            - tool
        tool:
          type:
            - string
            - 'null'
          description: >-
            scrape, batch, crawl, map, search or parse (for a template preset,
            the tool its template runs).
        template:
          type:
            - object
            - 'null'
          properties:
            slug:
              type: string
            version:
              type: integer
            title:
              type: string
            site:
              $ref: '#/components/schemas/TemplateSite'
            available:
              type: boolean
              description: false when the template no longer exists.
        inputs:
          type:
            - object
            - 'null'
          description: 'Template presets: the template''s inputs.'
        config:
          type:
            - object
            - 'null'
          description: 'Tool presets: the request body for the tool.'
        columns:
          type:
            - array
            - 'null'
          items:
            type: object
            properties:
              key:
                type: string
              label:
                type: string
              format:
                type: string
          description: >-
            Template presets: the table columns the dashboard shows. Null means
            the template's own.
        inputsSummary:
          type:
            - string
            - 'null'
          description: The main inputs in one line, for lists.
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
      description: >-
        Presets saved before October 2026 also carry older snake_case fields
        (urls, extraction_prompt, use_proxy and so on).
    ErrorResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - error
        message:
          type: string
      required:
        - status
        - message
    TemplateSite:
      type:
        - object
        - 'null'
      properties:
        key:
          type: string
        name:
          type: string
        domain:
          type: string
      description: >-
        The site the template reads. Null for templates that work on any
        website.
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API key
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key

````

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