Formstack

REST API (v2)

The Formstack API allows users and 3rd party application to access certain resources programatically. This API tries to conform to REST principals.

API Methods

A list of all api methods (exposed as REST resources) can be found here:
Formstack API REST Resources

Request Formats

The Formstack API accepts two request data types: HTTP url encoded and JSON. By default, we expect HTTP url encoded. To use JSON, simply change the Content-Type header in your request to be "Content-Type: application/json" and put the JSON in the body of the request.

Response Formats

The Formstack API offers two response types: JSON (default) and XML. To indicate which response type you would like to receive, simply add .xml or .json to the end of any resource URIs. If an extension is not present, we will respond with JSON.

For example:
https://www.formstack.com/api/v2/form.json https://www.formstack.com/api/v2/form/12334/submission.xml

Obtaining an API key (OAuth2 Access Token)

All of our API calls require authenticaton. The REST API uses OAuth2 access tokens for this purpose. Creating an application record will also create an access token. Access tokens are tied to a Formstack user and follow Formstack (in-app) user permissions. Additional access tokens can be generated by the OAuth2 authorization process.

Authentication

Once you have an access token, you can make authenticated api calls. To do this, include the access token in the HTTP Authorization header:

Authorization: Bearer <access-token>

On any GET api calls, you can set the access token as a part of the query string:

https://www.formstack.com/api/v2/form.json?oauth_token=1w254t43t45

Rate Limits

To prevent abuse, the Formstack API is rate limited to 14,400 calls per access token per day.

Status Codes

For a list of Formstack API Status Codes, please click here.

V2 API Wrappers

We have Wrapper Libraries for the V2 API available in our GitHub account.