REST Server UDR Types

The REST type is used to pass data between the workflow and REST Server agent. 

FieldDescription
error (Error(REST)) 
This field contains information related to internal processing errors.
request (Request(REST))This field contains the request from the client application to the REST server agent.

response(Response(REST))

This field contains the response from the REST Server agent to the client application. In the event of an internal error scenario, this field may contain the suggested response from the REST Server agent to the client application.

The nested UDR types of REST are described below.

Request

FieldDescription
authentication (Authentication (REST))
This field contains the OAuth 2.0 access token details and the basic  authentication credentials. Includes the accessToken (AccessToken(REST)) and basicAuth (BasicAuth(REST)) udrs.
body (bytearray)
This field contains the HTTP message body.
clientHost (string)
This field contains the client IP.
clientPort (int)
This field contains the client port.
contextID (long)
This field contains the context ID
headerFields (map<string,list<string>>)

This field may contain an HTTP header. The header fields are stored as key-value pairs.

httpMethod (string)

This field must contain the HTTP method.

pathParams (list<string>)

This field may contain HTTP path parameters.

Example

Example URI: /registered/endpoint/foo/bar?k1=v1&k1=v11&k2=v2

Registered endpoint URI in the REST Server Profile is: /registered/endpoint

It will appear in pathParams as: List[0]: foo and List[1]: bar

Note!

If there is a trailing slash at the end of the URI there will be no empty string segment in pathParams representing the string after slash (e.g. URI /test/ contains only one segment: "test"). This is how it appears:
pathParams: List of 1 element
[0]: test
requestedUri: /test/

queryParams (map<string,list<string>>)
This field may contain HTTP query parameters.
requestedUri (string)

This field contains a requested URI.

Response

FieldDescription
body (bytearray)This field contains the HTTP message body.
headerFields (map<string,list<string>>)This field may contain an HTTP header. The header is stored as key-value pairs.
httpResponseCode (int)This field contains the response code from the server.

Hint!

When the body field contains a JSON formatted string, you can use the APL function jsonDecode to decode the contents. For further information about this function, see 21. JSON Functions in the APL Reference Guide.

When the body field contains XML data,  you can use the XML schema support in Ultra to decode the contents. For further information about XML and Ultra, see 18. XML Schema Support in the Ultra Reference Guide.

AccessToken

FieldDescription
clientname (string)

This field contains the name of the client provisioned for the access token by the authentication server.

expirationTime (long)This field contains the expiration time of the access token.
jwtRawData (string)This field contains the raw data, including the access token.
scope (list<string>)This field contains a list of scopes authorized for the client to use.
username (string)This field contains the username of the client.

BasicAuth

FieldDescription
password (string)

This field contains the password of the client.

username (string)This field contains the username of the client.

Error

FieldDescription
code (int)

This field contains an internal error code.

description (string)This field contains the description of the error code.