class BorderlessAccountService(Base): list = JsonEndpoint(path="/v1/borderless-accounts", required_params=["profileId"]) statement = JsonEndpoint( path= "/v3/profiles/{profile_id}/borderless-accounts/{account_id}/statement.json", required_params=["currency", "intervalStart", "intervalEnd", "type"], )
class OrthancModalities(Service): modalities = JsonEndpoint(path="modalities/") modality = JsonEndpoint(path="modalities/{dicom}/") del_modality = JsonEndpoint(path="modalities/{dicom}/", default_method="DELETE") put_modality = JsonEndpoint(path="modalities/{dicom}/", default_method="PUT") echo = JsonEndpoint(path="modalities/{dicom}/echo/", default_method="POST") move = JsonEndpoint(path="modalities/{dicom}/move/", default_method="POST") query = JsonEndpoint(path="modalities/{dicom}/query/", default_method="POST") store = JsonEndpoint(path="modalities/{dicom}/store/", default_method="POST")
class OrthancInstances(Service): instances = JsonEndpoint(path="instances/") add_instance = JsonEndpoint(path="instances/", default_method="POST") instance = JsonEndpoint(path="instances/{id_}/") del_instance = JsonEndpoint(path="instances/{id_}/", default_method="DELETE") anonymize = StreamingEndpoint(path="instances/{id_}/anonymize/", default_method="POST") attachments = JsonEndpoint(path="instances/{id_}/attachments") attachment = JsonEndpoint(path="instances/{id_}/attachment/{name}/") del_attachment = JsonEndpoint(path="instances/{id_}/attachment/{name}/", default_method="DELETE") put_attachment = JsonEndpoint(path="instances/{id_}/attachment/{name}/", default_method="PUT") compress_attachment = JsonEndpoint( path="instances/{id_}/attachment/{name}/compress", default_method="POST") compressed_attachment_data = JsonEndpoint( path="instances/{id_}/attachment/{name}/compressed-data") compressed_attachment_md5 = JsonEndpoint( path="instances/{id_}/attachment/{name}/compressed-md5") compressed_attachment_size = JsonEndpoint( path="instances/{id_}/attachment/{name}/compressed-size") attachment_data = JsonEndpoint( path="instances/{id_}/attachment/{name}/data") attachment_is_compressed = JsonEndpoint( path="instances/{id_}/attachment/{name}/is-compressed") attachment_md5 = JsonEndpoint(path="instances/{id_}/attachment/{name}/md5") attachment_size = JsonEndpoint( path="instances/{id_}/attachment/{name}/size") uncompress_attachment = JsonEndpoint( path="instances/{id_}/attachment/{name}/uncompress", default_method="POST") verify_attachment = JsonEndpoint( path="instances/{id_}/attachment/{name}/verify-md5", default_method="POST") content = JsonEndpoint(path="instances/{id_}/content") content_tag = JsonEndpoint(path="instances/{id_}/content/{tag}") content_raw_tag = Endpoint( path="instances/{id_}/content/{group}-{element}/") # instance_content_raw_seq = JsonEndpoint(path='instances/{id_}/content/{group}-{element}/{index}/') export = JsonEndpoint(path="instances/{id_}/export/", default_method="POST") file_ = StreamingEndpoint(path="instances/{id_}/file/") frames = JsonEndpoint(path="instances/{id_}/frames/") frame = StreamingEndpoint( path="instances/{id_}/frames/{number}/{format_}/") frame_preview = StreamingEndpoint( path="instances/{id_}/frames/{number}/preview/") header = JsonEndpoint(path="instances/{id_}/header/") image = StreamingEndpoint(path="instances/{id_}/{format_}/") list_metadata = JsonEndpoint(path="instances/{id_}/metadata/") metadata = JsonEndpoint(path="instances/{id_}/metadata/{name}/") del_metadata = JsonEndpoint(path="instances/{id_}/metadata/{name}/", default_method="DELETE") put_metadata = JsonEndpoint(path="instances/{id_}/metadata/{name}/", default_method="PUT") modify = JsonEndpoint(path="instances/{id_}/modify/", default_method="POST") module = JsonEndpoint(path="instances/{id_}/module/") patient = JsonEndpoint(path="instances/{id_}/patient/") pdf = StreamingEndpoint(path="instances/{id_}/pdf/") preview = StreamingEndpoint(path="instances/{id_}/preview/") reconstruct = JsonEndpoint(path="instances/{id_}/reconstruct/", default_method="POST") series = JsonEndpoint(path="instances/{id_}/series/") simplified_tags = JsonEndpoint(path="instances/{id_}/simplified-tags/") statistics = JsonEndpoint(path="instances/{id_}/statistics/") study = JsonEndpoint(path="instances/{id_}/study/") tags = JsonEndpoint(path="instances/{id_}/tags/")
class ProfileService(Base): list = JsonEndpoint(path="/v1/profiles") get = JsonEndpoint(path="/v1/profiles/{profile_id}")
class SubscriptionService(Base): list = JsonEndpoint(path="/v3/profiles/{profile_id}/subscriptions") get = JsonEndpoint( path="/v3/profiles/{profile_id}/subscriptions/{subscription_id}")
class OrthancServer(Service): """Server-related endpoints""" changes = JsonEndpoint(path="changes/") del_changes = JsonEndpoint(path="changes/", default_method="DELETE") exports = JsonEndpoint(path="exports/") del_exports = JsonEndpoint(path="exports/", default_method="DELETE") jobs = JsonEndpoint(path="jobs/") job = JsonEndpoint(path="jobs/{id_}/") cancel_job = JsonEndpoint(path="jobs/{id_}/cancel/", default_method="POST") pause_job = JsonEndpoint(path="jobs/{id_}/pause/", default_method="POST") resubmit_job = JsonEndpoint(path="jobs/{id_}/resubmit/", default_method="POST") resume_job = JsonEndpoint(path="jobs/{id_}/resume/", default_method="POST") job_output = JsonEndpoint(path="jobs/{id_}/{key}/") peers = JsonEndpoint(path="peers/") peer = JsonEndpoint(path="peers/{peer}/") del_peer = JsonEndpoint(path="peers/{peer}/", default_method="DELETE") put_peer = JsonEndpoint(path="peers/{peer}/", default_method="PUT") store_peer = JsonEndpoint(path="peers/{peer}/store/", default_method="POST") plugins = JsonEndpoint(path="plugins/") plugin = JsonEndpoint(path="plugins/{id_}/") plugins_js = Endpoint(path="plugins/explorer.js/") statistics = JsonEndpoint(path="statistics/") system = JsonEndpoint(path="system/") tools_create_archive = StreamingEndpoint(path="tools/create-archive/", default_method="POST") tools_create_dicom = StreamingEndpoint(path="tools/create-dicom/", default_method="POST") tools_create_media = StreamingEndpoint(path="tools/create-media/", default_method="POST") tools_create_media_extended = StreamingEndpoint( path="tools/create-media-extended/", default_method="POST") tools_default_encoding = Endpoint(path="tools/default-encoding/") tools_change_default_encoding = Endpoint(path="tools/default-encoding/", default_method="PUT") tools_post_default_encoding = JsonEndpoint(path="tools/default-encoding/", default_method="POST") tools_dicom_conformance = Endpoint(path="tools/dicom-conformance/") tools_execute_script = JsonEndpoint(path="tools/execute-script/", default_method="POST") tools_find = JsonEndpoint(path="tools/find/", default_method="POST") tools_generate_uid = Endpoint(path="tools/generate-uid/") tools_invalidate_tags = JsonEndpoint(path="tools/invalidate-tags/", default_method="POST") tools_lookup = JsonEndpoint(path="tools/lookup/", default_method="POST") tools_metrics = JsonEndpoint(path="tools/metrics/") tools_change_metrics = JsonEndpoint(path="tools/metrics/", default_method="PUT") tools_metrics_prometheus = JsonEndpoint(path="tools/metrics-prometheus/") tools_now = Endpoint(path="tools/now/") tools_now_local = Endpoint(path="tools/now-local/") tools_reconstruct = Endpoint(path="tools/reconstruct/", default_method="POST") tools_reset = JsonEndpoint(path="tools/reset/", default_method="POST") tools_shutdown = JsonEndpoint(path="tools/shutdown/", default_method="POST")
class UserService(Base): me = JsonEndpoint(path="/v1/me") get = JsonEndpoint(path="/v1/users/{userId}")
class OrthancPatients(Service): patients = JsonEndpoint(path="patients/") patient = JsonEndpoint(path="patients/{id_}/") del_patient = JsonEndpoint(path="patients/{id_}/", default_method="DELETE") anonymize = JsonEndpoint(path="patients/{id_}/anonymize/", default_method="POST") archive = StreamingEndpoint(path="patients/{id_}/archive/") attachments = JsonEndpoint(path="patients/{id_}/attachments") attachment = JsonEndpoint(path="patients/{id_}/attachment/{name}/") del_attachment = JsonEndpoint(path="patients/{id_}/attachment/{name}/", default_method="DELETE") put_attachment = JsonEndpoint(path="patients/{id_}/attachment/{name}/", default_method="PUT") compress_attachment = JsonEndpoint( path="patients/{id_}/attachment/{name}/compress", default_method="POST") compressed_attachment_data = StreamingEndpoint( path="patients/{id_}/attachment/{name}/compressed-data") compressed_attachment_md5 = JsonEndpoint( path="patients/{id_}/attachment/{name}/compressed-md5") compressed_attachment_size = JsonEndpoint( path="patients/{id_}/attachment/{name}/compressed-size") attachment_data = StreamingEndpoint( path="patients/{id_}/attachment/{name}/data") attachment_is_compressed = JsonEndpoint( path="patients/{id_}/attachment/{name}/is-compressed") attachment_md5 = JsonEndpoint(path="patients/{id_}/attachment/{name}/md5") attachment_size = JsonEndpoint( path="patients/{id_}/attachment/{name}/size") uncompress_attachment = JsonEndpoint( path="patients/{id_}/attachment/{name}/uncompress", default_method="POST") verify_attachment = JsonEndpoint( path="patients/{id_}/attachment/{name}/verify-md5", default_method="POST") instances = JsonEndpoint(path="patients/{id_}/instances/") instances_tags = JsonEndpoint(path="patients/{id_}/instances-tags/") list_metadata = JsonEndpoint(path="patients/{id_}/metadata/") metadata = Endpoint(path="patients/{id_}/metadata/{name}/") del_metadata = JsonEndpoint(path="patients/{id_}/metadata/{name}/", default_method="DELETE") put_metadata = JsonEndpoint(path="patients/{id_}/metadata/{name}/", default_method="PUT") modify = JsonEndpoint(path="patients/{id_}/modify/", default_method="POST") module = JsonEndpoint(path="patients/{id_}/module/") media = StreamingEndpoint(path="patients/{id_}/media/") protected = Endpoint(path="patients/{id_}/protected/") put_protected = Endpoint(path="patients/{id_}/protected/", default_method="PUT") reconstruct = JsonEndpoint(path="patients/{id_}/reconstruct/", default_method="POST") series = JsonEndpoint(path="patients/{id_}/series/") shared_tags = JsonEndpoint(path="patients/{id_}/shared-tags/") statistics = JsonEndpoint(path="patients/{id_}/statistics/") studies = JsonEndpoint(path="patients/{id_}/studies/")
class OrthancQueries(Service): queries = JsonEndpoint(path="queries/") query = JsonEndpoint(path="queries/{id_}/") del_query = JsonEndpoint(path="queries/{id_}/", default_method="DELETE") answers = JsonEndpoint(path="queries/{id_}/answers/") answers_content = JsonEndpoint( path="queries/{id_}/answers/{index}/content/") answers_retrieve = JsonEndpoint( path="queries/{id_}/answers/{index}/retrieve/", default_method="POST") answers_instances = JsonEndpoint( path="queries/{id_}/answers/{index}/query-instances/", default_method="POST") answers_series = JsonEndpoint( path="queries/{id_}/answers/{index}/query-series/", default_method="POST") answers_studies = JsonEndpoint( path="queries/{id_}/answers/{index}/query-studies/", default_method="POST") level = JsonEndpoint(path="queries/{id_}/level/") modality = JsonEndpoint(path="queries/{id_}/modality/") query_query = JsonEndpoint(path="queries/{id_}/query/") retrieve = JsonEndpoint(path="queries/{id_}/retrieve/", default_method="POST")
class OrcicornService(Service): domain = 'https://shift.orcicorn.com/' bl3_codes = JsonEndpoint(path='/tags/borderlands3/index.json')