OpenAPI Naming Reference
This document describes naming rules for OpenAPI files. All OpenAPI specifications must be kept in GitLab folder structure. We have three main scenarios:
1. Standard API written in core systems
They are stored in the git project in “openapi/base” folder. Mainly we keep one OpenAPI file per all standard APIs. There is exception is CRM. API specification for CRM is kept separately as we want to have it described but we do not plan to expose it to the customers.
File name pattern:
openapi/base/{version}/iptor-{backend application}-api.json
where:
- {version} = v1
- {backend application} = erp
Currently tha OpenAPI specification is in file: openapi/base/v1/iptor-erp-api.json
2. API developed for customers (Cloud-Private only)
They are stored in the git project in “openapi/{customer name}” folder.
File name pattern:
openapi/{customer name}/{version}/{customer name}-{backend application}-api.json
For example:
- {customer name} = space-x
- {version} = v1
- {backend application} = erp
Then the file name wil be: openapi/space-x/v1/space-x-erp-api.json
3. API developed for on-prem customers
In this case PS project should keep their own OpenAPI specifications in their own Git. We recommend the same file naming rule as above.
File name pattern:
..../{version}/{customer name}-{backend application}-api.json
For example:
- {customer name} = space-x
- {version} = v1
- {backend application} = erp
Then the file name will be: …/v1/space-x-erp-api.json
Reserved names
There are two OpenAPI specifications which we use in Aperio (API Bridge). They are part of API Bridge repository.
- aperioCore.json - This OpenAPI file describes core functionality of API Bridge like health, admin, rpc endpoints
- aperioTest.json - This OpenAPI file describes special test API endpoints which can be used to test API Bridge itself.