Published REST Services

Last modified: August 20, 2024

Introduction

Add a published REST service to expose your entities and microflows to other apps using the REST standard.

Published REST Service

For an overview of the available options when you add a published service, see Published REST Service.

You can easily expose an entity via REST by right-clicking the entity in the domain model and selecting Expose as REST resource.

To publish a microflow as a REST operation, right-click anywhere in the editor and select Publish as REST service operation.

Authentication

Published REST services can be secured with basic authentication, active session authentication, and custom authentication. Basic and active session authentication are the default and are automatically applied when you set the security level of your app to Prototype / demo or Production.

If you don’t want basic authentication, there are three options:

  • You can choose to have no authentication for specific published REST services.
  • When you allow anonymous users to your app, published REST services become available without authentication. This only applies if the anonymous user has been selected for the allowed roles for the published service, and Username and password has been selected as the authentication method.
  • You can implement custom authentication using a microflow.

For more details, see Published REST Routing and the Requires Authentication section in Published REST Service.

Documentation

Every published REST service is automatically documented. This documentation is available in the app under http://yourapp.com/rest-doc/. Each service has an interactive documentation page using Swagger UI. You can interact with the service to see how it behaves.

The documentation of the services is available in the OpenAPI 3.0 and OpenAPI 2.0 formats, which is readable by many systems and tools. It contains JSON Schemas for the messages definitions.

Logging

To log detailed information about interaction with your published REST service, set the log level of the REST Publish log node to Trace.