diff --git a/products/idn/tools/cli/Templates/report.md b/products/idn/tools/cli/Templates/report.md new file mode 100644 index 000000000..f3b4d8066 --- /dev/null +++ b/products/idn/tools/cli/Templates/report.md @@ -0,0 +1,84 @@ +--- +id: cli-template-report +title: Report Template +pagination_label: CLI Templates Report +sidebar_label: Report +sidebar_position: 7 +sidebar_class_name: cli-template-report +keywords: ['cli', 'template', 'report'] +description: Learn about the commands you can use to run report templates from the CLI. +slug: /tools/cli/templates/report +tags: ['CLI'] +--- + +Use report templates to run sets of simple, predefined search queries from the CLI. Reports are most useful when you don't care about the search results returned from a query and you only want to know the count of results. + +This is an example of a report template: + +```json +[ + { + "name": "provisioning-and-security", + "description": "All account unlocks in the tenant for a given time range", + "variables": [{"name": "days", "prompt": "Days before today"}], + "queries": [ + { + "queryString": "(type:provisioning AND created:[now-{{days}}d TO now])", + "queryTitle": "Provisioning Events for the last {{days}} days" + }, + { + "queryString": "(USER_UNLOCK_PASSED AND created:[now-{{days}}d TO now])", + "queryTitle": "User Unlocks for the last {{days}} days" + } + ] + } +] +``` + +This is the report template anatomy: + +```json +[ + { + "name": "provisioning-and-security", +``` + +This is the report template's name. + +It displays in the template list when you run `sail report`. + +You can also provide the name as an argument: `sail report provisioning-and-security` + +```json + "description": "All account unlocks in the tenant for a given time range", +``` + +This is the report template's description. + +It displays following the template name in the `sail report` list. + +```json + "variables": [{"name": "days", "prompt": "Days before today"}], +``` + +Use variables to dynamically populate values in the following content during command run time. + +For example, the variable in this template is configured so you can choose how many days back you want to search for provisioning-and-security events. When you run `sail report provisioning-and-security`, a prompt displays, `Input Days before today:` The number you enter will then populate anywhere the variable is used in the following object, and then the query runs. + +```json + "queries": [ + { + "queryString": "(type:provisioning AND created:[now-{{days}}d TO now])", + "queryTitle": "Provisioning Events for the last {{days}} days" + }, + { + "queryString": "(USER_UNLOCK_PASSED AND created:[now-{{days}}d TO now])", + "queryTitle": "User Unlocks for the last {{days}} days" + } + ] + + } +] +``` + +This is a list of the queries that will run. Currently, the variables for days populate. diff --git a/products/idn/tools/cli/Templates/search.md b/products/idn/tools/cli/Templates/search.md new file mode 100644 index 000000000..d24065e3a --- /dev/null +++ b/products/idn/tools/cli/Templates/search.md @@ -0,0 +1,109 @@ +--- +id: cli-template-search +title: Search Template +pagination_label: CLI Templates Search +sidebar_label: Search +sidebar_position: 7 +sidebar_class_name: cli-template-search +keywords: ['cli', 'template', 'search'] +description: Learn about the commands you can use to run search templates from the CLI. +slug: /tools/cli/templates/search +tags: ['CLI'] +--- + +Use search templates to run predefined search queries from the CLI. + +This is an example of a template file with 3 search templates populated: + +```json +[ + { + "name": "all-account-unlocks", + "description": "All account unlocks in the tenant for a given time range", + "variables": [{"name": "days", "prompt": "Days before today"}], + "searchQuery": { + "indices": ["events"], + "queryType": null, + "queryVersion": null, + "query": { + "query": "(USER_UNLOCK_PASSED AND created:[now-{{days}}d TO now])" + }, + "sort": [], + "searchAfter": [] + } + }, + { + "name": "all-provisioning-events", + "description": "All provisioning events in the tenant for a given time range", + "variables": [{"name": "days", "prompt": "Days before today"}], + "searchQuery": { + "indices": ["events"], + "queryType": null, + "queryVersion": null, + "query": { + "query": "(type:provisioning AND created:[now-{{days}}d TO now])" + }, + "sort": [], + "searchAfter": [] + } + }, + { + "name": "all-provisioning-events-90-days", + "description": "All provisioning events in the tenant for a given time range", + "variables": [], + "searchQuery": { + "indices": ["events"], + "queryType": null, + "queryVersion": null, + "query": { + "query": "(type:provisioning AND created:[now-90d TO now])" + }, + "sort": [], + "searchAfter": [] + } + } +] +``` + +This is the search template anatomy: + +```json +{ + "name": "all-account-unlocks", +``` + +This is the search template's name. + +It displays in the template list when you run `sail search template`. + +You can also provide this name as an argument: `sail search template all-account-unlocks` + +```json + "description": "All account unlocks in the tenant for a given time range" +``` + +This is the search template's description. + +It displays following the template name in the `sail search template` list. + +```json + "variables": [{"name": "days", "prompt": "Days before today"}], +``` + +Use variables to dynamically populate values in the following content during command run time. + +For example, the variable in this template is configured so you can choose how many days back you want to search for account unlock events. When you run `sail search template all-account-unlocks`, a prompt displays, `Input Days before today:` The number you enter will then populate anywhere the variable is used in the following object, and then the query runs. + +```json + "searchQuery": { + "indices": ["events"], + "queryType": null, + "queryVersion": null, + "query": { + "query": "(USER_UNLOCK_PASSED AND created:[now-{{days}}d TO now])" }, + "sort": [], "searchAfter": [] + } + } +``` + +Everything inside this searchQuery object matches the standard format of an [IdentityNow search query](https://documentation.sailpoint.com/saas/help/search/building-query.html). A limited number of examples are provided [here](https://developer.sailpoint.com/idn/api/v3/search-post), but the searchQuery object is mapped to the full search object. This means that you can add any search query values missing from this object. diff --git a/products/idn/tools/cli/Templates/spconfig.md b/products/idn/tools/cli/Templates/spconfig.md new file mode 100644 index 000000000..886092c5c --- /dev/null +++ b/products/idn/tools/cli/Templates/spconfig.md @@ -0,0 +1,89 @@ +--- +id: cli-template-spconfig +title: SPConfig Template +pagination_label: CLI Templates SPConfig +sidebar_label: SPConfig +sidebar_position: 7 +sidebar_class_name: cli-template-spconfig +keywords: ['cli', 'template', 'spconfig'] +description: Learn about the SPConfig template commands you can use to import and export configurations from the CLI. +slug: /tools/cli/templates/spconfig +tags: ['CLI'] +--- + +Use SPConfig templates to perform complex import and export operations with IdentityNow (IDN) configurations. + +This is an example of a template file with one SPConfig template populated: + +```json +[ + { + "name": "all-objects", + "description": "Export all available objects", + "variables": [], + "exportBody": { + "description": "Export all available objects", + "excludeTypes": [], + "includeTypes": [ + "SOURCE", + "RULE", + "TRIGGER_SUBSCRIPTION", + "TRANSFORM", + "IDENTITY_PROFILE" + ], + "objectOptions": {} + } + } +] +``` + +This is the SPConfig template anatomy: + +```json + + { + "name": "all-objects", +``` + +This is the SPConfig template's name. + +The SPConfig template name displays in the template list when you run `sail spconfig template`. + +You can also provide this name as an argument: `sail spconfig template all-objects` + +```json + "description": "Export all available objects", +``` + +This is the SPConfig template's description. + +in the `sail spconfig template` list + +```json + "variables": [], +``` + +Use variables to dynamically populate values in the following content during command run time. + +```json + "exportBody": { +``` + +The following object matches that detailed in the [API docs](https://developer.sailpoint.com/idn/api/beta/export-sp-config) + +```json + "description": "Export all available objects", + "excludeTypes": [], + "includeTypes": [ + "SOURCE", + "RULE", + "TRIGGER_SUBSCRIPTION", + "TRANSFORM", + "IDENTITY_PROFILE" + ], + "objectOptions": {} + } + + } + +```