Detection Definition

Provides authoring rules functionality.

Root

Contains the operations for the root resource.

Rules

Contains the operations for rule instances.
get
Get a list of rules
Returns the collection of rules in the identified project.
/projects/{projectId}/rules
post
Create a rule
Creates a new rule in the identified project. A new rule is always created in the Coding state.
/projects/{projectId}/rules
get
Get a rule (Deprecated)
Retrieves a rule by ID.
/projects/{projectId}/rules/{ruleId}
patch
Update a rule's properties (Deprecated)
Updates the properties of a rule. The rule must be in the Coding state.
/projects/{projectId}/rules/{ruleId}
delete
Delete a rule (Deprecated)
Deletes a rule in the identified project. The rule must be in the Recycle state.
/projects/{projectId}/rules/{ruleId}
post
Create a new rule version (Deprecated)
Creates a new rule (with a new version number) from an existing rule in the same project.
/projects/{projectId}/rules/{ruleId}/revisions
post
Update the state of a rule set
Updates the state of a set of rules to Coding, Testing, Production, or Recycle. The update is atomic. Either all the provided rules are updated, or none of the rules are updated. These are the supported state transitions and their consistency requirements.
/projects/{projectId}/rules/transitions
get
Get active rules by prioritization
Retrieves the active rules in the project in prioritized order, based on rule type, execution order type, and execution order priority as follows:
/projects/{projectId}/rules/prioritizations
patch
Update rule prioritizations
Updates rule prioritizations in the project. Rule prioritizations can be updated for rules in the following states:
/projects/{projectId}/rules/prioritizations
post
Disable rules
Disables a set of rules, so they cannot be run against incoming transactions. If any rule in the set cannot be disabled (for example, a rule has an invalid rule ID), then no rules are disabled.
/projects/{projectId}/rules/disabled
post
Enable rules
Enables a set of rules, so they can be run against incoming transactions. If any rule in the set cannot be enabled (for example, a rule has an invalid rule ID), then no rules are enabled.
/projects/{projectId}/rules/enabled
post
Validate rule code (Deprecated)
Checks for errors in the rule code.
/projects/{projectId}/rules/{ruleId}/validation
post
Delete rules
Deletes a selection of rules. The selected rules must all be in the Recycle state.
/projects/{projectId}/rules/deletions
get
Get the audit log for a rule
Retrieves the audit-log history for a rule by base-rule ID.
/projects/{projectId}/rules/auditLog
get
Get a rule
Retrieves a rule by ID.
/rules/{ruleId}
patch
Update a rule's properties
Updates the properties of a rule. The rule must be in the Coding state.
/rules/{ruleId}
delete
Delete a rule
Deletes a rule. The rule must be in the Recycle state.
/rules/{ruleId}
post
Create a new rule version
Creates a new rule (with a new version number) from an existing rule in the same project.
/rules/{ruleId}/revisions
post
Validate rule code
Checks for errors in the rule code.
/rules/{ruleId}/validation
get
Get a list of functions
Returns the list of all functions that are supported for the rule programming language.
/languages/{languageId}/functions
get
Get a list of actions
Returns a collection of all actions that are supported for the rule programming language. Filtering The collection can be filtered by the rule type that allows the action. In 'filter-criteria', use the following:
/languages/{languageId}/macros

Organizations

Contains the operations for organization instances.
post
Create an organization
Creates an organization in the following way:
/organizations
get
Get a list of organizations
Returns the collection of organizations. In addition to listing an organization's properties, you can filter the list by the associated schema name, the schema ID, or both.
/organizations
get
Get an organization
Retrieves the organization by its ID. Specify a depth to return the associated message classification and sub-message classifications up to the depth. If a depth is not specified, then no message classifications are returned. Set the depth to 0 to include only the associated message classification. To return all sub-message classifications, set depth to -1.
/organizations/{orgId}
patch
Update an organization
Updates the specified organization. Select the content type "application/json-patch+json" to update the name of an organization, description of an organization, and display name of an organization, add new relations to an organization, or remove existing relations from an organization. You can also use other content types when only modifying the name, description, and display name of an organization.
/organizations/{orgId}
delete
Delete an organization
Deletes an organization and removes all links to associated roles and message schemas. Also deletes the organization's deployment definition.
/organizations/{orgId}
get
Get an organization's message classifications
Returns the collection of message classifications for the specified organization. Specify a depth to return sub-message classifications up to the depth. If no depth is specified or a depth is set to -1, then all sub-message classifications are returned.
/organizations/{orgId}/messageClassifications
get
Get a list of models for an organization
Returns the collection of models that are registered for use by the organization.
/organizations/{orgId}/models
post
Associate a role to an organization
Creates the relationship between an organization and a role of the Detection Definition service.
/organizations/{orgId}/roleRelationships/{roleId}
delete
Remove a role from an organization
Deletes the relationship between an organization and a role of the Detection Definition service.
/organizations/{orgId}/roleRelationships/{roleId}
post
Associate a message schema to an organization
Creates the relationship between an organization and a message schema of the Detection Definition service.
/organizations/{orgId}/schemaRelationships
delete
Remove a schema from an organization
Deletes the relationship between an organization and a message schema.
/organizations/{orgId}/schemaRelationships
post
Associate a list to an organization
Creates the relationship between an organization and a list.
/organizations/{orgId}/listRelationships/{listId}
delete
Remove a list from an organization
Deletes the relationship between an organization and a list.
/organizations/{orgId}/listRelationships/{listId}
get
Get an organization's lists
Returns the lists that are associated with an organization.
/organizations/{orgId}/lists
get
Get the variables for message schemas
Returns the list of variables for all message schemas that are associated with an organization.
/organizations/{orgId}/variables
post
Associate an alert type to an organization
Creates the relationship between an organization and an alert type.
/organizations/{orgId}/alertTypeRelationships/{alertTypeCode}
delete
Remove an alert type from an organization
Deletes the relationship between an organization and an alert type.
/organizations/{orgId}/alertTypeRelationships/{alertTypeCode}

Message Classifications

Contains the operations for message classification instances.

Impact Analyses

Contains the operations for impact analysis.
post
Get transaction-related information for rules
Retrieves information about the ability of a transaction population to support executing the given rules.
/projects/{projectId}/rulesTransactionInfo
get
Get a list of impact analyses
Returns a list of impact analyses.
/projects/{projectId}/impactAnalyses
post
Create an impact analysis
Creates a new impact analysis by using criteria that you provide.
/projects/{projectId}/impactAnalyses
post
Delete impact analyses
Deletes a selection of impact analyses.
/projects/{projectId}/impactAnalyses/deletions
get
Get an impact analysis
Retrieves an impact analysis by ID.
/impactAnalyses/{impactAnalysisId}
delete
Delete an impact analysis
Deletes an impact analysis.
/impactAnalyses/{impactAnalysisId}
get
Get rules for an impact analysis
Returns the list of rules that were used in an impact analysis.
/impactAnalyses/{impactAnalysisId}/rules
get
Get rule details for an impact analysis
Retrieves the details of the rules that were used in an impact analysis.
/impactAnalyses/{impactAnalysisId}/rules/{ruleId}
post
Cancel an impact analysis
Cancels an impact analysis.
/impactAnalyses/{impactAnalysisId}/cancel
get
Get timing metrics for an impact analysis
Retrieves information about how long it took to execute the impact analysis.
/impactAnalyses/{impactAnalysisId}/timingMetrics
get
Get alerts for an impact analysis
Returns the list of alerts for an impact analysis.
/impactAnalyses/{impactAnalysisId}/alerts
get
Get transaction-related variables for an impact analysis
Returns the list of variables that are available for the output transactions in an impact analysis.
/impactAnalyses/{impactAnalysisId}/variables
post
Get transactions for an impact analysis
Returns the list of transactions fired by the rules in an impact analysis.
/impactAnalyses/{impactAnalysisId}/transactions

Projects

Contains the operations for project instances.
get
Get a list of projects
Returns a list of projects.
/organizations/{orgId}/projects
post
Create a project
Creates a new project with the properties specified in the request body.
/organizations/{orgId}/projects
get
Get a project (Deprecated)
Retrieves the project that is identified by the given ID.
/organizations/{orgId}/projects/{projectId}
delete
Delete a project (Deprecated)
Deletes a project, if there are no associated assets, such as rules. The profile variable user group that belongs to the project is also removed.
/organizations/{orgId}/projects/{projectId}
patch
Update a project (Deprecated)
Updates a project. Select the content type 'application/json-patch+json' to update the name and description of a project, add new relations to a project, or remove existing relations from a project. You can also use other content types when you change the project's name and description only.
/organizations/{orgId}/projects/{projectId}
get
Get variables for a project's message schemas (Deprecated)
Returns the list of variables for the message schemas that are associated with the project.
/organizations/{orgId}/projects/{projectId}/variables
get
Get a current user's projects
Returns the list of projects of which the current user is a member.
/organizations/projects
get
Get a project
Retrieves the project that is identified by the given ID.
/projects/{projectId}
delete
Delete a project
Deletes a project, if there are no associated assets, such as rules. The profile variable user group that belongs to the project is also removed.
/projects/{projectId}
patch
Update a project
Updates a project. Select the content type 'application/json-patch+json' to update the name and description of a project, add new relations to a project, or remove existing relations from a project. You can also use other content types when you change a project's name and description only.
/projects/{projectId}
get
Get the variables for a project's message schemas
Returns the list of variables of the message schemas that are associated with the project.
/projects/{projectId}/variables
get
Get a project's message classifications
Retrieves the message classifications that are associated with the project identified by the given ID.
/projects/{projectId}/messageClassifications
get
Get a project's message classification
Retrieves the message classification that is associated with the project identified by the given ID. Specify a depth to return sub-message classifications together with the message classification.
/projects/{projectId}/messageClassifications/{messageClassificationId}
get
Get a project's lists
Returns the lists that are associated with a project.
/projects/{projectId}/lists

Roles and Users

Contains the operations for roles, users, and capabilities of the Detection Definition service.
get
Get a list of roles
Returns the list of roles for the Detection Definition service. If an orgId is specified, then the list contains the roles that are associated with the specified organization. For more information about filterable and sortable fields of groups, see the SAS Identity Service API.
/roles
get
Get a list of users
Returns the list of the users of the Detection Definition service. If an orgId is specified, then the list contains users of the roles that are associated with the organization. Valid users are direct members of the role of Detection Definition service. For more information about filterable and sortable fields, see the SAS Identity Service API.
/users
get
Get your capabilities
Retrieves your capabilities for the Detection Definition service. If you specify an orgId, then the list contains your capabilities for the roles that are associated with the organization. If you are a SAS Administrator, then you can also retrieve the list of capabilities defined in SAS Detection Architecture or the capabilities of a role.
/capabilities
get
Get a user's capabilities
Returns whether the current user has been granted capabilities within the service. Specify the capabilities to be checked with the criteria parameter. A single capability can be checked or you can specify a combination of capabilities to check (for example, AND(sda.projects.view, sda.rules.view)). Returns 'true' if the current user has the capabilities, or and 'false' if they do not. Some capabilities are granted at service scope, and other capabilities are granted at organization or project scope. If the criteria parameter consists of one or more capabilities with a project scope, then you must provide a projectId. If the criteria parameter consists of one or more capabilities with an organization scope, then you must provide an orgId (unless you specified a projectId).
/capabilities/granted

Models

Contains the operations for models.