Automatically send liability waivers to guests when a booking is created in your property management system.
The STR Integration automatically sends a liability waiver to guests when a booking is created in your property management system (PMS). Once connected, guests receive the waiver by email and you can see signing status in your Simple Waivers dashboard before check-in.
Any booking platform capable of sending webhooks or connecting to Zapier/Make can be used.
Generate an API key in Simple Waivers
Add your properties and map each one to a waiver
Set up a Zapier or Make automation for new bookings
Configure the webhook action to POST to Simple Waivers
In your Simple Waivers dashboard, go to STR Integrations → API Keys and click Generate new key.
Copy or save the key immediately. It is only shown once. Store it somewhere safe (e.g. a password manager or your Zapier/Make secret store).
The key format looks like:
sw_live_a1b2c3d4e5f6...
Each rental property must be added to Simple Waivers and linked to a waiver.
Go to STR Integrations → Properties and click Add Property.
| Field | What to enter |
|---|---|
| Property Name | Human-readable name, e.g. "River House" |
| Property ID | The ID your PMS uses for this property |
| Assigned Waiver | Select the waiver guests will be asked to sign |
The Property ID is what Simple Waivers uses to route each booking to the correct waiver. It must match exactly what your PMS sends in the webhook payload.
This ID can be numeric or text depending on your PMS. Simple Waivers treats it as a string and matches it exactly, so make sure it matches character-for-character with no extra spaces.
hostaway.com/listings/12345 → Property ID is 12345.If a native Zapier integration is unavailable:
https://simplewaivers.com/api/integrations/booking-created
JSON| Field | Zapier mapping |
|---|---|
reservationId | Reservation ID from your PMS |
propertyId | Listing/Property ID from your PMS |
guestName | Guest full name |
guestEmail | Guest email address |
checkIn | Check-in date (YYYY-MM-DD) |
checkOut | Check-out date (YYYY-MM-DD) |
Under Headers, add:
Authorization: Bearer sw_live_YOUR_API_KEY_HERE
Content-Type: application/json
Test the step. You should see a 200 OK response with "success": true.
Alternatively, use a native Make module for Hostaway or Guesty if available.
https://simplewaivers.com/api/integrations/booking-createdAuthorization: Bearer sw_live_YOUR_API_KEY_HERE and Content-Type: application/json{
"reservationId": "{{1.reservationId}}",
"propertyId": "{{1.propertyId}}",
"guestName": "{{1.guestName}}",
"guestEmail": "{{1.guestEmail}}",
"checkIn": "{{1.checkIn}}",
"checkOut": "{{1.checkOut}}"
}
Run the scenario once with a test payload to verify the connection.
Once your Zapier or Make automation is configured:
"success": true in the Zapier/Make run logIf any step fails, see the Troubleshooting and Error Reference sections below.
This is the exact request Zapier or Make sends to Simple Waivers:
POST /api/integrations/booking-created HTTP/1.1
Host: simplewaivers.com
Authorization: Bearer sw_live_a1b2c3d4e5f6...
Content-Type: application/json
{
"reservationId": "res_789",
"propertyId": "prop_456",
"guestName": "John Smith",
"guestEmail": "john@example.com",
"checkIn": "2026-05-10",
"checkOut": "2026-05-13"
}
{
"success": true,
"reservationId": "d4e5f6a1-...",
"waiverLink": "https://simplewaivers.com/guest-waiver.html?code=XYZ123",
"emailSent": true
}
If the same reservationId is received again, Simple Waivers returns the existing record without re-sending the email:
{
"success": true,
"alreadyExists": true,
"reservationId": "d4e5f6a1-...",
"waiverLink": "https://simplewaivers.com/guest-waiver.html?code=XYZ123"
}
Once a booking is received, Simple Waivers automatically emails the guest with the subject "Please complete your liability waiver before arrival" and a "Sign Waiver" button linking to the waiver form. The guest can sign in under a minute on any device.
reservationId is processed at most once per host to prevent duplicate waivers.
Check that guestEmail is being mapped correctly in your automation. The field is optional in the API but required for email delivery. Verify the email address in your PMS is accurate.
The emailSent: false field indicates the email failed. Check the guest email address is valid. You can copy the waiverLink from the response and send it manually as a fallback.
The propertyId in your webhook payload must exactly match the Property ID you entered in Simple Waivers. Check for leading/trailing spaces or different ID formats (numeric vs. string).
Booking platforms sometimes resend events. Simple Waivers handles this automatically. If the same reservationId arrives twice, the second request returns alreadyExists: true and no duplicate email is sent.