Integrations

SwaggerHub integrates with other development and API-related tools, which allows you to connect your API definitions to your existing toolset. For example, you can push API definitions to source control from SwaggerHub, generate API mocks or create webhooks to trigger your own workflows.

Integrations are configured for each API version individually. However, some integrations can be carried over when you create a new API version.

Supported integrations

OpenAPI

Below is a list of tools SwaggerHub integrates with, and the OpenAPI Specification versions that each integration supports.

Integration

SaaS

On-Premise

OAS 2

OAS 3

OAS 2

OAS 3

Mocking

API Auto Mocking

Source control (Git)

Azure DevOps Server

(formerly Team Foundation Server, or TFS)

1

Azure DevOps Services

(formerly Visual Studio Team Services, or VSTS)

1

1

Bitbucket Cloud (bitbucket.org)

2

2

Bitbucket Server (formerly Stash)

3

GitHub

3

GitHub Enterprise Server

3

GitLab

3

GitLab Community

3

GitLab Enterprise

3

IDEs

IntelliJ IDEA

Visual Studio Code

Build tools

Gradle plugin

Maven plugin

4

4

API management platforms

Amazon API Gateway

5

Amazon API Gateway + Lambda

6

Apigee Edge

7

Azure API Management

1

IBM API Connect

6

Miscellaneous

Webhooks

1 Requires SwaggerHub On-Premise v. 1.20.0 or later.

2 Requires SwaggerHub On-Premise v. 1.26.0 or later.

3 Requires SwaggerHub On-Premise v. 1.19.1 or later.

4 Requires SwaggerHub Maven plugin v. 1.0.5 or later.

5 Requires SwaggerHub On-Premise v. 1.19.3 or later.

6 Requires SwaggerHub On-Premise v. 1.27.0 or later.

7 Requires SwaggerHub On-Premise v. 1.21.0 or later.

AsyncAPI Integrations

The following integrations are supported for AsyncAPI:

Integration

SaaS

On-Premise

GitHub

GitLab

Webhooks

Bitbucket Cloud (bitbucket.org)

Bitbucket Server (formerly Stash)

Where is Style Validator?

Style Validator integration has been replaced with organization-level API Standardization. It is configured by the organization owners and applies to all APIs in their organizations.

Add and manage integrations

You can view API integrations in the SwaggerHub editor. To add or edit integrations, you must be the API owner or a collaborator with the Editor role.

  1. Open the API in the SwaggerHub editor.

  2. If the API has several versions, select the version the integrations of which you want to manage.

    Selecting an API version
  3. Click the API name to open the API info panel, then switch to the Integrations tab. Here, you can see the existing integrations and add new ones.

    Integrations list

    Click the image to enlarge it.

Can I add multiple integrations to the same API?

Yes. For example, you can have GitHub Sync and a webhook enabled for the same API.

An API can also use multiple copies of the same integration. For example, an API can use two instances of GitHub Sync to sync client SDKs with two different GitHub repositories.

Run integrations

Integrations are triggered automatically by certain events, typically, when you save an API. You can also trigger most integrations manually by clicking the button next to an integration in the list. An integration must be enabled in order to be triggered.

Triggering integrations from the menu

Enable and disable integrations

You can disable the integrations temporarily if you do not want to use them. To enable or disable an integration, open integration settings and select or clear the Enabled check box at the bottom:

The 'Enabled' property of integrations

Click the image to enlarge it.

Disabled integrations have the "power off" icon in the list of integrations.

The indicator that shows if an integration is enabled or disabled

Troubleshooting

Integration failures are indicated by an error message at the top of the editor. Click the message to view a list of failed integrations and the error details.

Viewing integration errors

Click the image to enlarge it.

To ignore a specific error, click Hide in the error list. This will hide this error until the next integration run. Alternatively, you can disable the problematic integration until the issue is resolved.

See Also

Publication date: