An API – Application Programming Interface – is a set of functions that allow programs to interact with each other. Wild Apricot provides 2 separate APIs – an admin API that you can use retrieve or update data stored in your Wild Apricot database, and a member API you can use to create apps for your members.
If you don't yet have a Wild Apricot account, click here to start your free 30-day trial.
The retrieved data can be backed up, used to update another database, displayed on a web page, or passed onto another program for further processing or reporting.

The same application could retrieve data from an external database and use it to update your Wild Apricot database.
For example, you could use Wild Apricot's API to:
- Create an Excel file that retrieves all your contacts with a single click and automatically generates a report or a chart.
- Add code to a desktop database like Access or FileMaker that would regularly check your Wild Apricot account for new or updated records and automatically download them.
- Automatically retrieve and store backup copies of your Wild Apricot contact database on a regular basis.
- Develop your own website plugin to display a specially formatted list of your contacts – if Wild Apricot's member directory widget is not customizable enough for your needs.
- Update Wild Apricot email preferences using an unsubscribe list maintained through an external email system.
- Create and update payments in Wild Apricot using information stored in an external accounting system.
An API consists of a number of API calls, each of which performs a specific function. For example, Wild Apricot's MembershipLevels API call allows you to retrieve detailed information about your membership levels. As part of an API call, you can include parameters, which are instructions or information used by the API to process your request.
Wild Apricot's API is intended for use by developers with technical expertise. If you want to take advantage of this functionality but lack the technical knowledge, you can engage the services of an approved Wild Apricot partner. If you are a developer and need assistance, we provide support via email or through our Developers forum. By using Wild Apricot's API, you accept the API License Agreement. If you are not an experienced programmer, consider using Integromat to build automated workflows with Wild Apricot. For an introduction to what you can do with Integromat and some ideas to get started, click here.
Accessing Wild Apricot's APIs
Wild Apricot's APIs can be accessed from a 3rd-party server or application, or from a Wild Apricot site page. For information on differences between the two, see API access options.
Wild Apricot's API adheres to RESTful web service principles. Version 2 API calls take the form of HTML GET, PUT, POST, or DELETE requests formatted in either JSON (JavaScript Object Notation) or XML (Extensible Markup Language). Multiple API requests can be combined in a single batch request using the BATCH method.
Authentication
Each Wild Apricot API call must include authentication information that verifies your account and prevents others from accessing your data. The required authentication information – and how it is passed – differs depending on whether you are accessing the API from a 3rd party server or application, or from a Wild Apricot site page. For more information, see API access options.
Versioning
The version number of the Wild Apricot API is included in the API call to allow existing applications to function after new versions are released.
In the following example, the v2 value directs the call to version 2 of the Wild Apricot admin API.
GET https://api.wildapricot.org/v2/Accounts
A call to the base API – https://api.wildapricot.org – will return a list of available API versions.
The most recent version of Wild Apricot's API is 2.1. For a description of the differences between Version 2.0 and 2.1, click here.
API responses
Results from Wild Apricot API calls can be returned in either JSON (JavaScript Object Notation) or XML (Extensible Markup Language) formats. The default format is JSON.
To specify the response format, include the following field in the HTTP header:
Accept: application/{format}
where {format} can be either json or xml.
You can compress the response by including the following field in the HTTP header:
Accept-Encoding: gzip, deflate
For more information on compressing data in server responses, see HTTP compression.
API request limits
Currently, the limits on the number of API requests per minute are:
- 20 requests involving multiple contacts
- 60 requests involving single contacts
- 200 other requests.
Transitioning from API Version 1
You should keep the following in mind when you transition your application from Version 1 of the Wild Apricot's API to Version 2.
- Version 2 of Wild Apricot API's uses the OAuth authentication standard and issues OAuth authentication tokens. With Version 2, server-side authentication is a two-step process. In the first step, the client application requests an authentication token from the authentication server. In the second step, the authentication server returns an authentication token, which the client application uses in the API call.
- When accessing version 2 of Wild Apricot's API, an 3rd-party server or application must first be authorized to access your Wild Apricot account. During authorization, the application will be assigned a unique API key. Using the API key, your application can request an authentication token. For more information, see API access options.
- The root node for an XML response to an asynchronous Contacts API call is now ApiResponse. With Version 1, it was AsyncResult.