---
title: Configuration settings
summary: Configuration keys consumed by this library, retrieval methods, and runtime dependencies.
status: draft
owner: SAIF.Core documentation team
last_reviewed: 2026-09-24
library: SAIF.Data.Guidewire
reference_type: package
---

# Configuration settings

This library reads all configuration through `IEnvironmentService`, 5 base-URL keys via `GetConfigSetting` and 2 credential keys via `GetSecureConfigSetting`, both called from `HttpClientBase`; there is no `<appSettings>`, `<connectionStrings>`, or custom `<configSections>` element in `Data/SAIF.Data.Guidewire/app.config`.

## Configuration retrieval methods

| Method | Class / Interface | Namespace | Usage pattern |
| --- | --- | --- | --- |
| `GetConfigSetting(string key)` | `IEnvironmentService` | `SAIF.Core.Services` (package SAIF.Framework.Core) | Called eagerly in the `HttpClientBase` constructor with the subclass's `UrlKey`; the result becomes the injected `HttpClient.BaseAddress` |
| `GetSecureConfigSetting(string key, string cryptoHash)` | `IEnvironmentService` | `SAIF.Core.Services` | Called lazily on first `Client` access in `InitializeClientAuthorization()` when `AuthKey` is not blank; the value is split on `\|`, joined as `user:password`, Base64-encoded, and added as an HTTP Basic `Authorization` default header |
| `SystemHashUtil.ComputeHash(SystemType, string)` / `SystemHashUtil.Get(SystemType)` | `SystemHashUtil` | `SAIF.Services.Common` (package SAIF.HashUtil) | Produces the crypto hash passed to `GetSecureConfigSetting`; `ComputeHash` is used when `IDataClientConfiguration.SystemName` is set, otherwise `Get(SystemType)` |
| Code-level options object | `IDataClientConfiguration` / `DataClientConfiguration` | `SAIF.Data.Guidewire.Clients` | Supplies `SystemType`, `SystemName`, `UseCache`, `CachePolicyKey`, and `MaxCacheDuration` to every client |

## Environment API settings

Settings retrieved via `IEnvironmentService` (centralized environment configuration service).

| Setting key | Method | Data type | Purpose | Consuming class | Source |
| --- | --- | --- | --- | --- | --- |
| `cc.activitydata.api.url.v1` | `GetConfigSetting` | string (URL) | Base URL for the Guidewire ClaimCenter activity data API | `ActivityDataApiClient` (`UrlKey`) | `Data/SAIF.Data.Guidewire/Clients/ActivityDataApiClient.cs` |
| `cc.claimdata.api.url.v1` | `GetConfigSetting` | string (URL) | Base URL for the Guidewire ClaimCenter claim data API | `ClaimDataApiClient` (`UrlKey`) | `Data/SAIF.Data.Guidewire/Clients/ClaimDataApiClient.cs` |
| `cc.financial.api.url.v1` | `GetConfigSetting` | string (URL) | Base URL for the Guidewire ClaimCenter financial data API | `FinancialDataApiClient` (`UrlKey`) | `Data/SAIF.Data.Guidewire/Clients/FinancialDataApiClient.cs` |
| `ab.providerdata.api.url.v1` | `GetConfigSetting` | string (URL) | Base URL for the Guidewire ContactManager/AddressBook provider data API | `ProviderDataApiClient` (`UrlKey`) | `Data/SAIF.Data.Guidewire/Clients/ProviderDataApiClient.cs` |
| `cc.workerdata.api.url.v1` | `GetConfigSetting` | string (URL) | Base URL for the Guidewire ClaimCenter worker data API | `WorkerDataApiClient` (`UrlKey`) | `Data/SAIF.Data.Guidewire/Clients/WorkerDataApiClient.cs` |

URL keys are read eagerly in the `HttpClientBase` constructor, so a missing URL key fails at DI resolution time rather than at first request*.

## AppSettings (Web.config)

None. `Data/SAIF.Data.Guidewire/app.config` declares no `<appSettings>` section, and no compiled source in this library calls `ConfigurationManager.AppSettings`.

## Database connection configuration

None. This library performs no database access; every operation is an outbound HTTP call to a Guidewire REST API.

## Secure settings

Settings that require decryption or credential retrieval.

| Setting key | Encryption method | Purpose | Consuming class | Source |
| --- | --- | --- | --- | --- |
| `cc.gwcreds` | `SystemHashUtil.ComputeHash(SystemType, SystemName)` when `SystemName` is set, else `SystemHashUtil.Get(SystemType)` | HTTP Basic credential (`user\|password`) for the ClaimCenter activity, claim, financial, and worker data APIs | `ActivityDataApiClient`, `ClaimDataApiClient`, `FinancialDataApiClient`, `WorkerDataApiClient` (`AuthKey`) | `Data/SAIF.Data.Guidewire/Clients/HttpClientBase.cs` |
| `cc.providerdataapi.gwcreds` | Same as above | HTTP Basic credential (`user\|password`) for the ContactManager provider data API | `ProviderDataApiClient` (`AuthKey`) | `Data/SAIF.Data.Guidewire/Clients/HttpClientBase.cs` |

The values are held in the environment-config service and are not present in the repository. The code expects the format `user|password` and indexes the split result without a length check*. Whether the Guidewire base URLs are HTTPS is not visible from source**.

## Transitive configuration (from dependencies)

None. This library has no internal project references; the external packages SAIF.Framework.Core and SAIF.HashUtil may need host settings of their own, but no transitive setting keys were identified**.

## Configuration dependencies

| Dependency | Type | Required at | Impact if missing |
| --- | --- | --- | --- |
| `IEnvironmentService` (SAIF.Framework.Core) | Injected service | Startup/construction | `HttpClientBase` constructor fails to resolve `BaseAddress`, so DI resolution of the client fails* |
| `cc.gwcreds` / `cc.providerdataapi.gwcreds` secure setting | Environment config value | First request (lazy) | `InitializeClientAuthorization()` cannot build the `Authorization` header, so the first request fails* |
| `IDataClientConfiguration` | Code-level options object | Construction | Client falls back to code defaults (`UseCache=true`, `CachePolicyKey="data-client-cache-policy"`, `MaxCacheDuration=30s`) if a custom configuration is not supplied |

## Related documentation
- [Index](index.md)
- [Overview](overview.md)
- [Architecture](architecture.md)
- [Dependencies](dependencies.md)
- [Operations and processes](operations-processes.md)
- [Business rules](business-rules.md)
- [API reference](api/index.md)

## Sources
- `Data/SAIF.Data.Guidewire/app.config`
- `Data/SAIF.Data.Guidewire/packages.config`
- `Data/SAIF.Data.Guidewire/Clients/HttpClientBase.cs`
- `Data/SAIF.Data.Guidewire/Clients/DataClientConfiguration.cs`
- `Data/SAIF.Data.Guidewire/Clients/IDataClientConfiguration.cs`
- `Data/SAIF.Data.Guidewire/Clients/ActivityDataApiClient.cs`
- `Data/SAIF.Data.Guidewire/Clients/ClaimDataApiClient.cs`
- `Data/SAIF.Data.Guidewire/Clients/FinancialDataApiClient.cs`
- `Data/SAIF.Data.Guidewire/Clients/ProviderDataApiClient.cs`
- `Data/SAIF.Data.Guidewire/Clients/WorkerDataApiClient.cs`
