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

# Geekflare API Reference

> Complete reference for all Geekflare API endpoints.

## Overview

This section provides detailed documentation for all available API endpoints, including request parameters, response formats, and code examples.

All API endpoints use the base URL:

```
https://api.geekflare.com
```

## Available Endpoints

The Geekflare API is comprised of the following endpoint categories:

### AI & Scraping

Scrape LLM-ready content, capture screenshots, and generate PDFs.

<CardGroup cols={2}>
  <Card title="Web Scraping" icon="spider-web" href="/api/endpoint/webscraping">
    Extract LLM-ready, JSON and HTML from web pages.
  </Card>

  <Card title="Meta Scraping" icon="tags" href="/api/endpoint/metascraping">
    Extract metadata in markdown or JSON format from web pages.
  </Card>

  <Card title="Search" icon="magnifying-glass" href="/api/endpoint/search">
    Search results from the web or news in JSON, Markdown, or HTML.
  </Card>

  <Card title="Screenshot" icon="camera" href="/api/endpoint/screenshot">
    Capture full-page screenshots using desktop or mobile device.
  </Card>

  <Card title="PDF Generator" icon="file-pdf" href="/api/endpoint/pdf-generator">
    Convert any URL to a PDF document.
  </Card>
</CardGroup>

### Website Testing

Test and monitor website performance, broken links, and overall site health.

<CardGroup cols={2}>
  <Card title="Broken Link Checker" icon="link-slash" href="/api/endpoint/broken-link">
    Check if a webpage contains any broken links.
  </Card>

  <Card title="Mixed Content" icon="shield-exclamation" href="/api/endpoint/mixed-content">
    Detect mixed HTTP/HTTPS content on web pages.
  </Card>

  <Card title="Lighthouse" icon="lighthouse" href="/api/endpoint/lighthouse">
    Run Google Lighthouse audits for performance and SEO.
  </Card>

  <Card title="Load Time" icon="clock" href="/api/endpoint/load-time">
    Measure total time taken to load webpage.
  </Card>

  <Card title="URL Redirection" icon="arrows-turn-right" href="/api/endpoint/url-redirect">
    Track URL redirects with status codes and headers.
  </Card>
</CardGroup>

### DNS & Network

Analyze DNS records, network paths, and connectivity.

<CardGroup cols={2}>
  <Card title="DNS Records" icon="database" href="/api/endpoint/dns-records">
    Retrieve DNS records for any domain.
  </Card>

  <Card title="DNSSEC" icon="shield-check" href="/api/endpoint/dnssec">
    Test if DNSSEC is enabled on a domain.
  </Card>

  <Card title="MTR" icon="route" href="/api/endpoint/mtr">
    Traceroute domain or IP to check network path.
  </Card>

  <Card title="Ping" icon="wifi" href="/api/endpoint/ping">
    Test reachability and get latency information.
  </Card>
</CardGroup>

### Security

Scan for security vulnerabilities and certificate information.

<CardGroup cols={2}>
  <Card title="TLS Scan" icon="lock" href="/api/endpoint/tls-scan">
    Check TLS versions and certificate details.
  </Card>

  <Card title="Port Scanner" icon="radar" href="/api/endpoint/port-scanner">
    Scan for open TCP ports on a domain or IP.
  </Card>
</CardGroup>

## Common Parameters

Many endpoints share common parameters:

<ParamField query="url" type="string" required>
  The URL or domain to be tested
</ParamField>

<ParamField query="proxyCountry" type="string">
  Proxy country code for testing from different locations. See [supported
  APIs](/api/using-proxies) for available options.
  <Info>Proxy is available to premium plan users only.</Info>
</ParamField>

<ParamField query="followRedirect" type="boolean">
  Whether to follow HTTP redirects. Default is `false`.
</ParamField>

<ParamField query="device" type="string">
  Device type for rendering. Options: `desktop`, `mobile`. Default is `desktop`.
</ParamField>

## Response Format

All API responses follow a consistent structure:

### Success Response

```json theme={null}
{
  "timestamp": 1657109686205,
  "apiStatus": "success",
  "apiCode": 200,
  "message": "Operation completed successfully",
  "meta": {
    "url": "example.com",
    "test": {
      "id": "unique-test-identifier"
    }
  },
  "data": {}
}
```

### Error Response

```json theme={null}
{
  "timestamp": 1657109686205,
  "apiStatus": "failure",
  "apiCode": 403,
  "message": "You are not allowed to access. This is available to premium plan only."
}
```
