New THETA API version 2.1


#1

There is a new THETA API version 2.1. The version 2.0 API still works for now, but it is recommended that you update your apps to ensure future compatibility.

App developers: Be aware these changes may affect your previously-published app in the future and it is your responsibility to make corresponding changes to either handle both versions or remind camera owners to update their firmware.

If you want to compare the different documentation versions, you can toggle between the two different versions using the green rectangle on the main API reference page.

In your program, you can set the API version with camera.setOptions.

{
    "name": "camera.setOptions",
    "parameters": {
        "sessionId": "SID_0001",
        "options": {
            "clientVersion": 2
        }
    }
}

One of the major changes is that you do not have to specify the sessionId for command execution.


version 2.0

{
    "name": "camera.takePicture",
    "parameters": {
    	"sessionId": "SID_0001"
    }
}

version 2.1

{
    "name": "camera.takePicture",
    "parameters": {
    }
}

The _listAll command of version 2.0 has been replaced with listFiles

Example (version 2.1)

{
    "name": "camera.listFiles",
    "parameters": {
    	"fileType": "all",
    	"entryCount": 3,
        "maxThumbSize": 640
    }
}

This means that that there are now four API versions in current use for the THETA, 3 for the THETA S and one for the THETA m15.

For the THETA S, the three APIs are:

  1. API v2.0
  2. API v2.1 - which is often referred to as API v2 reference (there doesn’t appear to be a clear difference between v2.0 and v2.1 in some of the reference documentation)
  3. v2 USB API - this is based off of the MTP 1.1 specification not the OSC specification

You should use the API v2.1 (the WiFi) one for your applications. There is no reason to use v2.0. v2 USB API can be used if you application works better with a USB connection, which is probably only the case for an application with specialized hardware like a Raspberry Pi Zero controller.

THETA API v2.1 is compliant with Open Spherical Camera (OSC) API level 2. Here are the differences between OSC API level 1 and OSC API level 2

API level 2 key changes


Result of GET to http://192.168.1.1/osc/info

Result of POST to 192.168.1.1/osc/state


#2

Can you tell me how to go about updating to 2.1?


#3

Nevr mind - I got a pop-up with install option. All good


#4

Yay, I love it when things work themselves out. :astonished:


#5

…though actually, what do you mean by “got a pop-up”? Can you describe this install option you’re talking about?