Skip to main content
GET
/
v1
/
dataforseo
/
catalog
/
capabilities
cURL
curl --request GET \
  --url https://api.surnex.io/v1/dataforseo/catalog/capabilities \
  --header 'Authorization: Bearer <token>'
{
  "generated_at": "2026-02-24T00:00:00Z",
  "discovery_context": {
    "requested_discovery": false,
    "force_refresh_requested": false,
    "source": "none",
    "discovered_at": null,
    "cache_key": "dataforseo:catalog:discovered:v1",
    "cache_ttl_seconds": 900,
    "cache_available": false,
    "cache_hit": false,
    "provider_calls": 0
  },
  "services": [
    {
      "service": "serp",
      "category": "serp",
      "title": "SERP API",
      "description": "Search engine results across web and vertical engines",
      "discovery_source": "static",
      "operation_count": 4,
      "discovered_operations": 0,
      "static_operations": 4,
      "by_discovery_source": {
        "static": 4,
        "discovered": 0
      },
      "by_method": {
        "GET": 0,
        "POST": 4
      },
      "by_mode": {
        "live": 1,
        "task_post": 2,
        "task_get": 1,
        "tasks_ready": 0,
        "tasks_fixed": 0
      },
      "sample_operations": [
        "/serp/google/organic/live",
        "/serp/google/organic/task_post",
        "/serp/google/organic/task_get"
      ]
    },
    {
      "service": "keywords_data",
      "category": "keyword_research",
      "title": "Keywords Data",
      "description": "Keyword research and metrics",
      "discovery_source": "static",
      "operation_count": 2,
      "discovered_operations": 0,
      "static_operations": 2,
      "by_discovery_source": {
        "static": 2,
        "discovered": 0
      },
      "by_method": {
        "GET": 0,
        "POST": 2
      },
      "by_mode": {
        "live": 2,
        "task_post": 0,
        "task_get": 0,
        "tasks_ready": 0,
        "tasks_fixed": 0
      },
      "sample_operations": [
        "/keywords_data/google_ads/search_volume/live",
        "/keywords_data/bing_ads/search_volume/live"
      ]
    }
  ],
  "limit": 100,
  "offset": 0,
  "returned": 2,
  "has_more": false,
  "next_offset": null,
  "totals": {
    "total_services": 2,
    "total_operations": 6,
    "by_discovery_source": {
      "static": 2,
      "discovered": 0,
      "mixed": 0
    },
    "by_operation_discovery_source": {
      "static": 6,
      "discovered": 0
    },
    "by_method": {
      "GET": 0,
      "POST": 6
    },
    "by_mode": {
      "live": 3,
      "task_post": 2,
      "task_get": 1,
      "tasks_ready": 0,
      "tasks_fixed": 0
    }
  },
  "supports_custom_paths": true,
  "supports_any_dataforseo_path": true
}

Authorizations

Authorization
string
header
required

Authorization: Bearer sk_...

Query Parameters

service
string
Minimum string length: 1
discover
discovery_source
enum<string>
Available options:
static,
discovered,
mixed
Required string length: 1 - 128
category
string

Service category used for grouping and filtering

Minimum string length: 1
refresh_discovery
method
enum<string>

HTTPMethod

Available options:
GET,
POST
mode
enum<string>

DataForSeoOperationMode

Available options:
live,
task_post,
task_get,
tasks_ready,
tasks_fixed
limit
integer
default:100
Required range: x <= 250
offset
integer | null
default:0
Required range: x >= 0
group_by
enum<string>

Optional grouping key for response sections. When set, services are bucketed into groups without removing services. Service keys are alphabetical; discovery source keys are static, discovered, then mixed when present.

Available options:
service,
discovery_source

Response

DataForSEO capability index grouped for UI onboarding and service planning.

generated_at
string
required
discovery_context
object
required
services
object[]
required
total_services
integer
required
Required range: x >= 0
limit
integer
required
offset
integer
required
Required range: x >= 0
returned
integer
required
Required range: x >= 0
has_more
boolean
required
next_offset
integer | null
required
Required range: x >= 0
totals
object
required
supports_custom_paths
boolean
required
supports_any_dataforseo_path
boolean
required
groups
object

Grouped capability buckets keyed by the selected group_by value. Omitted when group_by is not requested.