Skip to main content

sailpoint.beta.ConnectorRuleManagementApi

Use this API to implement connector rule management functionality. With this functionality in place, administrators can implement connector-executed rules in a programmatic, scalable way.

In Identity Security Cloud (ISC), rules serve as a flexible configuration framework you can leverage to perform complex or advanced configurations. Connector-executed rules are rules that are executed in the ISC virtual appliance (VA), usually extensions of the connector itself, the bridge between the data source and ISC. This API allows administrators to view existing connector-executed rules, make changes to them, delete them, and create new ones from the available types.

All URIs are relative to https://sailpoint.api.identitynow.com/beta

MethodHTTP requestDescription
create-connector-rulePOST /connector-rulesCreate Connector Rule
delete-connector-ruleDELETE /connector-rules/{id}Delete a Connector-Rule
get-connector-ruleGET /connector-rules/{id}Connector-Rule by ID
get-connector-rule-listGET /connector-rulesList Connector Rules
update-connector-rulePUT /connector-rules/{id}Update a Connector Rule
validate-connector-rulePOST /connector-rules/validateValidate Connector Rule

create-connector-rule

Create Connector Rule Creates a new connector rule. A token with ORG_ADMIN authority is required to call this API.

API Spec

Parameters

Param TypeNameData TypeRequiredDescription
Bodyconnector_rule_create_requestConnectorRuleCreateRequestTrueThe connector rule to create

Return type

ConnectorRuleResponse

Responses

CodeDescriptionData TypeResponse headers
201The created connector ruleConnectorRuleResponse-
400Client Error - Returned if the request body is invalid.ErrorResponseDto-
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListAccessModelMetadataAttribute401Response-
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto-
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListAccessModelMetadataAttribute429Response-
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto-

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

Example

from sailpoint.beta.api.connector_rule_management_api import ConnectorRuleManagementApi
from sailpoint.beta.api_client import ApiClient
from sailpoint.beta.models.connector_rule_create_request import ConnectorRuleCreateRequest
from sailpoint.beta.models.connector_rule_response import ConnectorRuleResponse
from sailpoint.configuration import Configuration
configuration = Configuration()


with ApiClient(configuration) as api_client:
connector_rule_create_request = '''{
"sourceCode" : {
"version" : "1.0",
"script" : "return \"Mr. \" + firstName;"
},
"signature" : {
"output" : {
"name" : "firstName",
"description" : "the first name of the identity",
"type" : "String"
},
"input" : [ {
"name" : "firstName",
"description" : "the first name of the identity",
"type" : "String"
}, {
"name" : "firstName",
"description" : "the first name of the identity",
"type" : "String"
} ]
},
"name" : "WebServiceBeforeOperationRule",
"description" : "This rule does that",
"attributes" : { },
"type" : "BuildMap"
}''' # ConnectorRuleCreateRequest | The connector rule to create

try:
# Create Connector Rule
new_connector_rule_create_request = ConnectorRuleCreateRequest.from_json(connector_rule_create_request)
results = ConnectorRuleManagementApi(api_client).create_connector_rule(connector_rule_create_request=new_connector_rule_create_request)
# Below is a request that includes all optional parameters
# results = ConnectorRuleManagementApi(api_client).create_connector_rule(new_connector_rule_create_request)
print("The response of ConnectorRuleManagementApi->create_connector_rule:\n")
print(results.model_dump_json(by_alias=True, indent=4))
except Exception as e:
print("Exception when calling ConnectorRuleManagementApi->create_connector_rule: %s\n" % e)

[Back to top]

delete-connector-rule

Delete a Connector-Rule Deletes the connector rule specified by the given ID. A token with ORG_ADMIN authority is required to call this API.

API Spec

Parameters

Param TypeNameData TypeRequiredDescription
PathidstrTrueID of the connector rule to delete

Return type

(empty response body)

Responses

CodeDescriptionData TypeResponse headers
204No content - indicates the request was successful but there is no content to be returned in the response.-
400Client Error - Returned if the request body is invalid.ErrorResponseDto-
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListAccessModelMetadataAttribute401Response-
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto-
404Not Found - returned if the request URL refers to a resource or object that does not existErrorResponseDto-
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListAccessModelMetadataAttribute429Response-
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto-

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

Example

from sailpoint.beta.api.connector_rule_management_api import ConnectorRuleManagementApi
from sailpoint.beta.api_client import ApiClient
from sailpoint.configuration import Configuration
configuration = Configuration()


with ApiClient(configuration) as api_client:
id = '8c190e6787aa4ed9a90bd9d5344523fb' # str | ID of the connector rule to delete # str | ID of the connector rule to delete

try:
# Delete a Connector-Rule

ConnectorRuleManagementApi(api_client).delete_connector_rule(id=id)
# Below is a request that includes all optional parameters
# ConnectorRuleManagementApi(api_client).delete_connector_rule(id)
except Exception as e:
print("Exception when calling ConnectorRuleManagementApi->delete_connector_rule: %s\n" % e)

[Back to top]

get-connector-rule

Connector-Rule by ID Returns the connector rule specified by ID. A token with ORG_ADMIN authority is required to call this API.

API Spec

Parameters

Param TypeNameData TypeRequiredDescription
PathidstrTrueID of the connector rule to retrieve

Return type

ConnectorRuleResponse

Responses

CodeDescriptionData TypeResponse headers
200Connector rule with the given IDConnectorRuleResponse-
400Client Error - Returned if the request body is invalid.ErrorResponseDto-
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListAccessModelMetadataAttribute401Response-
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto-
404Not Found - returned if the request URL refers to a resource or object that does not existErrorResponseDto-
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListAccessModelMetadataAttribute429Response-
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto-

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

Example

from sailpoint.beta.api.connector_rule_management_api import ConnectorRuleManagementApi
from sailpoint.beta.api_client import ApiClient
from sailpoint.beta.models.connector_rule_response import ConnectorRuleResponse
from sailpoint.configuration import Configuration
configuration = Configuration()


with ApiClient(configuration) as api_client:
id = '8c190e6787aa4ed9a90bd9d5344523fb' # str | ID of the connector rule to retrieve # str | ID of the connector rule to retrieve

try:
# Connector-Rule by ID

results = ConnectorRuleManagementApi(api_client).get_connector_rule(id=id)
# Below is a request that includes all optional parameters
# results = ConnectorRuleManagementApi(api_client).get_connector_rule(id)
print("The response of ConnectorRuleManagementApi->get_connector_rule:\n")
print(results.model_dump_json(by_alias=True, indent=4))
except Exception as e:
print("Exception when calling ConnectorRuleManagementApi->get_connector_rule: %s\n" % e)

[Back to top]

get-connector-rule-list

List Connector Rules Returns the list of connector rules. A token with ORG_ADMIN authority is required to call this API.

API Spec

Parameters

This endpoint does not need any parameter.

Return type

List[ConnectorRuleResponse]

Responses

CodeDescriptionData TypeResponse headers
200A list of connector rulesList[ConnectorRuleResponse]-
400Client Error - Returned if the request body is invalid.ErrorResponseDto-
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListAccessModelMetadataAttribute401Response-
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto-
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListAccessModelMetadataAttribute429Response-
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto-

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

Example

from sailpoint.beta.api.connector_rule_management_api import ConnectorRuleManagementApi
from sailpoint.beta.api_client import ApiClient
from sailpoint.beta.models.connector_rule_response import ConnectorRuleResponse
from sailpoint.configuration import Configuration
configuration = Configuration()


with ApiClient(configuration) as api_client:

try:
# List Connector Rules

results = ConnectorRuleManagementApi(api_client).get_connector_rule_list()
# Below is a request that includes all optional parameters
# results = ConnectorRuleManagementApi(api_client).get_connector_rule_list()
print("The response of ConnectorRuleManagementApi->get_connector_rule_list:\n")
print(results.model_dump_json(by_alias=True, indent=4))
except Exception as e:
print("Exception when calling ConnectorRuleManagementApi->get_connector_rule_list: %s\n" % e)

[Back to top]

update-connector-rule

Update a Connector Rule Updates an existing connector rule with the one provided in the request body. Note that the fields 'id', 'name', and 'type' are immutable. A token with ORG_ADMIN authority is required to call this API.

API Spec

Parameters

Param TypeNameData TypeRequiredDescription
PathidstrTrueID of the connector rule to update
Bodyconnector_rule_update_requestConnectorRuleUpdateRequest(optional)The connector rule with updated data

Return type

ConnectorRuleResponse

Responses

CodeDescriptionData TypeResponse headers
200The updated connector ruleConnectorRuleResponse-
400Client Error - Returned if the request body is invalid.ErrorResponseDto-
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListAccessModelMetadataAttribute401Response-
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto-
404Not Found - returned if the request URL refers to a resource or object that does not existErrorResponseDto-
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListAccessModelMetadataAttribute429Response-
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto-

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

Example

from sailpoint.beta.api.connector_rule_management_api import ConnectorRuleManagementApi
from sailpoint.beta.api_client import ApiClient
from sailpoint.beta.models.connector_rule_response import ConnectorRuleResponse
from sailpoint.beta.models.connector_rule_update_request import ConnectorRuleUpdateRequest
from sailpoint.configuration import Configuration
configuration = Configuration()


with ApiClient(configuration) as api_client:
id = '8c190e6787aa4ed9a90bd9d5344523fb' # str | ID of the connector rule to update # str | ID of the connector rule to update
connector_rule_update_request = '''{
"sourceCode" : {
"version" : "1.0",
"script" : "return \"Mr. \" + firstName;"
},
"signature" : {
"output" : {
"name" : "firstName",
"description" : "the first name of the identity",
"type" : "String"
},
"input" : [ {
"name" : "firstName",
"description" : "the first name of the identity",
"type" : "String"
}, {
"name" : "firstName",
"description" : "the first name of the identity",
"type" : "String"
} ]
},
"name" : "WebServiceBeforeOperationRule",
"description" : "This rule does that",
"attributes" : { },
"id" : "8113d48c0b914f17b4c6072d4dcb9dfe",
"type" : "BuildMap"
}''' # ConnectorRuleUpdateRequest | The connector rule with updated data (optional)

try:
# Update a Connector Rule

results = ConnectorRuleManagementApi(api_client).update_connector_rule(id=id)
# Below is a request that includes all optional parameters
# results = ConnectorRuleManagementApi(api_client).update_connector_rule(id, new_connector_rule_update_request)
print("The response of ConnectorRuleManagementApi->update_connector_rule:\n")
print(results.model_dump_json(by_alias=True, indent=4))
except Exception as e:
print("Exception when calling ConnectorRuleManagementApi->update_connector_rule: %s\n" % e)

[Back to top]

validate-connector-rule

Validate Connector Rule Returns a list of issues within the code to fix, if any. A token with ORG_ADMIN authority is required to call this API.

API Spec

Parameters

Param TypeNameData TypeRequiredDescription
Bodysource_codeSourceCodeTrueThe code to validate

Return type

ConnectorRuleValidationResponse

Responses

CodeDescriptionData TypeResponse headers
200The status of the code's eligibility as a connector ruleConnectorRuleValidationResponse-
400Client Error - Returned if the request body is invalid.ErrorResponseDto-
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListAccessModelMetadataAttribute401Response-
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto-
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListAccessModelMetadataAttribute429Response-
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto-

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

Example

from sailpoint.beta.api.connector_rule_management_api import ConnectorRuleManagementApi
from sailpoint.beta.api_client import ApiClient
from sailpoint.beta.models.connector_rule_validation_response import ConnectorRuleValidationResponse
from sailpoint.beta.models.source_code import SourceCode
from sailpoint.configuration import Configuration
configuration = Configuration()


with ApiClient(configuration) as api_client:
source_code = '''{
"version" : "1.0",
"script" : "return \"Mr. \" + firstName;"
}''' # SourceCode | The code to validate

try:
# Validate Connector Rule
new_source_code = SourceCode.from_json(source_code)
results = ConnectorRuleManagementApi(api_client).validate_connector_rule(source_code=new_source_code)
# Below is a request that includes all optional parameters
# results = ConnectorRuleManagementApi(api_client).validate_connector_rule(new_source_code)
print("The response of ConnectorRuleManagementApi->validate_connector_rule:\n")
print(results.model_dump_json(by_alias=True, indent=4))
except Exception as e:
print("Exception when calling ConnectorRuleManagementApi->validate_connector_rule: %s\n" % e)

[Back to top]