This guide allows new users with working experience in HCL Notes and HCL Domino to quickly get started with Domino REST API.
Downloading Domino REST API
Log in to Flexnet to and download Domino REST API.
Join us for questions, discussions, ideas and feedback over at OpenNTF's Discord server.
Check What's New to learn what's new in Domino REST API.
The Domino REST API schema
You won't find the Domino REST API schema here. Samples and explanations, configuration and steps - yes. The actual schema however resides on your Domino REST API server instance as OpenAPI specification. You can read and explore it directly with your own data.
A few phrases you should know
- A database exposed on the API is referred to as a scope. The exposure happens through an entry in Domino REST API's configuration database by an administrator with
Editoraccess there. The scope gets used in the URLs as
?dataSource=[scopename]. Scopes for databases are lowercase only
- The shape of data available is referred to as a schema. The schema is an json file in the design resources of the database. It gets created by a developer with
Designeraccess to the NSF
- A Domino REST API Application is an OAuth compatible definition of a
client_secretas well as the list of permitted scopes
- A scope points to a schema that is contained in a database. A database can have multiple schemas for different use cases and a schema can be pointed to by more than one scope
Pick the name of your scope wisely. It's the external name you share with others and thus hard to change without breaking external apps
Let's get started
To get up and running quickly, you will need to:
- Install Domino REST API on a Notes client or a Domino server.
- Pick a database you want to work with (you could use demo.nsf).
Use the Domino REST API to create a schema REST access (if you dare, use Domino Designer).
Pick the forms and fields to expose.
- Pick the views you want to be REST accessible.
Pick the agents. (Optional)
Use the Domino REST API to create a scope.
- Try out the API.
You can use the built-in Swagger API, Postman and Curl, or the Admin UI. To help you, use one of the following tutorials. We have a curl based Domino REST API shell script for you to play with.
Make sure to complete the post installation steps to ensure proper operation
- Easy steps on this site
- A tutorial for the skilled Notes developer
- Similar to the previous one, but from the viewpoint of a skilled web developer
- Explore on your own using a Postman collection
The Postman collection has sample interactions with the local sample
Demo.nsf, go check it out
- Domino developer: creates the schema that defines what data can be accessed in a nsf database
- Domino administrator: creates and activates the scope that defines how the data can be accessed. Also creates (optional) OAuth compatible applications with
- VoltMX administrator: configures Volt MX's foundry middleware to interact with Domino REST API using the foundry Domino REST API adapter
- Application developer: develops applications leveraging Domino REST API Endpoints, VoltMX services and front-end tools like VoltMX Iris, VSCode or any tools and framework of choice
Read more about them in Domino REST API
Ensure your endpoints are secure. Bring up a browser and verify that you can hit these endpoints:
|Domino REST API Home Page||8880||Start page|
|Live Domino REST API||8880||Interact live with the API|
|Admin UI||8880||Login with an admin user. LocalDomainAdmin member|
|Management API||8889||Access to the log and runtime info|
|Prometheus Metrics||8890||Performance info in Prometheus format. Protected with basic authentication (metrics/metrics)|
|Health check endpoint||8886||Server healthcheck endpoint as used by Kubernetes or Openshift|
Based on your interest, start by exploring the following sections of this documentation:
- Dive deeper into installation and configuration
- Learn more about using Domino REST API.
- Explore the internal working of Domino REST API and know more about the Barbican.