---
title: ICertificatePreferenceService
summary: API reference for ICertificatePreferenceService.
status: draft
owner: SAIF Doc Gen
last_reviewed: 2026-09-24
library: SAIF.SAIFCode.Core
reference_type: package
---

# ICertificatePreferenceService

`ICertificatePreferenceService` declares a service contract in the Policies / Certificates / Preference area, implemented outside this library (most likely in SAIF.Services, per the declare-here, enforce-elsewhere pattern documented for this library)*.

## Purpose
- Declares the operations that a SAIF.Services implementation must provide for the Policies / Certificates / Preference area*.

## Context
- Namespace: `SAIF.Core.Contracts.Policies.Certificates.Preference`
- Kind: Interface
- Assembly/package: `SAIF.Core` (NuGet package `SAIF.SAIFCode.Core`)

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| `GetPreference` | `CertificatePreference GetPreference(long policyNumber)` | Returns preference, given `policyNumber`*. |
| `AddPreference` | `void AddPreference(long policyNumber, CertificatePreferenceEdit preference)` | Adds preference, given `policyNumber`, `preference`*. |
| `HasPreference` | `bool HasPreference(long policyNumber)` | Indicates whether this ICertificatePreferenceService has preference*. |

> **Note:** Statements marked with `*` were inferred from code structure, naming
> conventions, or contextual evidence where direct confirmation was not available
> in source artifacts. Statements marked with `**` could not be confirmed; treat
> as unknown until verified.

## Sources
- Core/SAIF.Core/Contracts/Policies/Certificates/Preference/ICertificatePreferenceService.cs
