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

# CertificateHolderServiceException

Signals a certificate-holder-specific failure raised by `CertificateHolderService` — specifically when a requested certificate holder cannot be found during a lookup or supersede operation — so callers can distinguish this business-level error from other runtime exceptions.

## Purpose
- Represents the "certificate holder not found" failure surfaced by `CertificateHolderService.GetCertificateHolder` and `CertificateHolderService.SupersedeCertificateHolder`.*

## Context
- Namespace: `SAIF.Services.Policies.Certificates`
- Assembly/package: `SAIF.Services` (packaged inside the `SAIF.SAIFCode.Core` NuGet package).

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| CertificateHolderServiceException (constructor) | `public CertificateHolderServiceException(string message)` | Constructs the exception with the supplied message, forwarding it unchanged to the base `Exception` constructor. |

## Behavioral notes
- Carries `CA2237:MarkISerializableTypesWithSerializable` and `CA1032:ImplementStandardExceptionConstructors` suppressions, indicating the type intentionally omits the parameterless, serialization, and inner-exception constructors normally expected on an exception type.*
- Thrown by `CertificateHolderService` when a certificate holder lookup by ID returns no data, both for direct retrieval and when resolving the original certificate holder in a supersede operation.

## Constraints and usage notes
- Only a single-argument (message) constructor is available; there is no way to attach an inner exception or a custom error code through this type.*

> **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
- `Services/SAIF.Services/Policies/Certificates/CertificateHolderServiceException.cs`
