entity

Service Area

City/state coverage tuple for a provider, optionally narrowed by neighborhood or ZIP code.

EntityStatus: Implemented in api-v1

Purpose

A service area is the coverage tuple attached to a Provider. City text from operators is parsed by CityTextParser into city names, then cities are found or created before the area is stored.

Invariants

  • At least one city is required (SERVICE_AREA_CITY_REQUIRED).
  • state must be a valid two-letter US state or DC.
  • Display name is derived from city names and state, not authored independently on create.

Domain Events

Provider-level add/remove of existing areas emit ProviderServiceAreasAdded and ProviderServiceAreasRemoved, not a second ServiceArea event.