This is an n8n community node that lets you scrape Airbnb listing data using the Airbnb Analyzer API.
- Scrape Listing Data: Extract comprehensive data from any Airbnb listing including:
- Title, description, and property details
- Pricing information
- Host profile and reviews
- Amenities and house rules
- Location data
- And more...
Follow the installation guide in the n8n community nodes documentation.
npm install n8n-nodes-airbnb-scraper- Go to Settings > Community Nodes
- Select Install
- Enter
n8n-nodes-airbnb-scraperand confirm
You need an API token to use this node. To get one:
- Visit shortrentals.ai to get your token:
- Once you have your token, add it in n8n:
- Go to Credentials
- Click Add Credential
- Search for "Airbnb Scraper API"
- Enter your API token
Scrapes data from an Airbnb listing.
Parameters:
- Listing ID (required): The Airbnb listing ID (found in the URL after
/rooms/) - Timeout: Maximum seconds to wait for scraping (default: 120)
Example:
For the URL https://www.airbnb.com/rooms/1501733424018064312, the listing ID is 1501733424018064312.
- Add the Airbnb Scraper node to your workflow
- Select your credentials
- Enter the listing ID
- Execute the node to get the listing data
The node returns comprehensive listing data including:
{
"title": "Cozy Downtown Apartment",
"description": "...",
"maxGuests": 4,
"bedrooms": 2,
"bathrooms": 1,
"location": {
"city": "New York",
"country": "United States"
},
"pricing": { ... },
"amenities": [ ... ],
"reviews": { ... },
"hostProfile": { ... }
}- n8n version 1.0.0 or later
- Node.js 18.x or later
- Node.js 18.x or later
- npm or pnpm
- n8n installed locally for testing
# Clone the repository
git clone https://github.com/ShortRentals-AI/n8n-nodes-airbnb-scraper.git
cd n8n-nodes-airbnb-scraper
# Install dependencies
npm install
# Build the node
npm run build# In the node package directory
npm link
# In your n8n installation directory
npm link n8n-nodes-airbnb-scraper
# Start n8n
n8n start- Create a custom nodes directory:
mkdir -p ~/.n8n/custom- Copy or link the built node:
# Option A: Symbolic link (recommended for development)
ln -s /path/to/n8n-nodes-airbnb-scraper ~/.n8n/custom/n8n-nodes-airbnb-scraper
# Option B: Copy the package
cp -r /path/to/n8n-nodes-airbnb-scraper ~/.n8n/custom/- Set the environment variable and start n8n:
export N8N_CUSTOM_EXTENSIONS="~/.n8n/custom"
n8n startIf using n8n with Docker:
docker run -it --rm \
--name n8n \
-p 5678:5678 \
-v ~/.n8n:/home/node/.n8n \
-v /path/to/n8n-nodes-airbnb-scraper:/home/node/.n8n/custom/n8n-nodes-airbnb-scraper \
-e N8N_CUSTOM_EXTENSIONS="/home/node/.n8n/custom" \
n8nio/n8n- Start n8n with your custom node loaded
- Open n8n in your browser (default: http://localhost:5678)
- Create a new workflow
- Search for "Airbnb Scraper" in the nodes panel
- Add the node and configure credentials
- Enter a test listing ID (e.g.,
1501733424018064312) - Execute the node and verify the output
-
Update
package.json:- Ensure
nameis unique on npm - Update
versionfollowing semver - Verify
repositoryURL is correct - Check
authorandlicensefields
- Ensure
-
Create an npm account if you don't have one:
npm adduser- Login to npm:
npm login# Clean previous builds
rm -rf dist
# Build the package
npm run build
# Verify the build output
ls -la dist/# Dry run to check what will be published
npm publish --dry-run
# Publish to npm
npm publish --access public- Check your package on npm: https://www.npmjs.com/package/n8n-nodes-airbnb-scraper
- Wait a few minutes for npm to index the package
- Test installation in a fresh n8n instance:
npm install n8n-nodes-airbnb-scraper- Make your changes
- Update the version in
package.json:
npm version patch # for bug fixes
npm version minor # for new features
npm version major # for breaking changes- Build and publish:
npm run build
npm publish- Verify the build completed successfully:
ls dist/ - Check n8n logs for errors when starting
- Ensure
N8N_CUSTOM_EXTENSIONSis set correctly - Restart n8n after making changes
- Verify the credential name matches in both files
- Check the Bearer token format in the API response
- Test the API endpoint directly with curl:
curl -X POST https://scraper.shortrentals.ai/api/scrape/listing \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"listingId": "1501733424018064312"}'- Ensure all dependencies are installed:
npm install - Check TypeScript version compatibility
- Verify
n8n-workflowtypes are installed