---
title: clsAgency
summary: API reference for clsAgency.
status: draft
owner: SAIF Doc Gen
last_reviewed: 2026-07-31
library: SAIF.Business.View.Policy
reference_type: package
---

# clsAgency

`clsAgency` carries the agency and agent attached to a policy: names, the vendor number, full postal address, and the phone, fax, and e-mail details a consumer needs to contact the producer. It is retrieved per policy rather than per agency, and it masks its own contents when the requesting access level is a demo level, so callers never have to apply that rule themselves.

## Purpose

- Supplies the producing agency and agent detail shown alongside a policy header ([Retrieve supporting policy aggregates](../../operations/retrieve-supporting-policy-aggregates.md)).
- Masks agency detail for demonstration accounts, based on the access level supplied at retrieval ([BR-013](../../business-rules.md#br-013-user-type-maps-to-a-ranked-access-level)).
- Formats the city, state, and postal code, and the telephone number, for direct display.

## Context

- Namespace: `SAIF.Business.View.Policy`
- Assembly/package: `SAIF.BOF.Business.View.Policy`
- Declared in: `Business/SAIF.Business.View.Policy/clsAgency.vb`

## Public members

| Member | Signature | Purpose |
| --- | --- | --- |
| IsDemoUser | `Public ReadOnly Property IsDemoUser() As Boolean` | True when the agency was retrieved for a demonstration account, in which case its detail is masked ([BR-013](../../business-rules.md#br-013-user-type-maps-to-a-ranked-access-level)). |
| Address | `Public ReadOnly Property Address() As clsAddress` | The agency's postal address as a framework address object. |
| Address1 | `Public ReadOnly Property Address1() As String` | The address1 recorded on the agency on the policy.* |
| Address2 | `Public ReadOnly Property Address2() As String` | The address2 recorded on the agency on the policy.* |
| AgencyName | `Public ReadOnly Property AgencyName() As String` | Name of the agency recorded against the agency on the policy.* |
| AgencySeqNum | `Public ReadOnly Property AgencySeqNum() As Decimal` | Identifier of the agency sequence attached to the agency on the policy.* |
| AgentName | `Public ReadOnly Property AgentName() As String` | Name of the agent recorded against the agency on the policy.* |
| AgentNum | `Public ReadOnly Property AgentNum() As Decimal` | Identifier of the agent attached to the agency on the policy.* |
| City | `Public ReadOnly Property City() As String` | The city recorded on the agency on the policy.* |
| CityStateZipFormatted | `Public ReadOnly Property CityStateZipFormatted() As String` | Display-ready rendering of the city state zip of the agency on the policy.* |
| Country | `Public ReadOnly Property Country() As String` | The country recorded on the agency on the policy.* |
| County | `Public ReadOnly Property County() As String` | The county recorded on the agency on the policy.* |
| Email | `Public ReadOnly Property Email() As String` | The email recorded on the agency on the policy.* |
| Fax | `Public ReadOnly Property Fax() As String` | The fax recorded on the agency on the policy.* |
| Phone | `Public ReadOnly Property Phone() As String` | The phone recorded on the agency on the policy.* |
| PhoneFormatted | `Public ReadOnly Property PhoneFormatted() As String` | Display-ready rendering of the phone of the agency on the policy.* |
| PhoneExt | `Public ReadOnly Property PhoneExt() As String` | The phone extension recorded on the agency on the policy.* |
| PolicyNum | `Public ReadOnly Property PolicyNum() As Decimal` | Identifier of the policy attached to the agency on the policy.* |
| ProducerPhone | `Public ReadOnly Property ProducerPhone() As String` | The producer phone recorded on the agency on the policy.* |
| State | `Public ReadOnly Property State() As String` | The state recorded on the agency on the policy.* |
| VendorNum | `Public ReadOnly Property VendorNum() As String` | The vendor number the agency is paid under. |
| Zip | `Public ReadOnly Property Zip() As String` | The zip recorded on the agency on the policy.* |
| Zip4 | `Public ReadOnly Property Zip4() As String` | The zip4 recorded on the agency on the policy.* |
| MyCriteria | `Public ReadOnly Property MyCriteria() As Criteria` | The criteria this instance was retrieved with. |
| IsValid | `Public Overrides ReadOnly Property IsValid() As Boolean` | False when no agency row was found for the policy. |
| IsSavable | `Public Overrides ReadOnly Property IsSavable() As Boolean` | Always false: agency detail is read-only in this library. |
| Equals | `Public Overloads Shared Function Equals(ByVal objA As Object, ByVal objB As Object) As Boolean` | Compares two instances for equality without requiring either reference to be non-null. |
| Equals | `Public Overloads Overrides Function Equals(ByVal inObject As Object) As Boolean` | Compares this instance with an arbitrary object. |
| Equals | `Public Overloads Function Equals(ByVal inObject As clsAgency) As Boolean` | Compares this instance with another of the same type. |
| GetHashCode | `Public Overrides Function GetHashCode() As Integer` | Hashes on the same values that define equality for this type. |
| ToString | `Public Overrides Function ToString() As String` | Renders the instance for logging and debugging.* |
| GetAgency | `Public Shared Function GetAgency(ByVal inDataportal As IDataPortalInfo, ByVal inPolicyNum As Decimal) As clsAgency` | Returns the agency associated with the agency on the policy.* |
| GetAgency | `Public Shared Function GetAgency(ByVal inCriteria As Criteria) As clsAgency` | Returns the agency associated with the agency on the policy.* |

## Inherited public members

Members in this section are inherited from `clsBusinessBase` in `SAIF.Framework.Core`. They are available on this type through inheritance.

| Member | Signature | Purpose | Origin |
| --- | --- | --- | --- |
| BrokenRulesCollection | `Public ReadOnly Property BrokenRulesCollection() As clsBrokenRulesCollection` | Carries the messages for the rules currently broken, which is what drives `IsValid` to false.† | `SAIF.Framework.Core` — `clsBusinessBase` |

> **Note:** Statements marked with `†` are derived from dependency library
> documentation via the Legends CLI. Statements marked with `*` were inferred
> from code structure or contextual evidence. Statements marked with `**` could
> not be confirmed; treat as unknown until verified.

## Sources

- `Business/SAIF.Business.View.Policy/clsAgency.vb`
