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

# Content Recommendations

> Get content recommendations with outlines, cannibalization detection, and smart scoring

Generate strategic content recommendations with full outlines, cannibalization detection, and opportunity scoring.

<RequestExample>
  ```bash cURL theme={null}
  curl -X POST "https://api.agenticpencil.com/v1/content/recommend" \
    -H "Authorization: Bearer ap_your_api_key_here" \
    -H "Content-Type: application/json" \
    -d '{
      "domain": "sonant.ai",
      "focus_topics": ["ai receptionist", "insurance automation"],
      "brand_context": "AI receptionist for P&C insurance agencies",
      "competitors": ["smith.ai"],
      "country": "US",
      "limit": 5
    }'
  ```

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

  response = requests.post(
      "https://api.agenticpencil.com/v1/content/recommend",
      headers={"Authorization": "Bearer ap_your_api_key_here"},
      json={
          "domain": "sonant.ai",
          "focus_topics": ["ai receptionist", "insurance automation"],
          "brand_context": "AI receptionist for P&C insurance agencies",
          "country": "US",
          "limit": 5
      }
  )
  ```

  ```javascript Node.js theme={null}
  const response = await fetch('https://api.agenticpencil.com/v1/content/recommend', {
    method: 'POST',
    headers: {
      'Authorization': 'Bearer ap_your_api_key_here',
      'Content-Type': 'application/json'
    },
    body: JSON.stringify({
      domain: 'sonant.ai',
      focus_topics: ['ai receptionist', 'insurance automation'],
      brand_context: 'AI receptionist for P&C insurance agencies',
      country: 'US',
      limit: 5
    })
  });
  ```
</RequestExample>

## Authorization

<ParamField header="Authorization" type="string" required>
  Bearer token. Format: `Bearer ap_your_api_key`
</ParamField>

## Request Body

<ParamField body="domain" type="string" required>
  Your website domain (e.g., "example.com")
</ParamField>

<ParamField body="focus_topics" type="string[]">
  Topics to focus recommendations on (e.g., \["ai receptionist", "insurance automation"])
</ParamField>

<ParamField body="brand_context" type="string">
  Description of your brand/product for more relevant recommendations
</ParamField>

<ParamField body="competitors" type="string[]">
  Competitor domains for gap analysis (max 3)
</ParamField>

<ParamField body="country" type="string">
  Two-letter country code (default: "US")
</ParamField>

<ParamField body="limit" type="integer">
  Maximum recommendations to return (default: 10)
</ParamField>

## Response

<ResponseExample>
  ```json Success Response theme={null}
  {
    "success": true,
    "data": {
      "plan_id": "abc-123",
      "domain": "sonant.ai",
      "existing_keywords": 50,
      "sitemap_pages": 229,
      "recommendations": [
        {
          "priority": 1,
          "title": "Ai Receptionist: What You Need to Know",
          "target_keyword": "ai receptionist",
          "search_volume": 500,
          "keyword_difficulty": 30,
          "opportunity_score": 85,
          "search_intent": "informational",
          "outline": [
            { "h2": "What Is an AI Receptionist?", "talking_points": ["definition", "key features"] },
            { "h2": "Benefits for Insurance Agencies", "talking_points": ["24/7 availability", "cost savings"] },
            { "h2": "How to Choose the Right Solution", "talking_points": ["comparison criteria", "pricing"] }
          ],
          "related_keywords": ["virtual receptionist", "ai phone answering"]
        }
      ],
      "cannibalization": [
        {
          "keyword": "ai receptionist",
          "urls": ["/blog/ai-receptionist", "/features"],
          "recommendation": "Consolidate these pages or differentiate their target keywords"
        }
      ],
      "total_recommendations": 1
    },
    "meta": {
      "credits_used": 15,
      "credits_remaining": 985,
      "request_id": "abc-123"
    }
  }
  ```

  ```json Error Response theme={null}
  {
    "success": false,
    "error": {
      "code": "VALIDATION_ERROR",
      "message": "domain is required"
    }
  }
  ```
</ResponseExample>

<Info>**Credit Cost**: 15 credits per request</Info>
