|
MIP SDK — C 1.18
API Reference Documentation for C
|
The Microsoft Information Protection (MIP) SDK C wrapper exposes MIP's protection and labeling capabilities through a flat C ABI suitable for binding into other languages. This site is the API reference for the C surface; for narrative documentation, samples, and quickstarts see the conceptual docs on Microsoft Learn.
Note — the C wrapper covers the Protection and Policy / labeling APIs. If you need the File API (apply labels and protection to files like .docx, .pdf, .pptx), use the C++ reference instead.
The C wrapper doesn't have language-specific quickstarts yet; the C++ ones show the same concepts (client initialization, delegates, profile/engine bring-up) that map directly onto the C surface:
Runnable C++ samples, one per API surface (the C wrapper types have _cc.h suffixes and mirror the C++ classes 1:1):
This page is curated; the Files tab indexes every header.
| Header | What it does |
|---|---|
mip_context_cc.h | Process-wide MIP context (create/release). |
application_info_cc.h | Identifies your application to MIP. |
identity_cc.h | Represents the user identity. |
telemetry_configuration_cc.h | Telemetry configuration. |
flighting_feature_cc.h | Feature flags. |
Encrypt, decrypt, and manage Use Licenses directly.
| Header | What it does |
|---|---|
protection/protection_profile_cc.h / protection/protection_engine_cc.h | Profile/engine entry points. |
protection/protection_handler_cc.h | Encrypt/decrypt; manage rights and licenses. |
protection_descriptor_cc.h / protection_descriptor_builder_cc.h | Describe protection (template, ad-hoc, do-not-forward). |
protection/template_descriptor_cc.h | Inspect an RMS template. |
protection/license_info_cc.h / protection/delegation_license_cc.h | Inspect and request licenses. |
protection/protection_crypto_types_cc.h | Crypto mode constants. |
protection/user_rights_roles_cc.h | Rights and role assignments. |
Drive the labeling experience.
| Header | What it does |
|---|---|
upe/policy_profile_cc.h / upe/policy_engine_cc.h | Profile/engine entry points. |
upe/policy_handler_cc.h | Per-document policy decisions. |
upe/label_cc.h | A sensitivity label and its metadata. |
upe/content_label_cc.h | The label currently applied to content. |
upe/document_state_cc.h / upe/application_action_state_cc.h | Inputs supplied to the policy engine. |
upe/sensitivity_type_cc.h | Classification sensitivity types. |
upe/metadata_dictionary_cc.h | Document metadata. |
policy_handler_cc.h returns actions describing what your app should do.
| Header | When emitted |
|---|---|
upe/action_cc.h / upe/action_result_cc.h | Action base type and result. |
upe/justify_action_cc.h | Prompt the user for justification. |
upe/metadata_action_cc.h | Add or remove document metadata. |
upe/protect_by_template_action_cc.h / upe/protect_adhoc_action_cc.h / upe/protect_do_not_forward_action_cc.h | Apply protection. |
upe/add_watermark_action_cc.h / upe/add_content_header_action_cc.h / upe/add_content_footer_action_cc.h | Apply visual marking. |
upe/remove_protection_action_cc.h / upe/remove_watermark_action_cc.h / upe/remove_content_header_action_cc.h / upe/remove_content_footer_action_cc.h | Remove existing markings/protection. |
upe/custom_action_cc.h | Tenant-defined custom action. |
Implement these to extend or override SDK behavior.
| Header | Customizes |
|---|---|
auth_callback_cc.h | Authentication / token acquisition. |
consent_callback_cc.h | User consent prompts. |
http_delegate_cc.h | HTTP transport. |
logger_delegate_cc.h | Log routing. |
task_dispatcher_delegate_cc.h | Background task scheduling. |
| Header | Purpose |
|---|---|
error_cc.h | Error codes and messages. |
result_cc.h | Result envelope returned by SDK functions. |
common_types_cc.h | Shared enums and structs. |
string_list_cc.h / dictionary_cc.h | Utility containers. |
stream_cc.h / editable_stream_cc.h | Byte streams. |
dynamic_watermark_cc.h | Watermark configuration. |
mip_macros_cc.h | Compile-time macros. |
Generated by Doxygen from the SDK headers. To edit this overview, change doxygen/mainpage-c.md in the mip-sdk-docs-gen repo.