The Forms REST API lets organizations access and update their data from their own services. To start using the REST API, generate an Access Token with the guide below. Once you have an access token, you can authenticate by passing it to the API routes with the access_token GET parameter.
The permalink and submission_permalink parameters should be the form and submission's 10-character permalinks as they appear in URLs like /forms/FORM_PERMALINK/responses/SUBMISSION_PERMALINK
. The brackets are included to highlight the parameters, and should not be included in the actual URL.
GET https://forms.sonadier.com/api/v1/forms/[permalink]/submissions/[submission_permalink]?access_token={{Your Access Token}}
The Access Token can also be passed using the Authorization header, in the format below. The parentheses are only here for this example, and should not be used in your real request.
Authorization: Bearer (Your Access Token)
Generating Tokens
From your Settings panel, enter the Integrations tab. Under the Access Tokens section, click New Access Token.
Enter a name for the service using this access token. This name is for your reference, and isn't used for anything technical. You will only be able to see the token itself immediately after creating it, so it will be referenced with this name.
Once you've submitted the New Access Token form, a modal will appear containing the token. Once you close this modal, you won't be able to view your token again. You can cancel the token at any time and generate a new one.
Using Basic Authentication for Development
We strongly recommend that you do not use this method for production services. If you'd like to get started looking over API routes quickly while developing with a dummy account, you can use your username and password to authenticate your account for REST API routes. Pass them with the username and password GET parameters in the URL.
GET https://forms.sonadier.com/api/v1/forms/[permalink]/submissions/[submission_permalink]?username=my_username&password=my_password
The username and password parameters can also be passed with the Authorization-Username and Authorization-Password request headers, in the format:
Authorization-Username: username
Authorization-Password: password