Interface DlpPoliciesAndDictionaryManagementApi


  • @Path("/")
    public interface DlpPoliciesAndDictionaryManagementApi
    Agent API

    This document refers to Symphony API calls to send and receive messages and content. They need the on-premise Agent installed to perform decryption/encryption of content. - sessionToken and keyManagerToken can be obtained by calling the authenticationAPI on the symphony back end and the key manager respectively. Refer to the methods described in authenticatorAPI.yaml. - Actions are defined to be atomic, ie will succeed in their entirety or fail and have changed nothing. - If it returns a 40X status then it will have sent no message to any stream even if a request to aome subset of the requested streams would have succeeded. - If this contract cannot be met for any reason then this is an error and the response code will be 50X. - MessageML is a markup language for messages. See reference here: https://rest-api.symphony.com/docs/messagemlv2

    • Method Detail

      • v1DlpDictionariesDictIdDataDownloadGet

        @GET
        @Path("/v1/dlp/dictionaries/{dictId}/data/download")
        @Produces("application/octet-stream")
        String v1DlpDictionariesDictIdDataDownloadGet​(@HeaderParam("sessionToken")
                                                      String sessionToken,
                                                      @HeaderParam("keyManagerToken")
                                                      String keyManagerToken,
                                                      @PathParam("dictId")
                                                      String dictId,
                                                      @QueryParam("dictVersion")
                                                      String dictVersion)
        Downloads Base 64 encoded dictionary content. Downloads Base 64 encoded dictionary content.
      • v1DlpDictionariesDictIdDataUploadPost

        @POST
        @Path("/v1/dlp/dictionaries/{dictId}/data/upload")
        @Consumes("multipart/form-data")
        @Produces("*/*")
        V1DLPDictionaryMetadataResponse v1DlpDictionariesDictIdDataUploadPost​(Object dataDetail,
                                                                              @HeaderParam("sessionToken")
                                                                              String sessionToken,
                                                                              @HeaderParam("keyManagerToken")
                                                                              String keyManagerToken,
                                                                              @PathParam("dictId")
                                                                              String dictId)
        Override dictionary content with provided content. Override dictionary content with provided content.
      • v1DlpDictionariesDictIdDelete

        @DELETE
        @Path("/v1/dlp/dictionaries/{dictId}")
        @Produces("*/*")
        V1DLPDictionaryMetadataResponse v1DlpDictionariesDictIdDelete​(@HeaderParam("sessionToken")
                                                                      String sessionToken,
                                                                      @HeaderParam("keyManagerToken")
                                                                      String keyManagerToken,
                                                                      @PathParam("dictId")
                                                                      String dictId)
        Delete a dictionary Deletes a dictionary. Note: All related policies will be affected.
      • v1DlpDictionariesDictIdGet

        @GET
        @Path("/v1/dlp/dictionaries/{dictId}")
        @Produces("*/*")
        V1DLPDictionaryMetadataResponse v1DlpDictionariesDictIdGet​(@HeaderParam("sessionToken")
                                                                   String sessionToken,
                                                                   @HeaderParam("keyManagerToken")
                                                                   String keyManagerToken,
                                                                   @PathParam("dictId")
                                                                   String dictId,
                                                                   @QueryParam("dictVersion")
                                                                   String dictVersion)
        Get dictionary metadata Get basic information for a dictionary.
      • v1DlpDictionariesDictIdPut

        @PUT
        @Path("/v1/dlp/dictionaries/{dictId}")
        @Consumes("application/json")
        @Produces("*/*")
        V1DLPDictionaryMetadataResponse v1DlpDictionariesDictIdPut​(V1DLPDictionaryMetadataUpdateRequest body,
                                                                   @HeaderParam("sessionToken")
                                                                   String sessionToken,
                                                                   @HeaderParam("keyManagerToken")
                                                                   String keyManagerToken,
                                                                   @PathParam("dictId")
                                                                   String dictId)
        Updates a dictionary Updates the dictionary's basic metadata without content. This API cannot be used for creating a new dictionary. In case of update only \"name\" can be changed. Note: All related policies will also have versions updated.
      • v1DlpDictionariesGet

        @GET
        @Path("/v1/dlp/dictionaries")
        @Produces("*/*")
        V1DLPDictionaryMetadataCollectionResponse v1DlpDictionariesGet​(@HeaderParam("sessionToken")
                                                                       String sessionToken,
                                                                       @HeaderParam("keyManagerToken")
                                                                       String keyManagerToken,
                                                                       @QueryParam("page")
                                                                       Integer page,
                                                                       @QueryParam("limit")
                                                                       Integer limit)
        Get all dictionary metadatas Get all dictionary metadatas with the latest version. Each dictionary object will only contain meta data of the content.
      • v1DlpDictionariesPost

        @POST
        @Path("/v1/dlp/dictionaries")
        @Consumes("application/json")
        @Produces("*/*")
        V1DLPDictionaryMetadataResponse v1DlpDictionariesPost​(V1DLPDictionaryMetadataCreateRequest body,
                                                              @HeaderParam("sessionToken")
                                                              String sessionToken,
                                                              @HeaderParam("keyManagerToken")
                                                              String keyManagerToken)
        Create a dictionary Creates a dictionary with basic metadata and no content. Only \"name\" and \"type\" field is used to create a new dictionary entry.
      • v1DlpPoliciesGet

        @GET
        @Path("/v1/dlp/policies")
        @Produces("*/*")
        V1DLPPoliciesCollectionResponse v1DlpPoliciesGet​(@HeaderParam("sessionToken")
                                                         String sessionToken,
                                                         @HeaderParam("keyManagerToken")
                                                         String keyManagerToken,
                                                         @QueryParam("page")
                                                         Integer page,
                                                         @QueryParam("limit")
                                                         Integer limit)
        Get all policies Get all policies
      • v1DlpPoliciesPolicyIdDelete

        @DELETE
        @Path("/v1/dlp/policies/{policyId}")
        @Produces("*/*")
        V1DLPPolicyResponse v1DlpPoliciesPolicyIdDelete​(@HeaderParam("sessionToken")
                                                        String sessionToken,
                                                        @HeaderParam("keyManagerToken")
                                                        String keyManagerToken,
                                                        @PathParam("policyId")
                                                        String policyId)
        Delete a policy Delete a policy. Note: Only disabled policy can be deleted
      • v1DlpPoliciesPolicyIdDisablePost

        @POST
        @Path("/v1/dlp/policies/{policyId}/disable")
        @Produces("*/*")
        V1DLPPolicyResponse v1DlpPoliciesPolicyIdDisablePost​(@HeaderParam("sessionToken")
                                                             String sessionToken,
                                                             @HeaderParam("keyManagerToken")
                                                             String keyManagerToken,
                                                             @PathParam("policyId")
                                                             String policyId)
        Disables a policy. Disables a policy.
      • v1DlpPoliciesPolicyIdEnablePost

        @POST
        @Path("/v1/dlp/policies/{policyId}/enable")
        @Produces("*/*")
        V1DLPPolicyResponse v1DlpPoliciesPolicyIdEnablePost​(@HeaderParam("sessionToken")
                                                            String sessionToken,
                                                            @HeaderParam("keyManagerToken")
                                                            String keyManagerToken,
                                                            @PathParam("policyId")
                                                            String policyId)
        Enables a policy. Enables a policy.
      • v1DlpPoliciesPolicyIdGet

        @GET
        @Path("/v1/dlp/policies/{policyId}")
        @Produces("*/*")
        V1DLPPolicyResponse v1DlpPoliciesPolicyIdGet​(@HeaderParam("sessionToken")
                                                     String sessionToken,
                                                     @HeaderParam("keyManagerToken")
                                                     String keyManagerToken,
                                                     @PathParam("policyId")
                                                     String policyId,
                                                     @QueryParam("policyVersion")
                                                     String policyVersion)
        Get a policy Get a policy
      • v1DlpPoliciesPolicyIdPut

        @PUT
        @Path("/v1/dlp/policies/{policyId}")
        @Consumes("application/json")
        @Produces("*/*")
        V1DLPPolicyResponse v1DlpPoliciesPolicyIdPut​(V1DLPPolicyRequest body,
                                                     @HeaderParam("sessionToken")
                                                     String sessionToken,
                                                     @HeaderParam("keyManagerToken")
                                                     String keyManagerToken,
                                                     @PathParam("policyId")
                                                     String policyId)
        Updates a policy. Cannot be used for creation. Update the policy (name, type, contentTypes, scopes) and also the dictionaries for a policy. Warning: If you send empty list of dictionaries during the update operation, then all the dictionaries for this policy are deleted and policy is automatically disabled. Note: The policy should already exist.
      • v1DlpPoliciesPost

        @POST
        @Path("/v1/dlp/policies")
        @Consumes("application/json")
        @Produces("application/json")
        V1DLPPolicyResponse v1DlpPoliciesPost​(V1DLPPolicyRequest body,
                                              @HeaderParam("sessionToken")
                                              String sessionToken,
                                              @HeaderParam("keyManagerToken")
                                              String keyManagerToken)
        Creates a policy 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.
      • v3DlpPoliciesGet

        @GET
        @Path("/v3/dlp/policies")
        @Produces("*/*")
        V3DLPPoliciesCollectionResponse v3DlpPoliciesGet​(@HeaderParam("sessionToken")
                                                         String sessionToken,
                                                         @HeaderParam("keyManagerToken")
                                                         String keyManagerToken,
                                                         @QueryParam("page")
                                                         Integer page,
                                                         @QueryParam("limit")
                                                         Integer limit)
        Get all policies Get all policies
      • v3DlpPoliciesPolicyIdDeletePost

        @POST
        @Path("/v3/dlp/policies/{policyId}/delete")
        @Produces("*/*")
        V3DLPPolicyResponse v3DlpPoliciesPolicyIdDeletePost​(@HeaderParam("sessionToken")
                                                            String sessionToken,
                                                            @HeaderParam("keyManagerToken")
                                                            String keyManagerToken,
                                                            @PathParam("policyId")
                                                            String policyId)
        Delete a policy Delete a policy. Note: Only disabled policy can be deleted
      • v3DlpPoliciesPolicyIdDisablePost

        @POST
        @Path("/v3/dlp/policies/{policyId}/disable")
        @Produces("*/*")
        V3DLPPolicyResponse v3DlpPoliciesPolicyIdDisablePost​(@HeaderParam("sessionToken")
                                                             String sessionToken,
                                                             @HeaderParam("keyManagerToken")
                                                             String keyManagerToken,
                                                             @PathParam("policyId")
                                                             String policyId)
        Disables a policy. Disables a policy.
      • v3DlpPoliciesPolicyIdEnablePost

        @POST
        @Path("/v3/dlp/policies/{policyId}/enable")
        @Produces("*/*")
        V3DLPPolicyResponse v3DlpPoliciesPolicyIdEnablePost​(@HeaderParam("sessionToken")
                                                            String sessionToken,
                                                            @HeaderParam("keyManagerToken")
                                                            String keyManagerToken,
                                                            @PathParam("policyId")
                                                            String policyId)
        Enables a policy. Enables a policy.
      • v3DlpPoliciesPolicyIdGet

        @GET
        @Path("/v3/dlp/policies/{policyId}")
        @Produces("*/*")
        V3DLPPolicyResponse v3DlpPoliciesPolicyIdGet​(@HeaderParam("sessionToken")
                                                     String sessionToken,
                                                     @HeaderParam("keyManagerToken")
                                                     String keyManagerToken,
                                                     @PathParam("policyId")
                                                     String policyId,
                                                     @QueryParam("policyVersion")
                                                     String policyVersion)
        Get a policy Get a policy
      • v3DlpPoliciesPolicyIdUpdatePost

        @POST
        @Path("/v3/dlp/policies/{policyId}/update")
        @Consumes("application/json")
        @Produces("*/*")
        V3DLPPolicyResponse v3DlpPoliciesPolicyIdUpdatePost​(V3DLPPolicyRequest body,
                                                            @HeaderParam("sessionToken")
                                                            String sessionToken,
                                                            @HeaderParam("keyManagerToken")
                                                            String keyManagerToken,
                                                            @PathParam("policyId")
                                                            String policyId)
        Updates a policy. Cannot be used for creation. Update the policy (name, type, contentTypes, scopes) and also the dictionaries for a policy. Warning: If you send empty list of dictionaries during the update operation, then all the dictionaries for this policy are deleted and policy is automatically disabled. Note: The policy should already exist.
      • v3DlpPoliciesPost

        @POST
        @Path("/v3/dlp/policies")
        @Consumes("application/json")
        @Produces("application/json")
        V3DLPPolicyResponse v3DlpPoliciesPost​(V3DLPPolicyRequest body,
                                              @HeaderParam("sessionToken")
                                              String sessionToken,
                                              @HeaderParam("keyManagerToken")
                                              String keyManagerToken)
        Creates a policy 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.