Wufoo's API, Webhooks, and URL Structure

Wufoo has a REST API and supports webhooks.

To find your API key, form's hash, or field API IDs, just open the API information for your form:

  1. Log in and go to Forms.
  2. To the right of the form, hover over More and click API Information.
  3. Copy your API Key, or look at the table to find your form's hash or field API IDs.
TIP! Check out our API documentation.

API Keys

To use the API, you'll need your API key, which you can find following the steps at the top of this page. This key acts as a password to your data, so be sure to keep it private!

To reset your API key, open your API key and click Reset. Any applications using your key will recieve an authentication error once you reset your key. You'll need to incorporate your new key into the code for them to continue working.

Form Hashes

Each entity you interact with in Wufoo (forms, reports, widgets, users, etc.) has a friendly URL and a hashed URL. A friendly URL is easy to read and remember, but changes based on the form title. A hashed URL is less memorable, but doesn't change when the form title changes.

While you can use a friendly URL in your API calls, if your form titles changes it'll break the code. We recommend the hashed URL since a form's hash will always stay the same.

Field API IDs

Field API IDs uniquely identify each field on your form. They are used in many API calls. You can find the API ID for each field following the steps at the top of this page.

Field IDs can be used when templating or with URL modifications to create a link to send a form with custom values already filled into fields.

URL Modifications

You can use URL modifications to prepopulate fields in your form. Add the Field API ID for the field you want to prepopulate and the value you want filled in to the end of your form's URL using the following format:

/def/fieldAPIID=CUSTOMVALUE.

You can use your hashed URL or the friendly URL and people filling out your form will be able to replace your custom values with their own responses when filling out your form. This feature can let you give users a place to start or provide instructional, placeholder text.

Combine custom values with an ampersand to fill in multiple fields using the same link. The below would place “wufoo” in field5 and “today” in field6 when your form loads. The end of the URL can carry on forever as long as it follows the fieldX=value&fieldY=value2 format.

http://username.wufoo.com/forms/form-name/def/field5=wufoo&field6=today
Certain special characters, like "@" will need to be URL encoded in your custom value to display properly in your form.

If you are using JavaScript to embed you pass custom values as a set of parameters like so: 'defaultValues':'field1=wufoo'. For example:

 
<div id="wufoo-m7x3w7">
Fill out my <a href="http://username.wufoo.com/forms/m7x3w7">online
form</a>.
</div>
<script type="text/javascript">var m7x3w7;(function(d, t) { var s = d.createElement(t), options = { 'userName':'username', 'formHash':'m7x3w7', 'autoResize':true, 'height':'234',
 
// NOTE: This is the line we are adding to the default snippet.
'defaultValues':'field5=wufoo&field6=today',
 
 
'async':true,
'header':'show'};
s.src = ('https:' == d.location.protocol ? 'https://' : 'http://') + 'wufoo.com/scripts/embed/form.js';
s.onload = s.onreadystatechange = function() { var rs = this.readyState; if (rs) if (rs != 'complete') if (rs !=
'loaded') return;
try { m7x3w7 = new
WufooForm();m7x3w7.initialize(options);m7x3w7.display(); } catch (e) {}}; var scr = d.getElementsByTagName(t)[0], par = scr.parentNode; par.insertBefore(s, scr); })(document, 'script');</script>
 

Webhooks

If you're running up against your API request limit, webhooks may be a solution. Learn more about creating webhooks with the Wufoo API.

To set up your form so it sends field metadata to your webhooks:

  1. Log in and go to Forms.
  2. To the right of the form, hover over Edit and click Add Notifications.
  3. Click the dropdown menu and choose WebHook.
  4. Click Add Integration.
  5. Enter your WebHook URL—the URL where Wufoo should send the HTTP POST.
  6. Enter your WebHook Handshake Key (optional).
  7. Select Include Field and Form Structures with Entry Data if you'd like the POST request to include metadata about your form’s fields.
  8. Click Save.
How to find your API keys, form hashes, and field IDs or set a form to send field metadata to a webhook.

Create online forms

Add HTML forms to your site in a snap—no coding required.

Change Language