GEO Optimization & Content Generation

Analyze web pages for Generative Engine Optimization (GEO) scores, get recommendations, and generate AI-optimized content via API.

GEO Page Analysis

Analyze any web page for its GEO (Generative Engine Optimization) score. The GEO score measures how well-optimized a page is for being cited and referenced by AI models like ChatGPT, Gemini, Claude, and Perplexity.

The analysis examines structured data, content quality, metadata, schema markup, authority signals, and more. It returns a score (0-100) along with a detailed breakdown and actionable recommendations.

POST /v2/geo/analyze

Request Body Parameters

Parameter Type Required Description
url string Yes The URL of the page to analyze
title string No Optional page title (auto-detected from URL)
content string No Optional page content (auto-fetched from URL)

Example Request

curl -X POST \
     -H "X-API-Key: opttab_xxxxxxxxxxxxxxxxxxxx" \
     -H "Content-Type: application/json" \
     -d '{
       "url": "https://example.com/blog/best-crm-tools"
     }' \
     "https://opttab.com/api/v2/geo/analyze"

Response

{
  "success": true,
  "data": {
    "url": "https://example.com/blog/best-crm-tools",
    "geo_score": 72,
    "breakdown": {
      "content_quality": {
        "score": 85,
        "max": 100,
        "details": "Strong content with good structure and depth"
      },
      "structured_data": {
        "score": 60,
        "max": 100,
        "details": "Missing FAQ schema and HowTo markup"
      },
      "metadata": {
        "score": 90,
        "max": 100,
        "details": "Well-optimized meta tags and Open Graph"
      },
      "authority_signals": {
        "score": 55,
        "max": 100,
        "details": "Add more citations and external references"
      }
    },
    "recommendations": [
      {
        "category": "Structured Data",
        "priority": "high",
        "issue": "Add FAQ Schema markup",
        "suggestion": "Add FAQ structured data to help AI models extract Q&A pairs from your content",
        "impact": "high"
      },
      {
        "category": "Content",
        "priority": "medium",
        "issue": "Add statistics and data points",
        "suggestion": "Include specific numbers, percentages, and cited data to increase authority for AI citations",
        "impact": "medium"
      }
    ],
    "metadata": {
      "title": "10 Best CRM Tools for 2026",
      "description": "Compare the best CRM tools...",
      "word_count": 2450,
      "reading_time": "12 min"
    },
    "analyzed_at": "2026-02-09T12:00:00Z"
  }
}

Batch GEO Analysis

Analyze multiple URLs in a single request. Ideal for scanning an entire website or comparing multiple pages at once. Maximum 10 URLs per batch request.

POST /v2/geo/batch

Request Body

curl -X POST \
     -H "X-API-Key: opttab_xxxxxxxxxxxxxxxxxxxx" \
     -H "Content-Type: application/json" \
     -d '{
       "urls": [
         "https://example.com/",
         "https://example.com/blog/best-crm-tools",
         "https://example.com/products/enterprise",
         "https://example.com/about"
       ]
     }' \
     "https://opttab.com/api/v2/geo/batch"

Response

{
  "success": true,
  "data": [
    {
      "url": "https://example.com/",
      "geo_score": 78,
      "breakdown": { ... },
      "recommendations_count": 4
    },
    {
      "url": "https://example.com/blog/best-crm-tools",
      "geo_score": 72,
      "breakdown": { ... },
      "recommendations_count": 6
    },
    {
      "url": "https://example.com/products/enterprise",
      "geo_score": 65,
      "breakdown": { ... },
      "recommendations_count": 8
    },
    {
      "url": "https://example.com/about",
      "geo_score": 58,
      "breakdown": { ... },
      "recommendations_count": 5
    }
  ],
  "meta": {
    "total_urls": 4,
    "analyzed_at": "2026-02-09T12:00:00Z"
  }
}

Note: GEO analysis results are cached for 1 hour per URL to ensure fast response times. For fresh analysis, wait for the cache to expire or contact support for cache invalidation options.

Content Generation

Generate GEO-optimized content using AI. Create blog posts, product descriptions, SEO articles, social media posts, and email content — all optimized for AI visibility and citations.

POST /v2/content/generate

Request Body Parameters

Parameter Type Required Description
type string Yes blog_post, product_description, seo_article, social_media, email
topic string Yes The topic or subject for content generation (max 1000 chars)
keywords array No Target keywords to include (max 20)
tone string No professional, casual, technical, friendly, persuasive
language string No Language code (default: "en")
max_words integer No Target word count (100-5000, default: 1000)

Example: Generate a Blog Post

curl -X POST \
     -H "X-API-Key: opttab_xxxxxxxxxxxxxxxxxxxx" \
     -H "Content-Type: application/json" \
     -d '{
       "type": "blog_post",
       "topic": "How AI is transforming supply chain management in 2026",
       "keywords": ["AI supply chain", "logistics automation", "predictive analytics"],
       "tone": "professional",
       "max_words": 1500
     }' \
     "https://opttab.com/api/v2/content/generate"

Response

{
  "success": true,
  "data": {
    "id": 5678,
    "type": "blog_post",
    "topic": "How AI is transforming supply chain management in 2026",
    "content": "# How AI is Transforming Supply Chain Management in 2026\n\nArtificial intelligence has become...",
    "word_count": 1480,
    "created_at": "2026-02-09T12:00:00Z"
  }
}

List Generated Documents

Retrieve your previously generated content documents with pagination.

GET /v2/content/documents

Query Parameters

Parameter Type Description
per_page integer Items per page (max: 200, default: 50)
page integer Page number (default: 1)

Example

curl -H "X-API-Key: opttab_xxxxxxxxxxxxxxxxxxxx" \
     "https://opttab.com/api/v2/content/documents?per_page=20"