---
title: Post audit policy terms to the Policy Audit API
summary: Submit audit policy terms to a caller-selected Policy Audit API route.
status: draft
owner: Technical Writer
last_reviewed: 2026-07-31
library: SAIF.Business.Policy.Audit.ApiCalls
reference_type: package
operation_id: OP-002
trigger: A caller invokes `PolicyAuditAPICall(auditCollection, method)`.
---

# Post audit policy terms to the Policy Audit API

Submit audit policy terms to a caller-selected Policy Audit API route.

| Field | Value |
| --- | --- |
| **Operation ID** | OP-002 |
| **Trigger** | A caller invokes `PolicyAuditAPICall(auditCollection, method)`. |
| **Inputs** | `AuditCollection auditCollection`, `string method`. |
| **Outputs** | `bool` success flag. |
| **Primary components** | `ApiCall.PolicyAuditAPICall` |
| **Entry point** | `Business\SAIF.Business.Policy.Audit.ApiCalls\ApiCall.cs` |

## Steps

1. Pass the caller-supplied `method` route and `AuditCollection` payload directly to `_api.PostJson<bool>` ([BR-AAC-006](../business-rules.md#br-aac-006-callers-choose-the-policy-audit-api-route)).
2. Read the first boolean element from the response wrapper's `Results` collection and return it to the caller ([BR-AAC-007](../business-rules.md#br-aac-007-audit-submission-success-comes-from-the-first-boolean-result)).

## Process flow

The following diagram visualizes this operation's control flow.

```mermaid
flowchart TD
  Start([PolicyAuditAPICall]) --> Post[POST audit collection]
  Post --> Result[Read first boolean result]
  Result --> Done([Return bool])
```

## Failure and edge-case behavior

- An empty `Results` collection returns `false` through `FirstOrDefault()`.
- The method does not add its own exception handling or response-status interpretation.

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

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