Introduction
Welcome to the AMS API documentation. This API allows you to integrate a PostgreSQL database and build AI based applications, connected with OpenAI and Voiceflow. With AMS, you can build a complex system that remembers users, saves their conversations with Voiceflow assistants and facilitates complex AI interactions.
Usage with Voiceflow
Voiceflow serves as a general-purpose AI assistant that can communicate with several other agents (OpenAI task-specific oriented AI assistants), enabling for more complex AI conversation flows.
This is done by creating assistants using Voiceflow Studio, and then connecting those assistants with OpenAI assistants through AMS.
AMS User Interface
This API works best when connected to a dedicated web application. A ReactTS client template can be found here (opens in a new tab). To better navigate the UI refer to the guides section.
An environment variable is needed to set the URL of the AMS API the client will communicate with.
VITE_API_URL: "YOUR-AMS-API-URL"
Who This Documentation is For
This documentation is intended for developers looking to build conversational AI based applications.
Use Cases
L&D
Create sophisticated AI powered learning apps (training employees, learning various kinds of material, etc.).
Streamlining processes
Create and automate task flows completed by AI.
HR Pre-processing
If you have many applicants for a position, you can create a 'pre-processing' system using AMS for initially filtering out unsuitable applicants based on a human-like interview with conversational AI.
Getting Started
To start using AMS, fork the project from the Github Repository (opens in a new tab). A PostgreSQL database needs to be created and environment variables need to be set. Then the API can either be deployed to a hosting service (e.g. Vercel) or run locally. Before running the API, you'll need to adjust some configuration, like allowed origins for CORS. We recommend reading through the Quick Start Guide to get up and running quickly.
Authentication
Authentication is mostly handled by CORS allowed origins, which can be set in the configuration file of the project. For more details about authentication, read more in the Authentication docs.
Rate Limits
Rate limits only apply to the login page. Because most requests to AMS cause calls to external APIs, which handle rate limiting, there is usually no need to handle it locally. Of course, this will most likely change in further updates. You can read more about rate limits in the Login route docs.
API Versioning
Our API adheres to the principles of Semantic Versioning (SemVer) to manage version changes and communicate the impact of each change to our users. Under this system, version numbers are assigned in the format of MAJOR.MINOR.PATCH
. Here’s how we apply these rules:
-
MAJOR version increments represent incompatible API changes. When we make breaking changes that may require you to alter your applications, we'll increase the major version number.
-
MINOR version increments indicate the addition of new, backward-compatible features. These are often associated with commits marked as
feat:
, signaling new functionality that doesn't interfere with the existing API’s operations. -
PATCH version increments are for backward-compatible bug fixes, denoted by
fix:
in our commit messages. These are small changes that correct issues within the current version without adding new features or changing the API usage.
In addition to feature (feat:
) and fix (fix:
) commits, you might also see maintenance-related commits marked as chore:
. These typically do not affect the version number unless they include bug fixes or other minor changes that contribute to the functionality or integrity of the API.