Web Services Class Used in Before and After Operation Rules
This section describes the following types of Web Services class:
-
WebServicesClient
-
EndPoint Class
Note
The Web Services Classes mentioned in this section are general guidelines. New classes and methods may be added.
WebServicesClient
The following sections list the different rules and their descriptions.
Constructor Detail

Default constructor.
public WebServicesClient()
Constructor that configures the client using the given args.
public WebServicesClient(java.util.Map args) throws java.lang.Exception
Throws – java.lang.Exception
Method Detail

Configure connection parameters. See the ARG_* constants.
public void configure(java.util.Map args) throws java.lang.Exception
Throws – java.lang.Exception

Execute method GET with headers
public java.lang.String executeGet(java.util.Map headers,java.util.List<java.lang.String> allowedStatuses) throws java.lang.Exception
Parameters:
-
headers
(Request headers) -
allowedStatuses
(Allowed status codes)
Execute method GET with URL and headers
public java.lang.String executeGet(java.lang.String url, java.util.Map headers, java.util.List<java.lang.String> allowedStatuses) throws java.lang.Exception
Parameters:
-
url
(Request URL) -
headers
(Request headers) -
allowedStatuses
(Allowed status codes)
Returns – Response object
Throws – java.lang.Exception

Execute method POST with URL, payload and headers
public java.lang.String executePost(java.lang.String url, java.lang.Object payload, java.util.Map headers, java.util.List<java.lang.String> allowedStatuses) throws java.lang.Exception
Parameters:
-
url
(Request URL) -
payload
(Request body) -
headers
(Request headers) -
allowedStatuses
(Allowed status codes)
Execute method POST with URL and payload
public java.lang.String executePost(java.lang.String url, java.lang.Object payload, java.util.List<java.lang.String> allowedStatuses) throws java.lang.Exception
Parameters:
-
url
(Request URL) -
payload
(Request body) -
allowedStatuses
(Allowed status codes)
Returns – Response object
Throws – java.lang.Exception

Execute method PUT with URL and payload
public java.lang.String executePut(java.lang.String url, java.lang.Object payload, java.util.List<java.lang.String> allowedStatuses) throws java.lang.Exception
Parameters:
-
url
(Request URL) -
payload
(Request body) -
allowedStatuses
(Allowed status codes)
Execute method PUT with URL, payload and headers
public java.lang.String executePut(java.lang.String url, java.lang.Object payload, java.util.Map headers, java.util.List<java.lang.String> allowedStatuses) throws java.lang.Exception
Parameters:
-
url
(Request URL) -
payload
(Request body) -
headers
(Request headers) -
allowedStatuses
(Allowed status codes)
Returns – Response object
Throws – java.lang.Exception

Execute method PATCH with URL and payload
public java.lang.String executePatch(java.lang.String url, java.lang.Object payload, java.util.List<java.lang.String> allowedStatuses) throws java.lang.Exception
Parameters:
-
url
(Request URL) -
payload
(Request body) -
allowedStatuses
(Allowed status codes)
Execute method PATCH with URL, payload and headers
public java.lang.String executePatch(java.lang.String url, java.lang.Object payload, java.util.Map headers, java.util.List<java.lang.String> allowedStatuses) throws java.lang.Exception
Parameters:
-
url
(Request URL) -
payload
(Request body) -
headers
(Request headers) -
allowedStatuses
(Allowed status codes)
Returns – Response object
Throws – java.lang.Exception

Get last executed Request's Response headers.
public java.util.Map<java.lang.String,java.lang.String> getResponseHeaders()

Execute method DELETE with URL
public java.lang.String executeDelete(java.lang.String url, java.util.List<java.lang.String> allowedStatuses) throws java.lang.Exception
Parameters:
-
url
(Request URL) -
allowedStatuses
(Allowed status codes)
Execute method DELETE with URL and headers
public java.lang.String executeDelete(java.lang.String url, java.util.Map headers, java.util.List<java.lang.String> allowedStatuses) throws java.lang.Exception
Parameters:
-
url
(Request URL) -
headers
(Request headers) -
allowedStatuses
(Allowed status codes)
Returns – Response object
Throws – java.lang.Exception
EndPoint Class
The following list contains the different rules and their descriptions.
Constructor Detail

Sets the EndPoint
public EndPoint()
Method Detail

Sets the after rule name.
public void setAfterRule(java.lang.String value)

Sets the before rule name.
public void setBeforeRule(java.lang.String value)

Sets the parsing rule.
public void setParseRule(java.lang.String value)

Sets the HTTP method (PUT, POST, GET, PATCH, and DELETE) for the particular operation (Create User, Update User, Account Aggregation, etc.).
public void setHttpMethodType(java.lang.String value)

Sets the operation (Account Aggregation, Group Aggregation, Create Account) for the particular operation record (Create User, Update User, Account Aggregation, etc.).
public void setOperationType(java.lang.String value)

Sets the root of the JSON response returned from the managed system (Managed system) for the particular operation (Create User, Update User, Account Aggregation, etc.).
public void setRootPath(java.lang.String value)

Sets the base URL (the machine ID or IP and the port where the service is executing) for the operation that need to be performed. Ideally this should be common for all the operations.
public void setBaseUrl(java.lang.String value)

Sets the context URL for the particular operation (Create User, Update User, Account Aggregation, etc.).
public void setContextUrl(java.lang.String value)

Sets the complete URL (endpoint) of the operation that need to be performed for the particular operation (Create User, Update User, Account Aggregation, etc.).
public void setFullUrl(java.lang.String value)

Sets the sequence number particular operation (Create User, Update User, Account Aggregation, etc.).
public void setSequenceNumberForEndpoint(int value)

Sets unique operation name for particular operation (Create User, Update User, Account Aggregation, etc.).
public void setUniqueNameForEndPoint(java.lang.String value)

Sets the response mapping for the response attribute returned in the JSON response from the managed system (Managed system) for the particular operation like Create User, Update User, Account Aggregation, etc. Here the key would be the attribute name (attribute in the schema) and the value would be the JSON response path after the root path mentioned above.
public void setResMappingObj(java.util.Map value)

Sets HTTP header information in the form of key value (For example, key='ContentType' Value='Application/JSON'
).
public void setHeader(java.util.Map value)

Add a key value if header exists or will create header and add.
public void addHeader(java.lang.String entry, java.lang.String value)

Sets the HTTP body information as a Map. Here the map would contain three keys bodyFormat, bodyFormData and jsonBody. The bodyFormat value can be raw that means user has provided values as raw JSON string else user has provided value in the key value format that must be converted into JSON.
public void setBody(java.util.Map value)

Sets the value of successful response codes as a list (200, 299, 201). If the connector receives any other response codes, it considers them request failures.
public void setResponseCode(java.util.List value)

Fetch the name of after rule assigned to the particular operation like Create, Update User, Account Aggregation, etc.
public java.lang.String getAfterRule()

Fetch the name of before rule assigned to the particular operation like Create, Update User, Account Aggregation, etc.
public java.lang.String getBeforeRule()

Fetch the HTTP method type (GET, PUT, POST, DELETE, and PATCH) provided to the particular operation like Create, Update User, Account Aggregation, etc.
public java.lang.String getHttpMethodType()

Fetch the operation type (Account Aggregation, Create Account, Group Aggregation) provided to the particular operation like Create, Update User, Account Aggregation, etc.
public java.lang.String getOperationType()

Fetch the root path provided to the particular operation like Create, Update User, Account Aggregation, etc.
public java.lang.String getRootPath()

Fetch the base URL which is common for all operation like Create, Update User, Account Aggregation, etc.
public java.lang.String getBaseUrl()

Fetch the context URL provided to the particular operation like Create, Update User, Account Aggregation, etc.
public java.lang.String getContextUrl()

Fetch the full URL which is a combination of the basic URL and the context URL for the particular operation like Create, Update User, Account Aggregation, etc.
public java.lang.String getFullUrl()

Fetch the sequence number for the particular operation (Create, Update User, Account Aggregation) that decide the priority of execution for operation, if there are multiple endpoints of the same operation like account aggregation.
public int getSequenceNumberForEndpoint()

Fetch the unique name provided to the particular operation like Create, Update User, Account Aggregation, etc.
public java.lang.String getUniqueNameForEndPoint()

Fetch the response mapping map that will have the key as its schema attribute and value as a JSON path in the JSON response for particular operation like Create, Update User, Account Aggregation, etc.
public java.util.Map getResMappingObj()

Fetch the HTTP header map that holds the header information for particular operation like Create, Update User, Account Aggregation, etc.
public java.util.Map getHeader()

Fetch the body map that holds the body information with keys like bodyFormat
, jsonBody
and bodyFormData
.
Note
The bodyFormat
can have raw or formData
values.
The bodyFormData
value is a map.
The jsonBody
value is a string with whole JSON code.
public java.util.Map getBody()

Fetch the success response code list values which decide whether an operation was successful or not for particular operation like Create, Update User, Account Aggregation, etc.
public java.util.List getResponseCode()

Fetch all attributes.
public sailpoint.object.Attributes getAttributes()

Fetch a single attribute.
public java.lang.Object getAttribute(java.lang.String name)

Fetch a Boolean value for a specific attribute.
public Boolean getBooleanAttributeValue(java.lang.String name)

Fetch a string value for a specific attribute.
public java.lang.String getStringAttributeValue(java.lang.String name)

Sets a specified attribute to a specified value.
public void setAttribute(java.lang.String name, java.lang.Object value)

Fetch the paging steps as a string which decides how account and group paging works.
public java.lang.String getPaginationSteps()

Sets the paging steps as a string which decides how account and group paging works.
public void setPaginationSteps(java.lang.String paginationSteps)

public java.lang.String toString()
Overrides: toString in the java.lang.Object
class

Retrieve the last executed request's response body.
public java.lang.String getResponseBody()

Sets XPath namespaces using the supplied map object.
public void setXpathNamespaces(Map<String, String> xpathNamespaces)

Retrieve XPath namespaces.
public Map<String, String> getXpathNamespaces()

Retrieve the initial page offset.
public int getPagingInitialOffset()

Sets the initial paging offset.
public void setPagingInitialOffset(int pagingInitialOffset)

Retrieve the page limit.
public int getPagingSize()

Sets the page limit.
public void setPagingSize(int pagingLimit)