imednet.endpoints package

Submodules

imednet.endpoints.base module

imednet.endpoints.codings module

Endpoint for managing codings (medical coding) in a study.

class imednet.endpoints.codings.CodingsEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, GenericListGetEndpoint[Coding]

API endpoint for interacting with codings (medical coding) in an iMedNet study.

Provides methods to list and retrieve individual codings.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of Coding

PATH = 'codings'
STUDY_KEY_STRATEGY: Optional[StudyKeyStrategy] = <imednet.core.endpoint.strategies.PopStudyKeyStrategy object>

imednet.endpoints.forms module

Endpoint for managing forms (eCRFs) in a study.

class imednet.endpoints.forms.FormsEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, CachedEndpointMixin, GenericListGetEndpoint[Form]

API endpoint for interacting with forms (eCRFs) in an iMedNet study.

Provides methods to list and retrieve individual forms.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of Form

PATH = 'forms'
STUDY_KEY_STRATEGY: Optional[StudyKeyStrategy] = <imednet.core.endpoint.strategies.PopStudyKeyStrategy object>

imednet.endpoints.intervals module

Endpoint for managing intervals (visit definitions) in a study.

class imednet.endpoints.intervals.IntervalsEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, CachedEndpointMixin, GenericListGetEndpoint[Interval]

API endpoint for interacting with intervals (visit definitions) in an iMedNet study.

Provides methods to list and retrieve individual intervals.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of Interval

PATH = 'intervals'
STUDY_KEY_STRATEGY: Optional[StudyKeyStrategy] = <imednet.core.endpoint.strategies.PopStudyKeyStrategy object>

imednet.endpoints.jobs module

Endpoint for checking job status in a study.

class imednet.endpoints.jobs.JobsEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, GenericEndpoint[JobStatus], ListEndpointMixin[JobStatus], PathGetEndpointMixin[JobStatus]

API endpoint for retrieving status and details of jobs in an iMedNet study.

This endpoint provides methods to fetch individual job status by batch ID and list all jobs for a study.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

ASYNC_PAGINATOR_CLS

alias of AsyncJsonListPaginator

MODEL

alias of JobStatus

PAGINATOR_CLS

alias of JsonListPaginator

PATH = 'jobs'

imednet.endpoints.queries module

Endpoint for managing queries (dialogue/questions) in a study.

class imednet.endpoints.queries.QueriesEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, GenericListGetEndpoint[Query]

API endpoint for interacting with queries (dialogue/questions) in an iMedNet study.

Provides methods to list and retrieve queries.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of Query

PATH = 'queries'

imednet.endpoints.record_revisions module

Endpoint for retrieving record revision history in a study.

class imednet.endpoints.record_revisions.RecordRevisionsEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, GenericListGetEndpoint[RecordRevision]

API endpoint for accessing record revision history in an iMedNet study.

Provides methods to list and retrieve record revisions.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of RecordRevision

PATH = 'recordRevisions'

imednet.endpoints.records module

Endpoint for managing records (eCRF instances) in a study.

class imednet.endpoints.records.RecordsEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, GenericListGetEndpoint[Record]

API endpoint for interacting with records (eCRF instances) in an iMedNet study.

Provides methods to list, retrieve, and create records.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of Record

PARAM_PROCESSOR: Optional[ParamProcessor] = <imednet.core.endpoint.strategies.MappingParamProcessor object>
PATH = 'records'
async async_create(study_key, records_data, email_notify=None, *, schema=None)[source]

Asynchronously create new records in a study.

This is the async variant of create().

Parameters:
  • study_key (str) – Study identifier

  • records_data (List[Dict[str, Any]]) – List of record data objects to create

  • email_notify (Union[bool, str, None]) – Whether to send email notifications (True/False), or an email address as a string.

  • schema (Optional[SchemaCache]) – Optional SchemaCache instance used for local validation.

Return type:

Job

Returns:

Job object with information about the created job

Raises:

ClientError – If email_notify contains invalid characters

create(study_key, records_data, email_notify=None, *, schema=None)[source]

Create new records in a study.

Parameters:
  • study_key (str) – Study identifier

  • records_data (List[Dict[str, Any]]) – List of record data objects to create

  • email_notify (Union[bool, str, None]) – Whether to send email notifications (True/False), or an email address as a string.

  • schema (Optional[SchemaCache]) – Optional SchemaCache instance used for local validation.

Return type:

Job

Returns:

Job object with information about the created job

Raises:

ClientError – If email_notify contains invalid characters

Record payloads may be validated locally by passing a SchemaCache instance to create().

imednet.endpoints.sites module

Endpoint for managing sites (study locations) in a study.

class imednet.endpoints.sites.SitesEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, GenericListGetEndpoint[Site]

API endpoint for interacting with sites (study locations) in an iMedNet study.

Provides methods to list and retrieve individual sites.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of Site

PATH = 'sites'
STUDY_KEY_STRATEGY: Optional[StudyKeyStrategy] = <imednet.core.endpoint.strategies.PopStudyKeyStrategy object>

imednet.endpoints.studies module

Endpoint for managing studies in the iMedNet system.

class imednet.endpoints.studies.StudiesEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, GenericListGetEndpoint[Study]

API endpoint for interacting with studies in the iMedNet system.

Provides methods to list available studies and retrieve specific studies.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of Study

PATH = ''
requires_study_key: bool = False

imednet.endpoints.subjects module

Endpoint for managing subjects in a study.

class imednet.endpoints.subjects.SubjectsEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, GenericListGetEndpoint[Subject]

API endpoint for interacting with subjects in an iMedNet study.

Provides methods to list and retrieve individual subjects.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of Subject

PATH = 'subjects'
async async_list_by_site(study_key, site_id)[source]

Asynchronously list subjects filtered by a specific site ID.

Return type:

List[Subject]

Parameters:
  • study_key (str) –

  • site_id (str | int) –

list_by_site(study_key, site_id)[source]

List subjects filtered by a specific site ID.

Migrated from TUI logic to core SDK to support filtering.

Return type:

List[Subject]

Parameters:
  • study_key (str) –

  • site_id (str | int) –

imednet.endpoints.users module

Endpoint for managing users in a study.

class imednet.endpoints.users.UsersEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, GenericListGetEndpoint[User]

API endpoint for interacting with users in an iMedNet study.

Provides methods to list and retrieve user information.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of User

PARAM_PROCESSOR: Optional[ParamProcessor] = <imednet.core.endpoint.strategies.MappingParamProcessor object>
PATH = 'users'
STUDY_KEY_STRATEGY: Optional[StudyKeyStrategy] = <imednet.core.endpoint.strategies.PopStudyKeyStrategy object>

imednet.endpoints.variables module

Endpoint for managing variables (data points on eCRFs) in a study.

class imednet.endpoints.variables.VariablesEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, CachedEndpointMixin, GenericListGetEndpoint[Variable]

API endpoint for interacting with variables (data points on eCRFs) in an iMedNet study.

Provides methods to list and retrieve individual variables.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of Variable

PATH = 'variables'
STUDY_KEY_STRATEGY: Optional[StudyKeyStrategy] = <imednet.core.endpoint.strategies.PopStudyKeyStrategy object>

imednet.endpoints.visits module

Endpoint for managing visits (interval instances) in a study.

class imednet.endpoints.visits.VisitsEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, GenericListGetEndpoint[Visit]

API endpoint for interacting with visits (interval instances) in an iMedNet study.

Provides methods to list and retrieve individual visits.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of Visit

PATH = 'visits'

Module contents

Endpoints package for the iMedNet SDK.

This package contains all API endpoint implementations for accessing iMedNet resources.

class imednet.endpoints.CodingsEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, GenericListGetEndpoint[Coding]

API endpoint for interacting with codings (medical coding) in an iMedNet study.

Provides methods to list and retrieve individual codings.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of Coding

PATH = 'codings'
STUDY_KEY_STRATEGY: Optional[StudyKeyStrategy] = <imednet.core.endpoint.strategies.PopStudyKeyStrategy object>
class imednet.endpoints.FormsEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, CachedEndpointMixin, GenericListGetEndpoint[Form]

API endpoint for interacting with forms (eCRFs) in an iMedNet study.

Provides methods to list and retrieve individual forms.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of Form

PATH = 'forms'
STUDY_KEY_STRATEGY: Optional[StudyKeyStrategy] = <imednet.core.endpoint.strategies.PopStudyKeyStrategy object>
class imednet.endpoints.IntervalsEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, CachedEndpointMixin, GenericListGetEndpoint[Interval]

API endpoint for interacting with intervals (visit definitions) in an iMedNet study.

Provides methods to list and retrieve individual intervals.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of Interval

PATH = 'intervals'
STUDY_KEY_STRATEGY: Optional[StudyKeyStrategy] = <imednet.core.endpoint.strategies.PopStudyKeyStrategy object>
class imednet.endpoints.JobsEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, GenericEndpoint[JobStatus], ListEndpointMixin[JobStatus], PathGetEndpointMixin[JobStatus]

API endpoint for retrieving status and details of jobs in an iMedNet study.

This endpoint provides methods to fetch individual job status by batch ID and list all jobs for a study.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

ASYNC_PAGINATOR_CLS

alias of AsyncJsonListPaginator

MODEL

alias of JobStatus

PAGINATOR_CLS

alias of JsonListPaginator

PATH = 'jobs'
class imednet.endpoints.QueriesEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, GenericListGetEndpoint[Query]

API endpoint for interacting with queries (dialogue/questions) in an iMedNet study.

Provides methods to list and retrieve queries.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of Query

PATH = 'queries'
class imednet.endpoints.RecordRevisionsEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, GenericListGetEndpoint[RecordRevision]

API endpoint for accessing record revision history in an iMedNet study.

Provides methods to list and retrieve record revisions.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of RecordRevision

PATH = 'recordRevisions'
class imednet.endpoints.RecordsEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, GenericListGetEndpoint[Record]

API endpoint for interacting with records (eCRF instances) in an iMedNet study.

Provides methods to list, retrieve, and create records.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of Record

PARAM_PROCESSOR: Optional[ParamProcessor] = <imednet.core.endpoint.strategies.MappingParamProcessor object>
PATH = 'records'
async async_create(study_key, records_data, email_notify=None, *, schema=None)[source]

Asynchronously create new records in a study.

This is the async variant of create().

Parameters:
  • study_key (str) – Study identifier

  • records_data (List[Dict[str, Any]]) – List of record data objects to create

  • email_notify (Union[bool, str, None]) – Whether to send email notifications (True/False), or an email address as a string.

  • schema (Optional[SchemaCache]) – Optional SchemaCache instance used for local validation.

Return type:

Job

Returns:

Job object with information about the created job

Raises:

ClientError – If email_notify contains invalid characters

create(study_key, records_data, email_notify=None, *, schema=None)[source]

Create new records in a study.

Parameters:
  • study_key (str) – Study identifier

  • records_data (List[Dict[str, Any]]) – List of record data objects to create

  • email_notify (Union[bool, str, None]) – Whether to send email notifications (True/False), or an email address as a string.

  • schema (Optional[SchemaCache]) – Optional SchemaCache instance used for local validation.

Return type:

Job

Returns:

Job object with information about the created job

Raises:

ClientError – If email_notify contains invalid characters

class imednet.endpoints.SitesEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, GenericListGetEndpoint[Site]

API endpoint for interacting with sites (study locations) in an iMedNet study.

Provides methods to list and retrieve individual sites.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of Site

PATH = 'sites'
STUDY_KEY_STRATEGY: Optional[StudyKeyStrategy] = <imednet.core.endpoint.strategies.PopStudyKeyStrategy object>
class imednet.endpoints.StudiesEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, GenericListGetEndpoint[Study]

API endpoint for interacting with studies in the iMedNet system.

Provides methods to list available studies and retrieve specific studies.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of Study

PATH = ''
requires_study_key: bool = False
class imednet.endpoints.SubjectsEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, GenericListGetEndpoint[Subject]

API endpoint for interacting with subjects in an iMedNet study.

Provides methods to list and retrieve individual subjects.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of Subject

PATH = 'subjects'
async async_list_by_site(study_key, site_id)[source]

Asynchronously list subjects filtered by a specific site ID.

Return type:

List[Subject]

Parameters:
  • study_key (str) –

  • site_id (str | int) –

list_by_site(study_key, site_id)[source]

List subjects filtered by a specific site ID.

Migrated from TUI logic to core SDK to support filtering.

Return type:

List[Subject]

Parameters:
  • study_key (str) –

  • site_id (str | int) –

class imednet.endpoints.UsersEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, GenericListGetEndpoint[User]

API endpoint for interacting with users in an iMedNet study.

Provides methods to list and retrieve user information.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of User

PARAM_PROCESSOR: Optional[ParamProcessor] = <imednet.core.endpoint.strategies.MappingParamProcessor object>
PATH = 'users'
STUDY_KEY_STRATEGY: Optional[StudyKeyStrategy] = <imednet.core.endpoint.strategies.PopStudyKeyStrategy object>
class imednet.endpoints.VariablesEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, CachedEndpointMixin, GenericListGetEndpoint[Variable]

API endpoint for interacting with variables (data points on eCRFs) in an iMedNet study.

Provides methods to list and retrieve individual variables.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of Variable

PATH = 'variables'
STUDY_KEY_STRATEGY: Optional[StudyKeyStrategy] = <imednet.core.endpoint.strategies.PopStudyKeyStrategy object>
class imednet.endpoints.VisitsEndpoint(client, ctx, async_client=None)[source]

Bases: EdcEndpointMixin, GenericListGetEndpoint[Visit]

API endpoint for interacting with visits (interval instances) in an iMedNet study.

Provides methods to list and retrieve individual visits.

Parameters:
  • client (RequestorProtocol) –

  • ctx (Context) –

  • async_client (Optional[AsyncRequestorProtocol]) –

MODEL

alias of Visit

PATH = 'visits'