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

# INoteService

`INoteService` declares a service contract in the Agencies / Notes 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 Agencies / Notes area*.

## Context
- Namespace: `SAIF.Core.Contracts.Agencies.Notes`
- Kind: Interface
- Assembly/package: `SAIF.Core` (NuGet package `SAIF.SAIFCode.Core`)

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| `CanUserAddNote` | `bool CanUserAddNote { get; set; }` | Holds free-text note recorded against this INoteService*. |
| `CanUserSeeConfidentialNotes` | `bool CanUserSeeConfidentialNotes { get; set; }` | Holds free-text notes recorded against this INoteService*. |
| `AppendPrefixTextLength` | `int AppendPrefixTextLength { get; set; }` | Represents the append prefix text length associated with this INoteService*. |
| `EditSuffixTextLength` | `int EditSuffixTextLength { get; set; }` | Represents the edit suffix text length associated with this INoteService*. |
| `GetNote` | `Note GetNote(long noteId)` | Returns note, given `noteId`*. |
| `GetNotes` | `IEnumerable<Note> GetNotes(long agencyId, NoteFilterCriteria criteria)` | Returns notes, given `agencyId`, `criteria`*. |
| `AddNoteBySystem` | `long? AddNoteBySystem(NoteEdit noteEdit, IMessageContainer messages)` | Adds note by system, given `noteEdit`, `messages`*. |
| `AppendNote` | `bool AppendNote(long noteId, NoteEdit noteEdit, IMessageContainer messages)` | Handles append note, given `noteId`, `noteEdit`, `messages`*. |
| `DeleteExpiredNotes` | `bool DeleteExpiredNotes()` | Deletes expired notes*. |

> **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/Agencies/Notes/INoteService.cs
