Signup API Endpoint Documentation for Developers using Waitlist API
This is the main API to create new submissions to your Waitlist. This is an unauthenticated API, meaning that there is no authentication required. All objects returned are publicly viewable and do not expose sensitive data.
Create a Signup
This route creates a new Signup on a Waitlist.
- The Signup's contact information and the Waitlist ID are required. The default contact information is an email address, but you may configure in the features tab of your Waitlist dashboard to also require a phone number.
- If that email address or phone number has already been submitted for this Waitlist, then a Signup already exists. In that case, the existing Signup Object is returned.
- Since this is an unauthenticated endpoint, if the existing Signup object is returned, it will not contain any sensitive data that wasn't submitted in that call: for example, if a Signup has both an email address or a phone number, then only the one that was submitted will be returned (the other will not be retuerned, so as not to reveal sensitive data).
- If you have configured Questions and Answers on your waitlist, then you may also submit Signup Questions and Answers by API.
- This route only returns Unauthenticated Signup Objects since it is publicly accessible.
Required attributes
- Name
email
- Type
- string
- Description
The email address of this Signup. (This is the default. You may configure your Waitlist to not require an email address.)
- Name
waitlist_id
- Type
- integer
- Description
The ID for the Waitlist that the Signup is trying to sign up for.
Optional attributes
- Name
first_name
- Type
- string
- Description
The first name of the Signup. You may configure your Waitlist to require a name.
- Name
last_name
- Type
- string
- Description
The last name of the Signup. You may configure your Waitlist to require a name.
- Name
phone
- Type
- string
- Description
The phone number of the Signup. You may configure your Waitlist to require a phone number.
- Name
referral_link
- Type
- string
- Description
A URL including a referral token. This is the current page from which the Signup is signing up on the waitlist, i.e.
document.URL
.
- Name
metadata
- Type
- object
- Description
You may supply any JSON object as metadata about the Signup.
- Name
answers
- Type
- object
- Description
A JSON object of Waitlist questions to be shown on the Widget and answered by the Signup. This is an array of dictionaries, where in each dictionary the keys are
question_value
,optional
, andanswer_value
. Thequestion_value
is the question text,optional
is a boolean indicating whether the question is optional or not, and "answer_value" can be null (for a freeform text answer), or a list of strings for options to select from. Note: Make sure thequestion_value
matches the saved values via the getwaitlist.com dashboard (in widget builder).
Response
The response is an Unauthenticated Signup Object.
Request
curl --request POST \
--url https://api.getwaitlist.com/api/v1/signup \
--header 'Content-Type: application/json' \
--data '{
"email": "example9911@example.com",
"waitlist_id": 12345,
"referral_link": "https://getwaitlist.com/?ref_id=REFTOKEN1",
"metadata": {"my_data": 1234},
"answers": [{'question_value': "What is your favorite animal?", 'optional': false, "answer_value": "Cat"}],
}'
Signup Response Example
{
"amount_referred": 0,
"answers": [{'question_value': "What is your favorite animal?", 'optional': false, "answer_value": "Cat"}],
"created_at": "2022-04-10_18-34-28",
"email": "example9911@example.com",
"priority": 4985,
"referral_link": "https://getwaitlist.com?ref_id=4F0BTBMAB",
"referral_token": "4F0BTBMAB",
"referred_by_signup_token": "REFTOKEN1",
"removed_date": null,
"removed_priority": null,
"uuid": "c60ff9f2-1a58-4551-87ea-414991184fba",
"verified": false,
"waitlist_id": 12345,
}
Get a Signup
This route returns a Signup object if the user has signed up for your waitlist.
- The Signup's contact information and the Waitlist ID are required. The default contact information is an email address, but you may configure in the features tab of your Waitlist dashboard to only/also require a phone number.
- Since this is an unauthenticated endpoint, if the existing Signup object is returned, it will not contain any sensitive data that wasn't submitted in that call: for example, if a Signup has both an email address or a phone number, then only the one that was submitted will be returned (the other will not be retuerned, so as not to reveal sensitive data).
- If you have configured Questions and Answers on your waitlist, then you may also submit Signup Questions and Answers by API.
- This route only returns Unauthenticated Signup Objects since it is publicly accessible.
Required attributes
- Name
email
- Type
- string
- Description
The email address of this Signup. (This is the default. You may configure your Waitlist to not require an email address.)
- Name
waitlist_id
- Type
- integer
- Description
The ID for the Waitlist that the Signup is trying to sign up for.
Optional attributes
- Name
phone
- Type
- string
- Description
The phone number of the Signup. You may configure your Waitlist to require a phone number.
Response
The response is an Unauthenticated Signup Object.
Request
curl --request GET \
--url https://api.getwaitlist.com/api/v1/signup?waitlist_id=12345&email=example9911@example.com \
--header 'Content-Type: application/json' \
Signup Response Example
{
"amount_referred": 0,
"answers": [{'question_value': "What is your favorite animal?", 'optional': false, "answer_value": "Cat"}],
"created_at": "2022-04-10_18-34-28",
"email": "example9911@example.com",
"priority": 4985,
"referral_link": "https://getwaitlist.com?ref_id=4F0BTBMAB",
"referral_token": "4F0BTBMAB",
"referred_by_signup_token": "REFTOKEN1",
"removed_date": null,
"removed_priority": null,
"uuid": "c60ff9f2-1a58-4551-87ea-414991184fba",
"verified": false,
"waitlist_id": 12345,
}