---
title: Distribute a policy document using presets
summary: Post a preset-driven policy document payload to the distribution API.
status: draft
owner: Technical Writer
last_reviewed: 2026-07-31
library: SAIF.Business.Policy.Audit.ApiCalls
reference_type: package
operation_id: OP-007
trigger: A caller invokes `DistributeApiCall(documentConfig)`.
---

# Distribute a policy document using presets

Post a preset-driven policy document payload to the distribution API.

| Field | Value |
| --- | --- |
| **Operation ID** | OP-007 |
| **Trigger** | A caller invokes `DistributeApiCall(documentConfig)`. |
| **Inputs** | `PolicyDocumentConfig documentConfig`. |
| **Outputs** | `bool` success flag. |
| **Primary components** | `PolicyDocDistributionCall.DistributeApiCall` |
| **Entry point** | `Business\SAIF.Business.Policy.Audit.ApiCalls\PolicyDocDistributionCall.cs` |

## Steps

1. POST the caller-provided `PolicyDocumentConfig` payload to `/v1/documents/distribute/presets` and deserialize the response as `RequestResult`.
2. Return `true` without examining the returned `RequestResult` ([BR-AAC-018](../business-rules.md#br-aac-018-preset-based-distribution-always-reports-success)).

## Process flow

The following diagram visualizes this operation's control flow.

```mermaid
flowchart TD
  Start([DistributeApiCall]) --> Post[POST /v1/documents/distribute/presets]
  Post --> Done([Return true])
```

## Failure and edge-case behavior

- The method's return value does not distinguish accepted, rejected, or failed preset distributions.
- Any exception behavior is delegated to the underlying HTTP client because the method adds no local catch block.

## Related documentation
- [Operations and processes](../operations-processes.md)
- [Business rules](../business-rules.md)
- [Configuration](../configuration.md)

## Sources
- `Business\SAIF.Business.Policy.Audit.ApiCalls\PolicyDocDistributionCall.cs`
