ExternalPortalApiClient
Component Detail
Infrastructure
medium complexity
backend
0
Dependencies
0
Dependents
0
Entities
0
Integrations
Description
HTTP client responsible for all outbound communication with the external portal's registered endpoint. Handles authentication, request signing, retry logic, and response normalization so the rest of the system works with a consistent internal data contract regardless of the external portal's API shape.
external-portal-api-client
Sources & reasoning
Explicitly a Fase 2 / phase-column value of 2 in the priority matrix (line 156), confirmed in the Fase 2 action list (line 348-349). Fase 2 maps to v1.0 per the ordinal normalization rule. HLF constraint described in detail at line 115.
-
docs/source/likeperson.md · line 115Koordinering med eget portalprosjekt: HLF redesigner «min side» på Dynamics-plattformen. Appen og portalen må ikke overlappe eller motarbeide hverandre.
-
docs/source/likeperson.md · line 348-349Koordinering med HLFs eksterne portalprosjekt
-
docs/source/likeperson.md · line 155-156Koordinering med ekstern portal | - | - | - | ✓ | ✓ | MUST (HLF) | 2
Responsibilities
- Send authenticated HTTP requests to the external portal endpoint using configured credentials
- Normalize external portal response payloads to internal Meander data transfer objects
- Implement retry with exponential backoff for transient network and server errors
- Validate endpoint reachability and credential correctness during config save and scheduled health checks
Interfaces
fetchMembers(config: ExternalPortalConfig, since?: Date): Promise<ExternalMember[]>
pushMemberUpdate(config: ExternalPortalConfig, member: MemberRecord): Promise<void>
healthCheck(endpoint: string, credentials: PortalCredentials): Promise<HealthCheckResult>
fetchDomainData(config: ExternalPortalConfig, domain: string): Promise<DomainPayload>