Your account will be charged only for posting a task. You can get the results of the task within the next 30 days for free.
The cost can be calculated on the Pricing page.
Description of the fields for sending a request:
| Field name | Type | Description |
|---|---|---|
id | string | task identifier |
As a response of the API server, you will receive JSON-encoded data containing a
tasks array with the information specific to the set tasks.
You can also get all available SERP features by making a request to the following Sandbox URL:
https://sandbox.dataforseo.com/v3/serp/seznam/organic/task_get/regular/00000000-0000-0000-0000-000000000000
The response will include all available items in the Seznam Organic SERP Regular endpoint with the fields containing dummy data.
You won’t be charged for using Sandbox endpoints.
Description of the fields in the results array:
| Field name | Type | Description |
|---|---|---|
version | string | the current version of the API |
status_code | integer | general status code |
status_message | string | general informational message |
time | string | execution time, seconds |
cost | float | total tasks cost, USD |
tasks_count | integer | the number of tasks in the |
tasks_error | integer | the number of tasks in the |
tasks | array | array of tasks |
id | string | task identifier |
status_code | integer | status code of the task |
status_message | string | informational message of the task |
time | string | execution time, seconds |
cost | float | cost of the task, USD |
result_count | integer | number of elements in the |
path | array | URL path |
data | object | contains the same parameters that you specified in the POST request |
result | array | array of results |
keyword | string | keyword received in a POST array |
type | string | search engine type in a POST array |
se_domain | string | search engine domain in a POST array |
location_code | integer | location code in a POST array |
language_code | string | language code in a POST array |
check_url | string | direct URL to search engine results |
datetime | string | date and time when the result was received |
spell | object | autocorrection of the search engine |
keyword | string | keyword obtained as a result of search engine autocorrection |
type | string | type of autocorrection |
refinement_chips | object | search refinement chips |
item_types | array | types of search results found in SERP note that this array contains all types of search results found in the returned SERP; to get all items (inlcuding SERP features and rich snippets) found in the returned SERP, please refer to the Seznam Organiс Advanced SERP endpoint |
se_results_count | integer | total number of results in SERP |
pages_count | integer | total pages retrieved |
items_count | integer | the number of results returned in the |
items | array | items in SERP |
organic_element_in_serp | object | |
type | string | type of element='organic'n |
rank_group | integer | group rank in SERP |
rank_absolute | integer | absolute rank in SERP |
page | integer | search results page number |
domain | string | domain in SERP |
title | string | title of the results element in SERP |
description | string | description of the results element in SERP |
url | string | relevant URL in SERP |
breadcrumb | string | breadcrumb in SERP |
Instead of ‘login’ and ‘password’ use your credentials from https://app.dataforseo.com/api-access
# Instead of 'login' and 'password' use your credentials from https://app.dataforseo.com/api-access
login="login"
password="password"
cred="$(printf ${login}:${password} | base64)"
id="09171517-0696-0242-0000-a96bc1ad0bce"
curl --location --request GET "https://api.dataforseo.com/v3/serp/seznam/organic/task_get/regular/${id}"
--header "Authorization: Basic ${cred}"
--header "Content-Type: application/json"
--data-raw ""<?php
// You can download this file from here https://cdn.dataforseo.com/v3/examples/php/php_RestClient.zip
require('RestClient.php');
$api_url = 'https://api.dataforseo.com/';
try {
// Instead of 'login' and 'password' use your credentials from https://app.dataforseo.com/api-access
$client = new RestClient($api_url, null, 'login', 'password');
} catch (RestClientException $e) {
echo "n";
print "HTTP code: {$e->getHttpCode()}n";
print "Error code: {$e->getCode()}n";
print "Message: {$e->getMessage()}n";
print $e->getTraceAsString();
echo "n";
exit();
}
try {
$result = array();
// #1 - using this method you can get a list of completed tasks
// GET /v3/serp/seznam/organic/tasks_ready
// in addition to 'seznam' and 'organic' you can also set other search engine and type parameters
// the full list of possible parameters is available in documentation
$tasks_ready = $client->get('/v3/serp/seznam/organic/tasks_ready');
// you can find the full list of the response codes here https://docs.dataforseo.com/v3/appendix/errors
if (isset($tasks_ready['status_code']) AND $tasks_ready['status_code'] === 20000) {
foreach ($tasks_ready['tasks'] as $task) {
if (isset($task['result'])) {
foreach ($task['result'] as $task_ready) {
// #2 - using this method you can get results of each completed task
// GET /v3/serp/seznam/organic/task_get/regular/$id
if (isset($task_ready['endpoint_regular'])) {
$result[] = $client->get($task_ready['endpoint_regular']);
}
// #3 - another way to get the task results by id
// GET /v3/serp/seznam/organic/task_get/regular/$id
/*
if (isset($task_ready['id'])) {
$result[] = $client->get('/v3/serp/seznam/organic/task_get/regular/' . $task_ready['id']);
}
*/
}
}
}
}
print_r($result);
// do something with result
} catch (RestClientException $e) {
echo "n";
print "HTTP code: {$e->getHttpCode()}n";
print "Error code: {$e->getCode()}n";
print "Message: {$e->getMessage()}n";
print $e->getTraceAsString();
echo "n";
}
$client = null;
?>const task_id = '02201650-1073-0066-2000-1d132bb28897';
const axios = require('axios');
axios({
method: 'get',
url: 'https://api.dataforseo.com/v3/serp/seznam/organic/task_get/regular/' + task_id,
auth: {
username: 'login',
password: 'password'
},
headers: {
'content-type': 'application/json'
}
}).then(function (response) {
var result = response['data']['tasks'];
// Result data
console.log(result);
}).catch(function (error) {
console.log(error);
});from client import RestClient
# You can download this file from here https://cdn.dataforseo.com/v3/examples/python/python_Client.zip
client = RestClient("login", "password")
# 1 - using this method you can get a list of completed tasks
# GET /v3/serp/seznam/organic/tasks_ready
# in addition to 'seznam' and 'organic' you can also set other search engine and type parameters
# the full list of possible parameters is available in documentation
response = client.get("/v3/serp/seznam/organic/tasks_ready")
# you can find the full list of the response codes here https://docs.dataforseo.com/v3/appendix/errors
if response['status_code'] == 20000:
results = []
for task in response['tasks']:
if (task['result'] and (len(task['result']) > 0)):
for resultTaskInfo in task['result']:
# 2 - using this method you can get results of each completed task
# GET /v3/serp/seznam/organic/regular/$id
if(resultTaskInfo['endpoint_regular']):
results.append(client.get(resultTaskInfo['endpoint_regular']))
'''
# 3 - another way to get the task results by id
# GET /v3/serp/seznam/organic/task_get/regular/$id
if(resultTaskInfo['id']):
results.append(client.get("/v3/serp/seznam/organic/task_get/regular/" + resultTaskInfo['id']))
'''
print(results)
# do something with result
else:
print("error. Code: %d Message: %s" % (response["status_code"], response["status_message"]))using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
namespace DataForSeoDemos
{
public static partial class Demos
{
public static async Task serp_task_get()
{
var httpClient = new HttpClient
{
BaseAddress = new Uri("https://api.dataforseo.com/"),
// Instead of 'login' and 'password' use your credentials from https://app.dataforseo.com/api-access
DefaultRequestHeaders = { Authorization = new AuthenticationHeaderValue("Basic", Convert.ToBase64String(Encoding.ASCII.GetBytes("login:password"))) }
};
// #1 - using this method you can get a list of completed tasks
// GET /v3/serp/seznam/organic/tasks_ready
// in addition to 'seznam' and 'organic' you can also set other search engine and type parameters
// the full list of possible parameters is available in documentation
var response = await httpClient.GetAsync("/v3/serp/seznam/organic/tasks_ready");
var tasksInfo = JsonConvert.DeserializeObject<dynamic>(await response.Content.ReadAsStringAsync());
var tasksResponses = new List<object>();
// you can find the full list of the response codes here https://docs.dataforseo.com/v3/appendix/errors
if (tasksInfo.status_code == 20000)
{
if (tasksInfo.tasks != null)
{
foreach (var tasks in tasksInfo.tasks)
{
if (tasks.result != null)
{
foreach (var task in tasks.result)
{
if (task.endpoint_regular != null)
{
// #2 - using this method you can get results of each completed task
// GET /v3/serp/seznam/organic/task_get/regular/$id
var taskGetResponse = await httpClient.GetAsync((string)task.endpoint_regular);
var taskResultObj = JsonConvert.DeserializeObject<dynamic>(await taskGetResponse.Content.ReadAsStringAsync());
if (taskResultObj.tasks != null)
{
var fst = taskResultObj.tasks.First;
// you can find the full list of the response codes here https://docs.dataforseo.com/v3/appendix/errors
if (fst.status_code >= 40000 || fst.result == null)
Console.WriteLine($"error. Code: {fst.status_code} Message: {fst.status_message}");
else
tasksResponses.Add(fst.result);
}
// #3 - another way to get the task results by id
// GET /v3/serp/seznam/organic/task_get/regular/$id
/*
var tasksGetResponse = await httpClient.GetAsync("/v3/serp/seznam/organic/task_get/regular/" + (string)task.id);
var tasksResultObj = JsonConvert.DeserializeObject<dynamic>(await tasksGetResponse.Content.ReadAsStringAsync());
if (tasksResultObj.tasks != null)
{
var fst = taskResultObj.tasks.First;
// you can find the full list of the response codes here https://docs.dataforseo.com/v3/appendix/errors
if (fst.status_code >= 40000 || fst.result == null)
Console.WriteLine($"error. Code: {fst.status_code} Message: {fst.status_message}");
else
tasksResponses.Add(fst.result);
}
*/
}
}
}
}
}
if (tasksResponses.Count > 0)
// do something with result
Console.WriteLine(String.Join(Environment.NewLine, tasksResponses));
else
Console.WriteLine("No completed tasks");
}
else
Console.WriteLine($"error. Code: {tasksInfo.status_code} Message: {tasksInfo.status_message}");
}
}
}The above command returns JSON structured like this:
{
"version": "0.1.20220428",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.1045 sec.",
"cost": 0,
"tasks_count": 1,
"tasks_error": 0,
"tasks": [
{
"id": "06101746-1535-0066-0000-00ecb72c7a83",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.0468 sec.",
"cost": 0,
"result_count": 1,
"path": [
"v3",
"serp",
"seznam",
"organic",
"task_get",
"regular",
"06101746-1535-0066-0000-00ecb72c7a83"
],
"data": {
"api": "serp",
"function": "task_get",
"se": "seznam",
"se_type": "organic",
"language_code": "cs",
"location_code": 2203,
"keyword": "cnn news",
"tag": "some_string_123",
"postback_url": "https://your-server.com/postbackscript.php",
"postback_data": "html",
"calculate_rectangles": true,
"device": "desktop",
"os": "windows"
},
"result": [
{
"keyword": "cnn news",
"type": "organic",
"se_domain": "search.seznam.cz",
"location_code": 2203,
"language_code": "cs",
"check_url": "https://search.seznam.cz/?q=cnn%20news&count=10",
"datetime": "2022-06-10 14:46:58 +00:00",
"spell": null,
"refinement_chips": null,
"item_types": [
"organic",
"top_stories",
"images",
"related_searches"
],
"se_results_count": 0,
"pages_count": 1,
"items_count": 10,
"items": [
{
"type": "organic",
"rank_group": 1,
"rank_absolute": 1,
"page": 1,
"domain": "edition.cnn.com",
"title": "CNN International - Breaking News, US News, World News and…",
"description": "Find the latest breaking news and information on the top stories, weather, business, entertainment, politics, and more. For in-depth coverage, CNN provides special reports, video, audio, photo galleries, and interactive guides.",
"url": "https://edition.cnn.com/",
"breadcrumb": "cnn.com/"
},
{
"type": "organic",
"rank_group": 2,
"rank_absolute": 2,
"page": 1,
"domain": "cnn.iprima.cz",
"title": "Nejaktuálnější zprávy z domova i ze světa - CNN Prima NEWS",
"description": "Důvěryhodnost, rychlost a srozumitelnost informací pro diváky všech věkových i sociálních skupin. Objektivní, rychlé, přesné a dynamické zpravodajství. To je CNN Prima NEWS.",
"url": "https://cnn.iprima.cz/",
"breadcrumb": "cnn.iprima.cz/"
},
{
"type": "organic",
"rank_group": 3,
"rank_absolute": 4,
"page": 1,
"domain": "www.facebook.com",
"title": "CNN Prima NEWS - Hlavní stránka",
"description": "CNN Prima NEWS, Královské Vinohrady, Hlavní Město Praha, Czech Republic. 110 588 To se mi líbí · Mluví o tom (48 121). Multimediální zpravodajská...",
"url": "https://www.facebook.com/cnnprima",
"breadcrumb": "facebook.com/cnnprima"
},
{
"type": "organic",
"rank_group": 4,
"rank_absolute": 5,
"page": 1,
"domain": "cnn.iprima.cz",
"title": "ON-LINE: Putin dostal 1,2 milionu stížností. Každá čtvrtá se…",
"description": "Válka na Ukrajině trvá již déle než tři měsíce. Přinášíme vám nejnovější zprávy z ozbrojeného konfliktu mezi Ukrajinou a Ruskem.",
"url": "https://cnn.iprima.cz/on-line-putin-dostal-1-2-milionu-stiznosti-kazda-ctvrta-se-tyka-valky-na-ukrajine-110192",
"breadcrumb": "cnn.iprima.cz/on-line-putin-dostal-1-2-milionu-stiznosti-kazda…"
},
{
"type": "organic",
"rank_group": 5,
"rank_absolute": 7,
"page": 1,
"domain": "media-club.tv",
"title": "CNN Prima News – Mediaclub",
"description": "CNN Prima NEWS funguje na základě smlouvy s divizí CNN International Commercial (Cnnic), která poskytuje licenci k používání značky CNN a k přístupu k obsahu a tvorbě programu v rámci celého portfolia CNN.",
"url": "https://media-club.tv/zastupovana-media/cnn-prima-news/",
"breadcrumb": "media-club.tv/zastupovana-media/cnn-prima-news"
},
{
"type": "organic",
"rank_group": 6,
"rank_absolute": 8,
"page": 1,
"domain": "cnn.iprima.cz",
"title": "Trend se otočil. Epidemie začala zrychlovat, Prymula varoval…",
"description": "Za posledních sedm dní přibylo v Česku 1804 nových případů koronaviru, to je skoro o 500 víc než o týden dříve. Pokles počtu potvrzených nákaz, který trval od začátku března, se tak zastavil.",
"url": "https://cnn.iprima.cz/trend-se-otocil-epidemie-zacala-zrychlovat-prymula-varoval-pred-novou-variantou-viru-110208",
"breadcrumb": "cnn.iprima.cz/trend-se-otocil-epidemie-zacala-zrychlovat…"
},
{
"type": "organic",
"rank_group": 7,
"rank_absolute": 9,
"page": 1,
"domain": "cnn.iprima.cz",
"title": "Exkluzivní předprodej pro diváky CNN Prima NEWS: Získejte…",
"description": "Diváci CNN Prima NEWS mají exkluzivní možnost koupit si v předprodeji lístek na koncert, na kterém vystoupí i americký herec Johnny Depp. Ten se společně se svým kamarádem hudebníkem Jeffem Beckem předvede před českými fanoušky 11.",
"url": "https://cnn.iprima.cz/exkluzivni-predprodej-pro-divaky-cnn-prima-news-ziskejte-vstupenky-na-koncert-s-deppem-110174",
"breadcrumb": "cnn.iprima.cz/exkluzivni-predprodej-pro-divaky-cnn-prima-news…"
},
{
"type": "organic",
"rank_group": 8,
"rank_absolute": 10,
"page": 1,
"domain": "www.iprima.cz",
"title": "CNN Prima NEWS | iPrima",
"description": "Nejnovější kanál skupiny Prima, který je součástí rozsáhlé stejnojmenné multimediální platformy, odstartoval 3. května 2020 v 18.55.",
"url": "https://www.iprima.cz/o-spolecnosti/cnn-prima-news",
"breadcrumb": "iprima.cz/o-spolecnosti/cnn-prima-news"
},
{
"type": "organic",
"rank_group": 9,
"rank_absolute": 11,
"page": 1,
"domain": "cnn.iprima.cz",
"title": "Rvačka v Aši skončila tragédií. Pobodaný muž se zamknul v bytě…",
"description": "Karlovarští kriminalisté objasnili vraždu. Obětí je šedesátiletý muž z Aše, zemřel po útoku nožem ve svém bytě.",
"url": "https://cnn.iprima.cz/sousedska-hadka-mela-v-asi-skoncit-vrazdou-ubodaneho-muze-nasli-az-po-trech-dnech-110164",
"breadcrumb": "cnn.iprima.cz/sousedska-hadka-mela-v-asi-skoncit-vrazdou…"
},
{
"type": "organic",
"rank_group": 10,
"rank_absolute": 12,
"page": 1,
"domain": "zoom.iprima.cz",
"title": "CNN Prima NEWS | Prima Zoom - Prima Zoom",
"description": "V květnu 2020 se stala součástí celosvětové sítě zpravodajských televizních stanic CNN i česká varianta ze skupiny Prima. Pod značkou CNN v ČR najdete také zpravodajský server.",
"url": "https://zoom.iprima.cz/cnn-prima-news",
"breadcrumb": "zoom.iprima.cz/cnn-prima-news"
}
]
}
]
}
]
}