FlexDeploy API Guide

This API Guide provides detailed instructions for using the REST services included with FlexDeploy. See the FlexDeploy Installation Guide for information related to installation. See also the FlexDeploy Plugin Guides for detailed instructions for configuring and using the FlexDeploy plugins.

About FlexDeploy REST APIs

Version 1 of the FlexDeploy APIs follow accepted REST standards for services and have the following differences from that of version 0:

  • Version 1 uses Basic Authentication, whereas version 0 passes the credentials in the JSON payload.
  • Version 1 provides various GET, POST, PUT, and PATCH services whereas version 0 provides only POST.
  • Version 1 uses ids for referenced objects, where as version 0 uses names or codes. In version 1 there are GET services to lookup objects by name and code, and you can use the id from the returned object as input into other POST, PUT, or PATCH services.
  • Version 1 returns JSON representation of the associated object, whereas version 0 returns nothing or simple ids of the object.  Version 1 makes it easier to chain a series of API calls together when integrating from other tools in your tool chain, just as Jira and Jenkins.

We are in the process of migrating all services from version 0 to version 1, and deprecating version 0 as each service is migrated.  You should utilize the version 1 service where available.

In order to use Basic Authentication with WebLogic, please set enforce-valid-basic-auth-credentials to false in domain. You can add following after <node-manager-password-encrypted> in <security-configuration> tag.

<enforce-valid-basic-auth-credentials>false</enforce-valid-basic-auth-credentials>

It should be in this order: (AdminServer must be stopped to make changes in config.xml directly). You will also need to restart FlexDeploy managed server.

<security-configuration>
  ......
  <node-manager-password-encrypted>{AES}...............=</node-manager-password-encrypted>
  <enforce-valid-basic-auth-credentials>false</enforce-valid-basic-auth-credentials>
  <use-kss-for-demo>true</use-kss-for-demo>
</security-configuration>

Or, use wlst to set the property:

connect('weblogicUser','weblogicPassword','t3://host:port)
edit()
startEdit()
cd('SecurityConfiguration/Your_Domain')
set('EnforceValidBasicAuthCredentials','false')
save()
activate()

Version 2 API Details

Version 2 APIs use Basic Authentication.  In order to use Basic Authentication with WebLogic, please set enforce-valid-basic-auth-credentials to false in the domain. Version 2 API will eventually support API Key based authentication as well and it will eventually replace v1 and v0.

Version 1 API Details

Version 1 APIs use Basic Authentication.  In order to use Basic Authentication with WebLogic, please set enforce-valid-basic-auth-credentials to false in the domain.

Version 0 API Details

In version 0, credentials are passed in JSON input.