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

# SeverityModelActivityService

Implements `ISeverityModelActivityService`, converting queued `ClaimSeverityModelActivity` rows (sourced via `IUnitOfWork`) into Guidewire activities submitted through `IActivityDataApiClient`, one activity request per claim/action-role combination. Each activity is tagged with the fixed subject `"Severity Activity"`, pattern `severity_activities`, and normal priority, and is only sent if its action role maps to a known `ActivityRole` (Adjuster, Supervisor, or RTW Consultant); unmapped roles and failed Guidewire calls are recorded as errors rather than raised as exceptions.

## Purpose
- Generates and submits Guidewire activities for every pending severity-model activity, grouped and processed claim by claim in claim-ID order.
- Maps a severity-model action role string to the Guidewire `ActivityRole` enum, rejecting (and logging as an error) any role that does not match a known mapping.
- Captures per-claim errors — both unmapped action roles and Guidewire API call failures — into an error list returned as part of the creation report rather than throwing.
- Reports run totals: activities retrieved, activities successfully created, and the list of errors encountered.

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

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| SeverityModelActivityService | `public SeverityModelActivityService(IUnitOfWork sqlServerUOW, IActivityDataApiClient activityDataApiClient)` | Wires the unit-of-work used to query pending severity-model activities and the Guidewire activity-API client used to submit them. |
| ActivityCreationErrors | `public object ActivityCreationErrors` | A public field of type `object` that is never assigned within this type; it is unrelated to the populated `ErrorList` returned by `CreateClaimActivities` and appears unused.** |
| CreateClaimActivities | `public ActivityCreationReport CreateClaimActivities(DateTime processDate)` | Loads all pending severity-model activities, submits a Guidewire activity request per entry (grouped by claim), and returns a report with the retrieved/created counts and any per-claim errors; the supplied `processDate` is stored but not otherwise used because the target-date field is intentionally left unpopulated. |

## Behavioral notes
- `CreateClaimActivities` does not wrap its work in an explicit `IUnitOfWork.Begin()`/`Commit()` transaction; it only reads activity data and calls the external Guidewire API — no local persistence of processed activities is performed by this method.*
- A Guidewire API call failure for one claim's activity is caught and recorded as an `ActivityCreationError` (reason `"Call to ActivityAPI failed: <message>"`), allowing processing to continue for remaining claims/activities rather than aborting the whole run.
- An action role that does not match `"Adjuster"`, `"Supervisor"`, or `"RTW Consultant"` is recorded as an `"Unknown Activity Action Role"` error and skipped without calling the Guidewire API.

> **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/Claims/SeverityModel/SeverityModelActivityService.cs
