Skip to main content
GET
/
v1
/
dataforseo
/
catalog
/
services
/
{service}
cURL
curl --request GET \
  --url https://api.surnex.io/v1/dataforseo/catalog/services/{service} \
  --header 'Authorization: Bearer <token>'
{
  "generated_at": "2026-02-24T00:00:00Z",
  "service": {
    "service": "serp",
    "category": "serp",
    "title": "SERP API",
    "description": "Search engine results across web and vertical engines",
    "discovery_source": "mixed",
    "examples": [
      "google",
      "bing"
    ],
    "operations": [
      {
        "service": "serp",
        "operation_path": "/serp/google/organic/live",
        "path_template": "/serp/{se}/{type}/live",
        "method": "POST",
        "mode": "live",
        "description": "Live organic SERP results",
        "discovery_source": "static"
      },
      {
        "service": "serp",
        "operation_path": "/serp/unknown/visibility/live",
        "path_template": "/serp/unknown/visibility/live",
        "method": "POST",
        "mode": "live",
        "description": "Discovered DataForSEO endpoint for serp",
        "discovery_source": "discovered"
      }
    ]
  },
  "summary": {
    "total_operations": 2,
    "by_discovery_source": {
      "static": 1,
      "discovered": 1
    },
    "by_method": {
      "GET": 0,
      "POST": 2
    },
    "by_mode": {
      "live": 2,
      "task_post": 0,
      "task_get": 0,
      "tasks_ready": 0,
      "tasks_fixed": 0
    }
  },
  "groups": {
    "method": {
      "GET": [
        {
          "service": "serp",
          "operation_path": "/serp/{group}/task_get",
          "path_template": "/serp/{provider}/{group}/task_get",
          "method": "GET",
          "mode": "task_get",
          "description": "Task get sample",
          "discovery_source": "static"
        }
      ],
      "POST": [
        {
          "service": "serp",
          "operation_path": "/serp/google/organic/live",
          "path_template": "/serp/{se}/{type}/live",
          "method": "POST",
          "mode": "live",
          "description": "Live organic SERP results",
          "discovery_source": "static"
        }
      ]
    },
    "mode": {
      "live": [
        {
          "service": "serp",
          "operation_path": "/serp/google/organic/live",
          "path_template": "/serp/{se}/{type}/live",
          "method": "POST",
          "mode": "live",
          "description": "Live organic SERP results",
          "discovery_source": "static"
        }
      ],
      "task_get": [
        {
          "service": "serp",
          "operation_path": "/serp/{group}/task_get",
          "path_template": "/serp/{provider}/{group}/task_get",
          "method": "GET",
          "mode": "task_get",
          "description": "Task get sample",
          "discovery_source": "static"
        }
      ]
    }
  },
  "limit": 100,
  "offset": 0,
  "returned": 2,
  "has_more": false,
  "next_offset": null,
  "supports_custom_paths": true,
  "supports_any_dataforseo_path": true,
  "discovery_context": {
    "requested_discovery": true,
    "force_refresh_requested": false,
    "source": "provider",
    "discovered_at": "2026-02-24T00:00:00Z",
    "cache_key": "dataforseo:catalog:discovered:v1",
    "cache_ttl_seconds": 900,
    "cache_hit": false,
    "cache_available": true,
    "provider_calls": 1
  }
}

Authorizations

Authorization
string
header
required

Authorization: Bearer sk_...

Path Parameters

service
string
required
Minimum string length: 1

Query Parameters

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
group_by
enum<string>

Optional grouping key for response sections. When set, operations are additionally bucketed into groups without removing paginated operations. Method keys are emitted in API-defined order, mode keys are emitted in API-defined order, discovery source keys are emitted as static, discovered.

Available options:
method,
mode,
discovery_source
sort
enum<string>
default:operation_path
Available options:
operation_path,
method,
mode,
discovery_source
order
enum<string>
default:asc
Available options:
asc,
desc
limit
integer
default:100
Required range: x <= 250
offset
integer | null
default:0
Required range: x >= 0

Response

Service-scoped DataForSEO operation catalog with deterministic grouping keys when group_by is used (method, mode, or discovery_source).

generated_at
string
required
discovery_context
object
required
service
object
required
operations
object[]
required
summary
object
required
supports_custom_paths
boolean
required
supports_any_dataforseo_path
boolean
required
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
groups
object

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