curl --request POST \
--url https://api.aisa.one/apis/v1/serpapi/search-yelp \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"find_loc": "San Francisco, CA",
"find_desc": "pizza"
}
'import requests
url = "https://api.aisa.one/apis/v1/serpapi/search-yelp"
payload = {
"find_loc": "San Francisco, CA",
"find_desc": "pizza"
}
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({find_loc: 'San Francisco, CA', find_desc: 'pizza'})
};
fetch('https://api.aisa.one/apis/v1/serpapi/search-yelp', 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/search-yelp",
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([
'find_loc' => 'San Francisco, CA',
'find_desc' => 'pizza'
]),
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/serpapi/search-yelp"
payload := strings.NewReader("{\n \"find_loc\": \"San Francisco, CA\",\n \"find_desc\": \"pizza\"\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/serpapi/search-yelp")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"find_loc\": \"San Francisco, CA\",\n \"find_desc\": \"pizza\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aisa.one/apis/v1/serpapi/search-yelp")
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 \"find_loc\": \"San Francisco, CA\",\n \"find_desc\": \"pizza\"\n}"
response = http.request(request)
puts response.read_body{
"organic_results": [
{
"link": "<string>",
"phone": "<string>",
"price": "<string>",
"title": "<string>",
"rating": 123,
"address": "<string>",
"reviews": 123,
"snippet": "<string>",
"position": 123,
"place_ids": [
"<string>"
],
"thumbnail": "<string>",
"categories": [
"<string>"
],
"neighborhoods": "<string>"
}
],
"search_metadata": {},
"search_parameters": {}
}Search Yelp businesses
curl --request POST \
--url https://api.aisa.one/apis/v1/serpapi/search-yelp \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"find_loc": "San Francisco, CA",
"find_desc": "pizza"
}
'import requests
url = "https://api.aisa.one/apis/v1/serpapi/search-yelp"
payload = {
"find_loc": "San Francisco, CA",
"find_desc": "pizza"
}
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({find_loc: 'San Francisco, CA', find_desc: 'pizza'})
};
fetch('https://api.aisa.one/apis/v1/serpapi/search-yelp', 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/search-yelp",
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([
'find_loc' => 'San Francisco, CA',
'find_desc' => 'pizza'
]),
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/serpapi/search-yelp"
payload := strings.NewReader("{\n \"find_loc\": \"San Francisco, CA\",\n \"find_desc\": \"pizza\"\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/serpapi/search-yelp")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"find_loc\": \"San Francisco, CA\",\n \"find_desc\": \"pizza\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aisa.one/apis/v1/serpapi/search-yelp")
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 \"find_loc\": \"San Francisco, CA\",\n \"find_desc\": \"pizza\"\n}"
response = http.request(request)
puts response.read_body{
"organic_results": [
{
"link": "<string>",
"phone": "<string>",
"price": "<string>",
"title": "<string>",
"rating": 123,
"address": "<string>",
"reviews": 123,
"snippet": "<string>",
"position": 123,
"place_ids": [
"<string>"
],
"thumbnail": "<string>",
"categories": [
"<string>"
],
"neighborhoods": "<string>"
}
],
"search_metadata": {},
"search_parameters": {}
}Request contract
- Method and path: POST /apis/v1/serpapi/search-yelp
- Availability: enabled
- Request URL template:
https://api.aisa.one/apis/v1/serpapi/search-yelp - Runtime facts: 1d8d2010628130bd331b470b564dd1cd5784989899ccf3e384a8de02a69e0558
{
"operationId": "serpapi.search-yelp",
"method": "POST",
"path": "/apis/v1/serpapi/search-yelp",
"servers": [
{
"url": "https://api.aisa.one"
}
],
"parameters": [],
"security": [
{
"bearerAuth": []
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"find_desc",
"find_loc"
],
"properties": {
"attrs": {
"type": "string",
"examples": [
"HotAndNew",
"Deals",
"HotAndNew,Deals"
],
"description": "Attribute filters to refine search (e.g., 'HotAndNew' for new businesses, 'Deals' for businesses with offers). Can be comma-separated for multiple filters."
},
"start": {
"type": "integer",
"minimum": 0,
"examples": [
0,
10,
20
],
"description": "Result offset for pagination. Use to fetch additional results beyond the first page. Each page typically contains 10 results."
},
"sortby": {
"enum": [
"recommended",
"rating",
"review_count"
],
"type": "string",
"description": "Sort order for results. 'recommended' shows Yelp's recommended matches, 'rating' shows highest-rated first, 'review_count' shows most-reviewed first."
},
"find_loc": {
"type": "string",
"examples": [
"San Francisco, CA",
"New York, NY",
"10001",
"Seattle, WA"
],
"description": "Location to search in (e.g., 'San Francisco, CA', 'New York, NY', '10001'). Can be a city, state, address, or ZIP code."
},
"no_cache": {
"type": "boolean",
"description": "Set to true to force fresh results from Yelp, bypassing SerpApi's cache. Useful when you need real-time data."
},
"find_desc": {
"type": "string",
"examples": [
"pizza",
"coffee shop",
"italian restaurant",
"barber"
],
"description": "Search query describing what to find (e.g., 'pizza', 'coffee shop', 'italian restaurant'). This is the business type or service you're looking for."
},
"yelp_domain": {
"type": "string",
"examples": [
"yelp.com",
"yelp.ca",
"yelp.co.uk"
],
"description": "Yelp domain to search on (e.g., 'yelp.com' for US, 'yelp.ca' for Canada, 'yelp.co.uk' for UK). Defaults to yelp.com if not specified."
}
}
}
}
}
},
"x-aisa-status": "enabled",
"x-aisa-pricing": {
"cost_contract": "response_units",
"customer_multiplier": 1.0,
"customer_pricing": "provider_cost_multiplier",
"estimate_source": "unavailable",
"estimate_unavailable_reason": "reference_request_unavailable",
"evidence_source": "response_body",
"maximum_units": 10000000,
"unit": "provider_credit",
"unit_rate_usd": 1e-06
},
"components": {
"securitySchemes": {
"bearerAuth": {
"scheme": "bearer",
"type": "http"
}
}
}
}
Cost and request rules
A request reference price is not currently available; use a request quote where supported. Declared unit rate: $0.000001 USD per provider_credit. Account-specific pricing and final settlement may differ. Published reference values are not an account-specific quote or a settled charge. For endpoints supporting X-AISA-Cost-Mode: quote, obtain a free quote for your exact request before execution; reconcile the settled cost with response metadata and Usage Logs. USD amounts use 1,000,000 integer micro-USD per dollar.- Declared unit rate (USD): 1e-06
- Billing unit: provider_credit
- Cost contract: response_units
- Published reference multiplier: 1.0
- Declared maximum count/units: 10000000
- Settlement evidence source: response_body
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
Location to search in (e.g., 'San Francisco, CA', 'New York, NY', '10001'). Can be a city, state, address, or ZIP code.
"San Francisco, CA"
"New York, NY"
"10001"
"Seattle, WA"
Search query describing what to find (e.g., 'pizza', 'coffee shop', 'italian restaurant'). This is the business type or service you're looking for.
"pizza"
"coffee shop"
"italian restaurant"
"barber"
Attribute filters to refine search (e.g., 'HotAndNew' for new businesses, 'Deals' for businesses with offers). Can be comma-separated for multiple filters.
"HotAndNew"
"Deals"
"HotAndNew,Deals"
Result offset for pagination. Use to fetch additional results beyond the first page. Each page typically contains 10 results.
x >= 00
10
20
Sort order for results. 'recommended' shows Yelp's recommended matches, 'rating' shows highest-rated first, 'review_count' shows most-reviewed first.
recommended, rating, review_count Set to true to force fresh results from Yelp, bypassing SerpApi's cache. Useful when you need real-time data.
Yelp domain to search on (e.g., 'yelp.com' for US, 'yelp.ca' for Canada, 'yelp.co.uk' for UK). Defaults to yelp.com if not specified.
"yelp.com"
"yelp.ca"
"yelp.co.uk"