MRI Sequences Manager#
Introduction#
The MRI Sequence Manager API is designed to handle the creation, retrieval, modification, and deletion of MRI sequences within a medical imaging environment. Leveraging MongoDB for storage, this API provides a comprehensive set of endpoints to manage various aspects of MRI sequences. Below is an overview of the key endpoints:
Web API#
- GET /api/v1/mri/sequences/#
Get Mri Sequences Endpoint
Retrieve a list of all MRI sequences from the database.
Parameters#
- databaseAsyncIOMotorDatabase
The MongoDB database handle.
Returns#
- List[MRISequence]
The list of MRI sequences.
- status 200:
Successful Response
- POST /api/v1/mri/sequences/#
Create Mri Sequence Endpoint
Create a new MRI sequence and store it in the database.
Parameters#
- mri_sequenceMRISequence
The MRI sequence data to store.
- databaseAsyncIOMotorDatabase
The MongoDB database handle.
Returns#
- MRISequence
The created MRI sequence.
- status 201:
Successful Response
- status 422:
Validation Error
- POST /api/v1/mri/sequences/upload#
Upload Mri Sequence File
Upload an MRI sequence file and store it with the provided metadata.
Parameters#
- mri_sequenceMRISequenceCreate
The MRI sequence metadata.
- fileUploadFile
The MRI sequence file to store.
- databaseAsyncIOMotorDatabase
The MongoDB database handle.
Returns#
- MRISequence
The stored MRI sequence with the uploaded file.
- status 201:
Successful Response
- status 422:
Validation Error
- GET /api/v1/mri/sequences/{mri_sequence_id}#
Get Mri Sequence By Id Endpoint
Retrieve an MRI sequence by its ID.
Parameters#
- mri_sequence_idstr
The ID of the MRI sequence to retrieve.
- databaseAsyncIOMotorDatabase
The MongoDB database handle.
Returns#
- MRISequence
The retrieved MRI sequence.
- param string mri_sequence_id:
- status 200:
Successful Response
- status 422:
Validation Error
- PUT /api/v1/mri/sequences/{mri_sequence_id}#
Update Mri Sequence Endpoint
Update an MRI sequence with new data.
Parameters#
- mri_sequence_idstr
The ID of the MRI sequence to update.
- mri_sequenceMRISequence
The updated MRI sequence data.
- databaseAsyncIOMotorDatabase
The MongoDB database handle.
Returns#
- MRISequence
The updated MRI sequence.
- param string mri_sequence_id:
- status 200:
Successful Response
- status 422:
Validation Error
- DELETE /api/v1/mri/sequences/{mri_sequence_id}#
Delete Mri Sequence Endpoint
Delete an MRI sequence by its ID.
Parameters#
- mri_sequence_idstr
The ID of the MRI sequence to delete.
- databaseAsyncIOMotorDatabase
The MongoDB database handle.
Returns#
None
- param string mri_sequence_id:
- status 204:
Successful Response
- status 422:
Validation Error
- GET /api/v1/mri/sequences/mri-sequence-file/{mri_sequence_id}#
Get Mri Sequence File By Id Endpoint
Retrieve an MRI sequence file by its ID.
Parameters#
- mri_sequence_idstr
The ID of the MRI sequence to retrieve.
- background_tasksBackgroundTasks
The background tasks to run.
- namestr
The name of the file to download.
- databaseAsyncIOMotorDatabase
The MongoDB database handle.
Returns#
- FileResponse
The retrieved MRI sequence file.
- param string mri_sequence_id:
- query string name:
- status 200:
Successful Response
- status 422:
Validation Error
- GET /api/v1/mri/sequences/mri-sequence-plot/{seq_id}#
Plot Mri Sequence
Generate plotly sequence plot data.
Parameters#
- seq_id
Id of the sequence to be plotted
Returns#
List of plot data models for plotly
- param string seq_id:
- status 201:
Successful Response
- status 422:
Validation Error
License#
MRI Sequence Manager, including all its source code and associated documentation (collectively, the “Software”), is dual-licensed under the GNU General Public License version 3 (GPLv3) and the ScanHub commercial license.
Open Source License#
If you want to use the Software under the terms of the GPLv3, you may do so for free. Under the GPLv3, you are allowed to modify and distribute the Software, but any derivative works that you distribute must also be licensed under the GPLv3. For the precise terms and conditions, please refer to the text of the GPLv3, which is included with the Software and can also be found at: http://www.gnu.org/licenses/gpl-3.0.html
Commercial License#
If you wish to use the Software without the restrictions of the GPLv3, such as for the purpose of developing proprietary software that includes the Software without the obligation to disclose your source code, you may purchase a commercial license from BRAIN-LINK UG (haftungsbeschränkt).
The commercial license grants you, the licensee, the rights to use, modify, and distribute the Software without the requirement of providing the source code of your proprietary software to the end users. The commercial license also includes access to premium support and services.
For more information on the commercial license, including pricing, please contact us at info@brain-link.de.
Choice of License#
You may choose to use the Software under either the GPLv3 or the commercial license. If you choose to use the Software under the GPLv3, you must comply with all of the terms of the GPLv3. If you choose to use the Software under the commercial license, you must comply with all of the terms of the commercial license.
Disclaimer#
This is not a legal document. The exact terms of the GPLv3 and the commercial license are specified in their respective legal texts. This document is merely intended to provide a general overview of the dual licensing scheme.