app.api.protocol_api#

Definition of protocol API endpoints.

Attributes#

Functions#

create_protocol(], access_token, ...)

Create a new protocol.

create_protocol_from_template(], access_token, ...)

Create a new protocol from template.

get_protocol(]) → scanhub_libraries.models.ProtocolOut)

Get protocol endpoint.

get_all_patient_protocols(...)

Get all protocols of a certain patient.

get_all_protocol_templates(...)

Get all protocol templates.

protocol_delete(]) → None)

Delete a protocol by id. Cascade deletes the associated tasks.

update_protocol(], access_token, ...)

Update an existing protocol.

Module Contents#

app.api.protocol_api.PREFIX_PATIENT_MANAGER = 'http://patient-manager:8100/api/v1/patient'#
app.api.protocol_api.protocol_router#
async app.api.protocol_api.create_protocol(payload: scanhub_libraries.models.BaseProtocol, user: Annotated[scanhub_libraries.models.User, Depends(get_current_user)], access_token: Annotated[str, Depends(oauth2_scheme)]) scanhub_libraries.models.ProtocolOut#

Create a new protocol.

async app.api.protocol_api.create_protocol_from_template(payload: scanhub_libraries.models.BaseProtocol, template_id: uuid.UUID, user: Annotated[scanhub_libraries.models.User, Depends(get_current_user)], access_token: Annotated[str, Depends(oauth2_scheme)]) scanhub_libraries.models.ProtocolOut#

Create a new protocol from template.

async app.api.protocol_api.get_protocol(exam_id: uuid.UUID | str, user: Annotated[scanhub_libraries.models.User, Depends(get_current_user)]) scanhub_libraries.models.ProtocolOut#

Get protocol endpoint.

async app.api.protocol_api.get_all_patient_protocols(patient_id: uuid.UUID, user: Annotated[scanhub_libraries.models.User, Depends(get_current_user)]) list[scanhub_libraries.models.ProtocolOut]#

Get all protocols of a certain patient.

async app.api.protocol_api.get_all_protocol_templates(user: Annotated[scanhub_libraries.models.User, Depends(get_current_user)]) list[scanhub_libraries.models.ProtocolOut]#

Get all protocol templates.

async app.api.protocol_api.protocol_delete(exam_id: uuid.UUID | str, user: Annotated[scanhub_libraries.models.User, Depends(get_current_user)]) None#

Delete a protocol by id. Cascade deletes the associated tasks.

async app.api.protocol_api.update_protocol(exam_id: uuid.UUID | str, payload: scanhub_libraries.models.BaseProtocol, user: Annotated[scanhub_libraries.models.User, Depends(get_current_user)], access_token: Annotated[str, Depends(oauth2_scheme)]) scanhub_libraries.models.ProtocolOut#

Update an existing protocol.