Get a listing's details, amenities and host
curl --request POST \
--url https://api.stophy.dev/v1/airbnb/listing \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"listing": "<string>"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({listing: '<string>'})
};
fetch('https://api.stophy.dev/v1/airbnb/listing', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.stophy.dev/v1/airbnb/listing"
payload = { "listing": "<string>" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"success": true,
"data": {
"listing": {
"url": "<string>",
"isGuestFavorite": true,
"host": {
"isSuperhost": true,
"isVerified": true,
"id": "<string>",
"name": "<string>",
"rating": 123,
"reviews": 0,
"yearsHosting": 0,
"bio": "<string>",
"responsePercent": 123,
"responseTime": "<string>",
"highlights": [
"<string>"
],
"avatar": "<string>"
},
"isLocationExact": true,
"id": "<string>",
"name": "<string>",
"headline": "<string>",
"description": "<string>",
"propertyType": "<string>",
"roomType": "<string>",
"guests": 0,
"bedrooms": 123,
"beds": 123,
"bathrooms": 123,
"isPetFriendly": true,
"rating": 123,
"reviews": 0,
"ratingCategories": {},
"ratingDistribution": {},
"highlights": [
{
"title": "<string>",
"description": "<string>"
}
],
"amenities": [
{
"isAvailable": true,
"group": "<string>",
"name": "<string>"
}
],
"houseRules": [
"<string>"
],
"safety": [
"<string>"
],
"location": {
"lat": 123,
"lng": 123
},
"area": "<string>",
"neighborhood": "<string>",
"images": [
{
"url": "<string>",
"caption": "<string>",
"alt": "<string>"
}
]
}
},
"creditsUsed": 123,
"requestId": "<string>"
}{
"success": false,
"error": {
"code": "cliSessionCompleted",
"message": "<string>",
"retryable": true,
"requestId": "<string>",
"retryAfterSeconds": 123
}
}{
"success": false,
"error": {
"code": "cliSessionCompleted",
"message": "<string>",
"retryable": true,
"requestId": "<string>",
"retryAfterSeconds": 123
}
}Airbnb
Airbnb listing API
Call the Airbnb listing API to get name, headline, description, property type, room type and guests, as JSON or markdown. 2 credits.
POST
/
v1
/
airbnb
/
listing
Get a listing's details, amenities and host
curl --request POST \
--url https://api.stophy.dev/v1/airbnb/listing \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"listing": "<string>"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({listing: '<string>'})
};
fetch('https://api.stophy.dev/v1/airbnb/listing', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.stophy.dev/v1/airbnb/listing"
payload = { "listing": "<string>" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"success": true,
"data": {
"listing": {
"url": "<string>",
"isGuestFavorite": true,
"host": {
"isSuperhost": true,
"isVerified": true,
"id": "<string>",
"name": "<string>",
"rating": 123,
"reviews": 0,
"yearsHosting": 0,
"bio": "<string>",
"responsePercent": 123,
"responseTime": "<string>",
"highlights": [
"<string>"
],
"avatar": "<string>"
},
"isLocationExact": true,
"id": "<string>",
"name": "<string>",
"headline": "<string>",
"description": "<string>",
"propertyType": "<string>",
"roomType": "<string>",
"guests": 0,
"bedrooms": 123,
"beds": 123,
"bathrooms": 123,
"isPetFriendly": true,
"rating": 123,
"reviews": 0,
"ratingCategories": {},
"ratingDistribution": {},
"highlights": [
{
"title": "<string>",
"description": "<string>"
}
],
"amenities": [
{
"isAvailable": true,
"group": "<string>",
"name": "<string>"
}
],
"houseRules": [
"<string>"
],
"safety": [
"<string>"
],
"location": {
"lat": 123,
"lng": 123
},
"area": "<string>",
"neighborhood": "<string>",
"images": [
{
"url": "<string>",
"caption": "<string>",
"alt": "<string>"
}
]
}
},
"creditsUsed": 123,
"requestId": "<string>"
}{
"success": false,
"error": {
"code": "cliSessionCompleted",
"message": "<string>",
"retryable": true,
"requestId": "<string>",
"retryAfterSeconds": 123
}
}{
"success": false,
"error": {
"code": "cliSessionCompleted",
"message": "<string>",
"retryable": true,
"requestId": "<string>",
"retryAfterSeconds": 123
}
}- Endpoint:
airbnb.listing - Returns:
datahaslisting. - Cost: 2 credits. Failed calls cost nothing.
- Paging: No.
Example
import { Stophy } from "stophy";
const stophy = new Stophy({ apiKey: process.env.STOPHY_API_KEY });
const result = await stophy.airbnb.listing({ listing: "https://www.airbnb.com/rooms/12345678" });
console.log(result.data.listing);
from stophy import Stophy
stophy = Stophy() # reads STOPHY_API_KEY
result = stophy.airbnb.listing(listing="https://www.airbnb.com/rooms/12345678")
print(result["data"]["listing"])
curl -X POST https://api.stophy.dev/v1/airbnb/listing \
-H "Authorization: Bearer $STOPHY_API_KEY" \
-H "content-type: application/json" \
-d '{"listing":"https://www.airbnb.com/rooms/12345678"}'
stophy airbnb listing https://www.airbnb.com/rooms/12345678
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
application/json