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

# List configuration versions

> Lists previous versions of the specified crawler's configuration, including who authored the change.

Every time you update a crawler's configuration, a new version is added.

**Required ACL:** `settings`


## OpenAPI

````yaml specs/crawler.yml get /1/crawlers/{id}/config/versions
openapi: 3.1.0
info:
  title: Crawler API
  summary: The Crawler API lets you manage and run your crawlers
  description: >
    ## Base URL


    The base URL for making requests to the Crawler API is:


    - `https://crawler.algolia.com/api`


    **All requests must use HTTPS.**


    ## Availability and authentication


    To authenticate your API requests, use the **basic authentication** header:


    - `Authorization: Basic <credentials>`


    Where `<credentials>` is a base64-encoded string `<user-id>:<api-key>`.


    - `<user-id>`. The Crawler user ID.

    - `<api-key>`. The Crawler API key.


    You can find both on the [Crawler
    settings](https://dashboard.algolia.com/crawler/settings) page in the
    Algolia dashboard.

    The Crawler credentials are different from your regular Algolia credentials.


    ## Request format


    Request bodies must be JSON objects.


    ## Parameters


    Parameters are passed as query parameters for GET requests,

    and in the request body for POST and PATCH requests.


    Query parameters must be
    [URL-encoded](https://developer.mozilla.org/en-US/docs/Glossary/Percent-encoding).

    Non-ASCII characters must be UTF-8 encoded.


    ## Response status and errors


    The Crawler API returns JSON responses.

    Since JSON doesn't guarantee any specific ordering, don't rely on the order
    of attributes in the API response.


    Successful responses return a `2xx` status. Client errors return a `4xx`
    status.

    Server errors are indicated by a `5xx` status.

    Error responses have a `message` property with more information.


    ## Version


    The current version of the Crawler API is version 1, indicated by the `/1/`
    in each endpoint's URL.
  version: 1.0.0
servers:
  - url: https://crawler.algolia.com/api
    description: The URL of the Crawler API.
security:
  - BasicAuth: []
tags:
  - name: actions
    x-displayName: State
    description: >
      Change the state of crawlers, such as pausing crawl schedules or testing
      the crawler with specific URLs.
  - name: config
    x-displayName: Configuration
    description: >
      In the Crawler configuration, you specify which URLs to crawl, when to
      crawl, how to extract records from the crawl, and where to index the
      extracted records.


      The configuration is versioned, so you can always restore a previous
      version.


      It's easiest to make configuration changes on the [Crawler
      page](https://dashboard.algolia.com/crawler) in the Algolia dashboard.

      The editor has autocomplete and built-in validation so you can try your
      configuration changes before committing them.
  - name: crawlers
    x-displayName: Manage
    description: |
      A crawler is an object with a name and a configuration.
      Use these endpoints to create, rename, and delete crawlers.
  - name: domains
    x-displayName: Domains
    description: List registered domains.
  - name: tasks
    x-displayName: Tasks
    description: Task operations.
paths:
  /1/crawlers/{id}/config/versions:
    get:
      tags:
        - config
      summary: List configuration versions
      description: >
        Lists previous versions of the specified crawler's configuration,
        including who authored the change.

        Every time you update a crawler's configuration, a new version is added.
      operationId: listConfigVersions
      parameters:
        - $ref: '#/components/parameters/CrawlerIdParameter'
        - $ref: '#/components/parameters/ItemsPerPage'
        - $ref: '#/components/parameters/Page'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/crawlerConfigVersionsResponse'
        '404':
          description: Not found.
components:
  parameters:
    CrawlerIdParameter:
      name: id
      in: path
      description: Crawler ID.
      required: true
      schema:
        $ref: '#/components/schemas/CrawlerID'
    ItemsPerPage:
      name: itemsPerPage
      in: query
      description: Number of items per page to retrieve.
      schema:
        $ref: '#/components/schemas/itemsPerPage'
    Page:
      name: page
      in: query
      description: Page to retrieve.
      schema:
        $ref: '#/components/schemas/page'
  schemas:
    crawlerConfigVersionsResponse:
      type: object
      properties:
        items:
          type: array
          description: Configuration changes.
          items:
            title: crawlerConfigVersionsResponse
            type: object
            properties:
              authorId:
                $ref: '#/components/schemas/authorId'
              createdAt:
                $ref: '#/components/schemas/createdAt'
              version:
                $ref: '#/components/schemas/version'
            required:
              - version
              - createdAt
              - authorId
        itemsPerPage:
          $ref: '#/components/schemas/itemsPerPage'
        page:
          $ref: '#/components/schemas/page'
        total:
          $ref: '#/components/schemas/total'
      description: Pagination information.
    CrawlerID:
      type: string
      description: Universally unique identifier (UUID) of the crawler.
      example: e0f6db8a-24f5-4092-83a4-1b2c6cb6d809
    itemsPerPage:
      type: integer
      description: Number of items per page of the paginated API response.
      minimum: 1
      maximum: 100
      default: 20
    page:
      type: integer
      description: Current page of the paginated API response.
      minimum: 1
      maximum: 100
      default: 1
    authorId:
      type: string
      description: >-
        Universally unique identifier (UUID) of the user who created this
        version of the configuration.
      example: 7d79f0dd-2dab-4296-8098-957a1fdc0637
    createdAt:
      type: string
      example: '2023-07-04T12:49:15Z'
      description: Date and time when the object was created, in RFC 3339 format.
    version:
      type: integer
      description: >-
        Version of the configuration. Version 1 is the initial configuration you
        used when creating the crawler.
      minimum: 1
    total:
      type: integer
      description: Total number of retrievable items.
      example: 100
  securitySchemes:
    BasicAuth:
      type: http
      scheme: basic

````