Skip to main content

Endpoint

Endpoints are Viron's primary components, and the term Endpoint means your service's backend administration RESTful API server, as an Endpoint URL means a URL to the server.

Some example endpoints are servers:

  • which work for production environments,
  • or others like local or development.

Viron users tend to have their dashboard with multiple endpoints, each with environments.

An endpoint's main tasks are:

  • To provide an OAS document.
  • To handle all the operations defined in the OAS document provided.
  • To support Viron-specific functions.

Requirements​

For Viron to be able to connect to an endpoint, below are requirements your server should meet:

  • The response body for the request from Viron, GET: {Endpoint URL}, should be a valid OAS document describing how your administration server works. Visit here for details on how to check if your OAS document is correctly formatted.
  • The server should use HTTPS protocol for secure communication over a computer network.
  • The server should be accessible publically. However, if it being accessible is not your option, visit here to learn how to make it private.
  • If the endpoint is private, it should provide Viron with ways to authenticate. Here is the documentation for how to do so.

How to Customize Appearance on the Dashboard​

Viron displays endpoints on a screen reading helpful information in an OAS document:

Below is a complete example of a fully-decorated endpoint:

{
"openapi": "3.0.2",
// OAS-defined Info Object
"info": {
"title": "Awesome service X - Production",
"version": "1.2.3",
// A URL to a page for terms of service.
"termsOfService": "https://sample.com/path/to/termsOfService",
// see: https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.2.md#contactObject
"contact": {
"name": "API Support",
// one of url and email is required.
"url": "https://sample.com/path/to/contact",
"email": "contact@sample.com"
},
// @see: https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.2.md#licenseObject
"license": {
"name": "License",
"url": "https://sample.com/path/to/license",
},
// Used as a URL to the endpoint icon.
"x-thumbnail": "https://sample.com/path/to/thumbnail.png",
// Theme of the endpoint.
"x-theme": "blue",
// An array of string values.
"x-tags": ["production", "QA"]
}
}