List Complete Workflow Library
GEThttps://sailpoint.api.identitynow.com/v3/workflow-library
This lists all triggers, actions, and operators in the library
Request
Query Parameters
Possible values: <= 250
Max number of results to return. See V3 API Standard Collection Parameters for more information.
250
Offset into the full result set. Usually specified with limit to paginate through the results. See V3 API Standard Collection Parameters for more information.
0
Responses
- 200
- 400
- 401
- 403
- 429
- 500
List of workflow steps
- application/json
- Schema
- Example (auto)
Schema
- Array [anyOf
- Workflow Action
- Workflow Trigger
- Workflow Operator
- ]
Action ID. This is a static namespaced ID for the action
sp:create-campaign
Action Name
Create Certification Campaign
Action type
ACTION
Action Description
Generates a certification campaign.
formFields object[]nullable
exampleOutput object
Version number
Determines whether the dynamic output schema is returned in place of the action's output schema. The dynamic schema lists non-static properties, like properties of a workflow form where each form has different fields. These will be provided dynamically based on available form fields.
false
false
Defines the output schema, if any, that this action produces.
{"definitions":{},"properties":{"autoRevokeAllowed":{"$id":"#sp:create-campaign/autoRevokeAllowed","default":true,"examples":[false],"title":"autoRevokeAllowed","type":"boolean"},"deadline":{"$id":"#sp:create-campaign/deadline","default":"","examples":["2020-12-25T06:00:00.468Z"],"format":"date-time","pattern":"^.*$","title":"deadline","type":"string"},"description":{"$id":"#sp:create-campaign/description","default":"","examples":["A review of everyone's access by their manager."],"pattern":"^.*$","title":"description","type":"string"},"emailNotificationEnabled":{"$id":"#sp:create-campaign/emailNotificationEnabled","default":true,"examples":[false],"title":"emailNotificationEnabled","type":"boolean"},"filter":{"$id":"#sp:create-campaign/filter","properties":{"id":{"$id":"#sp:create-campaign/filter/id","default":"","examples":["e0adaae69852e8fe8b8a3d48e5ce757c"],"pattern":"^.*$","title":"id","type":"string"},"type":{"$id":"#sp:create-campaign/filter/type","default":"","examples":["CAMPAIGN_FILTER"],"pattern":"^.*$","title":"type","type":"string"}},"title":"filter","type":"object"},"id":{"$id":"#sp:create-campaign/id","default":"","examples":["2c918086719eec070171a7e3355a360a"],"pattern":"^.*$","title":"id","type":"string"},"name":{"$id":"#sp:create-campaign/name","default":"","examples":["Manager Review"],"pattern":"^.*$","title":"name","type":"string"},"recommendationsEnabled":{"$id":"#sp:create-campaign/recommendationsEnabled","default":true,"examples":[false],"title":"recommendationEnabled","type":"boolean"},"type":{"$id":"#sp:create-campaign/type","default":"","examples":["MANAGER"],"pattern":"^.*$","title":"type","type":"string"}},"title":"sp:create-campaign","type":"object"}
Trigger ID. This is a static namespaced ID for the trigger.
idn:identity-attributes-changed
Trigger type
Possible values: [EVENT
, SCHEDULED
, EXTERNAL
]
EVENT
Example output schema
Trigger Name
Identity Attributes Changed
Trigger Description
One or more identity attributes changed.
Determines whether the dynamic output schema is returned in place of the action's output schema. The dynamic schema lists non-static properties, like properties of a workflow form where each form has different fields. These will be provided dynamically based on available form fields.
false
false
Example trigger payload if applicable
{"changes":[{"attribute":"department","newValue":"marketing","oldValue":"sales"},{"attribute":"manager","newValue":{"id":"ee769173319b41d19ccec6c235423236c","name":"mean.guy","type":"IDENTITY"},"oldValue":{"id":"ee769173319b41d19ccec6c235423237b","name":"nice.guy","type":"IDENTITY"}},{"attribute":"email","newValue":"john.doe@gmail.com","oldValue":"john.doe@hotmail.com"}],"identity":{"id":"ee769173319b41d19ccec6cea52f237b","name":"john.doe","type":"IDENTITY"}}
formFields object[]nullable
Operator ID.
sp:compare-boolean
Operator friendly name
Compare Boolean Values
Operator type
OPERATOR
Description of the operator
Compare two boolean values and decide what happens based on the result.
Determines whether the dynamic output schema is returned in place of the action's output schema. The dynamic schema lists non-static properties, like properties of a workflow form where each form has different fields. These will be provided dynamically based on available form fields.
false
formFields object[]nullable
[
{
"id": "sp:create-campaign",
"name": "Create Certification Campaign",
"type": "ACTION",
"description": "Generates a certification campaign.",
"formFields": [
{
"description": "First value to compare",
"helpText": "The name to give to this certification campaign.",
"label": "Campaign Name",
"name": "name",
"required": false,
"type": "text"
}
],
"exampleOutput": {},
"deprecated": true,
"deprecatedBy": "2024-07-29T15:51:28.071Z",
"versionNumber": 0,
"isSimulationEnabled": true,
"isDynamicSchema": false,
"outputSchema": {
"definitions": {},
"properties": {
"autoRevokeAllowed": {
"$id": "#sp:create-campaign/autoRevokeAllowed",
"default": true,
"examples": [
false
],
"title": "autoRevokeAllowed",
"type": "boolean"
},
"deadline": {
"$id": "#sp:create-campaign/deadline",
"default": "",
"examples": [
"2020-12-25T06:00:00.468Z"
],
"format": "date-time",
"pattern": "^.*$",
"title": "deadline",
"type": "string"
},
"description": {
"$id": "#sp:create-campaign/description",
"default": "",
"examples": [
"A review of everyone's access by their manager."
],
"pattern": "^.*$",
"title": "description",
"type": "string"
},
"emailNotificationEnabled": {
"$id": "#sp:create-campaign/emailNotificationEnabled",
"default": true,
"examples": [
false
],
"title": "emailNotificationEnabled",
"type": "boolean"
},
"filter": {
"$id": "#sp:create-campaign/filter",
"properties": {
"id": {
"$id": "#sp:create-campaign/filter/id",
"default": "",
"examples": [
"e0adaae69852e8fe8b8a3d48e5ce757c"
],
"pattern": "^.*$",
"title": "id",
"type": "string"
},
"type": {
"$id": "#sp:create-campaign/filter/type",
"default": "",
"examples": [
"CAMPAIGN_FILTER"
],
"pattern": "^.*$",
"title": "type",
"type": "string"
}
},
"title": "filter",
"type": "object"
},
"id": {
"$id": "#sp:create-campaign/id",
"default": "",
"examples": [
"2c918086719eec070171a7e3355a360a"
],
"pattern": "^.*$",
"title": "id",
"type": "string"
},
"name": {
"$id": "#sp:create-campaign/name",
"default": "",
"examples": [
"Manager Review"
],
"pattern": "^.*$",
"title": "name",
"type": "string"
},
"recommendationsEnabled": {
"$id": "#sp:create-campaign/recommendationsEnabled",
"default": true,
"examples": [
false
],
"title": "recommendationEnabled",
"type": "boolean"
},
"type": {
"$id": "#sp:create-campaign/type",
"default": "",
"examples": [
"MANAGER"
],
"pattern": "^.*$",
"title": "type",
"type": "string"
}
},
"title": "sp:create-campaign",
"type": "object"
}
},
{
"id": "idn:identity-attributes-changed",
"type": "EVENT",
"deprecated": true,
"deprecatedBy": "2024-07-29T15:51:28.071Z",
"isSimulationEnabled": true,
"outputSchema": {},
"name": "Identity Attributes Changed",
"description": "One or more identity attributes changed.",
"isDynamicSchema": false,
"inputExample": {
"changes": [
{
"attribute": "department",
"newValue": "marketing",
"oldValue": "sales"
},
{
"attribute": "manager",
"newValue": {
"id": "ee769173319b41d19ccec6c235423236c",
"name": "mean.guy",
"type": "IDENTITY"
},
"oldValue": {
"id": "ee769173319b41d19ccec6c235423237b",
"name": "nice.guy",
"type": "IDENTITY"
}
},
{
"attribute": "email",
"newValue": "john.doe@gmail.com",
"oldValue": "john.doe@hotmail.com"
}
],
"identity": {
"id": "ee769173319b41d19ccec6cea52f237b",
"name": "john.doe",
"type": "IDENTITY"
}
},
"formFields": []
},
{
"id": "sp:compare-boolean",
"name": "Compare Boolean Values",
"type": "OPERATOR",
"description": "Compare two boolean values and decide what happens based on the result.",
"isDynamicSchema": false,
"deprecated": true,
"deprecatedBy": "2024-07-29T15:51:28.071Z",
"isSimulationEnabled": true,
"formFields": [
{
"description": "Enter the JSONPath to a value from the input to compare to Variable B.",
"helpText": "",
"label": "Variable A",
"name": "variableA.$",
"required": true,
"type": "text"
},
{
"helpText": "Select an operation.",
"label": "Operation",
"name": "operator",
"options": [
{
"label": "Equals",
"value": "BooleanEquals"
}
],
"required": true,
"type": "select"
},
{
"description": "Enter the JSONPath to a value from the input to compare to Variable A.",
"helpText": "",
"label": "Variable B",
"name": "variableB.$",
"required": false,
"type": "text"
},
{
"description": "Enter True or False.",
"helpText": "",
"label": "Variable B",
"name": "variableB",
"required": false,
"type": "text"
}
]
}
]
Client Error - Returned if the request body is invalid.
- application/json
- Schema
- Example (auto)
Schema
Fine-grained error code providing more detail of the error.
400.1 Bad Request Content
Unique tracking id for the error.
e7eab60924f64aa284175b9fa3309599
messages object[]
causes object[]
{
"detailCode": "400.1 Bad Request Content",
"trackingId": "e7eab60924f64aa284175b9fa3309599",
"messages": [
{
"locale": "en-US",
"localeOrigin": "DEFAULT",
"text": "The request was syntactically correct but its content is semantically invalid."
}
],
"causes": [
{
"locale": "en-US",
"localeOrigin": "DEFAULT",
"text": "The request was syntactically correct but its content is semantically invalid."
}
]
}
Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.
- application/json
- Schema
- Example (auto)
Schema
A message describing the error
JWT validation failed: JWT is expired
{
"error": "JWT validation failed: JWT is expired"
}
Forbidden - Returned if the user you are running as, doesn't have access to this end-point.
- application/json
- Schema
- Example (auto)
- 403
Schema
Fine-grained error code providing more detail of the error.
400.1 Bad Request Content
Unique tracking id for the error.
e7eab60924f64aa284175b9fa3309599
messages object[]
causes object[]
{
"detailCode": "400.1 Bad Request Content",
"trackingId": "e7eab60924f64aa284175b9fa3309599",
"messages": [
{
"locale": "en-US",
"localeOrigin": "DEFAULT",
"text": "The request was syntactically correct but its content is semantically invalid."
}
],
"causes": [
{
"locale": "en-US",
"localeOrigin": "DEFAULT",
"text": "The request was syntactically correct but its content is semantically invalid."
}
]
}
An example of a 403 response object
{
"detailCode": "403 Forbidden",
"trackingId": "b21b1f7ce4da4d639f2c62a57171b427",
"messages": [
{
"locale": "en-US",
"localeOrigin": "DEFAULT",
"text": "The server understood the request but refuses to authorize it."
}
]
}
Too 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.
- application/json
- Schema
- Example (auto)
Schema
A message describing the error
Rate Limit Exceeded
{
"message": " Rate Limit Exceeded "
}
Internal Server Error - Returned if there is an unexpected error.
- application/json
- Schema
- Example (auto)
- 500
Schema
Fine-grained error code providing more detail of the error.
400.1 Bad Request Content
Unique tracking id for the error.
e7eab60924f64aa284175b9fa3309599
messages object[]
causes object[]
{
"detailCode": "400.1 Bad Request Content",
"trackingId": "e7eab60924f64aa284175b9fa3309599",
"messages": [
{
"locale": "en-US",
"localeOrigin": "DEFAULT",
"text": "The request was syntactically correct but its content is semantically invalid."
}
],
"causes": [
{
"locale": "en-US",
"localeOrigin": "DEFAULT",
"text": "The request was syntactically correct but its content is semantically invalid."
}
]
}
An example of a 500 response object
{
"detailCode": "500.0 Internal Fault",
"trackingId": "b21b1f7ce4da4d639f2c62a57171b427",
"messages": [
{
"locale": "en-US",
"localeOrigin": "DEFAULT",
"text": "An internal fault occurred."
}
]
}
Authorization: oauth2
type: Personal Access Tokenscopes: sp:workflow:read
- goSailPoint SDK
- powershellSailPoint SDK
- pythonSailPoint SDK
- csharp
- curl
- dart
- http
- java
- javascript
- kotlin
- c
- nodejs
- objective-c
- ocaml
- php
- r
- ruby
- rust
- shell
- swift
- SDK
- NATIVE
package main
import (
"context"
"fmt"
"os"
"encoding/json"
v3 "github.com/sailpoint-oss/golang-sdk/v2/api_v3"
sailpoint "github.com/sailpoint-oss/golang-sdk/v2"
)
func main() {
limit := 250 // int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) # int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250)
offset := 0 // int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) # int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0)
configuration := sailpoint.NewDefaultConfiguration()
apiClient := sailpoint.NewAPIClient(configuration)
resp, r, err := apiClient.V3.WorkflowsAPI.ListCompleteWorkflowLibrary(context.Background()).Execute()
//resp, r, err := apiClient.V3.WorkflowsAPI.ListCompleteWorkflowLibrary(context.Background()).Limit(limit).Offset(offset).Execute()
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `WorkflowsAPI.ListCompleteWorkflowLibrary``: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
// response from `ListCompleteWorkflowLibrary`: []ListCompleteWorkflowLibrary200ResponseInner
fmt.Fprintf(os.Stdout, "Response from `WorkflowsAPI.ListCompleteWorkflowLibrary`: %v\n", resp)
}