Skip to content

Connecting and Authenticating

Licensing

The REST API is licensed a component of the Platform’s Application Server.

Information You Will Need

To be able to connect with the REST API, you will need to know the instance details:

Detail e.g. Comment
Site Base URL https://example.com This is the same base URL you use to access your system
Database Name DEMO1 Instance database name

API URL

The API URL is constructed as follows:

{Site Base URLl}/api/v2/database/{dbname}/{endpoint} 

e.g. https://example.com/mysite/api/v2/database/demo1/JmJob

For systems installed prior to mid 2023, you may also require the port number. All later systems are now setup with a proxy to avoid the need to know the port number.

If you do not have this information, please contact Xytech Technical Support.

API Users & Permissions

An API user needs to have been created as a user in the Platform. The user, must be enabled for REST API access by flagging 'Allow API Login' on the user setup.
As with all users, assign appropriate security roles (enable as a super user is not recommended).

Authenticating

OAuth 2.0 OpenID Authentication for REST API

Two methods are supported
- Client Credentials method (system to system access)
- SPA / browser sign-in method (interactive user authentication flow)

Pre-requisites
Your auth provider has been configured and the Xytech app server has been configured. (Azure and Okta/Auth0)

Client-Credentials method, from auth provider you needs:
- Access token URL
- Client ID
- Client Secret
- Scope

For SPA method you nee:
- Authorisation URL
- Access token URL
- Client ID
- Client Secret
- Scope

Summary flow:
Obtain token from auth provider
Use token to make REST API calls until token expires.

JWT Token authentication

For use case scenarios where database user accounts are employed.
Typical use might be for system to system authentication requirements.

Pre-requisite
Xytech app server has been configured for JWT authentication

Summary flow:
Retrieve token passing login credentials in the POST body
Use token for all subsequent API calls, until token expires

See additional authentication user guides for more details.

Basic Authentication

The REST API uses Basic Authentication and will require a login account.
Always use HTTPS encrypted protocol when communicating with the REST API to ensure credentials are not passed in clear text.