Package Information
Released: 7/17/2025
Downloads: 0 weekly / 0 monthly
Latest Version: 1.0.0
Author: davidstillson
Available Nodes
Documentation
n8n-nodes-rv-rental-api
This is an n8n community node for the RV Rental Management System API. It provides easy access to reservation data and management features directly within your n8n workflows.
Features
- Get All Reservations: Retrieve reservations with optional filtering by status, source, date range, and limit
- Get Reservation by ID: Fetch detailed information for a specific reservation
- Built-in Authentication: Secure API token authentication
- Error Handling: Comprehensive error handling with meaningful messages
- Type Safety: Full TypeScript support with proper typing
Installation
Community Nodes (Recommended)
- Go to Settings > Community Nodes in your n8n instance
- Click Install a community node
- Enter
n8n-nodes-rv-rental-api
- Click Install
Manual Installation
- Navigate to your n8n installation directory
- Run:
npm install n8n-nodes-rv-rental-api
- Restart n8n
Self-Hosted Installation
- Clone this repository
- Run
npm run build
- Copy the
dist
folder to your n8n custom nodes directory - Restart n8n
Configuration
1. Generate API Token
First, generate an API token for an admin user in your RV Rental system:
# Using Laravel Artisan
php artisan api:generate-token [email protected]
# Using Laravel Sail
./vendor/bin/sail artisan api:generate-token [email protected]
2. Set Up Credentials
- In n8n, go to Credentials
- Click Create New Credential
- Search for "RV Rental API"
- Fill in:
- Base URL: Your RV Rental system URL (e.g.,
https://bestillrvrentals.com
) - API Token: The token generated in step 1
- Base URL: Your RV Rental system URL (e.g.,
3. Test Connection
Click Test to verify your credentials work correctly.
Usage
Get All Reservations
Use this operation to retrieve reservations with optional filtering:
Available Filters:
- Status:
pending
,confirmed
,blocked
,cancelled
- Source:
direct
,rv_share
,outdoorsy
,manual
- Start Date: Filter reservations starting from this date
- End Date: Filter reservations ending before this date
- Limit: Maximum results (1-500, default: 100)
Example Output:
{
"id": 14,
"reference_number": "BRV-000014",
"listing_name": "2025 Jayco Jayflight SLX 260BH",
"start_date": "2025-08-01",
"end_date": "2025-08-05",
"nights": 4,
"status": "pending",
"customer_email": "[email protected]",
"total_amount": "850.00"
}
Get Reservation by ID
Retrieve detailed information for a specific reservation:
Input:
- Reservation ID: The numeric ID of the reservation
Example Output:
{
"id": 14,
"reference_number": "BRV-000014",
"listing": {
"name": "2025 Jayco Jayflight SLX 260BH",
"pricing": {...},
"add_ons": [...]
},
"customer_name": "John Doe",
"selected_add_ons": [...],
"pricing_details": {...}
}
Workflow Examples
1. Daily Pending Reservations Report
Schedule Trigger (daily)
→ RV Rental API (Get All, Status: pending)
→ Email (send report)
2. New Reservation Processing
Webhook Trigger
→ RV Rental API (Get by ID)
→ Condition (check status)
→ Send confirmation email
3. External Platform Sync
Schedule Trigger (hourly)
→ RV Rental API (Get All, Source: rv_share)
→ Process reservations
→ Update external systems
Error Handling
The node includes comprehensive error handling:
- 401 Unauthorized: Invalid or missing API token
- 403 Forbidden: Non-admin user attempting access
- 404 Not Found: Reservation doesn't exist
- 500 Server Error: API server issues
Enable Continue on Fail to handle errors gracefully in your workflows.
Development
Building
npm install
npm run build
Linting
npm run lint
npm run lintfix
Testing
npm test
Support
- Documentation: API Documentation
- Issues: GitHub Issues
- Community: n8n Community
License
MIT License - see LICENSE file for details.