This page is for developers who are still using API V2. For everyone else please refer to the newest version of Smartwaiver's API.
Integrate Smartwaiver with your CMS, local database, and more. All participant information that was submitted by your customer is accessible (e.g: Full Name, Date of Birth, Custom Questions etc). All PDF files are accessible as well.
Not a Nerd?
APIs are intended for programmers only. If you have little or no programming experience, feel free to use one of our tools below:
Welcome Nerds!
There’s a special place in our collective heart for programmers that take the time to integrate Smartwaiver into their products. Please feel free to
Getting Started
This is similar to a REST API, which works with:
...and all other languages that can do HTTP requests.
How Do I use the API to...
Related Features
Waiver Types API documentation page This is useful if you need to get a list of waiver types for your account
To find your API key, login to your Smartwaiver account then go to:
https://www.smartwaiver.com/m/rest/
Replace every occurrence of "APIKEY" found in this manual with the API Key found in the above link.
https://www.smartwaiver.com/api/v2/?rest_request=APIKEY
Request will return all (up to 100) participants.
The Smartwaiver API will return XML data for every participant. It’s possible for a waiver to have
multiple participants. You can compare the participant's "waiver_id" (discussed below) to know if participants are listed on the same waiver.
The Smartwaiver API will never return more than 100 participants. Participants are listed by descending order based on the creation date.
If there are more than 100 records the XML response will include:
<more_records_exist>true</more_records_exist>
rest_limit |
Change the maximum number of participants returned. E.g. if set to 10 it'll return 10 participants (instead of the default). This value must be smaller than 100. |
rest_offset |
Skip the first [value] results and then return the next 100. |
Example:
https://www.smartwaiver.com/api/v2/?rest_request=APIKEY&rest_limit=20&rest_offset=100
Request will return records 101 to 120.
rest_request_hours |
Only return participants created in the past [value] hours. |
rest_accepted_hours |
Only return participants accepted in the past [value] hours. |
rest_request_utc |
Only return participants created after [value] UTC date. Date must be in one of the following formats: YYYY-MM-DD or YYYY-MM-DD HH:MM:SS |
rest_request_accepted_utc |
Only return participants accepted after [value] UTC date. Date must be in one of the following formats: YYYY-MM-DD or YYYY-MM-DD HH:MM:SS |
rest_waiverid |
Only return participants with the specified waiver_id. This may be more than one participant if the waiver contains multiple participants. |
rest_since_waiverid |
Only return participants created after the specified waiver_id. Typically you'll want to use this in conjunction with rest_asc (below). |
rest_asc |
By default the newest waiver is shown first. If you add rest_asc the oldest will be shown first. |
Example:
https://www.smartwaiver.com/api/v2/?rest_request=APIKEY&rest_request_hours=24
Request will return all participants created in the past 24 hours.
rest_request_lastname |
Only return participants with [value] as the last name. |
Example:
https://www.smartwaiver.com/api/v2/?rest_request=APIKEY&rest_request_lastname=silliman
Request will return all participants with the last name: silliman.
rest_request_dob |
Only return participants with [value] as the date of birth. The [value] must be in the format: YYYYMMDD. Tip: If month or day are less than 10 you must add a 0 in front. i.e. 198211 should be 19820101 |
Example:
https://www.smartwaiver.com/api/v2/?rest_request=APIKEY&rest_request_dob=19820101
Request will return all participants with the date of birth 01/01/1982.
rest_request_tag |
Only return participants with [value] as the tag. |
Example:
https://www.smartwaiver.com/api/v2/?rest_request=APIKEY&rest_request_tag=123
Request will return all participants with the tag 123.
rest_excludependingwaivers |
By default participants that are pending email validation are returned via the API. Including this will exclude participants pending email validation. |
Example:
https://www.smartwaiver.com/api/v2/?rest_request=APIKEY&rest_excludependingwaivers
Combine as many queries as you wish.
Example:
https://www.smartwaiver.com/api/v2/?rest_request=APIKEY&rest_request_lastname=silliman&rest_request_dob=19820101
Request will return all participants with the last name, silliman, and date of birth 01/01/1982.
All results are returned as XML. Example:
<xml>
<participants>
<participant>
<waiver_id>4faacff060823</waiver_id>
<firstname>mark</firstname>
<middlename/>
<lastname>silliman</lastname>
<dob>
<yyyymmdd>19840128</yyyymmdd>
<us_format>01/28/1984</us_format>
</dob>
<date_created_utc>2012-05-09 15:13:36</date_created_utc>
<pdf_url>NTA4YjIxMjA5NDUyYXx8fGEyYWM4OWRhMjlhOGE2NjZiN2I1MmY5MTliMmFujysdy7HUDS</pdf_url>
<tags>
<tag>123</tag>
<tag>234</tag>
</tags>
<customfields>
<customfield>
<guid>5gadcff060113</guid>
<title>What team are you on?</title>
<value>Elks</value>
</customfield>
</customfields>
<participant_phone>2103160941</participant_phone>
<participant_month>1</participant_month>
<participant_day>4</participant_day>
<participant_year>1984</participant_year>
<primary_email>mark@nospamplease.com</primary_email>
<waiver_title>Demo Tour 4</waiver_title>
<web_browsers_user_agent>
Mozilla/5.0 (Windows NT 6.0; WOW64) AppleWebKit/535.19 (KHTML, like Gecko)
Chrome/18.0.1025.168 Safari/535.19
</web_browsers_user_agent>
<completed_from_ip_address>208.100.173.34</completed_from_ip_address>
<marketingallowed>true</marketingallowed>
</participant>
</participants>
</xml>
|
waiver_id |
A unique ID which identifies the participant's waiver. This will always be unique to this document. |
participant_id |
A unique ID which identifies the individual participant. |
firstname |
Participant's first name |
middlename |
Participant's middle name |
lastname |
Participant's last name |
yyyymmdd |
Date of birth YYYYMMDD |
us_format |
Date of birth MM/DD/YYYY |
date_created_utc |
UTC time stamp when the waiver was created |
date_accepted_utc |
UTC time stamp when the waiver was accepted |
pdf_url |
To view the waiver point a browser to (note that you need to replace both APIKEY and VALUE_OF_PDF_URL): https://smartwaiver.com/api/v2/?rest_request=APIKEY&restapi_viewpdf=VALUE_OF_PDF_URL |
pending_email_validation |
Is the document pending email validation? (If true, the participant completed their waiver online and has not clicked on the confirmation link in their email). |
waiver_title |
Title of the document they completed |
participant_phone |
Phone number |
primary_email |
Email address |
web_browsers_user_agent |
Participant's user agent |
completed_from_ip_address |
IP address that the participant completed the waiver at |
marketingallowed |
Did the customer opt-in to your maillist? This will be true,false or "not asked". "not asked" means that the waiver asked for their email but did not ask permission to send them marketing email. False means that the customer opted out. True means that the customer opted in. |
parentofminor_firstname |
Parent or guardian's first name |
parentofminor_middlename |
Parent or guardian's middle name |
parentofminor_lastname |
Parent or guardian's last name |
parentofminor_phone |
Parent or guardian's phone number |
waiver_type_guid |
The unique identifier of the waiver type. This can be compared to Waiver Type API calls. |
how_many_auto_photo_capture_photographs_captured |
How many photographs were taken using auto photo capture. |
Custom fields are added in sets of three keys (title, value & guid). The reason why the title is not the key for the value is that the titles can be changed at any time meaning that if we did this custom question's value couldn't be compared. Therefore we use a static unique id for each customfield.
guid |
Unique ID |
value |
Value of the custom field |
title |
Title of the custom field |
value_iso8601 |
ISO8601 is only included for date fields. Example: If value is set to "January 2, 2013" value_iso8601 would be "2013-01-02". |
You can download any waiver's PDF using the Smartwaiver API. Select a language below for example code.
Instructions for using Webhooks