Exam Manager#
Introduction#
The Exam Manager API is designed to manage the complete lifecycle of exams, procedures, jobs, and records within the healthcare system. This comprehensive API allows users to perform essential operations on these entities and offers the following key endpoints:
Web API#
- POST /api/v1/exam/#
Exam Create
Create exam endpoint.
Parameters#
- payload
Exam pydantic input model.
Returns#
Exam pydantic output moddel.
Raises#
- HTTPException
404: Creation unsuccessful
- status 201:
Successful Response
- status 422:
Validation Error
- GET /api/v1/exam/{exam_id}#
Exam Get
Get exam endpoint.
Parameters#
- exam_id
Id of requested exam entry
Returns#
Exam pydantic output model.
Raises#
- HTTPException
404: Not found
- param integer exam_id:
- status 200:
Successful Response
- status 422:
Validation Error
- PUT /api/v1/exam/{exam_id}#
Exam Update
Update exam.
Parameters#
- exam_id
Id of the exam to be updated
- payload
Exam pydantic input model
Returns#
Exam pydantic output model
Raises#
- HTTPException
404: Not found
- param integer exam_id:
- status 200:
Successful Response
- status 422:
Validation Error
- DELETE /api/v1/exam/{exam_id}#
Exam Delete
Delete exam by id.
Parameters#
- exam_id
Id of the exam to be deleted
Raises#
- HTTPException
404: Not found
- param integer exam_id:
- status 204:
Successful Response
- status 422:
Validation Error
- GET /api/v1/exam/all/{patient_id}#
Exam Get All
Get all exams of a patient endpoint.
Parameters#
- patient_id
Id of parent
Returns#
List of exam pydantic output models
- param integer patient_id:
- status 200:
Successful Response
- status 422:
Validation Error
- POST /api/v1/exam/procedure#
Procedure Create
Procedure post endpoint.
Parameters#
- payload
Pydantic input model
Returns#
Pydantic output model
Raises#
- HTTPException
404: Creation not succesful
- status 201:
Successful Response
- status 422:
Validation Error
- GET /api/v1/exam/procedure/{procedure_id}#
Procedure Get
Procedure get endpoint.
Parameters#
- procedure_id
Id of entry to return
Returns#
Pydantic output model
Raises#
- HTTPException
404: Not found
- param integer procedure_id:
- status 200:
Successful Response
- status 422:
Validation Error
- PUT /api/v1/exam/procedure/{procedure_id}#
Proceedure Update
Update procedure endpoint.
Parameters#
- procedure_id
Id of procedure to be updated
- payload
Pydantic input model
Returns#
Pydantic output model
Raises#
- HTTPException
404: Entry not found
- param integer procedure_id:
- status 200:
Successful Response
- status 422:
Validation Error
- DELETE /api/v1/exam/procedure/{procedure_id}#
Procedure Delete
Delete procedure endpoint.
Parameters#
- procedure_id
Id of entry to be deleted
Raises#
- HTTPException
404: Not found
- param integer procedure_id:
- status 204:
Successful Response
- status 422:
Validation Error
- GET /api/v1/exam/procedure/all/{exam_id}#
Procedure Get All
Get all procedures of a parent endpoint.
Parameters#
- exam_id
Id of the parent object
Returns#
List of pydantic output models
- param integer exam_id:
- status 200:
Successful Response
- status 422:
Validation Error
- POST /api/v1/exam/job#
Job Create
Create new job endpoint.
Parameters#
- payload
Job pydantic input model
Returns#
Job pydantic output model
Raises#
- HTTPException
404: Creation unsuccessful
- status 201:
Successful Response
- status 422:
Validation Error
- GET /api/v1/exam/job/{job_id}#
Job Get
Get job endpoint.
Parameters#
- job_id
Id of the job to be returned
Returns#
Job pydantic output model
Raises#
- HTTPException
404: Not found
- param integer job_id:
- status 200:
Successful Response
- status 422:
Validation Error
- PUT /api/v1/exam/job/{job_id}#
Job Update
Update job endpoint.
Parameters#
- job_id
Id of the job to be updated
- payload
Job pydantic indput model
Returns#
Job pydantic output model
Raises#
- HTTPException
404: Not found
- param integer job_id:
- status 200:
Successful Response
- status 422:
Validation Error
- DELETE /api/v1/exam/job/{job_id}#
Job Delete
Delete job endpoint.
Parameters#
- job_id
Id of the job to be deleted
Raises#
- HTTPException
404: Not found
- param integer job_id:
- status 204:
Successful Response
- status 422:
Validation Error
- GET /api/v1/exam/job/all/{procedure_id}#
Job Get All
Get all jobs of a procedure endpoint.
Parameters#
- procedure_id
Id of parent procedure
Returns#
List of job pydantic output model
- param integer procedure_id:
- status 200:
Successful Response
- status 422:
Validation Error
- POST /api/v1/exam/record#
Record Create
Create record endpoint.
Parameters#
- payload
Record pydantic input model
Returns#
Record pydantic output model
Raises#
- HTTPException
404: Creation unsuccessful
- status 201:
Successful Response
- status 422:
Validation Error
- GET /api/v1/exam/record/{record_id}#
Record Get
Get single record endpoint.
Parameters#
- record_id
Id of the record to return
Returns#
Record pydantic output model
Raises#
- HTTPException
404: Not found
- param integer record_id:
- status 200:
Successful Response
- status 422:
Validation Error
- DELETE /api/v1/exam/record/{record_id}#
Record Delete
Delete record endpoint.
Parameters#
- record_id
Id of the record to be deleted
Raises#
- HTTPException
404: Not found
- param integer record_id:
- status 204:
Successful Response
- status 422:
Validation Error
License#
Exam 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.