@datafire/slicebox_local v4.0.0
@datafire/slicebox_local
Client library for Slicebox API
Installation and Usage
npm install --save @datafire/slicebox_local
let slicebox_local = require('@datafire/slicebox_local').create();
.then(data => {
console.log(data);
});
Description
Slicebox - safe sharing of medical images
Actions
anonymization.anonymize.post
anonymize the images corresponding to the supplied list of image IDs (each paired with a list of DICOM tag translation). This route corresponds to repeated use of the route /images/{id}/anonymize.
slicebox_local.anonymization.anonymize.post({
"query": []
}, context)
Input
- input
object
- query required
array
- items imageTagValues
- query required
Output
- output
array
- items image
anonymization.keys.get
get a list of anonymization keys, each specifying how vital DICOM attributes have been anonymized for a particular image
slicebox_local.anonymization.keys.get({}, context)
Input
- input
object
- startindex
integer
: start index of returned slice of anonymization keys - count
integer
: size of returned slice of anonymization keys - orderby
string
: property to order results by - orderascending
boolean
: order result ascendingly if true, descendingly otherwise - filter
string
: filter the results by matching substrings of properties against this value
- startindex
Output
- output
array
- items anonymizationKey
anonymization.keys.export.csv.get
export all anonymization keys as a csv file
slicebox_local.anonymization.keys.export.csv.get(null, context)
Input
This action has no parameters
Output
- output
string
anonymization.keys.query.post
submit a query for anonymization keys
slicebox_local.anonymization.keys.query.post({
"query": {
"startIndex": 0,
"count": 0,
"queryProperties": []
}
}, context)
Input
- input
object
- query required anonymizationKeyQuery
Output
- output
array
- items anonymizationKey
anonymization.keys.id.delete
delete an anonymization key that is no longer of interest
slicebox_local.anonymization.keys.id.delete({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of anonymization key
- id required
Output
Output schema unknown
anonymization.keys.id.get
get the anonymization key with the supplied ID
slicebox_local.anonymization.keys.id.get({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of anonymization key
- id required
Output
- output anonymizationKey
anonymization.keys.id.keyvalues.get
get pointers to the images corresponding to the anonymization key with the supplied ID
slicebox_local.anonymization.keys.id.keyvalues.get({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of anonymization key
- id required
Output
- output
array
- items anonymizationKeyValue
anonymization.options.get
list all supported anonymization options defining an anonymization profile
slicebox_local.anonymization.options.get(null, context)
Input
This action has no parameters
Output
- output
array
- items confidentialityOption
boxes.get
get a list of box connections
slicebox_local.boxes.get({}, context)
Input
- input
object
- startindex
integer
: start index of returned slice of boxes - count
integer
: size of returned slice of boxes
- startindex
Output
- output
array
- items box
boxes.connect.post
connect to another box using a received URL. Used to connect to a public box.
slicebox_local.boxes.connect.post({
"remoteBox": {}
}, context)
Input
- input
object
- remoteBox required remoteBox
Output
- output box
boxes.createconnection.post
create a new box connection where the supplied entity holds the remote box name. Used by publicly available boxes.
slicebox_local.boxes.createconnection.post({
"remoteBoxConnectionData": {}
}, context)
Input
- input
object
- remoteBoxConnectionData required remoteBoxConnectionData
Output
- output box
boxes.incoming.get
get incoming transactions (finished, currently receiving, waiting or failed)
slicebox_local.boxes.incoming.get({}, context)
Input
- input
object
- startindex
integer
: start index of returned slice of transactions - count
integer
: size of returned slice of transactions
- startindex
Output
- output
array
- items incomingTransaction
boxes.incoming.id.delete
delete an incoming transaction. If a currently active transaction is deleted, a new transaction with the remainder of the images is created when receiving the next incoming image.
slicebox_local.boxes.incoming.id.delete({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of incoming transaction
- id required
Output
Output schema unknown
boxes.incoming.id.images.get
get the received images corresponding to the incoming transaction with the supplied ID
slicebox_local.boxes.incoming.id.images.get({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of incoming transaction
- id required
Output
- output
array
- items image
boxes.outgoing.get
get outgoing transactions (finished, currently sending, waiting or failed)
slicebox_local.boxes.outgoing.get({}, context)
Input
- input
object
- startindex
integer
: start index of returned slice of transactions - count
integer
: size of returned slice of transactions
- startindex
Output
- output
array
- items outgoingTransaction
boxes.outgoing.id.delete
delete an outgoing transaction. This will stop ongoing transactions.
slicebox_local.boxes.outgoing.id.delete({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of outgoing transaction
- id required
Output
Output schema unknown
boxes.outgoing.id.images.get
get the sent images corresponding to the outgoing transaction with the supplied ID
slicebox_local.boxes.outgoing.id.images.get({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of outgoing transaction
- id required
Output
- output
array
- items image
boxes.id.delete
Delete the remote box with the supplied ID
slicebox_local.boxes.id.delete({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of box to remove
- id required
Output
Output schema unknown
boxes.id.send.post
send images corresponding to the supplied image ids to the remote box with the supplied ID
slicebox_local.boxes.id.send.post({
"id": 0,
"sequence of image tag values": {}
}, context)
Input
- input
object
- id required
integer
: ID of box to send images to - sequence of image tag values required bulkAnonymizationData
- id required
Output
Output schema unknown
destinations.get
Returns a list of currently available destinations. Possible destinations are box - sending data to a remote box, and scu - sending data a receiving SCP.
slicebox_local.destinations.get(null, context)
Input
This action has no parameters
Output
- output
array
- items destination
directorywatches.get
get a list of watch directories. Each watch directory and its sub-directories are watched for incoming DICOM files, which are read and imported into slicebox.
slicebox_local.directorywatches.get({}, context)
Input
- input
object
- startindex
integer
: start index of returned slice of watched directories - count
integer
: size of returned slice of watched directories
- startindex
Output
- output
array
- items watchedDirectory
directorywatches.post
add a new directory to watch for incoming DICOM files
slicebox_local.directorywatches.post({}, context)
Input
- input
object
- watchedDirectory watchedDirectory
Output
- output watchedDirectory
directorywatches.id.delete
stop watching and remove the directory corresponding to the supplied ID
slicebox_local.directorywatches.id.delete({
"id": 0
}, context)
Input
- input
object
- id required
integer
: id of directory to stop watching
- id required
Output
Output schema unknown
filtering.associations.get
Get a list of source to filter associations.
slicebox_local.filtering.associations.get({}, context)
Input
- input
object
- startindex
integer
: start index of returned slice of source <-> filter associations - count
integer
: size of returned slice of source <-> filter associations
- startindex
Output
- output
array
- items sourceTagFilter
filtering.associations.post
Inserts or updates a source <-> filter associations. If the specified Source already has an association this is updated, otherwise a new is inserted.
slicebox_local.filtering.associations.post({
"sourcetagfilter": {}
}, context)
Input
- input
object
- sourcetagfilter required sourceTagFilter
Output
Output schema unknown
filtering.associations.id.delete
remove the source <-> filter association corresponding to the supplied ID
slicebox_local.filtering.associations.id.delete({
"id": 0
}, context)
Input
- input
object
- id required
integer
: id of source <-> filter association to remove
- id required
Output
Output schema unknown
filtering.filters.get
List defined filters
slicebox_local.filtering.filters.get({}, context)
Input
- input
object
- startindex
integer
: start index of returned slice of filters - count
integer
: size of returned slice of filters
- startindex
Output
- output
array
- items filter
filtering.filters.post
Inserts or updates a filter. If a filter with same name as supplied filter exists this filter is updated, otherwise a new filter is inserted.
slicebox_local.filtering.filters.post({
"tagFilter": {}
}, context)
Input
- input
object
- tagFilter required filter
Output
Output schema unknown
filtering.filters.id.delete
remove the filter corresponding to the supplied ID
slicebox_local.filtering.filters.id.delete({
"id": 0
}, context)
Input
- input
object
- id required
integer
: id of filter to remove
- id required
Output
Output schema unknown
filtering.filters.id.tagpaths.get
List tagpaths for the selected filter
slicebox_local.filtering.filters.id.tagpaths.get({
"id": 0
}, context)
Input
- input
object
- id required
integer
: id of filter
- id required
Output
- output
array
- items tagPathTag
filtering.filters.id.tagpaths.post
add a tagpath to a filter
slicebox_local.filtering.filters.id.tagpaths.post({
"id": 0,
"tagpath": {}
}, context)
Input
- input
object
- id required
integer
: id of filter to remove - tagpath required tagPathTag
- id required
Output
Output schema unknown
filtering.filters.id.tagpaths.tagpathid.delete
remove the tagpath corresponding to the supplied ID
slicebox_local.filtering.filters.id.tagpaths.tagpathid.delete({
"id": 0,
"tagpathid": 0
}, context)
Input
- input
object
- id required
integer
: id of filter - tagpathid required
integer
: id of TagPath to remove
- id required
Output
Output schema unknown
forwarding.rule.id.delete
remove the forwarding rule corresponding to the supplied ID
slicebox_local.forwarding.rule.id.delete({
"id": 0
}, context)
Input
- input
object
- id required
integer
: id of forwarding rule to remove
- id required
Output
Output schema unknown
forwarding.rules.get
get a list of all forwarding rules. A forwarding rule specifies the automatic forwarding of images from a source (SCP, BOX, etc.) to a destimation (BOX, SCU, etc.)
slicebox_local.forwarding.rules.get({}, context)
Input
- input
object
- startindex
integer
: start index of returned slice of rules - count
integer
: size of returned slice of rules
- startindex
Output
- output
array
- items forwardingrule
forwarding.rules.post
add a new forwarding rule
slicebox_local.forwarding.rules.post({}, context)
Input
- input
object
- FowardingRule forwardingrule
Output
- output forwardingrule
images.post
add a DICOM dataset to slicebox
slicebox_local.images.post({
"dataset": ""
}, context)
Input
- input
object
- dataset required
string
,object
: The dataset file- content
string
- encoding
string
(values: ascii, utf8, utf16le, base64, binary, hex) - contentType
string
- filename
string
- content
- dataset required
Output
- output image
images.delete.post
bulk delete a sequence of images according to the supplied image IDs. This is the same as a sequence of DELETE requests to /images/{id}
slicebox_local.images.delete.post({
"image IDs": []
}, context)
Input
- input
object
- image IDs required
array
- items
integer
- items
- image IDs required
Output
Output schema unknown
images.export.get
download the export set with the supplied export set ID as a zip archive
slicebox_local.images.export.get({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of export set to download
- id required
Output
Output schema unknown
images.export.post
create an export set, a group of image IDs of images to export. The export set will contain the selected images. The export set is available for download 12 hours before it is automatically deleted.
slicebox_local.images.export.post({
"image ids": []
}, context)
Input
- input
object
- image ids required
array
- items
integer
- items
- image ids required
Output
- output exportSetId
images.jpeg.post
add a JPEG image to slicebox. The image data will be wrapped in a DICOM file and added as a new series belonging to the study with the supplied ID
slicebox_local.images.jpeg.post({
"studyid": 0,
"jpeg bytes": null
}, context)
Input
- input
object
- studyid required
integer
: ID of study to add new series to - description
string
: DICOM series description of the resulting secondary capture series
- studyid required
Output
- output image
images.id.delete
Delete the image with the supplied ID
slicebox_local.images.id.delete({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of image
- id required
Output
Output schema unknown
images.id.get
fetch dataset corresponding to the supplied image ID
slicebox_local.images.id.get({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of image
- id required
Output
Output schema unknown
images.id.anonymize.put
delete the selected image and replace it with an anonymized version
slicebox_local.images.id.anonymize.put({
"id": 0,
"tag values": {}
}, context)
Input
- input
object
- id required
integer
: ID of image to anonymize - tag values required anonymizationData
- id required
Output
- output image
images.id.anonymized.post
get an anonymized version of the image with the supplied ID
slicebox_local.images.id.anonymized.post({
"id": 0,
"tag values": {}
}, context)
Input
- input
object
- id required
integer
: ID of image for which to get anonymized dataset - tag values required anonymizationData
- id required
Output
Output schema unknown
images.id.attributes.get
list all DICOM attributes of the dataset corresponding to the supplied image ID
slicebox_local.images.id.attributes.get({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of image
- id required
Output
- output
array
- items imageAttribute
images.id.imageinformation.get
get basic information about the pixel data of an image
slicebox_local.images.id.imageinformation.get({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of image
- id required
Output
- output imageInformation
images.id.modify.put
modify and/or insert image attributes according to the input tagpath-value mappings
slicebox_local.images.id.modify.put({
"id": 0,
"tag path value mappings": []
}, context)
Input
- input
object
- id required
integer
: ID of image to modify - tag path value mappings required
array
- items tagMapping
- id required
Output
Output schema unknown
images.id.png.get
get a PNG image representation of the image corresponding to the supplied ID
slicebox_local.images.id.png.get({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of image - framenumber
integer
: frame/slice to show - windowmin
integer
: intensity window minimum value. If not specified or set to zero, windowing will be selected from relevant DICOM attributes - windowmax
integer
: intensity window maximum value. If not specified or set to zero, windowing will be selected from relevant DICOM attributes - imageheight
integer
: height of PNG image. If not specified or set to zero, the image height will equal that of the data
- id required
Output
Output schema unknown
import.sessions.get
Returns a list of available import sessions.
slicebox_local.import.sessions.get({}, context)
Input
- input
object
- startindex
integer
: start index of returned slice of import sessions - count
integer
: size of returned slice of import sessions
- startindex
Output
- output
array
- items importSession
import.sessions.post
create a new import sessions
slicebox_local.import.sessions.post({
"import session": {}
}, context)
Input
- input
object
- import session required importSession
Output
- output importSession
import.sessions.id.delete
deletes the import session with the supplied ID
slicebox_local.import.sessions.id.delete({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of import session to delete
- id required
Output
Output schema unknown
import.sessions.id.get
Returns the import sessions with the supplied ID
slicebox_local.import.sessions.id.get({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of session
- id required
Output
- output importSession
import.sessions.id.images.get
get the imported images corresponding to the import session with the supplied ID
slicebox_local.import.sessions.id.images.get({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of import session
- id required
Output
- output
array
- items image
import.sessions.id.images.post
add a DICOM dataset to the import session with the supplied ID
slicebox_local.import.sessions.id.images.post({
"id": 0,
"dataset": ""
}, context)
Input
- input
object
- id required
integer
: ID of session - dataset required
string
,object
: The dataset file- content
string
- encoding
string
(values: ascii, utf8, utf16le, base64, binary, hex) - contentType
string
- filename
string
- content
- id required
Output
- output image
log.delete
delete all log messages
slicebox_local.log.delete(null, context)
Input
This action has no parameters
Output
Output schema unknown
log.get
get a list of slicebox log messages
slicebox_local.log.get({}, context)
Input
- input
object
- startindex
integer
: start index of returned slice of log messages - count
integer
: size of returned slice of log messages - subject
string
: log subject to filter results by - type
string
: log type (DEFAULT, INFO, WARN, ERROR) to filter results by
- startindex
Output
- output
array
- items logEntry
log.id.delete
Delete the log entry with the supplied ID
slicebox_local.log.id.delete({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of log entry
- id required
Output
Output schema unknown
metadata.flatseries.get
Returns a list of flattened metadata on the patient, study and series levels
slicebox_local.metadata.flatseries.get({}, context)
Input
- input
object
- startindex
integer
: start index of returned slice of flat series - count
integer
: size of returned slice of flat series - orderby
string
: flat series property to order results by - orderascending
boolean
: order result ascendingly if true, descendingly otherwise - filter
string
: filter the results by matching substrings of flat series properties against this value - sources
string
: filter the results by matching on one or more series sources. Examples of sources are user, box, directory or scp. The list of sources to filter results by must have the form TYPE1:ID1,TYPE2:ID2,...,TYPEN:IDN. For instance, the argument sources=box:1,user:5 shows results either sent from (slice)box with id 1 or uploaded by user with id 5. - seriestypes
string
: filter the results by matching on one or more series types. The supplied list of series types must be a comma separated list of series type ids. For instance, the argument seriestypes=3,7,22 shows series assigned to either of the series types with ids 3, 7 and 22. - seriestags
string
: filter the results by matching on one or more series tags. The supplied list of series tags must be a comma separated list of series tag ids. For instance, the argument seriestags=6,2,11 shows series with either of the series tags with ids 6, 2 and 11.
- startindex
Output
- output
array
- items flatSeries
metadata.flatseries.query.post
submit a query for flat series
slicebox_local.metadata.flatseries.query.post({
"query": {
"startIndex": 0,
"count": 0,
"queryProperties": []
}
}, context)
Input
- input
object
- query required query
Output
- output
array
- items flatSeries
metadata.flatseries.id.get
Return the flat series with the supplied ID
slicebox_local.metadata.flatseries.id.get({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of flat series
- id required
Output
- output flatSeries
metadata.images.get
Returns a list of metadata on the image level of the DICOM hierarchy
slicebox_local.metadata.images.get({
"seriesid": 0
}, context)
Input
- input
object
- startindex
integer
: start index of returned slice of images - count
integer
: size of returned slice of images - seriesid required
integer
: reference to series to list images for
- startindex
Output
- output
array
- items image
metadata.images.query.post
submit a query for images
slicebox_local.metadata.images.query.post({
"query": {
"startIndex": 0,
"count": 0,
"queryProperties": []
}
}, context)
Input
- input
object
- query required query
Output
- output
array
- items image
metadata.images.id.get
Return the image with the supplied ID
slicebox_local.metadata.images.id.get({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of image
- id required
Output
- output image
metadata.patients.get
Returns a list of metadata on the patient level of the DICOM hierarchy
slicebox_local.metadata.patients.get({}, context)
Input
- input
object
- startindex
integer
: start index of returned slice of patients - count
integer
: size of returned slice of patients - orderby
string
: patient property to order results by - orderascending
boolean
: order result ascendingly if true, descendingly otherwise - filter
string
: filter the results by matching substrings of patient properties against this value - sources
string
: filter the results by matching on one or more underlying series sources. Examples of sources are user, box, directory or scp. The list of sources to filter results by must have the form TYPE1:ID1,TYPE2:ID2,...,TYPEN:IDN. For instance, the argument sources=box:1,user:5 shows results either sent from (slice)box with id 1 or uploaded by user with id 5. - seriestypes
string
: filter the results by matching on one or more underlying series types. The supplied list of series types must be a comma separated list of series type ids. For instance, the argument seriestypes=3,7,22 shows results including series assigned to either of the series types with ids 3, 7 and 22. - seriestags
string
: filter the results by matching on one or more underlying series tags. The supplied list of series tags must be a comma separated list of series tag ids. For instance, the argument seriestags=6,2,11 shows results including series with either of the series tags with ids 6, 2 and 11.
- startindex
Output
- output
array
- items patient
metadata.patients.query.post
submit a query for patients
slicebox_local.metadata.patients.query.post({
"query": {
"startIndex": 0,
"count": 0,
"queryProperties": []
}
}, context)
Input
- input
object
- query required query
Output
- output
array
- items patient
metadata.patients.id.get
Return the patient with the supplied ID
slicebox_local.metadata.patients.id.get({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of patient
- id required
Output
- output patient
metadata.patients.id.images.get
Returns all images for the patient with the supplied patient ID
slicebox_local.metadata.patients.id.images.get({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of patient - sources
string
: filter the results by matching on one or more series sources. Examples of sources are user, box, directory or scp. The list of sources to filter results by must have the form TYPE1:ID1,TYPE2:ID2,...,TYPEN:IDN. For instance, the argument sources=box:1,user:5 shows results either sent from (slice)box with id 1 or uploaded by user with id 5. - seriestypes
string
: filter the results by matching on one or more series types. The supplied list of series types must be a comma separated list of series type ids. For instance, the argument seriestypes=3,7,22 shows series assigned to either of the series types with ids 3, 7 and 22. - seriestags
string
: filter the results by matching on one or more series tags. The supplied list of series tags must be a comma separated list of series tag ids. For instance, the argument seriestags=6,2,11 shows series with either of the series tags with ids 6, 2 and 11.
- id required
Output
- output
array
- items image
metadata.series.get
Returns a list of metadata on the series level of the DICOM hierarchy
slicebox_local.metadata.series.get({
"studyid": 0
}, context)
Input
- input
object
- startindex
integer
: start index of returned slice of series - count
integer
: size of returned slice of series - studyid required
integer
: reference to study to list series for - sources
string
: filter the results by matching on one or more series sources. Examples of sources are user, box, directory or scp. The list of sources to filter results by must have the form TYPE1:ID1,TYPE2:ID2,...,TYPEN:IDN. For instance, the argument sources=box:1,user:5 shows results either sent from (slice)box with id 1 or uploaded by user with id 5. - seriestypes
string
: filter the results by matching on one or more series types. The supplied list of series types must be a comma separated list of series type ids. For instance, the argument seriestypes=3,7,22 shows series assigned to either of the series types with ids 3, 7 and 22. - seriestags
string
: filter the results by matching on one or more series tags. The supplied list of series tags must be a comma separated list of series tag ids. For instance, the argument seriestags=6,2,11 shows series with either of the series tags with ids 6, 2 and 11.
- startindex
Output
- output
array
- items series
metadata.series.query.post
submit a query for series
slicebox_local.metadata.series.query.post({
"query": {
"startIndex": 0,
"count": 0,
"queryProperties": []
}
}, context)
Input
- input
object
- query required query
Output
- output
array
- items series
metadata.series.id.get
Return the series with the supplied ID
slicebox_local.metadata.series.id.get({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of series
- id required
Output
- output series
metadata.series.id.seriestags.get
get the list of series tags for the series with the supplied ID.
slicebox_local.metadata.series.id.seriestags.get({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of series
- id required
Output
- output
array
- items seriestag
metadata.series.id.seriestags.post
add a series tag to the series with the supplied ID
slicebox_local.metadata.series.id.seriestags.post({
"id": 0,
"query": {}
}, context)
Input
- input
object
- id required
integer
: ID of series - query required seriestag
- id required
Output
- output seriestag
metadata.series.id.seriestypes.delete
Delete all series types for the series with the supplied ID
slicebox_local.metadata.series.id.seriestypes.delete({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of series
- id required
Output
Output schema unknown
metadata.series.id.seriestypes.get
get the list of series types for the series with the supplied ID.
slicebox_local.metadata.series.id.seriestypes.get({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of series
- id required
Output
- output
array
- items seriestype
metadata.series.id.source.get
Return the source of the series with the supplied ID
slicebox_local.metadata.series.id.source.get({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of series
- id required
Output
- output source
metadata.series.seriesId.seriestags.seriesTagId.delete
Delete the series tag with the supplied series tag ID from the series with the supplied series ID
slicebox_local.metadata.series.seriesId.seriestags.seriesTagId.delete({
"seriesId": 0,
"seriesTagId": 0
}, context)
Input
- input
object
- seriesId required
integer
: ID of series - seriesTagId required
integer
: ID of series tag to remove
- seriesId required
Output
Output schema unknown
metadata.series.seriesId.seriestypes.seriesTypeId.delete
Delete the series type with the supplied series type ID from the series with the supplied series ID
slicebox_local.metadata.series.seriesId.seriestypes.seriesTypeId.delete({
"seriesId": 0,
"seriesTypeId": 0
}, context)
Input
- input
object
- seriesId required
integer
: ID of series - seriesTypeId required
integer
: ID of series type to remove
- seriesId required
Output
Output schema unknown
metadata.series.seriesId.seriestypes.seriesTypeId.put
Add the series type with the supplied series type ID to the series with the supplied series ID
slicebox_local.metadata.series.seriesId.seriestypes.seriesTypeId.put({
"seriesId": 0,
"seriesTypeId": 0
}, context)
Input
- input
object
- seriesId required
integer
: ID of series - seriesTypeId required
integer
: ID of series type to add
- seriesId required
Output
Output schema unknown
metadata.seriestags.get
Returns a list of series tags currently currently in use.
slicebox_local.metadata.seriestags.get(null, context)
Input
This action has no parameters
Output
- output
array
- items seriestag
metadata.studies.get
Returns a list of metadata on the study level of the DICOM hierarchy
slicebox_local.metadata.studies.get({
"patientid": 0
}, context)
Input
- input
object
- startindex
integer
: start index of returned slice of studies - count
integer
: size of returned slice of studies - patientid required
integer
: reference to patient to list studies for - sources
string
: filter the results by matching on one or more underlying series sources. Examples of sources are user, box, directory or scp. The list of sources to filter results by must have the form TYPE1:ID1,TYPE2:ID2,...,TYPEN:IDN. For instance, the argument sources=box:1,user:5 shows results either sent from (slice)box with id 1 or uploaded by user with id 5. - seriestypes
string
: filter the results by matching on one or more underlying series types. The supplied list of series types must be a comma separated list of series type ids. For instance, the argument seriestypes=3,7,22 shows results including series assigned to either of the series types with ids 3, 7 and 22. - seriestags
string
: filter the results by matching on one or more underlying series tags. The supplied list of series tags must be a comma separated list of series tag ids. For instance, the argument seriestags=6,2,11 shows results including series with either of the series tags with ids 6, 2 and 11.
- startindex
Output
- output
array
- items study
metadata.studies.query.post
submit a query for studies
slicebox_local.metadata.studies.query.post({
"query": {
"startIndex": 0,
"count": 0,
"queryProperties": []
}
}, context)
Input
- input
object
- query required query
Output
- output
array
- items study
metadata.studies.id.get
Return the study with the supplied ID
slicebox_local.metadata.studies.id.get({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of study
- id required
Output
- output study
metadata.studies.id.images.get
Returns all images for the study with the supplied study ID
slicebox_local.metadata.studies.id.images.get({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of study - sources
string
: filter the results by matching on one or more series sources. Examples of sources are user, box, directory or scp. The list of sources to filter results by must have the form TYPE1:ID1,TYPE2:ID2,...,TYPEN:IDN. For instance, the argument sources=box:1,user:5 shows results either sent from (slice)box with id 1 or uploaded by user with id 5. - seriestypes
string
: filter the results by matching on one or more series types. The supplied list of series types must be a comma separated list of series type ids. For instance, the argument seriestypes=3,7,22 shows series assigned to either of the series types with ids 3, 7 and 22. - seriestags
string
: filter the results by matching on one or more series tags. The supplied list of series tags must be a comma separated list of series tag ids. For instance, the argument seriestags=6,2,11 shows series with either of the series tags with ids 6, 2 and 11.
- id required
Output
- output
array
- items image
scps.get
get a list of DICOM SCPs. Each SCP is a server for receiving DICOM images from e.g. a PACS system.
slicebox_local.scps.get({}, context)
Input
- input
object
- startindex
integer
: start index of returned slice of SCPs - count
integer
: size of returned slice of SCPs
- startindex
Output
- output
array
- items scp
scps.post
add a new SCP for receiving DICOM images
slicebox_local.scps.post({}, context)
Input
- input
object
- scp scp
Output
- output scp
scps.id.delete
shut down and remove the SCP corresponding to the supplied ID
slicebox_local.scps.id.delete({
"id": 0
}, context)
Input
- input
object
- id required
integer
: id of SCP to remove
- id required
Output
Output schema unknown
scus.get
get a list of DICOM SCUs. Each SCU is a client for sending DICOM images to an SCP, e.g. a PACS system.
slicebox_local.scus.get({}, context)
Input
- input
object
- startindex
integer
: start index of returned slice of SCUs - count
integer
: size of returned slice of SCUs
- startindex
Output
- output
array
- items scu
scus.post
add a new SCU for sending DICOM images
slicebox_local.scus.post({}, context)
Input
- input
object
- scu scu
Output
- output scu
scus.id.delete
remove the SCU corresponding to the supplied ID
slicebox_local.scus.id.delete({
"id": 0
}, context)
Input
- input
object
- id required
integer
: id of SCU to remove
- id required
Output
Output schema unknown
scus.id.send.post
send the images with the supplied image IDs to a DICOM SCP using the the SCU with the supplied scu ID
slicebox_local.scus.id.send.post({
"id": 0,
"imageids": []
}, context)
Input
- input
object
- id required
integer
: id of SCU to use for sending - imageids required
array
- items
integer
- items
- id required
Output
Output schema unknown
seriestypes.get
get a list of all added series types. By filtering search results for certain series types, it is easier for applications to ensure that they read images of applicable types.
slicebox_local.seriestypes.get({}, context)
Input
- input
object
- startindex
integer
: start index of returned slice of series types - count
integer
: size of returned slice of series types
- startindex
Output
- output
array
- items seriestype
seriestypes.post
add a new series type
slicebox_local.seriestypes.post({}, context)
Input
- input
object
- SeriesType seriestype
Output
- output seriestype
seriestypes.rules.get
get a list of rules for assigning series types to series. A rule connects to a series of attributes with values and a resulting series type. If a series has the required values of the listed attributes, it is assigned to the series type of the rule.
slicebox_local.seriestypes.rules.get({
"seriestypeid": 0
}, context)
Input
- input
object
- seriestypeid required
integer
: ID of series type to list rules for
- seriestypeid required
Output
- output
array
- items seriestyperule
seriestypes.rules.post
add a new series type rule
slicebox_local.seriestypes.rules.post({}, context)
Input
- input
object
- SeriesTypeRule seriestyperule
Output
- output seriestyperule
seriestypes.rules.updatestatus.get
get the status of the internal process of updating series types for series following a change of series types, rules or attributes.
slicebox_local.seriestypes.rules.updatestatus.get(null, context)
Input
This action has no parameters
Output
- output seriestypeupdatestatus
seriestypes.rules.id.delete
remove the series type rule corresponding to the supplied ID
slicebox_local.seriestypes.rules.id.delete({
"id": 0
}, context)
Input
- input
object
- id required
integer
: id of series type rule to remove
- id required
Output
Output schema unknown
seriestypes.rules.id.attributes.get
get the list of attributes for the series type rule with the supplied ID.
slicebox_local.seriestypes.rules.id.attributes.get({
"id": 0
}, context)
Input
- input
object
- id required
integer
: index of series type rule to list rule attributes for
- id required
Output
- output
array
- items seriestyperuleattribute
seriestypes.rules.id.attributes.post
add a new series type rule attribute
slicebox_local.seriestypes.rules.id.attributes.post({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of rule - SeriesTypeRuleAttribute seriestyperuleattribute
- id required
Output
- output seriestyperuleattribute
seriestypes.rules.ruleId.attributes.attributeId.delete
remove the series type rule attribute corresponding to the supplied series type and attribute IDs
slicebox_local.seriestypes.rules.ruleId.attributes.attributeId.delete({
"ruleId": 0,
"attributeId": 0
}, context)
Input
- input
object
- ruleId required
integer
: id of series type rule for which to remove an attribute - attributeId required
integer
: id of attribute to remove
- ruleId required
Output
Output schema unknown
seriestypes.series.query.post
submit a query for seriestypes for a list of series
slicebox_local.seriestypes.series.query.post({
"query": {
"ids": []
}
}, context)
Input
- input
object
- query required idsquery
Output
- output seriesidseriestypesresult
seriestypes.id.delete
remove the series type corresponding to the supplied ID
slicebox_local.seriestypes.id.delete({
"id": 0
}, context)
Input
- input
object
- id required
integer
: id of series type to remove
- id required
Output
Output schema unknown
seriestypes.id.put
request an asynchronous update of all series, labelling appropriate series with the series type corresponding to the supplied ID.
slicebox_local.seriestypes.id.put({
"id": 0
}, context)
Input
- input
object
- id required
integer
: id of series type to update series labels for
- id required
Output
Output schema unknown
sources.get
Returns a list of currently available data sources. Possible source types are user - data imported by an API call by a user, box - data received from a remote box, directory - data imported via a watched directory, import - data imported into slicebox using import sessions, or scp - data received from a PACS.
slicebox_local.sources.get(null, context)
Input
This action has no parameters
Output
- output
array
- items source
system.health.get
No-op route for checking whether the service is alive or not
slicebox_local.system.health.get(null, context)
Input
This action has no parameters
Output
Output schema unknown
system.stop.post
stop and shut down slicebox
slicebox_local.system.stop.post(null, context)
Input
This action has no parameters
Output
Output schema unknown
transactions.token.image.post
add an image (dataset) as part of a transaction. This method is used when sending images using the push method to a public slicebox.
slicebox_local.transactions.token.image.post({
"token": "",
"transactionid": 0,
"sequencenumber": 0,
"totalimagecount": 0,
"dataset": null
}, context)
Input
- input
object
- token required
string
: authentication token identifying the current box-to-box connection - transactionid required
integer
: the ID of the client's outgoing transaction - sequencenumber required
integer
: the index of this image in the transaction - totalimagecount required
integer
: the total number of images in this transaction
- token required
Output
Output schema unknown
transactions.token.outgoing.get
fetch an image from the connected box as part of a transaction. This method is used when sending images using the poll method from a public slicebox.
slicebox_local.transactions.token.outgoing.get({
"token": "",
"transactionid": 0,
"imageid": 0
}, context)
Input
- input
object
- token required
string
: authentication token identifying the current box-to-box connection - transactionid required
integer
: the ID of the outgoing transaction - imageid required
integer
: the ID of the outgoing transaction image
- token required
Output
Output schema unknown
transactions.token.outgoing.done.post
signal that the supplied outgoing transaction and image was successfully received and can be marked as sent. This method is used when sending images using the poll method from a public slicebox.
slicebox_local.transactions.token.outgoing.done.post({
"token": "",
"outgoing entry and image information block": {}
}, context)
Input
- input
object
- token required
string
: authentication token identifying the current box-to-box connection - outgoing entry and image information block required outgoingTransactionImage
- token required
Output
Output schema unknown
transactions.token.outgoing.failed.post
signal that the image corresponding to the supplied outgoing transaction and image could not be read or stored properly on the receiving side, and that the transaction should be marked as failed.
slicebox_local.transactions.token.outgoing.failed.post({
"token": "",
"outgoing transaction and image, and error message": {}
}, context)
Input
- input
object
- token required
string
: authentication token identifying the current box-to-box connection - outgoing transaction and image, and error message required failedOutgoingTransactionImage
- token required
Output
Output schema unknown
transactions.token.outgoing.poll.get
get next outgoing transaction and image (information on the next image that the connected box wishes to send to you), if any. This method is used when sending images using the poll method from a public slicebox.
slicebox_local.transactions.token.outgoing.poll.get({
"token": ""
}, context)
Input
- input
object
- token required
string
: authentication token identifying the current box-to-box connection
- token required
Output
- output
array
- items outgoingTransactionImage
transactions.token.status.get
get the status of the remote incoming transaction with the supplied transaction ID
slicebox_local.transactions.token.status.get({
"token": "",
"transactionid": 0
}, context)
Input
- input
object
- token required
string
: authentication token identifying the current box-to-box connection - transactionid required
integer
: the ID of the client's outgoing transaction
- token required
Output
Output schema unknown
transactions.token.status.put
update the status of the transaction with the supplied ID
slicebox_local.transactions.token.status.put({
"token": "",
"transactionid": 0,
"transaction status": ""
}, context)
Input
- input
object
- token required
string
: authentication token identifying the current box-to-box connection - transactionid required
integer
: the ID of the client's outgoing transaction - transaction status required
string
- token required
Output
Output schema unknown
users.get
Returns all users of slicebox
slicebox_local.users.get({}, context)
Input
- input
object
- startindex
integer
: start index of returned slice of users - count
integer
: size of returned slice of users
- startindex
Output
- output
array
- items user
users.post
Creates a new user. Dupicates are accepted but not added.
slicebox_local.users.post({
"user": {}
}, context)
Input
- input
object
- user required newUser
Output
- output user
users.current.get
obtain information on the currently logged in user as specified by the supplied session cookie, IP address and user agent.
slicebox_local.users.current.get(null, context)
Input
This action has no parameters
Output
- output userInfo
users.login.post
Obtain a session cookie that can be used to authenticate future API calls from the present IP address and with the present user agent.
slicebox_local.users.login.post({
"UserPass": {}
}, context)
Input
- input
object
- UserPass required userPass
Output
Output schema unknown
users.logout.post
Logout the current user by responding with a delete cookie header removing the session cookie for this user.
slicebox_local.users.logout.post(null, context)
Input
This action has no parameters
Output
Output schema unknown
users.id.delete
deletes a single user based on the ID supplied
slicebox_local.users.id.delete({
"id": 0
}, context)
Input
- input
object
- id required
integer
: ID of user to delete
- id required
Output
Output schema unknown
Definitions
anonymizationData
- anonymizationData
object
- profile anonymizationProfile
- tagValues
array
- items tagValue
anonymizationKey
- anonymizationKey
object
- anonPatientID
string
- anonPatientName
string
- anonSOPInstanceUID
string
- anonSeriesInstanceUID
string
- anonStudyInstanceUID
string
- created
integer
- id
integer
- imageId
integer
- patientID
string
- patientName
string
- seriesInstanceUID
string
- sopInstanceUID
string
- studyInstanceUID
string
- anonPatientID
anonymizationKeyQuery
- anonymizationKeyQuery
object
- count required
integer
- order queryOrder
- queryProperties required
array
- items queryProperty
- startIndex required
integer
- count required
anonymizationKeyValue
- anonymizationKeyValue
object
- anonymizationKeyId
integer
- anonymizedValue
string
- id
integer
- tagPath tagPathTag
- value
string
- anonymizationKeyId
anonymizationProfile
- anonymizationProfile
object
- options
array
- items confidentialityOption
- options
box
- box
object
- baseUrl
string
- id
integer
- name
string
- online
boolean
- profile anonymizationProfile
- sendMethod
string
- token
string
- baseUrl
bulkAnonymizationData
- bulkAnonymizationData
object
- imageTagValuesSet
array
- items imageTagValues
- profile anonymizationProfile
- imageTagValuesSet
confidentialityOption
- confidentialityOption
object
- description
string
- name
string
- rank
integer
- title
string
- description
destination
- destination
object
- destinationId
integer
- destinationName
string
- destinationType
string
- destinationId
dicomPropertyValue
- dicomPropertyValue
object
- value
string
- value
exportSetId
- exportSetId
object
- value
integer
- value
failedOutgoingTransactionImage
- failedOutgoingTransactionImage
object
- message
string
- transactionImage outgoingTransactionImage
- message
filter
- filter
object
- id
integer
- name
string
- tagFilterType
string
- tags
array
- items tagPathTag
- id
flatSeries
forwardingrule
- forwardingrule
object
- destination destination
- id
integer
- keepImages
boolean
- source source
idsquery
- idsquery
object
- ids required
array
- items
integer
- items
- ids required
image
- image
object
- id
integer
- imageType dicomPropertyValue
- instanceNumber dicomPropertyValue
- seriesId
integer
- sopInstanceUID dicomPropertyValue
- id
imageAttribute
- imageAttribute
object
- depth
integer
- element
string
- group
string
- length
integer
- multiplicity
integer
- name
string
- path
string
- value
string
- vr
string
- depth
imageInformation
- imageInformation
object
- frameIndex
integer
- maximumPixelValue
integer
- minimumPixelValue
integer
- numberOfFrames
integer
- frameIndex
imageTagValues
- imageTagValues
object
- imageId
integer
- tagValues
array
- items tagValue
- imageId
importSession
- importSession
object
- created
integer
- filesAdded
integer
- filesImported
integer
- filesRejected
integer
- id
integer
- lastUpdated
integer
- name
string
- user
string
- userId
integer
- created
incomingTransaction
- incomingTransaction
object
- boxId
integer
- boxName
string
- id
integer
- outgoingTransactionId
integer
- receivedImageCount
integer
- status
string
- totalImageCount
integer
- updated
integer
- boxId
logEntry
- logEntry
object
- created
integer
- entryType
string
- id
integer
- message
string
- subject
string
- created
newUser
- newUser
object
- password
string
- role
string
- user
string
- password
outgoingImage
- outgoingImage
object
- id
integer
- imageId
integer
- outgoingTransactionId
integer
- sent
boolean
- sequenceNumber
integer
- id
outgoingTransaction
- outgoingTransaction
object
- boxId
integer
- boxName
string
- id
integer
- profile anonymizationProfile
- sentImageCount
integer
- status
string
- totalImageCount
integer
- updated
integer
- boxId
outgoingTransactionImage
- outgoingTransactionImage
object
- image outgoingImage
- transaction outgoingTransaction
patient
- patient
object
- id
integer
- patientBirthDate dicomPropertyValue
- patientID dicomPropertyValue
- patientName dicomPropertyValue
- patientSex dicomPropertyValue
- id
query
- query
object
- count required
integer
- filters queryFilters
- order queryOrder
- queryProperties required
array
- items queryProperty
- startIndex required
integer
- count required
queryFilters
- queryFilters
object
- seriesTagIds
array
- items
integer
- items
- seriesTypeIds
array
- items
integer
- items
- sourceRefs
array
- items sourceRef
- seriesTagIds
queryOrder
- queryOrder
object
- orderAscending
boolean
- orderBy
string
- orderAscending
queryProperty
- queryProperty
object
- operator
string
- propertyName
string
- propertyValue
string
- operator
remoteBox
- remoteBox
object
- baseUrl
string
- defaultProfile anonymizationProfile
- name
string
- baseUrl
remoteBoxConnectionData
- remoteBoxConnectionData
object
- defaultProfile anonymizationProfile
- name
string
scp
- scp
object
- aeTitle
string
- id
integer
- name
string
- port
integer
- aeTitle
scu
- scu
object
- aeTitle
string
- host
string
- id
integer
- name
string
- port
integer
- aeTitle
series
- series
object
- bodyPartExamined dicomPropertyValue
- frameOfReferenceUID dicomPropertyValue
- id
integer
- manufacturer dicomPropertyValue
- modality dicomPropertyValue
- protocolName dicomPropertyValue
- seriesDate dicomPropertyValue
- seriesDescription dicomPropertyValue
- seriesInstanceUID dicomPropertyValue
- stationName dicomPropertyValue
- studyId
integer
seriesidseriestype
- seriesidseriestype
object
- seriesid
integer
- seriestype seriestype
- seriesid
seriesidseriestypesresult
- seriesidseriestypesresult
object
- seriesidseriestypes
array
- items seriesidseriestype
- seriesidseriestypes
seriestag
- seriestag
object
- id
integer
- name
string
- id
seriestype
- seriestype
object
- id
integer
- name
string
- id
seriestyperule
- seriestyperule
object
- id
integer
- seriesTypeId
integer
- id
seriestyperuleattribute
- seriestyperuleattribute
object
- element required
integer
- group required
integer
- id required
integer
- path
string
- seriesTypeRuleId required
integer
- value required
string
- element required
seriestypeupdatestatus
- seriestypeupdatestatus
object
- running required
boolean
- running required
source
- source
object
- sourceId
integer
- sourceName
string
- sourceType
string
- sourceId
sourceRef
- sourceRef
object
- sourceId
integer
- sourceType
string
- sourceId
sourceTagFilter
- sourceTagFilter
object
- id
integer
- sourceId
integer
- sourceType
string
- tagFilterId
integer
- id
study
- study
object
- accessionNumber dicomPropertyValue
- id
integer
- patientAge dicomPropertyValue
- patientId
integer
- studyDate dicomPropertyValue
- studyDescription dicomPropertyValue
- studyID dicomPropertyValue
- studyInstanceUID dicomPropertyValue
tagMapping
- tagMapping
object
- tagPath tagPathTag
- value
string
tagPathTag
- tagPathTag
object
- previous tagPathTrunk
- tag
integer
tagPathTrunk
- tagPathTrunk
object
- item
string
- previous tagPathTrunk
- tag
integer
- item
tagValue
- tagValue
object
- tagPath tagPathTag
- value
string
user
- user
object
- hashedPassword
string
- id required
integer
- role required
string
- user required
string
- hashedPassword
userInfo
- userInfo
object
- id
integer
- role
string
- user
string
- id
userPass
- userPass
object
- pass
string
- user
string
- pass
watchedDirectory
- watchedDirectory
object
- id
integer
- path
string
- id