Skip to main content
create_rank_schedule Configure synthetic DataForSEO rank monitoring. Hosted enrollment is disabled; no supplier call or Ahrefs DR.
Development preview. This command is absent from the verified deployed bundle. Use a matching development environment.
This operation changes saved state. Review its inputs and retry behavior before calling.

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.

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

Hosted creation returns PROVIDER_DISABLED. Synthetic creation requires a test-only injected capability; command arguments and environment flags cannot start collection. Supply scheduleId, projectId, target and anchorAt. Cadence ranges from one to 30 days; freshness ranges from one to 60 days and must cover at least one cadence. The stored metric is DataForSEO rank on its 0-1000 scale. Ahrefs DR and Moz scores use separate metrics. The fixed query includes indirect links, excludes internal backlinks and requests live backlink status. A workspace holds at most 100 schedules. Reusing an accessible schedule ID requires identical configuration; changing target, subdomain policy, anchor or cadence requires a new schedule ID. This development command makes no supplier request, sends no outreach and delivers no alerts.

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.
  • id (string, required): Resource identifier returned by the operation. pattern: ”^[a-zA-Z0-9_-]{1,128}$”
  • project_id (string, required): Project that owns this record. pattern: ”^[a-zA-Z0-9_-]{1,128}$”
  • collection_revision (integer, required): maximum: 9007199254740991; exclusiveMinimum: 0
  • config_version (integer, required): maximum: 9007199254740991; exclusiveMinimum: 0
  • provider (string, required): must equal “dataforseo”
  • data_mode (string, required): must equal “synthetic”
  • metric (string, required): must equal “rank”
  • rank_scale (string, required): must equal “one_thousand”
  • target (string, required): minLength: 1; maxLength: 253
  • include_subdomains (boolean, required).
  • state (string, required): Saved lifecycle or evidence state, as enumerated for this record. values: “active”, “paused”
  • anchor_at (string, required): format: “date-time”; pattern: ”^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d\.\d{3}(?:Z))$”
  • cadence_seconds (integer, required): minimum: 86400; maximum: 2592000
  • stale_after_seconds (integer, required): minimum: 86400; maximum: 5184000
  • alerts (object, required): additional fields rejected
  • last_admitted_slot (string / null, required).
  • created_at (string, required): UTC timestamp when the record was created. format: “date-time”; pattern: ”^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d\.\d{3}(?:Z))$”
  • updated_at (string, required): UTC timestamp of the last record update. format: “date-time”; pattern: ”^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d\.\d{3}(?:Z))$”
  • availability (object, required): additional fields rejected
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

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