diff Sphinx/source/faq/rest-samples.rst @ 0:901e8961f46e

initial commit
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 22 Apr 2016 12:57:38 +0200
parents
children 02399e86f046
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Sphinx/source/faq/rest-samples.rst	Fri Apr 22 12:57:38 2016 +0200
@@ -0,0 +1,86 @@
+.. highlight:: bash
+.. _rest-samples:
+
+Finding samples for the REST API
+================================
+
+* This "Orthanc Book" proposes a :ref:`number of samples showing how
+  to use the REST API <rest>` of Orthanc.
+* Many working examples written in Python are `available in the source
+  distribution
+  <https://bitbucket.org/sjodogne/orthanc/src/default/Resources/Samples/Python/>`__.
+* If you cannot find an example for some feature in this manual or in
+  the Python examples, please check the `publicly available
+  integration tests
+  <https://bitbucket.org/sjodogne/orthanc-tests/src/default/Tests/Tests.py>`__
+  that span most of the REST API.
+* Samples for the deprecated APIs are available below.
+
+
+
+Deprecated APIs
+---------------
+
+You will find below code snippets for APIs that have been deprecated
+over the releases of Orthanc. They are reproduced here for backward
+compatibility and should not be used in new developments.
+
+
+.. _deprecated-find-scu:
+
+C-Find SCU (Deprecated)
+^^^^^^^^^^^^^^^^^^^^^^^
+
+1. Retrieve the PatientID::
+
+     $ curl http://localhost:8042/modalities/pacs/find-patient -X POST -d '{"PatientName":"JOD*","PatientSex":"M"}'
+
+2. Retrieve the studies of this patient (using the "PatientID" returned from Step 1)::
+
+     $ curl http://localhost:8042/modalities/pacs/find-study -X POST -d '{"PatientID":"0555643F"}'
+
+3. Retrieve the series of one study (using the "PatientID" from Step 1, and the "StudyInstanceUID" from Step 2)::
+
+     $ curl http://localhost:8042/modalities/pacs/find-series -X POST -d '{"PatientID":"0555643F","StudyInstanceUID":"1.2.840.113704.1.111.276
+
+You will have to define the modality "pacs" in the :ref:`configuration file
+<configuration>` of Orthanc (under the section ``DicomModalities``).
+
+*Note:* This API has been superseded by the ``/modalities/.../query``
+URI. Please check the ``test_rest_query_retrieve`` `integration test
+<https://bitbucket.org/sjodogne/orthanc-tests/src/default/Tests/Tests.py>`__.
+
+
+Using Orthanc to Ease WADO Querying (Deprecated)
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+As of Orthanc 0.6.1, it will be possible to use Orthanc to easily
+gather the three identifiers that are required to run a `WADO query
+<ftp://medical.nema.org/medical/dicom/2006/06_18pu.pdf>`__ against a
+remote modality (without storing the files inside Orthanc). These
+identifiers are:
+
+* StudyInstanceUID (0020,000d),
+* SeriesInstanceUID (0020,000e),
+* ObjectUID, that exactly corresponds to the SOPInstanceUID tag
+  (0008,0018) (cf. the `WADO specification
+  <ftp://medical.nema.org/medical/dicom/2006/06_18pu.pdf>`__, Section
+  8.1.4).
+
+The trick consists in using the experimental C-Find SCU API, going down to the instance level::
+
+    $ curl http://localhost:8042/modalities/pacs/find-patient -X POST -d '{"PatientName":"JOD*","PatientSex":"M"}'
+    $ curl http://localhost:8042/modalities/pacs/find-study -X POST -d '{"PatientID":"0555643F"}'
+    $ curl http://localhost:8042/modalities/pacs/find-series -X POST -d '{"PatientID":"0555643F","StudyInstanceUID":"1.2.840.113704.1.111.2768.1239195678.57"}' 
+    $ curl http://localhost:8042/modalities/pacs/find-instance -X POST -d '{"PatientID":"0555643F","StudyInstanceUID":"1.2.840.113704.1.111.2768.1239195678.57","SeriesInstanceUID":"1.3.46.670589.28.2.7.2200939417.2.13493.0.1239199523"}'
+
+The first three steps are described in this :ref:`other FAQ entry
+<deprecated-find-scu>`. The fourth step retrieves the list of the
+instances of the series. The latter query was not possible until
+Orthanc 0.6.1. As a result of this sequence of four commands, the
+StudyInstanceUID, SeriesInstanceUID and SOPInstanceUID are readily
+available for each instance of the series.
+
+*Note:* This API has been superseded by the ``/modalities/.../query``
+URI. Please check the ``test_rest_query_retrieve`` `integration test
+<https://bitbucket.org/sjodogne/orthanc-tests/src/default/Tests/Tests.py>`__.