Skip to main content
list_rank_history Read dated DataForSEO thousand-scale rank evidence and candidate-only alerts. Unknown is not loss or zero.
Development preview. This command is absent from the verified deployed bundle. Use a matching development environment.
This read does not start a verification job.

Example request

Connect through MCP, CLI, or HTTP. Replace example identifiers with records from your workspace.

Returned result

Illustrative data validated against the documented response schema. IDs and dates are examples, not a live account capture. MCP returns this data in structuredContent and in a text content block; generic HTTP and CLI return the JSON result directly.

Response formats

format selects the row shape. detailed is the example above: every field. concise keeps, per row: overview_run_id, slot_at, rank, observed_at, retrieved_at, freshness, outcome, execution, cost; every top-level field (cursors, counts, coverage, metadata) is kept in both. The observation state an unknown-versus-absent decision depends on is never dropped. MCP and code mode default to concise; the CLI and HTTP default to detailed; the response names the default it applied in defaults_applied.

Input fields

Omit optional fields when you do not want to supply them. Null is accepted only where listed. Unknown input properties are rejected.

Validation and omitted values

scheduleId is required. Retained synthetic attempts sort by slot time; limit ranges from one to 100. A preceding comparison record supports alert candidates without adding an extra returned item. Use next_cursor for the same schedule under current authority. Cursors bind to the schedule collection and current grants. INVALID_CURSOR requires restarting that same listing without its cursor; config-only pause preserves the collection binding. Rank uses the DataForSEO 0-1000 scale. Zero is a measured value; null denotes unknown evidence. observed_at remains null, while retrieved_at records retrieval time when known. The saved threshold determines freshness. Execution and cost fields retain attempt and reconciliation facts. Missing evidence, stale evidence and unresolved cost do not establish a rank decrease or confirmed loss. alert_candidates carry delivery_state candidate_only. This read neither persists nor sends an alert and exposes no internal quotes, query hashes, leases or credential material. History pages can change between calls. They do not provide a frozen full export, restore guarantee or live supplier acceptance.

Defaults when omitted

Output fields

Fields inside optional or nullable parents apply only when that parent exists. Common schema conventions explain evidence states, empty lists and extensions.
  • schedule_id (string, required): Identifier returned by the related operation. pattern: ”^[a-zA-Z0-9_-]{1,128}$”
  • schedule_revision (integer, required): maximum: 9007199254740991; exclusiveMinimum: 0
  • project_id (string, required): Project that owns this record. pattern: ”^[a-zA-Z0-9_-]{1,128}$”
  • target (string, required): minLength: 1; maxLength: 253
  • include_subdomains (boolean, required).
  • provider (string, required): must equal “dataforseo”
  • data_mode (string, required): must equal “synthetic”
  • metric (string, required): must equal “rank”
  • scale (object, required): additional fields rejected
  • items (array, required): Records in this bounded page. maxItems: 100
  • alert_candidates (array, required): maxItems: 100
  • has_more (boolean, required): True when another page is available.
  • next_cursor (string / null, required): Opaque continuation for the same listing; null means no further page.
Download input schema · Download output schema

Errors and retries

The command is annotated idempotent. Reuse an accepted idempotency key when the input provides one; changing the payload under a reused key can conflict. See error recovery for status, scope, cooldown, cursor and retry handling. Unknown observations are result data and do not establish loss.

HTTP resource routes

This operation has no separate resource alias. Use its generic command route in a matching environment.

Continue

list_rank_history · get_rank_schedule Follow the related workflow, inspect capability status, or return to the command index.