MIP SDK for C++ (Preview) Reference

The Microsoft Information Protection (MIP) SDK for C++ (Preview) allows developers to manage and apply data protection policies to data and other digital assets.

To learn more, see MIP Developer blog.

The MIP SDK for C++ includes:

Class name Description
AccessDeniedError The user could not get access to the content. For example, no permissions, content revoked.
Action Interface for an action. Each action translates to a step that needs to be taken by the application to apply the label (as defined in the policy)
AddContentFooterAction An action class that specifies adding a content footer to the document.
AddContentHeaderAction An action class that specifies adding content header.
AddWatermarkAction An action class that specifies adding watermark.
ApplyLabelAction Apply label actions requires the calling application to apply a specific label.
BadInputError Bad input error, thrown when the input to an SDK API is invalid.
ClassificationResult Class that contains the result of a classification call on the Execution State.
ConsentDelegate Delegate for consent related operations.
ConsentDeniedError An operation that required consent from user was not granted consent.
ContentLabel Abstraction for a Microsoft Information Protection label that is applied to a piece of content, typically a document.
CustomAction CustomAction is a generic action class that captures all the sub-properties of the action as a property bag. The caller is responsible to understand the meaning of the action.
Error Base class for all errors that will be reported (thrown or returned) from MIP SDK.
ExecutionState Interface for all the state needed to execute the engine.
FileEngine::Settings Not yet documented.
FileEngine This class provides an interface for all engine functions.
FileHandler::Observer Observer interface for clients to get notifications events related to file handler.
FileHandler Interface for all file handling functions.
FileIOError File IO error.
FileProfile::Observer Observer interface for clients to get notifications for profile related events.
FileProfile::Settings Settings used by FileProfile during its creation and throughout its lifetime.
FileProfile FileProfile class is the root class for using the Microsoft Information Protection operations.
HttpDelegate Interface for overriding HTTP handling.
HttpRequest Interface that describes a single HTTP request.
HttpResponse Interface that describes a single HTTP response, implemented by client app when overriding HttpDelegate.
InternalError Internal error. This error is thrown when something unexpected happens during execution.
JustificationRequiredError Not yet documented.
JustifyAction Justify Action requires providing a justification to a label downgrade and setting the response in the execution state.
Label Abstraction for a single Microsoft Information Protection label.
LabelingOptions Interface for configuring labeling options for the SetLabel/DeleteLabel methods.
LoggerDelegate A class that defines the interface to the MIP SDK logger.
MetadataAction An Action that adds metadata information to the content.
NetworkError Networking error. Caused by unexpected behavior when making network calls to service endpoints.
NotSupportedError The operation requested by the application is not supported by the SDK.
PolicyEngine::Settings Defines the settings associated with a PolicyEngine.
PolicyEngine This class provides an interface for all engine functions.
PolicyHandler This class provides an interface for all policy handler functions on a file.
PolicyProfile::Observer Observer interface for clients to get notifications for profile related events.
PolicyProfile::Settings Settings used by PolicyProfile during its creation and throughout its lifetime.
PolicyProfile PolicyProfile class is the root class for using the Microsoft Information Protection operations. A typical application will only need one PolicyProfile but it can create multiple profiles if needed.
PolicySyncError An attempt to sync policy data failed.
PrivilegedRequiredError Current label was assigned as a privileged operation (The equivalent to an administrator operation), therefore it can't be overriden.
ProtectAdhocAction An action class that specifies adding adhoc protection to the document.
ProtectByTemplateAction An action class that specifies adding protection by template to the document.
ProtectDoNotForwardAction An action class that specifies adding do not forward protection to the document.
ProtectionDescriptor Description of protection associated with a piece of content.
ProtectionDescriptorBuilder Constructs a ProtectionDescriptor that describes protection associated with a piece of content.
ProtectionEngine::Observer Interface that receives notifications related to ProtectionEngine.
ProtectionEngine::Settings Settings used by ProtectionEngine during its creation and throughout its lifetime.
ProtectionEngine Manages protection-related actions related to a specific identity.
ProtectionHandler::Observer Interface that receives notifications related to ProtectionHandler.
ProtectionHandler Manages protection-related actions for a specific protection configuration.
ProtectionProfile::Observer Interface that receives notifications related to ProtectionProfile.
ProtectionProfile::Settings Settings used by ProtectionProfile during its creation and throughout its lifetime.
ProtectionProfile ProtectionProfile is the root class for performing protection operations.
RecommendLabelAction Recommend label actions is meant to suggest a label to the users. Suppressing this call after a user ignores the recommended label should be done through the supported actions on the execution state.
RemoveContentFooterAction An action class that specifies removing the content footer from the document.
RemoveContentHeaderAction An action class that specifies removing the content header from the document.
RemoveProtectionAction An action class that specifies removing protection from the document.
RemoveWatermarkAction An action class that specifies removing the watermarking from the document.
Stream A class that defines the interface between the MIP SDK and stream-based content.
TransientNetworkError Transient networking error. Caused by unexpected behavior when making network calls to service endpoints. The operation can be retried as this error is a transient error.
UserRights A group of users and the rights associated with them.
UserRoles A group of users and the roles associated with them.