Symphony Messaging REST APIs
  • Symphony Messaging API Reference documentation
  • Endpoints Reference
    • Bots Authentication
      • Session Authenticate
      • Key Manager Authenticate
      • Session Authenticate (Cert)
      • Key Manager Authenticate (Cert)
      • Session Logout
      • Key Manager Logout
    • Apps Authentication
      • Authenticate App
      • Pod Certificate
    • Apps On Behalf Of (OBO)
      • API Endpoints for Apps
      • App Authentication
      • User Authentication by User ID
      • User Authentication by User Name
    • Info - Health Check
      • Health Check
      • Health Check Extended
      • Session User
      • Agent Info
      • Echo
    • Messages
      • Get Messages
      • Create Message
      • Blast Message
      • Attachment
      • Import Message
      • Update Message
      • Suppress Message
      • Message Search
      • Message Search
      • Message Status
      • Attachment Types
      • Get Message
      • List Attachments
      • List Message Receipts
      • Message Metadata
    • Datafeed - Real Time Events
      • Create Datafeed
      • Read Datafeed
      • List Datafeed
      • Delete Datafeed
    • Datahose - Pod Real Time Events
      • Datahose - Read Events
    • Streams - Conversations
      • Related to IMs
        • Create IM
        • Create IM non-inclusive
        • Update IM
        • IM Info
      • Related to Rooms
        • Room Attributes
        • Create Room
        • Update Room
        • Room Info
        • De/Re-activate Room
        • Room Members
        • Add Member
        • Remove Member
        • Promote Owner
        • Demote Owner
        • Search Rooms
      • All streams
        • Share Content
        • List User Streams
        • List User Streams (Admin)
        • Stream Info
        • List Streams for Enterprise
        • Stream Members
    • Signals
      • List Signals
      • Get Signal
      • Create Signal
      • Update Signal
      • Delete Signal
      • Subscribe Signal
      • Unsubscribe Signal
      • Suscribers
      • Signal Object
    • Connections
      • Get Connection
      • List Connection
      • Create Connection
      • Accept Connection
      • Reject Connection
      • Remove Connection
    • Presence
      • Get Presence
      • Get All Presence
      • Get User Presence
      • External Presence Interest
      • Set Presence
      • Set Other User's Presence - Admin
    • Users
      • Users Lookup
      • Search Users
      • Follow User
      • Unfollow User
      • List User Followers
      • List Users Followed
    • User Management
      • User Attributes Object
      • Password Object
      • Roles Object
      • UserKeyRequest Object
      • Get User
      • List Users
      • Create User
      • Update User
      • User Avatar
      • Update User Avatar
      • User Status
      • Update User Status
      • List Features
      • User Features
      • Update User Features
      • Find Users
      • List Roles
      • Add Role
      • Remove Role
      • List Audit Trail
      • Suspend User Account
      • Get Bot Manifest
      • Update Bot Manifest
    • User Sessions
      • List Sessions
      • Logout Session
      • Logout All Sessions
    • Groups - Distribution Lists
      • OAuth2 Authenticate
      • Add a new user to an existing group
      • Insert a new group
      • Retrieve a group
      • Update a group
      • List all groups of specified type
      • Update the group avatar
    • URI Protocols
      • Create Protocol
      • List Protocols
      • Delete Protocol
    • Manage Apps
      • Create App
      • Update App
      • Delete App
      • Get App
    • Apps Entitlements
      • List Apps
      • Update App Entitlements
      • List User Apps
      • Update User Apps
      • Update All User Apps
    • Disclaimers
      • Disclaimer
      • List Disclaimers
      • List Disclaimer Users
      • User Disclaimer
      • Update User Disclaimer
      • Unassign User Disclaimer
    • Delegates
      • User Delegates
      • Update User Delegates
    • Information Barrier Groups
      • List IB Groups
      • List IB Group Members
      • Add IB Group Members
      • Remove IB Group Members
      • List Policies
    • Certificates
      • Public (Signing) Certificate
      • List Company Certificates
      • Create Company Certificate
      • Delete Company Certificate
      • Company Certificate Details
      • List Verified Certificates
      • List Trusted Certificates
      • List Certificate Types
      • Update Company Certificate
    • Malware Scanner
      • Malware Scanner APIs
        • File Malware Scanner State
        • Update File Malware Scanner State
      • Customer Malware Scanner APIs
        • Malware Scanner Health
        • File Malware Scanner
    • DLP Dictionary & Policy Management
      • Overview
      • Dictionary Management endpoints
        • Create Dictionary
        • All Dictionaries
        • Specific Dictionary
        • Update Dictionary
        • Upload Dictionary Content
        • Download Dictionary Content
        • Delete Dictionary
      • V3 Policy Management endpoints
        • V3 Policy structure for Create/Update
        • V3 Create Policy
        • V3 All Policies
        • V3 Get Policy
        • V3 Update Policy
        • V3 Enable Policy
        • V3 Disable Policy
        • V3 Delete Policy
      • V3 Violations endpoints
        • V3 Violations - Sample Responses
        • V3 Violations - Special Scenarios of Attachments
        • V3 Message Violations
        • V3 Signal Violations
        • V3 Stream Violations
        • V3 Violation Attachment Download
    • Audit Trail 2
      • OAuth2 Authenticate
      • Get Audit trails
      • Get distinct values of a list of filters
      • Get Audit Trail Stream
      • Get categories permissions
    • Compliance Barrier Groups
      • Compliance Group Types
      • Compliance User Groups
        • List Compliance User Groups
        • Get a Compliance User Group
        • Create a Compliance User Group
        • Update a Compliance User Group
      • Compliance Group Assignments
        • List Assignments
        • List Compliance Group Assignments
        • Update a Compliance Group
      • Compliance Group Memberships
        • List Memberships
        • List Compliance Group Memberships
        • Add Compliance Group Membership
        • Update a User Membership
  • Deprecated Endpoints
    • DLP Dictionary and Policy management
      • V2 Policy Management endpoints
        • V2 Create Policy
        • V2 All Policies
        • V2 Get Policy
        • V2 Update Policy
        • V2 Enable Policy
        • V2 Disable Policy
        • V2 Delete Policy
      • V2 Violations endpoints
        • V2 Signal Violations
        • V2 Message Violations
        • V2 Stream Violations
    • Create Presence Feed
    • Read Presence Feed
    • Delete Presence Feed
    • Get Message IDs by Timestamp
    • Health Check v2
    • Datafeed 1
      • Create Datafeed 1
      • Read Datafeed 1
Powered by GitBook
On this page

Was this helpful?

  1. Endpoints Reference
  2. DLP Dictionary & Policy Management
  3. V3 Policy Management endpoints

V3 Create Policy

Creates a new policy with dictionary references.

Last updated 9 months ago

Was this helpful?

After you create a policy, call to start enforcing the policy.

AppliesTo

Configuration applies to policy

Field
Type
Required
Description

dataType

string

Yes

The list of data types that policy should apply to. Can't be empty. Can be one of [“Messages","RoomMeta", "SignalMeta", "FileContent", "FileMeta"]

action

string

Yes

Action to be taken on violation detection.

Can be one of ["Block", "Warn", "LogOnly"]. The default is "LogOnly".

rules

rules

array_object

See Rules

Yes

A Rule defines the actual matching specification for policies. It holds a type and a configuration for the rule, these properties should be used to build the corresponding matching implementation.

Only one of the configuration property should be set [textMatchConfig, fileSizeConfig, fileExtensionConfig, filePasswordConfig, fileClassifierConfig].

Rules

Configuration for rules

Field
Type
Required
Description

type

string

Yes

Type of a rule used by policy. Can be [" "TEXT_MATCH", "FILE_EXTENSION", "FILE_SIZE", "FILE_PASSWORD", "FILE_CLASSIFIER"].

name

string

Yes

Name for rule.

textMatchConfig

object

Only one of the configuration property should be set [textMatchConfig, fileClassifierConfig, filePasswordConfig].

This is a configuration that can be used to match text or regex. Configuration that can be used by a rule. This is a configuration that can be used to match text or regex. This configuration also corresponds to V2 TextMatch/RegexMatch of dictionaries. See TextMatchConfig

filePasswordConfig

object

Only one of the configuration property should be set [textMatchConfig, fileClassifierConfig, filePasswordConfig].

Password protected detection config for files that are password protected or not.

fileClassifierConfig

object

Only one of the configuration property should be set [textMatchConfig, fileClassifierConfig, filePasswordConfig].

Extension detection config for allowed and blocked types of file extensions.

TextMatchConfig

Field
Type
Required
Description

dictionaries

array_object

see DictionaryMeta

Yes

List of dictionaries to apply in config. See DictionaryMeta

countUniqueOccurrences

string

Yes

Count of unique occurrences to be matched.

applicableFileTypes

array_string

File types must be applied only for rule type "FileContent", otherwise must be empty.

Can be ["PDF", "WORD", "EXCEL", "POWERPOINT", "ZIP", "CSV", "TXT"].

Field

DictionaryMeta

Field
Type
Required
Description

dictId

string

Yes

Unique dictionary identifier.

name

string

Yes

Dictionary version.

version

string

Yes

Dictionary name.

FileClassifierConfig

Field
Type
Required
Description

classifiers

Map<String, String>

Yes

Classifier is defined as a Key and its Value: e.g.: "classification": "Internal". Name and value can contain UTF-8 characters. Neither the name nor value cannot be left empty.

Maximum 30 characters for the name and value, case insensitive.

If files contains k-v pairs in the classifers map, it means a match. Maximum 30 classifiers per policy.

applicableFileTypes

array_string

Yes

File types that can be applied. Can be ["PDF", "WORD", "EXCEL", "POWERPOINT", "ZIP", "CSV", "TXT"].

FilePasswordConfig

Field
Type
Required
Description

applicableFileTypes

array_string

Yes

File types that can be applied. Can be ["PDF", "WORD", "EXCEL", "POWERPOINT", "ZIP", "CSV", "TXT"].

matchCriteria

array_string

Yes

Based on the criteria, whether a file is password protected or not means a match.Can be ["PASSWORD_PROTECTED". "NOT_PASSWORD_PROTECTED"]. The default is "NOT_PASSWORD_PROTECTED".

🚧 Required Permissions

Calling this endpoint requires a Service User Account set with the Expression Filter Policy Management role. For more information about Service User accounts and their roles, see the .

See for a list of roles and associated privileges.

Symphony Administration Guide
Bot Permissions
Enable Policy
  • POSTCreates a policy
  • AppliesTo
  • Rules
  • TextMatchConfig
  • DictionaryMeta
  • FileClassifierConfig
  • FilePasswordConfig

Creates a policy

post

Creates a new policy with dictionary references. At the time of policy creation, the caller should only provide - contentTypes, name, scopes and type. The rest of the information is populated automatically. Note - You need to enable the policy after creation to start enforcing the policy.

Header parameters
sessionTokenstringRequired

Session authentication token.

keyManagerTokenstringRequired

Key Manager authentication token.

Body

Request to be used to get policies.

namestringRequired

Unique name of a policy, max 30 characters. Cannot be empty. All the leading and trailing blank spaces are trimmed.

scopesstring[]Required

List of communication scopes. Possible values are "Internal" (for Internal conversations) or "External" (for External conversations). You can apply both scopes if you set it to ["Internal", "External"].

Responses
200
Success
application/json
400
Client error, see response body for further details.
application/json
401
Unauthorized: Session tokens invalid.
application/json
403
Forbidden: Caller lacks necessary entitlement.
application/json
500
Server error, see response body for further details.
application/json
post
POST /agent/v3/dlp/policies HTTP/1.1
Host: youragentURL.symphony.com
sessionToken: text
keyManagerToken: text
Content-Type: application/json
Accept: */*
Content-Length: 562

{
  "name": "text",
  "scopes": [
    "text"
  ],
  "appliesTo": [
    {
      "dataType": "text",
      "action": "text",
      "rules": [
        {
          "id": "text",
          "type": "text",
          "name": "text",
          "textMatchConfig": {
            "dictionaries": [
              {
                "dictId": "text",
                "version": "text",
                "name": "text"
              }
            ],
            "countUniqueOccurrences": 1,
            "applicableFileTypes": [
              "text"
            ]
          },
          "fileSizeConfig": {
            "sizeLimit": 1
          },
          "fileExtensionConfig": {
            "allowLists": [
              "text"
            ],
            "blockLists": [
              "text"
            ]
          },
          "filePasswordConfig": {
            "applicableFileTypes": [
              "text"
            ],
            "matchCriteria": "text"
          },
          "fileClassifierConfig": {
            "classifiers": {
              "ANY_ADDITIONAL_PROPERTY": "text"
            },
            "applicableFileTypes": [
              "text"
            ]
          }
        }
      ]
    }
  ]
}
{
  "data": {
    "id": "text",
    "policyId": "text",
    "version": "text",
    "name": "text",
    "creatorId": 1,
    "scopes": [
      "text"
    ],
    "appliesTo": [
      {
        "dataType": "text",
        "action": "text",
        "rules": [
          {
            "id": "text",
            "type": "text",
            "name": "text",
            "textMatchConfig": {
              "dictionaries": [
                {
                  "dictId": "text",
                  "version": "text",
                  "name": "text"
                }
              ],
              "countUniqueOccurrences": 1,
              "applicableFileTypes": [
                "text"
              ]
            },
            "fileSizeConfig": {
              "sizeLimit": 1
            },
            "fileExtensionConfig": {
              "allowLists": [
                "text"
              ],
              "blockLists": [
                "text"
              ]
            },
            "filePasswordConfig": {
              "applicableFileTypes": [
                "text"
              ],
              "matchCriteria": "text"
            },
            "fileClassifierConfig": {
              "classifiers": {
                "ANY_ADDITIONAL_PROPERTY": "text"
              },
              "applicableFileTypes": [
                "text"
              ]
            }
          }
        ]
      }
    ],
    "active": true,
    "deleted": true,
    "creationDate": 1,
    "lastUpdatedDate": 1,
    "lastDisabledDate": 1,
    "systemPolicy": true
  }
}