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/merchant/google/sellers/task_get/advanced/00000000-0000-0000-0000-000000000000
The response will include all available items in the Google Merchant Sellers Advanced 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 |
product_id | string |
|
type | string | search engine type |
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 Google Shopping results |
datetime | string | date and time when the result was received |
title | string | title of the product |
url | string | URL to the product page |
image_url | string | URL to the product image |
rating | object | product rating |
type | string | type of element='rating_element'n |
position | string | the alignment of the element in Google Shopping SERP |
rating_type | string | the type of rating |
value | integer | value of the rating |
votes_count | integer | the amount of feedback |
rating_max | integer | the maximum value for a |
item_types | array | types of search results found in Google Shopping SERP |
items_count | integer | the number of results returned in the |
items | array | items in SERP |
shops_list | object | 'shops_list' element in SERP |
type | string | type of element='shops_list'n |
rank_group | integer | position within a group of elements with identical |
rank_absolute | integer | absolute rank in SERP |
position | string | alignment of the element in SERP |
xpath | string | XPath of the element |
domain | string | domain in SERP |
title | string | product title |
url | string | Google Shopping URL forwarding to the product page on the seller’s website |
details | string | details and special offers |
base_price | integer | product price without tax and shipping |
tax | integer | the amount of tax |
shipping_price | integer | product shipping price |
total_price | integer | product price including tax and shipping |
currency | string | currency in the ISO format |
price_multiplier | integer | monthly price multiplier |
displayed_payment_breakdown | string | installment details as displayed in the results |
seller_name | string | name of the seller |
rating | object | shop rating |
type | string | type of element='rating_element'n |
rating_type | string | the type of rating |
value | integer | the value of the rating |
votes_count | integer | the amount of feedback |
rating_max | integer | the maximum value for a |
position | string | the alignment of the element in Google Shopping SERP |
shop_ad_aclk | string | unique ad click referral parameter |
product_condition | string | indicated condition of the product |
product_annotation | string | data from annotations and badges with special offers |
product_availability | string | product availability information |
buy_on_google | object | 'buy_on_google' element in SERP |
type | string | type of element = 'buy_on_google' |
rank_group | integer | position within a group of elements with identical |
rank_absolute | integer | absolute rank in SERP |
position | string | alignment of the element in SERP |
xpath | string | XPath of the element |
domain | string | domain in SERP |
title | string | product title |
url | string | Google Shopping URL forwarding to the product page |
details | string | details and special offers |
base_price | integer | product price without tax and shipping |
tax | integer | the amount of tax |
shipping_price | integer | product shipping price |
total_price | integer | product price including tax and shipping |
currency | string | currency in the ISO format |
seller_name | string | name of the seller |
rating | object | shop rating |
type | string | type of element = 'rating_element' |
rating_type | string | the type of rating |
value | integer | the value of the rating |
votes_count | integer | the amount of feedback |
rating_max | integer | the maximum value for a |
position | string | the alignment of the element in Google Shopping SERP |
shop_ad_aclk | string | unique ad click referral parameter |
product_condition | string | indicated condition of the product |
product_availability | string | product availability information |
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="04171157-0696-0183-0000-4f63affdd40a"
curl --location --request GET "https://api.dataforseo.com/v3/merchant/google/sellers/task_get/advanced/${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/';
// Instead of 'login' and 'password' use your credentials from https://app.dataforseo.com/api-access
$client = new RestClient($api_url, null, 'login', 'password');
try {
$result = array();
// #1 - using this method you can get a list of completed tasks
// GET /v3/merchant/google/sellers/tasks_ready
$tasks_ready = $client->get('/v3/merchant/google/sellers/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/merchant/google/sellers/task_get/advanced/$id
if (isset($task_ready['endpoint_advanced'])) {
$result[] = $client->get($task_ready['endpoint_advanced']);
}
// #3 - another way to get the task results by id
// GET /v3/merchant/google/sellers/task_get/advanced/$id
/*
if (isset($task_ready['id'])) {
$result[] = $client->get('/v3/merchant/google/sellers/task_get/advanced/' . $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 = '02231453-2604-0066-2000-64d39c6677d4';
const axios = require('axios');
axios({
method: 'get',
url: 'https://api.dataforseo.com/v3/merchant/google/sellers/task_get/advanced/' + 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/merchant/google/sellers/tasks_ready
response = client.get("/v3/merchant/google/sellers/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/merchant/google/sellers/task_get/advanced/$id
if(resultTaskInfo['endpoint_advanced']):
results.append(client.get(resultTaskInfo['endpoint_advanced']))
'''
# 3 - another way to get the task results by id
# GET /v3/merchant/google/sellers/task_get/advanced/$id
if(resultTaskInfo['id']):
results.append(client.get("/v3/merchant/google/sellers/task_get/advanced/" + 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 merchant_google_sellers_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/merchant/google/sellers/tasks_ready
var response = await httpClient.GetAsync("/v3/merchant/google/sellers/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_advanced != null)
{
// #2 - using this method you can get results of each completed task
// GET /v3/merchant/google/sellers/task_get/advanced/$id
var taskGetResponse = await httpClient.GetAsync((string)task.endpoint_advanced);
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/merchant/google/sellers/task_get/advanced/$id
/*
var tasksGetResponse = await httpClient.GetAsync("/v3/merchant/google/sellers/task_get/advanced/" + (string)task.id);
var taskResultObj = JsonConvert.DeserializeObject<dynamic>(await tasksGetResponse.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);
}
*/
}
}
}
}
}
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.20240313",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.0713 sec.",
"cost": 0,
"tasks_count": 1,
"tasks_error": 0,
"tasks": [
{
"id": "04021421-1535-0183-0000-be82a7ccf88b",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.0160 sec.",
"cost": 0,
"result_count": 1,
"path": [
"v3",
"merchant",
"google",
"sellers",
"task_get",
"advanced",
"04021421-1535-0183-0000-be82a7ccf88b"
],
"data": {
"se_type": "shops_list",
"se": "google",
"api": "merchant",
"function": "sellers",
"language_code": "en",
"location_code": 2840,
"product_id": "1113158713975221117",
"device": "desktop",
"os": "windows"
},
"result": [
{
"product_id": "1113158713975221117",
"type": "shops_list",
"se_domain": "google.com",
"location_code": 2840,
"language_code": "en",
"check_url": "https://www.google.com/shopping/product/1113158713975221117/offers?&hl=en&gl=US&gws_rd=cr&uule=w+CAIQIFISCQs2MuSEtepUEUK33kOSuTsc",
"datetime": "2024-04-02 11:21:43 +00:00",
"title": "Apple iPhone 8 Plus - 64 GB - Gold - T-Mobile - GSM",
"url": "https://www.google.com/url?q=/shopping/product/1113158713975221117%3Fhl%3Den%26gl%3DUS%26gws_rd%3Dcr%26uule%3Dw%2BCAIQIFISCQs2MuSEtepUEUK33kOSuTsc%26prds%3Dpid:17952520722800863984,rsk:PC_11443222119505369798&opi=95576897&sa=U&ved=0ahUKEwioxoz8tKOFAxUdweYEHTNZB34QyJ0ECBQ&usg=AOvVaw2IxnTIhUiSbFf4cegELqKv",
"image_url": "https://encrypted-tbn3.gstatic.com/shopping?q=tbn:ANd9GcTv1POnd3tnHAe3lo2n7Shz7lbreDZH8NMZW2ghlZXglLk02k8eUzw0Iq9ZG4aAFaMRq26xKK41Yv9Z_KH2JOLh4adwtpyzLSKopnXcjXD34AMqsqaswy7kbA&usqp=CAY",
"rating": {
"type": "rating_element",
"position": "left",
"rating_type": "Max5",
"value": 4,
"votes_count": 3610,
"rating_max": 5
},
"item_types": [
"shops_list"
],
"items_count": 4,
"items": [
{
"type": "shops_list",
"rank_group": 1,
"rank_absolute": 1,
"position": "right",
"xpath": "/html[1]/body[1]/div[4]/div[1]/div[1]/div[3]/div[1]/table[1]/tbody[1]/tr[1]",
"domain": "www.ebay.com",
"title": "Apple iPhone 8 Plus - 64 GB - Gold - T-Mobile - GSM",
"url": "https://www.ebay.com/itm/355103005673?chn=ps&mkevt=1&mkcid=28",
"details": "Free delivery by Thu, Apr 11",
"base_price": 200,
"tax": 20.5,
"shipping_price": null,
"total_price": 220.5,
"currency": "USD",
"price_multiplier": null,
"displayed_payment_breakdown": null
"seller_name": "eBay",
"rating": null,
"shop_ad_aclk": null,
"product_condition": null,
"product_annotation": null,
"product_availability": "in_stock"
},
{
"type": "shops_list",
"rank_group": 2,
"rank_absolute": 2,
"position": "right",
"xpath": "/html[1]/body[1]/div[4]/div[1]/div[1]/div[3]/div[1]/table[1]/tbody[1]/tr[3]",
"domain": "www.backmarket.com",
"title": "Apple iPhone 8 Plus - 64 GB - Gold - T-Mobile - GSM",
"url": "https://www.backmarket.com/en-us/p/iphone-8-plus-64-gb-gold-t-mobile/0ad199c7-97a0-45e9-a7b7-f7887ef2ed1e?shopping=gmc&srsltid=AfmBOoq3N-zYX91Q9BWZFXiR2ToM4Ek29tRNP0XDXZfq3wKrdc9ywzePtQ4#l=12",
"details": "$1.99 delivery by Tue, Apr 9 30 -day returns",
"base_price": 129,
"tax": 13.22,
"shipping_price": 1.99,
"total_price": 144.21,
"currency": "USD",
"price_multiplier": null,
"displayed_payment_breakdown": null
"seller_name": "Back Market",
"rating": {
"type": "rating_element",
"position": "left",
"rating_type": "Max5",
"value": 4.6,
"votes_count": 13600,
"rating_max": 5
},
"shop_ad_aclk": null,
"product_condition": "Refurbished",
"product_annotation": null,
"product_availability": "in_stock"
},
{
"type": "shops_list",
"rank_group": 3,
"rank_absolute": 3,
"position": "right",
"xpath": "/html[1]/body[1]/div[4]/div[1]/div[1]/div[3]/div[1]/table[1]/tbody[1]/tr[4]",
"domain": "www.mercari.com",
"title": "Apple iPhone 8 Plus - 64 GB - Gold - T-Mobile - GSM",
"url": "https://www.mercari.com/us/item/m24932237054/?srsltid=AfmBOord5-vf9qasvsc8XqPqDGSKl0IE1O9QbVwEzCBStkFRffdwp9AyyeM",
"details": "Free delivery",
"base_price": 175,
"tax": 17.94,
"shipping_price": null,
"total_price": 192.94,
"currency": "USD",
"price_multiplier": null,
"displayed_payment_breakdown": null
"seller_name": "Mercari",
"rating": null,
"shop_ad_aclk": null,
"product_condition": "Used",
"product_annotation": null,
"product_availability": "in_stock"
},
{
"type": "shops_list",
"rank_group": 4,
"rank_absolute": 4,
"position": "right",
"xpath": "/html[1]/body[1]/div[4]/div[1]/div[1]/div[3]/div[1]/table[1]/tbody[1]/tr[5]",
"domain": "buy.itsworthmore.com",
"title": "Apple iPhone 8 Plus - 64 GB - Gold - T-Mobile - GSM",
"url": "https://buy.itsworthmore.com/products/iphone-8-plus-64gb-t-mobile-gold?variant=15513774915682¤cy=USD&utm_medium=product_sync&utm_source=google&utm_content=sag_organic&utm_campaign=sag_organic&srsltid=AfmBOor0Shu1M5cBGZiBdZjlBoGNKhbprIDIcLRc7WojU10eoL_AN5gEsUw",
"details": "Free delivery by Mon, Apr 8 30 -day returns",
"base_price": 122.99,
"tax": 12.61,
"shipping_price": null,
"total_price": 135.6,
"currency": "USD",
"price_multiplier": null,
"displayed_payment_breakdown": null
"seller_name": "ItsWorthMore",
"rating": {
"type": "rating_element",
"position": "left",
"rating_type": "Max5",
"value": 4.5,
"votes_count": 1600,
"rating_max": 5
},
"shop_ad_aclk": null,
"product_condition": "Refurbished",
"product_annotation": null,
"product_availability": "in_stock"
}
]
}
]
}
]
}