Limitations invoking a REST service

Some support limitations apply to REST services that are defined by an OpenAPI specification file.

When to invoke the service by using JavaScript

Any of the following circumstances require that you invoke the service by using JavaScript.
  • IBM Business Automation Workflow V
19.0.0.1To use a REST service, for which the OpenAPI file (previously known as Swagger) specifies an authentication type other than basic authentication or API key authentication (as a header or a query string parameter), you must use JavaScript to invoke the service.
  • To use a REST service, for which the OpenAPI specification contains objects that have no properties.
  • To use a REST service that specifies file types. You must specify the content-type multipart/form-data.
  • To use MIME types other than application/json. Note that a parameter of type string and format binary in combination with a MIME type other than application/json is not supported. At run time, the invocation is rejected with an exception.
  • To use the property enum for data types boolean, decimal, integer, string + format=date, and string + format=date-time.
  • To use parameter type formData.
For more details, see Invoking a REST service by using JavaScript.

Unsupported OpenAPI specifications

The following specifications are not supported.
  • Operations of the PATCH or TRACE methods cannot be invoked.
  • Properties allOf, oneOf , anyOf, and not are not supported.
  • Type integer with format int64 is not supported. If the value of the integer is greater than the supported integer number, you will encounter issues. For information about the range that is supported for the integer type, see Variable types in Process Designer. Note: If you want to invoke a REST service that returns int64 format integers, you can use JavaScript to invoke the REST service and then parse the string result that is returned in the content property of the BPMRESTResponse object.
  • OpenAPI v2 input files with $ref properties that reference elements in other locations than #/definitions/name (for schemas), #/parameters/name (for parameters), #/responses/name (for responses) are not supported.
  • IBM Business Automation Workflow V19.0.0.3OpenAPI v3 input files with $ref properties that reference elements in other locations than #/components/schemas/name (for schemas), #/components/parameters/name (for parameters), #/components/responses/name (for responses), #/components/requestBodies/name (for request bodies), or #/components/securitySchemes/name (for security schemes) are not supported.

Ignored OpenAPI specifications

The following specifications are ignored:
  • For the HTTP methods GET, HEAD, OPTIONS, and DELETE, any request body is ignored.
  • Property default is ignored for all types.
  • Properties maxLength and minLength for type string are ignored for parameters.
  • Property multipleOf for types integer and decimal is ignored.
  • Property allowEmptyValue is ignored.
  • Business object properties maxProperties, minProperties, and additionalProperties are ignored.
  • Business object array properties maxItems and minItems are ignored.
  • Formats email, password and hostname for type string are ignored.

Limitations

The following limitation applies:
  • Because the maximum name length of Business Objects in IBM® Business Automation Workflow is 64 characters, any objects in an OpenAPI file that have names longer than 64 characters cannot be created one-to-one in the Process Application. During discovery of an OpenAPI file that contains such objects, their names are automatically shortened. To find the original name for such renamed objects, look at the Type name field in the Advanced Properties section of the Business Object editor.