REST format changes in 3.x

Old format example (2.x)

<?xml version="1.0" encoding="UTF-8"?>
<response>
  <header>
    <item_count>1</item_count>
    <item_count_total>1</item_count_total>
    <item_offset>0</item_offset>
    <request_class>mediamosa_rest_call_mediamosa_version</request_class>
    <request_matched_method>GET</request_matched_method>
    <request_matched_uri>/version</request_matched_uri>
    <request_query_count>0</request_query_count>
    <request_result>success</request_result>
    <request_result_description/>
    <request_result_id>601</request_result_id>
    <request_uri>[GET] version?mediamosa_version=2.3.0</request_uri>
    <version>3.0.1.1706</version>
    <request_process_time>0.1335</request_process_time>
  </header>
  <items>
    <item>
      <version>3.0.1</version>
      <build>1706</build>
      <info/>
    </item>
  </items>
</response>

New format example (3.x)

<?xml version="1.0" encoding="UTF-8"?>
<response version="3.0" xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/">
  <header>
    <opensearch:itemsPerPage>1</opensearch:itemsPerPage>
    <opensearch:totalResults>0</opensearch:totalResults>
    <opensearch:startIndex>0</opensearch:startIndex>
    <request>
      <resultId>601</resultId>
      <result>success</result>
      <resultDescription></resultDescription>
      <method>GET</method>
      <uri>/version?mediamosa_version=3.0.0</uri>
      <time>0.1071</time>
    </request>
    <debug>
      <class>mediamosa_rest_call_mediamosa_version</class>
      <mediamosaVersion>3.0.0</mediamosaVersion>
      <matched>
        <method>GET</method>
        <uri>/version</uri>
      </matched>
      <clientApplication>
        <appId>0</appId>
          <appIds>0</appIds>
        <timezone>Europe/Amsterdam</timezone>
      </clientApplication>
      <errors/>
    </debug>
    <version>3.0.1.1706</version>
  </header>
  <items>
    <item>
      <version>3.0.1</version>
      <build>1706</build>
      <info/>
    </item>
  </items>
</response>

Changes

Old -> New

  • item_count -> opensearch:itemsPerPage
  • item_count_total ->opensearch:totalResults
  • item_offset -> opensearch:startIndex
  • request_class -> debug.class
  • request_matched_method -> request.method
  • request_matched_uri -> request.uri
  • request_query_count -> ---
  • request_result -> request.result
  • request_result_description -> request.resultDescription
  • request_result_id -> request.resultId
  • request_uri -> ---
  • version -> version
  • request_process_time -> request.time

Debug

The debug is a completly new part in the header with debug information for developers. Also the debug information is only in the header included when MediaMosa debug level is set on low or higher on the global settings page. By default this debug information is not included in the output.

Items

The items part wasn't changed.

Compatibility with previous version 2.x and lower

You can setup the REST version of you MediaMosa on the admin/mediamosa/config/global page in the miscellaneous fieldset. This is the global setting for all rest calls. This setting is used when the client application has selected to use the global value (by default). This setting is also overridden when the REST call is called with 'mediamosa_version' variable. See below for more information.

You can also set up the REST output version per client application on your client application page: admin/mediamosa/config/app. Click to Edit, and check "Select MediaMosa version" in the Client application fieldset.

REST calls that supply the 'mediamosa_version' parameter can force the output in that version. F.e. /asset/?mediamosa=2.2 will force the output of the REST call /asset into version 2.2.