"""Endpoint for managing sites (study locations) in a study."""
from imednet.core.endpoint.base import GenericListGetEndpoint
from imednet.core.endpoint.edc_mixin import EdcEndpointMixin
from imednet.core.endpoint.strategies import PopStudyKeyStrategy
from imednet.errors import ClientError
from imednet.models.sites import Site
[docs]class SitesEndpoint(
EdcEndpointMixin,
GenericListGetEndpoint[Site],
):
"""
API endpoint for interacting with sites (study locations) in an iMedNet study.
Provides methods to list and retrieve individual sites.
"""
PATH = "sites"
MODEL = Site
_id_param = "siteId"
STUDY_KEY_STRATEGY = PopStudyKeyStrategy(exception_cls=ClientError)