imednet.endpoints package

Submodules

imednet.endpoints.base module

Base endpoint mix-in for all API resource endpoints.

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

Bases: object

Shared base for endpoint wrappers.

Handles context injection and filtering.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

BASE_PATH = '/api/v1/edc/studies'
PATH: str

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: ListGetEndpoint

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

Provides methods to list and retrieve individual codings.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of Coding

PATH: str = 'codings'

imednet.endpoints.forms module

Endpoint for managing forms (eCRFs) in a study.

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

Bases: ListGetEndpoint

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

Provides methods to list and retrieve individual forms.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of Form

PAGE_SIZE: int = 500
PATH: str = 'forms'

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: ListGetEndpoint

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

Provides methods to list and retrieve individual intervals.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of Interval

PAGE_SIZE: int = 500
PATH: str = 'intervals'

imednet.endpoints.jobs module

Endpoint for checking job status in a study.

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

Bases: BaseEndpoint

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

Provides a method to fetch a job by its batch ID.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

PATH: str = '/api/v1/edc/studies'
async async_get(study_key, batch_id)[source]

Asynchronous version of get().

Like the sync variant, it simply issues a request by batch_id without any caching.

Return type:

JobStatus

Parameters:
  • study_key (str) –

  • batch_id (str) –

get(study_key, batch_id)[source]

Get a specific job by batch ID.

This method performs a direct API request using the provided batch_id; it does not use caching or the refresh flag.

Parameters:
  • study_key (str) – Study identifier

  • batch_id (str) – Batch ID of the job

Return type:

JobStatus

Returns:

JobStatus object with current state and timestamps

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: ListGetEndpoint

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

Provides methods to list and retrieve queries.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of Query

PATH: str = '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: ListGetEndpoint

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

Provides methods to list and retrieve record revisions.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of RecordRevision

PATH: str = '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: ListGetEndpoint

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

Provides methods to list, retrieve, and create records.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of Record

PATH: str = 'records'
async async_create(study_key, records_data, email_notify=None, *, schema=None)[source]

Asynchronous version of create().

Return type:

Job

Parameters:
  • study_key (str) –

  • records_data (List[Dict[str, Any]]) –

  • email_notify (bool | str | None) –

  • schema (SchemaCache | None) –

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

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: ListGetEndpoint

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

Provides methods to list and retrieve individual sites.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of Site

PATH: str = 'sites'

imednet.endpoints.studies module

Endpoint for managing studies in the iMedNet system.

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

Bases: ListGetEndpoint

API endpoint for interacting with studies in the iMedNet system.

Provides methods to list available studies and retrieve specific studies.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of Study

PATH: str = ''
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: ListGetEndpoint

API endpoint for interacting with subjects in an iMedNet study.

Provides methods to list and retrieve individual subjects.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of Subject

PATH: str = 'subjects'

imednet.endpoints.users module

Endpoint for managing users in a study.

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

Bases: ListGetEndpoint

API endpoint for interacting with users in an iMedNet study.

Provides methods to list and retrieve user information.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of User

PATH: str = 'users'

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: ListGetEndpoint

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

Provides methods to list and retrieve individual variables.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of Variable

PAGE_SIZE: int = 500
PATH: str = 'variables'

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: ListGetEndpoint

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

Provides methods to list and retrieve individual visits.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of Visit

PATH: str = '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: ListGetEndpoint

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

Provides methods to list and retrieve individual codings.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of Coding

PATH: str = 'codings'
class imednet.endpoints.FormsEndpoint(client, ctx, async_client=None)[source]

Bases: ListGetEndpoint

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

Provides methods to list and retrieve individual forms.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of Form

PAGE_SIZE: int = 500
PATH: str = 'forms'
class imednet.endpoints.IntervalsEndpoint(client, ctx, async_client=None)[source]

Bases: ListGetEndpoint

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

Provides methods to list and retrieve individual intervals.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of Interval

PAGE_SIZE: int = 500
PATH: str = 'intervals'
class imednet.endpoints.JobsEndpoint(client, ctx, async_client=None)[source]

Bases: BaseEndpoint

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

Provides a method to fetch a job by its batch ID.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

PATH: str = '/api/v1/edc/studies'
async async_get(study_key, batch_id)[source]

Asynchronous version of get().

Like the sync variant, it simply issues a request by batch_id without any caching.

Return type:

JobStatus

Parameters:
  • study_key (str) –

  • batch_id (str) –

get(study_key, batch_id)[source]

Get a specific job by batch ID.

This method performs a direct API request using the provided batch_id; it does not use caching or the refresh flag.

Parameters:
  • study_key (str) – Study identifier

  • batch_id (str) – Batch ID of the job

Return type:

JobStatus

Returns:

JobStatus object with current state and timestamps

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

Bases: ListGetEndpoint

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

Provides methods to list and retrieve queries.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of Query

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

Bases: ListGetEndpoint

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

Provides methods to list and retrieve record revisions.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of RecordRevision

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

Bases: ListGetEndpoint

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

Provides methods to list, retrieve, and create records.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of Record

PATH: str = 'records'
async async_create(study_key, records_data, email_notify=None, *, schema=None)[source]

Asynchronous version of create().

Return type:

Job

Parameters:
  • study_key (str) –

  • records_data (List[Dict[str, Any]]) –

  • email_notify (bool | str | None) –

  • schema (SchemaCache | None) –

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

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

Bases: ListGetEndpoint

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

Provides methods to list and retrieve individual sites.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of Site

PATH: str = 'sites'
class imednet.endpoints.StudiesEndpoint(client, ctx, async_client=None)[source]

Bases: ListGetEndpoint

API endpoint for interacting with studies in the iMedNet system.

Provides methods to list available studies and retrieve specific studies.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of Study

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

Bases: ListGetEndpoint

API endpoint for interacting with subjects in an iMedNet study.

Provides methods to list and retrieve individual subjects.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of Subject

PATH: str = 'subjects'
class imednet.endpoints.UsersEndpoint(client, ctx, async_client=None)[source]

Bases: ListGetEndpoint

API endpoint for interacting with users in an iMedNet study.

Provides methods to list and retrieve user information.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of User

PATH: str = 'users'
class imednet.endpoints.VariablesEndpoint(client, ctx, async_client=None)[source]

Bases: ListGetEndpoint

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

Provides methods to list and retrieve individual variables.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of Variable

PAGE_SIZE: int = 500
PATH: str = 'variables'
class imednet.endpoints.VisitsEndpoint(client, ctx, async_client=None)[source]

Bases: ListGetEndpoint

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

Provides methods to list and retrieve individual visits.

Parameters:
  • client (Client) –

  • ctx (Context) –

  • async_client (AsyncClient | None) –

MODEL

alias of Visit

PATH: str = 'visits'