AEO analytics

Average mention position over time

Reference for getAnalyticsAveragePosition.

GET/api/v1/projects/{projectId}/analytics/average-position
On this page

Operation details

#

Uses the same selected reporting methodology and evidence helpers as the platform. Dates are inclusive UTC calendar dates, bounded to 366 days; omitted dates select the last 7 days. Entity lists are paginated with at most 100 rows, dated time series retain up to 366 points, and limited nested entity lists are identified explicitly.

Authentication and scopes

#

Send your workspace API key in the Authorization: Bearer YOUR_API_KEY header. This operation requires read.

See Authentication for key setup and project access.

Path parameters

#
ParameterTypeRequirementDetails
projectIdstringRequiredFormat: uuid.

Query parameters

#
ParameterTypeRequirementDetails
fromstringOptionalPattern: ^\d{4}-\d{2}-\d{2}$.
tostringOptionalPattern: ^\d{4}-\d{2}-\d{2}$.
topicsarray of stringOptionalMaximum items: 100.
Parameter schema
{
  "type": "array",
  "items": {
    "type": "string",
    "format": "uuid"
  },
  "maxItems": 100
}
platformsarray of stringOptionalMaximum items: 5.
Parameter schema
{
  "type": "array",
  "items": {
    "type": "string",
    "enum": [
      "gpt",
      "claude",
      "perplexity",
      "gemini",
      "ai_overview"
    ]
  },
  "maxItems": 5
}

Array query values use comma-separated values. Cross-field rules and date-window checks are also enforced by the API. See Pagination and filters.

Response envelope

#

Successful JSON responses return the operation’s result under data and a request identifier under meta.requestId. Collection results include their own pagination or coverage metadata. The payload inside data varies by operation.

The OpenAPI document defines shared success and error envelopes. It does not define every operation’s returned data fields or promise that every operation returns every listed success status. See the request and response guide and workflow examples for documented payloads.

Errors and retries

#

Check the HTTP status and stable error.code. Keep meta.requestId when investigating a failed request. Follow Retry-After when it is present, and check existing job or resource state before retrying a write.

See Errors and limits for validation, permissions, conflicts, and temporary queue denials.

API documentation