Adding Reusable Base Parameters

An Application Service can contain several root resources, each with its own set of input and output parameters.  Use the Base Parameters page to define a set of parameters that can be reused for any root resource input or output parameters.

Base parameters can also be added directly from the Parameters page when the Application Service method is defined. See Adding Input and Output Parameters.

Select PeopleTools > Integration Broker > Application Services > Manage Application Service > Base Parameters

This example illustrates the fields and controls on the Base Parameters page. You can find definitions for the fields and controls later on this page.

Base Parameters page

When you select Base Parameters, the existing base parameters are listed. Click Add Base Parameter to add new base parameters.

This example illustrates the fields and controls on the Add Parameter Details page. You can find definitions for the fields and controls later on this page.

Add Base Parameters Details page

Field or Control

Description

Name

Enter a name for the parameter. The name entered must adhere to Oracle's naming standard.

Parameter Data Type

Data type for the parameter: Compound, Compound Array, Custom, Date, Integer, Number, Number List, String, String List, or Time.

Parameter Length

Optional length used for String and String List.

Value Type

The default value is run time. The other option is Fixed which indicates a constant. Fixed is only valid for data type String or Number.

Description

Description of the parameter.

JSON Metadata

For the Parameter Data Types of Compound, Compound Array or Custom the developer must supply a JSON schema to indicate the complex shape of the object. See Supplying JSON Schema

When you select Parameters for the Application Service, the base parameters will be available to use as input or output.

This example illustrates the fields and controls on the Parameters page. You can find definitions for the fields and controls later on this page.

Parameters page

For the Parameter Data Types of Compound, Compound Array or Custom the developer must supply a JSON schema to indicate the complex shape of the object.

Note: The schema when defined on the OpenAPI is not a complete schema as the schema is part of other schemas declared to construct the Open API. Therefore when the schema is pulled out to generate the OpenAPI it looks for the first "type" and takes everything from within there. So one could simply store a schema with the type but still must include the beginning brace { and ending brace } so that it still a valid schema. Note also that for Custom and Compound the first "type" must be defined as an "object". For a Compound Array the "type" must be "array".

Example Schemas for Compound or Custom

This example schema is part of the other schemas to define the overall shape as generated via Open API.

{
	"type": "object",
	"properties": {
		"Contact_name": {
			"type": "string",
			"maxLength": 60
		},
		"Contact_Title": {
			"type": "string",
			"maxLength": 30
		},
		"Contact_Phone": {
			"type": "string",
			"maxLength": 30
		}
	}
}

Here is another example.

{
"$schema": "http://json-schema.org/draft-06/schema#",
"title": "Contracts",
"type": "object",
"properties": {
"Contact_name": {
"type": "string", "maxLength": 60},
"Contact_Title": {
"type": "string", "maxLength": 30},
"Contact_Phone": {
"type": "string", "maxLength": 30}}
}

Example Schema for Compound Array

This example schema is part of the other schemas to define the overall shape as generated via Open API.

{
	"type": "array",
	"items": {
		"properties": {
			"Contact_name": {
				"type": "string"
			},
			"Contact_Title": {
				"type": "string"
			},
			"Contact_phone": {
				"type": "string"
			}
		}
	}

Schema's constructed from the JSON Specification Definition must also adhere to the OpenAPI definition for Schema's. Here is an excerpt from the OpenAPI definition with respect to JSON Schema's:

The following properties are taken from the JSON Schema definition but their definitions were adjusted to the OpenAPI Specification.

Property

Definition for OpenAPI Specification

type

Value MUST be a string. Multiple types via an array are not supported.

allOf

Inline or referenced schema MUST be of a Schema Object and not a standard JSON Schema.

oneOf

Inline or referenced schema MUST be of a Schema Object and not a standard JSON Schema.

anyOf

Inline or referenced schema MUST be of a Schema Object and not a standard JSON Schema.

not

Inline or referenced schema MUST be of a Schema Object and not a standard JSON Schema.

items

Value MUST be an object and not an array. Inline or referenced schema MUST be of a Schema Object and not a standard JSON Schema. Items MUST be present if the type is array.

properties

Property definitions MUST be a Schema Object and not a standard JSON Schema (inline or referenced).

additionalProperties

Value can be boolean or object. Inline or referenced schema MUST be of a Schema Object and not a standard JSON Schema. Consistent with JSON Schema, additionalProperties defaults to true.

description

CommonMark syntax MAY be used for rich text representation.

format

See Data Type Formats for further details. While relying on JSON Schema's defined formats, the OAS offers a few additional predefined formats.

default

The default value represents what would be assumed by the consumer of the input as the value of the schema if one is not provided. Unlike JSON Schema, the value MUST conform to the defined type for the Schema Object defined at the same level. For example, if type is string, then default can be "foo" but cannot be 1.