跳转到主要内容
POST
https://api.aisa.one/apis/v1
/
dataforseo
/
business_data
/
google
/
hotel_searches
/
task_post
设置 Google 酒店搜索任务
curl --request POST \
  --url https://api.aisa.one/apis/v1/dataforseo/business_data/google/hotel_searches/task_post \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "location_name": "<string>",
  "location_code": 123,
  "location_coordinate": "<string>",
  "language_name": "<string>",
  "language_code": "<string>",
  "keyword": "<string>",
  "priority": 123,
  "depth": 123,
  "check_in": "<string>",
  "check_out": "<string>",
  "currency": "<string>",
  "adults": 123,
  "children": [
    "<string>"
  ],
  "stars": [
    "<string>"
  ],
  "min_rating": 123,
  "sort_by": "<string>",
  "min_price": 123,
  "max_price": 123,
  "free_cancellation": true,
  "is_vacation_rentals": true,
  "amenities": [
    "<string>"
  ],
  "tag": "<string>",
  "postback_url": "<string>",
  "pingback_url": "<string>"
}
'
import requests

url = "https://api.aisa.one/apis/v1/dataforseo/business_data/google/hotel_searches/task_post"

payload = {
    "location_name": "<string>",
    "location_code": 123,
    "location_coordinate": "<string>",
    "language_name": "<string>",
    "language_code": "<string>",
    "keyword": "<string>",
    "priority": 123,
    "depth": 123,
    "check_in": "<string>",
    "check_out": "<string>",
    "currency": "<string>",
    "adults": 123,
    "children": ["<string>"],
    "stars": ["<string>"],
    "min_rating": 123,
    "sort_by": "<string>",
    "min_price": 123,
    "max_price": 123,
    "free_cancellation": True,
    "is_vacation_rentals": True,
    "amenities": ["<string>"],
    "tag": "<string>",
    "postback_url": "<string>",
    "pingback_url": "<string>"
}
headers = {
    "Authorization": "Bearer <token>",
    "Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
  method: 'POST',
  headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
  body: JSON.stringify({
    location_name: '<string>',
    location_code: 123,
    location_coordinate: '<string>',
    language_name: '<string>',
    language_code: '<string>',
    keyword: '<string>',
    priority: 123,
    depth: 123,
    check_in: '<string>',
    check_out: '<string>',
    currency: '<string>',
    adults: 123,
    children: ['<string>'],
    stars: ['<string>'],
    min_rating: 123,
    sort_by: '<string>',
    min_price: 123,
    max_price: 123,
    free_cancellation: true,
    is_vacation_rentals: true,
    amenities: ['<string>'],
    tag: '<string>',
    postback_url: '<string>',
    pingback_url: '<string>'
  })
};

fetch('https://api.aisa.one/apis/v1/dataforseo/business_data/google/hotel_searches/task_post', options)
  .then(res => res.json())
  .then(res => console.log(res))
  .catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://api.aisa.one/apis/v1/dataforseo/business_data/google/hotel_searches/task_post",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => json_encode([
    'location_name' => '<string>',
    'location_code' => 123,
    'location_coordinate' => '<string>',
    'language_name' => '<string>',
    'language_code' => '<string>',
    'keyword' => '<string>',
    'priority' => 123,
    'depth' => 123,
    'check_in' => '<string>',
    'check_out' => '<string>',
    'currency' => '<string>',
    'adults' => 123,
    'children' => [
        '<string>'
    ],
    'stars' => [
        '<string>'
    ],
    'min_rating' => 123,
    'sort_by' => '<string>',
    'min_price' => 123,
    'max_price' => 123,
    'free_cancellation' => true,
    'is_vacation_rentals' => true,
    'amenities' => [
        '<string>'
    ],
    'tag' => '<string>',
    'postback_url' => '<string>',
    'pingback_url' => '<string>'
  ]),
  CURLOPT_HTTPHEADER => [
    "Authorization: Bearer <token>",
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
package main

import (
	"fmt"
	"strings"
	"net/http"
	"io"
)

func main() {

	url := "https://api.aisa.one/apis/v1/dataforseo/business_data/google/hotel_searches/task_post"

	payload := strings.NewReader("{\n  \"location_name\": \"<string>\",\n  \"location_code\": 123,\n  \"location_coordinate\": \"<string>\",\n  \"language_name\": \"<string>\",\n  \"language_code\": \"<string>\",\n  \"keyword\": \"<string>\",\n  \"priority\": 123,\n  \"depth\": 123,\n  \"check_in\": \"<string>\",\n  \"check_out\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"adults\": 123,\n  \"children\": [\n    \"<string>\"\n  ],\n  \"stars\": [\n    \"<string>\"\n  ],\n  \"min_rating\": 123,\n  \"sort_by\": \"<string>\",\n  \"min_price\": 123,\n  \"max_price\": 123,\n  \"free_cancellation\": true,\n  \"is_vacation_rentals\": true,\n  \"amenities\": [\n    \"<string>\"\n  ],\n  \"tag\": \"<string>\",\n  \"postback_url\": \"<string>\",\n  \"pingback_url\": \"<string>\"\n}")

	req, _ := http.NewRequest("POST", url, payload)

	req.Header.Add("Authorization", "Bearer <token>")
	req.Header.Add("Content-Type", "application/json")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.post("https://api.aisa.one/apis/v1/dataforseo/business_data/google/hotel_searches/task_post")
  .header("Authorization", "Bearer <token>")
  .header("Content-Type", "application/json")
  .body("{\n  \"location_name\": \"<string>\",\n  \"location_code\": 123,\n  \"location_coordinate\": \"<string>\",\n  \"language_name\": \"<string>\",\n  \"language_code\": \"<string>\",\n  \"keyword\": \"<string>\",\n  \"priority\": 123,\n  \"depth\": 123,\n  \"check_in\": \"<string>\",\n  \"check_out\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"adults\": 123,\n  \"children\": [\n    \"<string>\"\n  ],\n  \"stars\": [\n    \"<string>\"\n  ],\n  \"min_rating\": 123,\n  \"sort_by\": \"<string>\",\n  \"min_price\": 123,\n  \"max_price\": 123,\n  \"free_cancellation\": true,\n  \"is_vacation_rentals\": true,\n  \"amenities\": [\n    \"<string>\"\n  ],\n  \"tag\": \"<string>\",\n  \"postback_url\": \"<string>\",\n  \"pingback_url\": \"<string>\"\n}")
  .asString();
require 'uri'
require 'net/http'

url = URI("https://api.aisa.one/apis/v1/dataforseo/business_data/google/hotel_searches/task_post")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n  \"location_name\": \"<string>\",\n  \"location_code\": 123,\n  \"location_coordinate\": \"<string>\",\n  \"language_name\": \"<string>\",\n  \"language_code\": \"<string>\",\n  \"keyword\": \"<string>\",\n  \"priority\": 123,\n  \"depth\": 123,\n  \"check_in\": \"<string>\",\n  \"check_out\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"adults\": 123,\n  \"children\": [\n    \"<string>\"\n  ],\n  \"stars\": [\n    \"<string>\"\n  ],\n  \"min_rating\": 123,\n  \"sort_by\": \"<string>\",\n  \"min_price\": 123,\n  \"max_price\": 123,\n  \"free_cancellation\": true,\n  \"is_vacation_rentals\": true,\n  \"amenities\": [\n    \"<string>\"\n  ],\n  \"tag\": \"<string>\",\n  \"postback_url\": \"<string>\",\n  \"pingback_url\": \"<string>\"\n}"

response = http.request(request)
puts response.read_body
{
  "version": "<string>",
  "version.status_code": 123,
  "version.status_message": "<string>",
  "version.time": "<string>",
  "version.cost": 123,
  "version.tasks_count": 123,
  "version.tasks_error": 123,
  "tasks": [
    "<string>"
  ],
  "tasks.id": "<string>",
  "tasks.status_code": 123,
  "tasks.status_message": "<string>",
  "tasks.time": "<string>",
  "tasks.cost": 123,
  "tasks.result_count": 123,
  "tasks.path": [
    "<string>"
  ],
  "tasks.data": {},
  "result": [
    "<string>"
  ]
}

授权

Authorization
string
header
必填

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

请求体

application/json
location_name
string
必填

搜索引擎位置的完整名称如果未指定 location_codelocation_coordinate,则为必填字段如果使用此字段,则无需指定 location_codelocation_coordinate。可以通过向 https://api.dataforseo.com/v3/business_data/google/locations 单独发起请求,获取包含 location_name 的可用位置列表。示例:London,England,United Kingdom注意:为获得准确的搜索结果,您指定的 location_name 将自动附加到关键词中

location_code
integer
必填

搜索引擎位置代码 如果未指定 location_namelocation_coordinate,则为必填字段 如果使用此字段,则无需指定 location_namelocation_coordinate 可通过向 https://api.dataforseo.com/v3/business_data/google/locations 单独发送请求,获取包含 location_code 的可用位置列表。示例:2840

location_coordinate
string
必填

位置的 GPS 坐标 如果未指定 location_namelocation_code,则为必填字段 如果使用此字段,则无需指定 location_namelocation_code location_coordinate 参数应以 “latitude,longitude” 格式指定 “latitude”“longitude” 的最大小数位数:7 注意:如果使用坐标设置位置,搜索将在最近的居民点进行;示例:53.476225,-2.243572

language_name
string
必填

搜索引擎语言的完整名称 如果未指定 language_code,则为必填字段 如果使用此字段,则无需指定 language_code 您可以通过向 https://api.dataforseo.com/v3/business_data/google/languages 单独发送请求,获取包含 language_name 的可用语言列表。示例:English

language_code
string
必填

搜索引擎语言代码 如果未指定 language_name,则为必填字段 如果使用此字段,则无需指定 language_name 可通过向 https://api.dataforseo.com/v3/business_data/google/languages 单独发送请求,获取可用语言及其 language_code 的列表 示例:en

keyword
string

keyword 可选字段,您指定的关键词用于搜索酒店列表;如果不使用此字段,我们将返回在指定位置找到的酒店列表;您可以在 keyword 字段中指定最多 700 个字符所有 %## 都将被解码(加号字符“+”将被解码为空格字符);如果需要在 keyword 中使用“%”字符,请将其指定为“%25”;注意:为获得准确的搜索结果,位置名称会自动附加到关键词中。有关 DataForSEO API 中 keywordkeywords 字段的规则与限制,请参阅这篇帮助中心文章

priority
integer

任务优先级 可选字段 可采用以下值:1 – 普通执行优先级(默认设置)2 – 高执行优先级 使用高执行优先级的任务将额外收费。费用可在定价页面计算。

depth
integer

解析深度 可选字段 Google Hotels 中的结果数量 默认值:20 条自然搜索结果 最大值:140 注意:无论响应中是否包含付费列表,您的账户都将按每 20 条自然搜索结果计费;因此,如果 Google Hotels 返回超过 20 条结果,将深度设置为高于 20 可能产生额外费用;如果指定的深度高于响应中的结果数量,差额将自动退还至您的账户余额

check_in
string

入住日期 可选字段 如果未指定此字段,默认使用明天的日期;日期格式:"yyyy-mm-dd" 示例:"2019-01-15" 注意:该值不能早于今天的日期

check_out
string

退房日期;可选字段;如果未指定此字段,系统将默认使用从现在起两天后的日期;日期格式:"yyyy-mm-dd";示例:"2019-01-15"注意:该值不能小于或等于 check_incheck_incheck_out 值之间的范围不能超过 30 天

currency
string

货币 可选字段示例:"USD"

adults
integer

成人人数,可选字段;如果未指定此字段,将应用默认值 2注意,成人和儿童合计最多可指定 6 人;示例:1

children
string[]

儿童人数和年龄。可选字段。如果不指定此字段,搜索中将不包含儿童;儿童年龄范围为 017注意,成人和儿童合计最多可指定 6 人。如果要包含一名 14 岁儿童,请设置以下值:[14];如果要包含一名 13 岁儿童和一名 8 岁儿童,请设置以下值:[13,8]

stars
string[]

酒店星级 可选字段;如果只想获取五星级酒店列表,请将此字段设置为 [5],例如:[3,4,5]

min_rating
number

最低评分 可选字段;您可以使用此字段指定高于某个值的住客评分,例如:2.5

sort_by
string

结果排序参数 可选字段。您可以使用此字段对结果进行排序。可选排序类型:relevance – 按相关性从高到低排序;lowest_price – 按价格从低到高排序;highest_rating – 按评分从高到低排序;most_reviewed – 按评论数量从多到少排序。默认值:relevance

min_price
integer

每晚最低价格 可选字段,此值的货币取决于 currency 字段;示例:100

max_price
integer

每晚最高价格 可选字段,此值的货币取决于 currency 字段,例如:600

free_cancellation
boolean

可免费取消的酒店,可选字段。如果希望获取可免费取消预订的酒店列表,请将此字段设置为 true。默认值:false

is_vacation_rentals
boolean

搜索度假租赁住宿 可选字段;如果希望获取度假租赁住宿列表而非酒店列表,请将此字段设置为 true;默认值:false

amenities
string[]

酒店设施。可选字段。可使用此字段指定不同的酒店设施。示例: [ "free_parking", "pets_allowed" ]。可用值:"air_conditioning","all_inclusive_available","bar","free_breakfast","fitness_center","kid_friendly","free_parking","pets_allowed","pool","restaurant","room_service","spa","free_wifi","parking","indoor_pool","outdoor_pool","wheelchair_accessible","beach_access"

tag
string

用户定义的任务标识符,可选字段,字符数上限为 255。你可以使用此参数标识任务并将其与结果匹配;你可以在响应的 data 对象中找到指定的 tag

postback_url
string

用于发送任务结果的返回 URL,可选字段。任务完成后,我们会向您指定的 postback_url 发送 POST 请求,结果将以 gzip 格式压缩。您可以将字符串 ‘$id’ 用作 $id 变量,并将 ‘$tag’ 用作经过 URL 编码的 $tag 变量。我们将在发送请求前设置必要的值。示例:http://your-server.com/postbackscript?id=$id http://your-server.com/postbackscript?id=$id&tag=$tag 注意:postback_url 中的特殊字符将经过 URL 编码;例如,# 字符将编码为 %23。有关更多信息,请参阅我们的帮助中心

pingback_url
string

任务完成通知 URL,可选字段。任务完成后,我们将向你指定的 URL 发送 GET 请求以通知你。你可以使用字符串 ‘$id’ 作为 $id 变量,并使用 ‘$tag’ 作为经过 URL 编码的 $tag 变量。我们会在发送请求前设置必要的值。示例:http://your-server.com/pingscript?id=$id http://your-server.com/pingscript?id=$id&tag=$tag 注意:pingback_url 中的特殊字符将进行 URL 编码;例如,# 字符将被编码为 %23。请访问我们的帮助中心了解更多信息。

响应

成功响应

version
string

API 的当前版本

version.status_code
integer

常规状态代码 您可以在此处查看完整的响应代码列表。注意:我们强烈建议设计必要的系统来处理相关异常或错误情况

version.status_message
string

一般信息消息 你可以在此处查看一般信息消息的完整列表

version.time
string

执行时间(秒)

version.cost
number

任务总成本(美元)

version.tasks_count
integer

tasks数组中的任务数量

version.tasks_error
integer

返回的 tasks 数组中发生错误的任务数量

tasks
string[]

任务数组

tasks.id
string

我们系统中的唯一任务标识符,采用通用唯一标识符 (UUID) 格式

tasks.status_code
integer

DataForSEO 生成的任务状态码;取值范围为:10000-60000

tasks.status_message
string

任务信息消息

tasks.time
string

执行时间(秒)

tasks.cost
number

任务成本(美元)

tasks.result_count
integer

result 数组中的元素数量

tasks.path
string[]

URL 路径

tasks.data
object

包含与您在 POST 请求中指定的参数相同的参数

result
string[]

结果数组;在这种情况下,该值将为 null