English
Introduction
We publish everything related to our API on GitHub at the following address: https://github.com/eZmaxinc. You will find the Git repositories containing the specification, documentation, and SDKs.
The API Reference and SDKs are provided in English only to facilitate maintenance, but we also have French-speaking integrators who can assist you.
If you notice an error or omission in the documentation, please let us know. We will correct the issue promptly.
Integration
We strongly recommend scheduling an online meeting with your technical team and an eZmax integrator. During this meeting, you will review your project requirements, business logic, required configuration, API key generation, and the various functions that could be implemented to achieve your objectives. This is an excellent way to accelerate and secure your integration project.
If you have an eZsign Enterprise plan, API technical support is included. Authorized integrators and users enrolled in our developer program can also receive assistance by contacting our team at mailto:support-api@ezmax.ca.
For all other users, no technical support is provided for the API. We recommend working with an authorized integrator listed in our integrations list or contacting us for more information about our authorized developer program.
If you are eligible for technical support and the documentation does not meet your needs, please do not hesitate to contact us. We can assist you with your integration efforts and, when appropriate, make the necessary enhancements to the documentation to facilitate your integration work.
S'abonner aux releases du dépôt GitHub eZmax API
To be notified whenever a new version of our SDKs or documentation is published, you can subscribe to the releases of our GitHub repository.
If you don't already have a GitHub account, create one for free. Once you're signed in, go to the eZmax API repository on GitHub. In the Watch menu, select Custom.

Next, select Releases, then click Apply.

You will then automatically receive an email notification whenever a new release is published.
Philosophy
We use our own APIs to build our interfaces. In other words, there is no separate API for internal use: our teams and our clients use the same API. This means that anything that can be done in our application can also be automated using the API.
We strongly believe in open standards and open source. That is why we have adopted the OpenAPI philosophy, making all of our platform's features accessible through public reference files.
OpenAPI
OpenAPI is a specification for describing APIs in a standardized way, primarily for REST architectures.
One of the main advantages of the OpenAPI standard is its rich ecosystem. There are a wide range of commercial and open-source tools available for code generation, conversion, validation, and documentation generation, among other purposes. OpenAPI was previously known as Swagger. For example, the OpenAPI Tools website brings together numerous tools based on the OpenAPI standard. To learn more about the OpenAPI standard, visit the official OpenAPI Initiative website.
If you need our JSON reference files to work with these tools, they are available in the eZmax API repository, in the Specs section. There, you will find our API specifications (.json files), which are compatible with many tools, including code generators, converters, documentation generators, IDEs, and SDK generators.
In the following sections, we will explore the different ways to interact with our API.
API Integration Options
SDKs
We provide prebuilt SDKs to make it easier for our clients to integrate with our API. This is the simplest way to access its functionality.
These SDKs are generated using OpenAPI Generator, and we strongly recommend using them. Implementation examples are also provided to help you get started.
Most of our SDKs include documentation specific to the language being used. This documentation complements this documentation and the API Reference, which describes how the API works in general.
All available SDKs can be accessed through our GitHub repositories. The official SDKs for the main programming languages, including PHP and C#, are pinned at the top of our GitHub page for quick access.
If the programming language you use is not included in the available list, or if your requirements call for a specific approach, you can contact our technical team to assess the possibility of creating or publishing an SDK suited to your environment. You can also generate your own SDK using different standards by following the approach presented in the section on custom SDKs.
To ensure efficient distribution and simplified updates, some of our SDKs are distributed through major package managers, including:
Custom SDKs
You can generate and customize your own SDK using any generator compatible with OpenAPI 3.0, such as: OpenAPI Generator, Swagger Codegen or any other open-source or commercial solution. To do so, simply provide the OpenAPI specification file to your generator. The latest version of the specifications is available in the specs folder of our GitHub repository.
This approach is generally intended for advanced use cases that require greater control over SDK generation, particularly with regard to variable naming conventions, function naming, code structure, and namespaces.
We use OpenAPI Generator ourselves internally, as it is the official and recommended generator. It supports a wide range of programming languages and also offers advanced customization options. Other solutions are available, including generators integrated into certain integrated development environments (IDEs).
OpenAPI Generator also provides a section dedicated to advanced template customization, while Swagger Codegen also offers more advanced configuration and code generation options. These features are not covered in this documentation and are primarily intended for experienced developers with specific requirements.
Making REST Calls
In some cases, clients may use a programming language that is not supported by SDK generators or may prefer not to use an SDK, whether official or custom. This approach is also common in certain legacy environments or with less widely used programming languages.
You can then interact directly with our API using REST HTTP requests.
Our API is fully based on REST principles and supports the standard GET, POST, PUT, PATCH, and DELETE methods. It can therefore be used directly with any programming language capable of making HTTP requests, allowing requests to be sent directly to our endpoints.
This approach offers a great deal of flexibility, as you only need to refer to the API Reference to construct the appropriate requests and process the responses manually. Each endpoint is documented with the required parameters, request format, and response structure.
Automation Platforms
We are integrated with commercial automation platforms that allow users to create workflows and automate tasks and processes without requiring advanced development.
These platforms use a low-code approach, with visual components and predefined functional blocks.
We currently support the following platforms:
- Microsoft Power Automate, which is part of the Microsoft 365 suite. Please refer to the Power Automate technical documentation for installation, configuration, and setup details.
- Salesforce Flow, for which we recommend consulting the official documentation for information on configuring and using the platform.
These tools can be used to create event-triggered workflows, such as when a document is created, a signature is completed, or a user is added, and then chain actions such as retrieving data through our API, processing documents, or sending notifications to other systems such as SharePoint or messaging services.
With these integrations, power users can automate complete processes without having to make REST calls directly or use an SDK.
Partner Integrations
Several software developers have already integrated our API directly into their solutions, allowing their clients to enable the functionality without requiring manual integration.
For these partner integrations, the configuration is generally predefined, and activation can often be completed directly within the software being used. eZmax also includes a dedicated Integrations section that allows certain compatible integrations to be installed automatically. We recommend consulting the Integrations section to determine whether the solution can be installed directly or whether configuration with the provider is required.
Here is a non-exhaustive list of the integrations currently available:
This list of partner integrations may be updated regularly. To view the latest integrations, please refer to the dedicated section in the product.
If you are a software developer and would like to be added to this list of partner integrations, please contact our team to discuss the possibility of being added to the list.
Debugging
Postman
Postman is a tool used to design, test, and debug APIs. It can be used to send REST requests, view server responses, and validate the behavior of different endpoints.
To make it easier to use our API, eZmax provides a Postman reference ready to import. This reference contains the structure of the requests available in the API and provides an organization similar to the one presented in the online documentation.
To get started, download the latest version of the Postman reference available in the specs folder of the eZmax API GitHub repository.
Select the Postman reference file corresponding to the desired version, then click Download raw file to download the file.
In Postman, click the three-dot menu, then select Import. Next, select the reference file you downloaded earlier.

Once the import is complete, the eZmax API collection appears in Postman. Its structure corresponds to the organization of the objects and endpoints presented in the API documentation.
By opening the Variables section, you can configure the values used by the requests, including the environment, region, and authorization key.

Replace the default value (CHANGEME) with your own authorization key to authenticate the requests.
For example, to retrieve an existing eZsign folder, go to the Object_Ezsignfolder section, then select the Retrieve an existing Ezsignfolder operation. Enter the ID of the folder you want to retrieve and click Send to send the request to the server.

The response returned by the server is displayed directly in Postman, allowing you to verify the data received and understand how the request works.
Postman is therefore a useful complementary tool for reproducing API requests, validating parameters, and troubleshooting during integration development.
This section provides only an introduction to Postman’s main features. For more advanced use cases, refer to the official Postman documentation to explore the full range of capabilities offered by the tool.
Browser Developer Tools
Understanding how our software interacts with the API can greatly help you make the most of its features. If you are unsure how the API works or which parameters to send, your browser’s developer tools can provide valuable insights. They allow you to inspect network traffic and analyze the API requests made by the software.
This approach is particularly useful because our software itself uses our APIs. You can therefore directly observe the requests it sends and understand how different features are implemented, as well as how data flows between the software and the API.
This understanding will allow you to reproduce certain features, troubleshoot issues more effectively, and make informed decisions when integrating with our API.
Analyzing API Requests Using Browser Developer Tools
Browser developer tools are available in most modern browsers, including Google Chrome, Microsoft Edge, Mozilla Firefox, Safari, and others. Although their appearance and some features may vary depending on the browser, operating system, or version being used, the underlying principle remains the same.
In the documentation, the examples are presented using Google Chrome, but the same steps can be followed using the equivalent tools in other browsers.
If you want to understand how a software feature interacts with the API—for example, when creating an eZsign folder—open the Network tab and then select the Fetch/XHR filter. This will allow you to view all the REST requests exchanged between the application and the server while you are using the software.
After performing an action, such as creating a folder and moving to the next step, a new request appears in the list. In this example, a POST request is sent to the /3/object/ezsignfolder endpoint to create a folder. The 201 Created response code confirms that the resource was successfully created.

By selecting this request, several tabs allow you to examine the information exchanged with the API:
- Headers: allows you to view the HTTP headers, the URL that was called, and the method used.
- Payload: displays the parameters sent to the server in the request.

- Response: displays the data returned by the server.

The content of the Payload tab directly corresponds to the request structure described in the API Reference. Similarly, the Response tab contains the response returned by the server, which corresponds to the documented response structure.

If you have questions about which parameters to send or how an endpoint works, comparing this information with the documentation is an excellent way to understand the API's behavior. You can then reproduce the same calls in your own integration by using the same request and response structures as those used by the software.