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

# List Crawls

> List all crawls with status. Shows all crawl jobs, their current status, and when they were created.

<Tip>
  **When to use:** Monitor all your crawl operations in one place. Use this endpoint to:

  * See all crawl executions you've started
  * Filter by status (processing, completed, failed)
  * Track when crawls were initiated
  * Find execution IDs for status checks
</Tip>

## Request

<ParamField header="x-api-key" type="string" required>
  Your API key for authentication
</ParamField>

### Query Parameters

<ParamField query="status" type="string" optional>
  Filter executions by status. Possible values: `"processing"`, `"completed"`, `"failed"`

  **Note:** If not provided, all executions are returned regardless of status.
</ParamField>

<ParamField query="limit" type="number" optional>
  Number of executions to return (default: 20)

  **Note:** Executions are returned in reverse chronological order (most recent first).
</ParamField>

## Response

<ResponseField name="executions" type="array">
  Array of execution summary objects

  <Expandable title="Execution Summary">
    <ResponseField name="execution_id" type="string">
      Unique execution identifier. Use this ID with [`GET /v1/crawl/{execution_id}`](/v1/api-reference/endpoints/crawl/get-crawl-status) to check detailed status and results.

      **Format:** `crawl-{hostname}-{uuid}`
    </ResponseField>

    <ResponseField name="status" type="string">
      Current execution status

      **Possible values:**

      * `"processing"` - Execution is currently running
      * `"completed"` - Execution finished successfully
      * `"failed"` - Execution failed or was aborted
    </ResponseField>

    <ResponseField name="created_at" type="string">
      ISO 8601 timestamp when the execution was created
    </ResponseField>
  </Expandable>
</ResponseField>

<RequestExample dropdown>
  ```powershell cURL theme={null}
  # Get all executions
  curl -X GET "https://api.getcatalog.ai/v1/crawl" \
    -H "x-api-key: $CATALOG_API_KEY"

  # Get only completed executions
  curl -X GET "https://api.getcatalog.ai/v1/crawl?status=completed" \
    -H "x-api-key: $CATALOG_API_KEY"

  # Get first 50 executions
  curl -X GET "https://api.getcatalog.ai/v1/crawl?limit=50" \
    -H "x-api-key: $CATALOG_API_KEY"
  ```

  ```javascript JavaScript theme={null}
  // Get all executions
  const response = await fetch('https://api.getcatalog.ai/v1/crawl', {
    headers: {
      'x-api-key': 'YOUR_API_KEY'
    }
  });

  const data = await response.json();
  console.log(`Found ${data.executions.length} executions`);
  ```

  ```python Python theme={null}
  import requests

  # Get all executions
  response = requests.get(
      'https://api.getcatalog.ai/v1/crawl',
      headers={'x-api-key': 'YOUR_API_KEY'}
  )

  data = response.json()
  print(f"Found {len(data['executions'])} executions")
  ```
</RequestExample>

<ResponseExample>
  ```json Success Response theme={null}
  {
    "executions": [
      {
        "execution_id": "crawl-skims-com-9b68e2c1",
        "status": "processing",
        "created_at": "2026-01-09T23:05:29.401291+00:00"
      }
    ]
  }
  ```
</ResponseExample>
