Airbnb Place API
The Airbnb Place API returns details for an individual stay as structured JSON. Supply a listing ID from the Airbnb Search API and optionally choose a language, currency and stay dates. Depending on the listing and available page data, results can include descriptions, photos, amenities, sleeping arrangements, house rules, host information, ratings, booking context and displayed prices.
Endpoint: https://api.scrapingdog.com/airbnb/place
Each successfully parsed request costs 5 credits, including a sparse listing without a price quote. Preserve listing IDs as strings. Fields and prices depend on available upstream data. The supplied Aluda Haveli response below shortens long arrays to one item for readability; reported counts remain unchanged. Examples use
APIKEY and dates matching the supplied response. Choose suitable dates for your request.API Parameters
π
Scrapingdog Parameters
api_keyRequiredYour personal Scrapingdog API key, available on your dashboard. ReplaceAPIKEYwhen executing requests. Send parameters once each in the GET query string.
Type: String
π
Listing
place_idRequiredA positive Airbnb listing ID containing 1β20 digits, starting with1β9. Preserve the value as a string, for example965075981702341405; do not convert it to a JavaScript number. Uselisting_idorplace_idfrom Search results, or the numeric string after/rooms/in a listing URL. No leading zeros, whitespace, signs or decimals; the ID is not trimmed.
Type: String of digits
π
Localization
langOptionalChoose one of the 72 supported Place locales, for exampleen,en-INorfr. Matched case-insensitively without trimming whitespace; the response uses the configured canonical spelling. These are listing locales, distinct from Search host-language codes. Place always requestswww.airbnb.co.in; language does not change currency.
Default:en
Type: String enumcurrencyOptionalChoose one of the 69 supported currency codes, for exampleINR. Input is case-insensitive and normalized to uppercase; whitespace is not trimmed. The default remains USD regardless of language or the fixed India hostname. Select INR explicitly when desired.
Default:USD
Type: String enum
π
Stay Dates
checkinOptionalA valid calendar date inYYYY-MM-DDformat, supplied together with checkout. Accepted aliases:check_inandcheck_in_date. Multiple names for the same date are accepted only when their values match exactly. No dates are generated when omitted; there is no today/future restriction or maximum-stay rule. Optional blank values are invalid.
Default: Omitted: no fixed dates
Type: Date stringcheckoutOptionalA valid date strictly after check-in. Accepted aliases:check_outandcheck_out_date. Multiple names for the same date must match exactly; conflicting values are rejected. Both dates must resolve together through canonical keys or aliases. Responses usecheckinandcheckout. When dates are omitted, search parameters omit them andplace_resultincludes both asnull.
Default: Omitted: no fixed dates
Type: Date string
API Examples

curl "https://api.scrapingdog.com/airbnb/place?api_key=APIKEY&place_id=965075981702341405&lang=en¤cy=INR&checkin=2026-11-20&checkout=2026-11-25"
import requests params = { "api_key": "APIKEY", "place_id": "965075981702341405", "lang": "en", "currency": "INR", "checkin": "2026-11-20", "checkout": "2026-11-25", } response = requests.get("https://api.scrapingdog.com/airbnb/place", params=params, timeout=70) response.raise_for_status() print(response.json()["place_result"])
const axios = require('axios'); axios.get('https://api.scrapingdog.com/airbnb/place', { params: { api_key: 'APIKEY', place_id: '965075981702341405', lang: 'en', currency: 'INR', checkin: '2026-11-20', checkout: '2026-11-25', }, timeout: 70000, }).then(({ data }) => console.log(data.place_result)) .catch(error => console.error(error.response?.data ?? error.message));
<?php $params = [ 'api_key' => 'APIKEY', 'place_id' => '965075981702341405', 'lang' => 'en', 'currency' => 'INR', 'checkin' => '2026-11-20', 'checkout' => '2026-11-25', ]; $ch = curl_init('https://api.scrapingdog.com/airbnb/place?' . http_build_query($params)); curl_setopt_array($ch, [CURLOPT_RETURNTRANSFER => true, CURLOPT_TIMEOUT => 70]); $body = curl_exec($ch); if ($body === false) { throw new RuntimeException(curl_error($ch)); } $status = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); if ($status !== 200) { throw new RuntimeException("HTTP $status: $body"); } $data = json_decode($body, true, 512, JSON_THROW_ON_ERROR); print_r($data['place_result']);
require 'net/http' require 'uri' require 'json' url = URI('https://api.scrapingdog.com/airbnb/place') url.query = URI.encode_www_form( api_key: 'APIKEY', place_id: '965075981702341405', lang: 'en', currency: 'INR', checkin: '2026-11-20', checkout: '2026-11-25' ) http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.read_timeout = 70 response = http.get(url.request_uri) raise "HTTP #{response.code}: #{response.body}" unless response.is_a?(Net::HTTPSuccess) puts JSON.pretty_generate(JSON.parse(response.body).fetch('place_result'))
import java.net.URI; import java.net.URLEncoder; import java.net.http.HttpClient; import java.net.http.HttpRequest; import java.net.http.HttpResponse; import java.nio.charset.StandardCharsets; import java.time.Duration; public class Main { public static void main(String[] args) throws Exception { String apiKey = URLEncoder.encode("APIKEY", StandardCharsets.UTF_8); String placeId = "965075981702341405"; String url = "https://api.scrapingdog.com/airbnb/place?api_key=" + apiKey + "&place_id=" + placeId + "&lang=en¤cy=INR" + "&checkin=2026-11-20&checkout=2026-11-25"; HttpRequest request = HttpRequest.newBuilder(URI.create(url)) .timeout(Duration.ofSeconds(70)).GET().build(); HttpResponse<String> response = HttpClient.newHttpClient() .send(request, HttpResponse.BodyHandlers.ofString()); if (response.statusCode() != 200) { throw new RuntimeException("HTTP " + response.statusCode() + ": " + response.body()); } System.out.println(response.body()); } }
{
"search_metadata": {
"status": "Success",
"airbnb_url": "https://www.airbnb.co.in/rooms/965075981702341405?locale=en¤cy=INR&check_in=2026-11-20&check_out=2026-11-25",
"total_time_taken": 1.05
},
"search_parameters": {
"engine": "airbnb_place",
"place_id": "965075981702341405",
"lang": "en",
"currency": "INR",
"checkin": "2026-11-20",
"checkout": "2026-11-25"
},
"place_result": {
"place_id": "965075981702341405",
"listing_id": "965075981702341405",
"name": "Aluda Haveli - blue room",
"title": "Aluda Haveli - blue room",
"link": "https://www.airbnb.co.in/rooms/965075981702341405?locale=en¤cy=INR&check_in=2026-11-20&check_out=2026-11-25",
"checkin": "2026-11-20",
"checkout": "2026-11-25",
"description": "Stay in walled city a one-of-a-kind 200 year old haveli (traditional home) that has been restored to its old glory with modern amenities. The property is right on the main road and no narrow lanes to be taken to reach the place yet very quite and peaceful away from traffic and other noises The space This 200+ year old erstwhile noble rajput family home( Haveli) has been been restored to its old glory with modern amenities. The entire restoration was done keeping in mind the old traditional sustainable environment friendly style. Room has been painted in eco friendly lime based paint as was done in good old days. Guest access There are enough and more places for guest to use other their rooms , a large terrace courtyard great for sitting in sun. The 3rd floor Terrace has quite place to relax and enjoy evening coffee And there are many such places to enjoy quite time or use as work place During your stay family (hosts) loves to interact their guests and talk about the history and folk tales related to this place . Also about where to go around for sightseeing etc and any other help the guest may require Other things to note This place is ideally located in walled city on a main road leading to city palace tripolia gate. All the monuments and market places like city palace, Hawa mahal, Jantar mantra, Albert hall, babu baazar, Johari baazar all the places are just walking distance in just 1.5km away",
"property_type": "Private room in bed and breakfast",
"room_type": "Private room",
"guests": 2,
"overview": "Room in Jaipur, India",
"details": [
"1 bed",
"Dedicated bathroom"
],
"location": "Jaipur, Rajasthan, India",
"gps_coordinates": {
"latitude": 26.92034,
"longitude": 75.82251
},
"exact_location": false,
"rating": 4.9,
"reviews": 132,
"guest_favorite": true,
"category_ratings": [
{
"category": "checkin",
"rating": 4.9
}
],
"review_distribution": [
{
"rating": 5,
"percentage": 0.9166666666666666
}
],
"images": [
"https://a0.muscache.com/im/pictures/miso/Hosting-965075981702341405/original/77bb0eb3-91e5-4c8a-bb74-cf43c3f353d9.jpeg"
],
"thumbnail": "https://a0.muscache.com/im/pictures/miso/Hosting-965075981702341405/original/77bb0eb3-91e5-4c8a-bb74-cf43c3f353d9.jpeg",
"amenities": [
{
"name": "Bathtub",
"category": "Bathroom",
"available": true
}
],
"highlights": [
{
"title": "In Jaipur's Old City center",
"description": "In the walled city, with Hawa Mahal, City Palace, and local bazaars all within walking distance."
}
],
"house_rules": [
{
"name": "Up to 2 overnight guests",
"category": "House rules",
"type": "HOUSE_RULES_PERSON_CAPACITY"
}
],
"safety_and_property": [
{
"name": "Carbon monoxide alarm not reported",
"category": "Safety devices",
"description": "The Host hasn't reported a carbon monoxide alarm on the property. We suggest bringing a portable detector for your trip."
}
],
"host": {
"name": "Tej",
"thumbnail": "https://a0.muscache.com/im/Portrait/Avatars/v2/rausch?im_w=240&im_t=T&im_s=86&im_f=AirbnbCerealLatinMedium.ttf&im_c=a21039&script=latin",
"superhost": true,
"verified": true,
"rating": 4.86,
"reviews": 406,
"response_rate": "Response rate: 100%",
"response_time": "Responds within an hour"
},
"booking": {
"available": true,
"instant_book": true,
"pets_allowed": true,
"max_guest_capacity": 2,
"max_pets": 1,
"guest_disclaimer": "This place has a maximum of 2 guests, not including infants. If you're bringing more than 2 pets, please let your host know."
},
"price": "βΉ12,780",
"extracted_price": 12780,
"currency": "INR",
"price_qualifier": "for 5 nights",
"price_accessibility_label": "βΉ12,780 for 5 nights",
"price_breakdown": [
{
"description": "5 nights x βΉ2,556.00",
"price": "βΉ12,780.00",
"extracted_price": 12780
}
]
}
}