Skip to content

SimpleCertifiedMail overview

SimpleCertifiedMail calls the third-party SimpleCertifiedMail ADS API† to generate certified-mail shipping labels for legal subpoena documents, through the authored SimpleCertifiedMailServiceProxy wrapper carried in SAIF.Services.Web.Proxies.

Purpose

  • Generate a certified-mail label image (and optionally save it as a .gif file) for a subpoena recipient or opposing-counsel mailing, by calling the third-party getCertifiedLabel operation.

Business context

The called service is a third-party certified-mail vendor. This repository's legal subpoena workflow depends on it to produce mailable labels; when the call fails, the affected recipient's label is skipped and an "invalid address" notification email is sent to support, rather than the whole batch failing.

Attribute Value
Business capability Certified-mail label generation for legal subpoena mailings
Owning team of the called service Not determined from source — a third-party vendor (SimpleCertifiedMail)
Criticality to the consumer Not determined from source; the calling SubpoenaLabelService treats a labeling failure as per-recipient, not batch-fatal
Fallback when unavailable None — the affected label is skipped and an "invalid address" email is sent to support; transport-level failures propagate uncaught in most call paths (see Tech debt)

Consumers

Consumer Call site Operations used Notes
SubpoenaLabelService.GenerateRecipientLabels Services/SAIF.Services/Legal/Subpoenas/SubpoenaLabelService.cs:106 getCertifiedLabel Calls SaveLabelAsGif once per subpoena recipient; catches only SimpleCertifiedException
SubpoenaLabelService.GenerateOpposingCounselLabel SubpoenaLabelService.cs:135 getCertifiedLabel Calls SaveLabelAsGif; still returns the computed label size even when the in-band call fails
SubpoenaLabelService.InitializeLabel (via GetDefaultLabelData) SubpoenaLabelService.cs:355 (no SOAP call — local only) Selects a label size by page count; does not call the remote service
DocumentDeferredService.GetCertifiedLabel (via GetDefaultLabelData) Services/SAIF.Services/Documents/DocumentDeferredService.cs:88 (no SOAP call — local only) Same local sizing helper; no SOAP call

Capability summary

Capability Operations Description
Certified label generation getCertifiedLabel Builds a CertifiedLabelRequest from sender/recipient data and credentials, and returns a base64-encoded label image plus an in-band status code

Generation provenance

Aspect Finding
Generated by svcutil (Service Reference)
Generated from Services/SAIF.Services.Web.Proxies/Service References/SimpleCertifiedMail/ADS.wsdl
Discovery document Services/SAIF.Services.Web.Proxies/Service References/SimpleCertifiedMail/ADS.disco
Generated namespace SAIF.Services.Web.Proxies.SimpleCertifiedMail
Namespace matches the consuming project Yes — rooted in SAIF.Services.Web.Proxies, the project that carries the file
Regeneration risk Reference.svcmap sets GenerateInternalTypes=false, so a refresh would still generate public types; the wrapper's public API (ISimpleCertifiedMailServiceProxy.GetModeOption) already depends on the generated ModeOptions enum being public, so this is a load-bearing (if undocumented) choice, not an accident to "fix" on refresh

Uniform-pattern deviation. Unlike PDFService, SMTP, and WorkCalendar in the same library, whose generated proxy types are all internal (GenerateInternalTypes=true), this proxy's generated types are public (GenerateInternalTypes=false, Reference.svcmap:8). This is a deliberate departure from the otherwise-uniform pattern across the library's four SOAP client proxies, and it means the generated ADSAPISoapClient, its contract ADSAPISoap, and supporting types are part of this library's public API surface.

Non-documented artifacts

  • Reference.cs, its serialization attributes, and any …Async/…Completed event scaffolding are svcutil tool output and are not narrated in this document set; the contract is documented from ADS.wsdl and the wrapper's call sites instead.

Sources

  • Services/SAIF.Services.Web.Proxies/SimpleCertifiedMailServiceProxy.cs
  • Services/SAIF.Services.Web.Proxies/Service References/SimpleCertifiedMail/Reference.svcmap
  • Services/SAIF.Services/Legal/Subpoenas/SubpoenaLabelService.cs
  • Services/SAIF.Services/Documents/DocumentDeferredService.cs