Skip to content

Introduction ​

The WillSuite API lets you easily expand the software's capabilities by connecting it with your own applications/forms/softwares. This integration allows for customisation, enabling developers to adapt the software to better fit their specific requirements and processes.

DANGER

All the data and examples presented are based on test data; please replace them with the actual data πŸ˜ƒ

Just getting started? ​

To access the WillSuite API, you must be a paying subscriber of our software. While the software's existing features will cover most needs, there may be instances where additional customisation is required.

To proceed, log in to WillSuite as an authorised admin user. Next, click on your name in the top navigation bar to reveal a dropdown menu, and select Admin Settings. Once there, choose API Settings from the left-hand menu.

In the API Settings section, you can generate or regenerate your API keys. Simply click the Generate API Key button, and follow the instructions provided to authenticate and use the API.

Navigation: Admin Settings > API Settings
Direct URL: https://client.willsuite.co.uk/admin-settings/api-settings

API Reference ​

We are dedicated to adhering to industry standards by implementing a RESTful API that conforms to OpenAPI v3 standards. REST offers notable advantages, including its efficient bandwidth utilization and support for various formats like plain text, XML, HTML, and JSON. In contrast, SOAP exclusively supports XML.

Furthermore, REST utilizes familiar syntax and protocols (such as JSON and the URI addressing protocol) that align with your existing web practices. This established foundation is readily available to all, reducing the workload for both users and developers when setting up their applications. Essentially, all RESTful APIs follow a similar, user-friendly interface format that is easily comprehensible and adaptable.

INFO

We will continue leveraging OpenAPI Specification - Version 3.0 for new features in our RESTful APIs.

INFO

Base url for WillSuite REST API is the following https://client.willsuite.co.uk/engine/api

About requests to the REST API ​

Each REST API request comprises an HTTP method and a path. Depending on the specific REST API endpoint, you may also be required to provide details such as request headers, authentication credentials, query parameters, or body parameters.

HTTP method ​

Each endpoint in the API is associated with a specific HTTP method, which determines the type of operation it performs on a particular resource. Commonly used HTTP methods include GET, POST, DELETE, and PATCH.

Where possible, the WillSuite REST API strives to use an appropriate HTTP method for each action.

  • GET: Get information.
  • POST: Add something new.
  • PATCH: Change existing details.
  • PUT: Replace or update things.
  • DELETE: Remove or discard something.

Path ​

Every endpoint has a path, like /cases/{customerCase}. The curly brackets {} in the path indicate path parameters that you must provide. These path parameters alter the endpoint path and are essential for your request.

Headers ​

Headers supply additional details about the request and the expected response. Here are a few examples of headers that you can include in your requests to the WillSuite REST API.

Content-Type ​

Most WillSuite REST API endpoints specify that you should pass a Content-Type header, which specifies the type of data being sent in the request body. The default value you will be required for most endpoints will be application/json. This means that by default, the data in the request body is expected to be in JSON format.

Authorization ​

Another crucial header is the Authorization header, which is essential for authenticating your requests to the WillSuite REST API. When making authorized requests, you must include this header along with a token. The token, often referred to as a bearer token, is a security credential that proves the authenticity of the request.

For example, you may include the Authorization header with a token value like: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJS… in your request. For detailed information on the authentication process, please refer to the documentation section on authentication.

Parameters ​

Numerous API methods either mandate or permit the inclusion of extra information through parameters in your request. These parameters come in several types: path parameters, body parameters, and query parameters.

Path parameters ​

Path parameters alter the endpoint path and must be included in your request.

Body parameters ​

Body parameters enables you to send extra information to the API. The necessity of these parameters varies based on the endpoint, where they can be either optional or mandatory.

Query parameters ​

Query parameters, you can influence the data returned in a request. Typically, these parameters are optional.

Understand the WillSuite APIs ​

You can select a programming language (such as PHP, .NET, Java, or any other language that you're comfortable with) to interact with WillSuite APIs.

Our API provides various functionalities empowering you to craft innovative solutions that harness the potential of WillSuite:

  • Case Management - Access and oversee cases, appointments linked to cases, address book entries, and pipelines.
  • More API functionalities will be added soon πŸ‘€

Rate Limits ​

What is Rate Limiting? ​

Rate limiting is a measure we've implemented to ensure fair usage of our API and maintain its stability and performance for all users. It sets a maximum number of requests that can be made to the API within a specified time period.

Our Rate Limit ​

INFO

For our API, the rate limit is set to: 60 requests per minute

You can make up to 60 API calls within any 60-second period.

What Happens If You Exceed the Limit? ​

If you exceed this limit, you'll receive an error response with a status code of 429 (Too Many Requests).

Best Practices ​

To avoid hitting the rate limit:

  1. Implement proper error handling in your application to catch and respond to rate limit errors.
  2. Consider caching API responses where appropriate to reduce the number of calls you need to make.
  3. Optimise your code to batch requests where possible, rather than making many individual calls.