Managing OpenAPI documents

This document contains details about OpenAPI specification support, and the management of the OpenAPI document lifecycle, from importing, upgrading revisions, to deleting them.

3 minute read

OpenAPI specification support

Currently, OpenAPI flow-trigger supports the following specifications:

If you do not already have an OpenAPI specification to manage, you can read our guide on how to write OpenAPI documents.

Importing OpenAPI documents

You can import OpenAPI documents from the API Doc & Test page. Note that OpenAPI 2.0 and OpenAPI 3.0 are supported, but that OpenAPI 3.0 is the preferred standard for API Builder. Please see OpenAPI specification support for further details on the OpenAPI standards and their supported features.

OpenAPI import

Once loaded, you can update or delete the document as required.

Binding OpenAPI operations

The Quick start shows how to bind OpenAPI operations flows. When operations are bound, updating the OpenAPI document subsequently can affect bound operations.

Updating OpenAPI documents

Before updating your OpenAPI document, you should first be aware of how API Builder uses it, and what impact your changes might have. The main differentiator between “safe” and “unsafe” changes are whether or not an OpenAPI operation is not bound to a flow or not, or if the item being changed is related to a bound OpenAPI operation.

The details in the following sections are only relevant if operations are bound to flows. If operations are not bound to flows, you can update them without any affect.

Changing a bound operationId

Changing the name of a bound operation’s operationId is the same as deleting it and adding a new one with a new name. It is impossible to distinguish. When this happens, the old operation and flow will become unbound. To fix, edit the flow, and change the OpenAPI flow-trigger Method to use the new operationId.

Removing a bound operation

This is an unsafe update. If you remove an OpenAPI operation that is bound to a flow, the flow will become “unbound”, and the console window and UI will show an error that this happened. If you have no need of the flow, it is safe to delete.

Changing method, path, or path parameter of a bound operation

If your operation does not use an operationId, then changing the method, path, or path parameters of a bound operation is the same as removing a bound operation. This is discussed in the writing OpenAPI documents on how to manage your API more effectively. However, if your operation does use an operationId, then it is shielded against this.

Changes that may break a flow

In addition to directly manipulating the method, path, or path parameters of an Operation object, the following changes may break your flow and require additional changes in the flow editor.

  • Removing parameters
  • Renaming parameters (this is effectively removing them)
  • Changing parameter names (even capitalization)
  • Changing the request
  • Changing the response content-type or schema
  • Removing responses

Deleting OpenAPI documents

Deleting your OpenAPI documents is an action that should be taken with caution. It is an irreversible action that can have a big impact on your service as you are removing the OpenAPI document and all associated flows from it. Any unrelated flows will be preserved.

OpenAPI edit flow

Last modified May 18, 2022: Nantes Release Notes (#83) (2311332)