@axway-api-builder-ext/syncplicity-connector

Use this connector to integrate with Axway Syncplicity

Usage no npm install needed!

<script type="module">
  import axwayApiBuilderExtSyncplicityConnector from 'https://cdn.skypack.dev/@axway-api-builder-ext/syncplicity-connector';
</script>

README

API-Builder Syncplicity Connector

Use this connector to communicate with the Syncplicity by Axway and make it part of your API-Management platform.

Installation

To install it into you API-Builder project execute:

npm install @axway-api-builder-ext/syncplicity-connector --no-optional

To install a specific version please use:

npm install @axway-api-builder-ext/syncplicity@1.0.0 --no-optional

This connector is using the Swagger-Flow node:
https://docs.axway.com/bundle/API_Builder_4x_allOS_en/page/swagger_flow-node.html

Configuration

After restarting your API-Builder project you get the following connector:
Syncplicity Node
Depending on the selected method different options appear on the right, when using the connector as part of the flow.
Syncplicity Node Settings

Setup Syncplicity connector

A new config file has been automatically created for the Syncplicity Connector which can be used to setup the connection details:
Syncplicity Node Settings
Additional details can be found here: https://docs.axway.com/bundle/API_Builder_4x_allOS_en/page/swagger_flow-node.html#Swaggerflow-node-ConfiguretheSwaggerplugin

Please note, that the connector is configured to use OAuth 2.0 to communicate with Syncplicuty. In order to use that, please configure the Authentication-Credentials as described here:
https://docs.axway.com/bundle/API_Builder_4x_allOS_en/page/oauth_2_0_credentials.html

module.exports = {
    // The configuration settings for your Swagger service.
    pluginConfig: {
        '@axway/api-builder-plugin-fn-swagger': {
            'syncplicity': {
                // It is possible to override Swagger URI options when constructing
                // outbound requests from the Swagger plugin.
                uri: {
                    // protocol: 'https',
                    // host: 'hostname',
                    // port: 443,
                    // basePath: '/api'
                }
            }
        }
    },
    // The following authorization credentials needed to use the Swagger service.
    // Please follow this guide to manually configure the credentials:
    // https://docs.axway.com/bundle/API_Builder_4x_allOS_en/page/api_builder_credentials.html
    authorization: {
        credentials: {
            'Syncplicity oauth': {
                type: 'oauth2',
                flow: 'accessCode',
                authentication_url: 'https://api.syncplicity.com/oauth/authorize',
                token_url: 'https://api.syncplicity.com/oauth/token',
                scope: 'readwrite read',
                client_id: 'YOUR_CLIENT_ID_GOES_HERE',
                client_secret: 'YOUR_SECRET_GOES_HERE',
                access_token: null,
                refresh_token: null
            }
        }
    }
};

Compatibility

Tested with Syncplicity version Q1/2020

Changelog

  • 1.0.0 - 02.02.2020
    • Initial version

Limitations/Caveats

  • OAuth doesn't work with API-Builder - Will be fixed with release 16.02.20 Adjust the following to make it work
    In node_modules@axway\axway-flow-authorization\src\handlers\oauth2.js
    In function oauthRequest add an HTTP-Basic Authorization header (headers) based on client-id & secret
    Example:
    'Authorization': 'Basic YWQ0ODA1YWUtZ........Y2JlOGQ0OTI5YQ=='

Contributing

Please read Contributing.md for details on our code of conduct, and the process for submitting pull requests to us.

Team

alt text Axway Team

License

Apache License 2.0