# Fixed reference example. Playground inputs do not update this sample.
curl --request GET \
--url 'https://api.aisa.one/apis/v1/serpapi/google-serp-organic?async=false&engine=google&output=json&q=coffee&zero_trace=false' \
--header 'Authorization: Bearer <token>'curl --request GET \
--url https://api.aisa.one/apis/v1/serpapi/google-serp-organic \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.aisa.one/apis/v1/serpapi/google-serp-organic"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.aisa.one/apis/v1/serpapi/google-serp-organic', 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/serpapi/google-serp-organic",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.aisa.one/apis/v1/serpapi/google-serp-organic"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.aisa.one/apis/v1/serpapi/google-serp-organic")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aisa.one/apis/v1/serpapi/google-serp-organic")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_bodyGoogle organic search results for a query
# Fixed reference example. Playground inputs do not update this sample.
curl --request GET \
--url 'https://api.aisa.one/apis/v1/serpapi/google-serp-organic?async=false&engine=google&output=json&q=coffee&zero_trace=false' \
--header 'Authorization: Bearer <token>'curl --request GET \
--url https://api.aisa.one/apis/v1/serpapi/google-serp-organic \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.aisa.one/apis/v1/serpapi/google-serp-organic"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.aisa.one/apis/v1/serpapi/google-serp-organic', 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/serpapi/google-serp-organic",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.aisa.one/apis/v1/serpapi/google-serp-organic"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.aisa.one/apis/v1/serpapi/google-serp-organic")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aisa.one/apis/v1/serpapi/google-serp-organic")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body请求规范
- 方法与路径: GET /apis/v1/serpapi/google-serp-organic
- 可用状态: enabled
- 请求 URL 模板:
https://api.aisa.one/apis/v1/serpapi/google-serp-organic - async: query; 必填
- cr: query; 可选
- device: query; 可选
- engine: query; 必填
- filter: query; 可选
- gl: query; 可选
- google_domain: query; 可选
- hl: query; 可选
- lat: query; 可选
- location: query; 可选
- lon: query; 可选
- lr: query; 可选
- nfpr: query; 可选
- output: query; 必填
- q: query; 必填
- radius: query; 可选
- safe: query; 可选
- start: query; 可选
- tbm: query; 可选
- tbs: query; 可选
- uule: query; 可选
- zero_trace: query; 必填
- Runtime 事实版本: 1d8d2010628130bd331b470b564dd1cd5784989899ccf3e384a8de02a69e0558
{
"operationId": "serpapi.google-serp-organic",
"method": "GET",
"path": "/apis/v1/serpapi/google-serp-organic",
"servers": [
{
"url": "https://api.aisa.one"
}
],
"parameters": [
{
"examples": {
"default": {
"value": false
},
"minimal": {
"value": false
}
},
"in": "query",
"name": "async",
"required": true,
"schema": {
"enum": [
false
],
"type": "boolean"
}
},
{
"name": "cr",
"in": "query",
"required": false,
"schema": {
"type": "string",
"description": "restrict to countries, e.g. countryUS; multiple joined by |"
}
},
{
"name": "device",
"in": "query",
"required": false,
"schema": {
"type": "string",
"description": "desktop (default) | tablet | mobile"
}
},
{
"examples": {
"default": {
"value": "google"
},
"minimal": {
"value": "google"
}
},
"in": "query",
"name": "engine",
"required": true,
"schema": {
"enum": [
"google"
],
"minLength": 1,
"type": "string",
"description": "the engine selector — must be this literal string"
}
},
{
"name": "filter",
"in": "query",
"required": false,
"schema": {
"type": "string",
"description": "0 turns off Google's similar-results and omitted-results filters"
}
},
{
"name": "gl",
"in": "query",
"required": false,
"schema": {
"type": "string",
"description": "country code for the search, e.g. us, uk",
"examples": [
"us"
]
}
},
{
"name": "google_domain",
"in": "query",
"required": false,
"schema": {
"type": "string",
"description": "default google.com; e.g. google.co.uk"
}
},
{
"name": "hl",
"in": "query",
"required": false,
"schema": {
"type": "string",
"description": "interface language code, e.g. en",
"examples": [
"en"
]
}
},
{
"name": "lat",
"in": "query",
"required": false,
"schema": {
"type": "number",
"description": "latitude; requires lon and a matching gl"
}
},
{
"name": "location",
"in": "query",
"required": false,
"schema": {
"type": "string",
"description": "city-level origin of the search, e.g. \"Austin, Texas, United States\". Mutually exclusive with uule and with lat/lon"
}
},
{
"name": "lon",
"in": "query",
"required": false,
"schema": {
"type": "number",
"description": "longitude; requires lat"
}
},
{
"name": "lr",
"in": "query",
"required": false,
"schema": {
"type": "string",
"description": "restrict to languages, e.g. lang_en; multiple joined by |"
}
},
{
"name": "nfpr",
"in": "query",
"required": false,
"schema": {
"type": "string",
"description": "1 disables Google's auto-correction to a different spelling"
}
},
{
"examples": {
"default": {
"value": "json"
},
"minimal": {
"value": "json"
}
},
"in": "query",
"name": "output",
"required": true,
"schema": {
"enum": [
"json"
],
"minLength": 1,
"type": "string"
}
},
{
"name": "q",
"in": "query",
"required": true,
"schema": {
"type": "string",
"description": "the search query; Google search operators work here",
"examples": [
"coffee"
]
}
},
{
"name": "radius",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"description": "metres around lat/lon; 1-199 on desktop, 1-1000 on mobile"
}
},
{
"name": "safe",
"in": "query",
"required": false,
"schema": {
"type": "string",
"description": "active | off"
}
},
{
"name": "start",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"description": "result offset for pagination — 0, 10, 20 … This is how you page; see the note about `num`",
"examples": [
0
]
}
},
{
"name": "tbm",
"in": "query",
"required": false,
"schema": {
"type": "string",
"description": "switches the Google vertical: isch (images), vid, nws, shop, lcl, pts"
}
},
{
"name": "tbs",
"in": "query",
"required": false,
"schema": {
"type": "string",
"description": "advanced Google filters, e.g. date range"
}
},
{
"name": "uule",
"in": "query",
"required": false,
"schema": {
"type": "string",
"description": "Google's encoded location, as an alternative to `location`"
}
},
{
"examples": {
"default": {
"value": false
},
"minimal": {
"value": false
}
},
"in": "query",
"name": "zero_trace",
"required": true,
"schema": {
"enum": [
false
],
"type": "boolean"
}
}
],
"security": [
{
"bearerAuth": []
}
],
"x-aisa-status": "enabled",
"x-aisa-pricing": {
"cost_contract": "response_units",
"customer_multiplier": 1.0,
"customer_pricing": "provider_cost_multiplier",
"default_request_estimate_usd": 0.015,
"estimate_source": "profile_seed",
"evidence_source": "response_header",
"unit": "provider_credit",
"unit_rate_usd": 1e-06
},
"components": {
"securitySchemes": {
"bearerAuth": {
"scheme": "bearer",
"type": "http"
}
}
}
}
费用与请求规则
按用量计费;默认请求预估费用:$0.015 USD(不是固定价格)。 声明的单位费率:每 provider_credit $0.000001 USD。 最终费用以账户适用价格及实际结算为准。 公开参考值不是你的账户报价或最终扣费。对于支持 X-AISA-Cost-Mode: quote 的接口,执行前请针对完整请求获取免费报价;执行后通过响应费用元数据和 Usage Logs 核对结算费用。1 USD 等于 1,000,000 个整数 micro-USD。- 默认请求参考估价(USD): 0.015
- 声明的单位费率(USD): 1e-06
- 计费单位: provider_credit
- 计费依据: response_units
- 公开参考倍率: 1.0
- 结算证据来源: response_header
授权
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
查询参数
false restrict to countries, e.g. countryUS; multiple joined by |
desktop (default) | tablet | mobile
the engine selector — must be this literal string
google 10 turns off Google's similar-results and omitted-results filters
country code for the search, e.g. us, uk
"us"
default google.com; e.g. google.co.uk
interface language code, e.g. en
"en"
latitude; requires lon and a matching gl
city-level origin of the search, e.g. "Austin, Texas, United States". Mutually exclusive with uule and with lat/lon
longitude; requires lat
restrict to languages, e.g. lang_en; multiple joined by |
1 disables Google's auto-correction to a different spelling
json 1the search query; Google search operators work here
"coffee"
metres around lat/lon; 1-199 on desktop, 1-1000 on mobile
active | off
result offset for pagination — 0, 10, 20 … This is how you page; see the note about num
0
switches the Google vertical: isch (images), vid, nws, shop, lcl, pts
advanced Google filters, e.g. date range
Google's encoded location, as an alternative to location
false 响应
成功响应