Content

Fetch Optimized Content

Retrieve optimized article content, scores, research data, publishing metadata, and CMS publishing status. Fetch one optimization by ID or source URL, or list optimizations using site filters and pagination.

GET/api/v1/optimize-content

Fetch Optimized Content

cURL

curl --request GET \
  --url 'https://app.indexly.ai/api/v1/optimize-content?light=true&pagination=true&page=1&limit=10' \
  --header 'X-API-Key: YOUR_API_KEY'

Response

{
  "data": [
    {
      "id": "66b8f51a743b9d5f8a134501",
      "userId": "66b8f51a743b9d5f8a134101",
      "siteId": "66b8f51a743b9d5f8a134201",
      "topic": "How to Improve Content for AI Search",
      "excerpt": "Practical ways to improve content visibility in AI search.",
      "heroImage": "https://example.com/images/ai-search.jpg",
      "sourceUrl": "https://example.com/blog/ai-search",
      "selectedKeywords": [
        "AI search optimization",
        "generative engine optimization"
      ],
      "status": "optimized",
      "seoScore": 88,
      "seoGrade": "A",
      "geoScore": 91,
      "geoGrade": "A+",
      "publishedAt": null,
      "errorMessage": null,
      "createdAt": "2026-08-12T12:00:00.000Z",
      "updatedAt": "2026-08-12T12:30:00.000Z",
      "isPublishedToCMS": false
    }
  ],
  "pagination": {
    "page": 1,
    "limit": 10,
    "total": 1,
    "pages": 1
  }
}

Authorizations

X-API-Keystringheaderrequired

API key for authentication. Get yours from the Indexly dashboard under Settings → API Access

Query parameters

idstring

Specific article optimization ID. Returns a single optimized content object when provided.

sourceUrlstring

Exact URL of the source article. Requires siteId and returns the most recently updated matching optimization.

siteIdstring

Filter optimized content belonging to a specific site. Required when sourceUrl is provided.

includeUnassignedbooleandefault: false

When siteId is provided, also include optimized content that is not assigned to any site.

lightbooleandefault: false

Return lightweight list objects without content, research results, questions, keyword data, and publishing metadata.

paginationbooleandefault: false

Enable pagination and include pagination metadata in the response.

pageintegerdefault: 1

Page number when pagination is enabled.

limitintegerdefault: 10

Number of records per page when pagination is enabled.

Response

200 application/json

Default Response

dataarray | objectrequiredOptimized content data. Returns one object when id or sourceUrl is provided; otherwise returns a list.
paginationobjectPage, limit, total record count, and total page count. Present only when pagination=true.