Chapter 1. Creating a new service based on OAS
1.1. Introduction Copy linkLink copied to clipboard!
This documentation outlines the features of OpenAPI 2.0 specification (OAS) in Red Hat 3scale 2.7 and provides steps to update an existing service or create a new one.
1.2. Prerequisites Copy linkLink copied to clipboard!
- OpenAPI Specification (OAS)
-
A 3scale 2.7 instance tenant credentials (
tokenorprovider_key)
1.3. Features of OpenAPI Specification Copy linkLink copied to clipboard!
ActiveDocs are created/updated when importing OpenAPI (OAS)
-
Service’s
system_namecan be passed as an option parameter and defaults to info.title field from OAS. Methods are created for each operation from the OAS.
-
Method names are taken from
operation.operationIdfield.
-
Method names are taken from
All existing mapping rules are deleted before importing a new API definition.
- Methods will be not deleted if they exist before running the command.
- Mapping rules are created on each operation from the OAS.
The OpenAPI definition resource can be provided by one of the following channels:
- Filename in the available path
- URL format - toolbox will try to download from given address.
- Read from stdin standard input stream.
1.4. Using OpenAPI Specification Copy linkLink copied to clipboard!
1.4.1. Detecting OpenAPI definition from the filename path Copy linkLink copied to clipboard!
The allowed formats are json and yaml. The format is automatically detected from filename extension.
3scale import openapi -d <destination> /path/to/your/spec/file.[json|yaml|yml]
$ 3scale import openapi -d <destination> /path/to/your/spec/file.[json|yaml|yml]
1.4.2. Detecting OpenAPI definition from a URL Copy linkLink copied to clipboard!
The allowed formats are json and yaml. The format is automatically detected from URL’s path extension.
3scale import openapi -d <destination> http[s]://domain/resource/path.[json|yaml|yml]
$ 3scale import openapi -d <destination> http[s]://domain/resource/path.[json|yaml|yml]
1.4.3. Detecting OpenAPI definition from stdin Copy linkLink copied to clipboard!
The command line parameter for the OpenAPI resource is -.
The allowed formats are json and yaml. The format is automatically detected internally with parsers.
tool_to_read_openapi_from_source | 3scale import openapi -d <destination> -
$ tool_to_read_openapi_from_source | 3scale import openapi -d <destination> -