Skip to main content

Protobuf Documentation

Enums​

EnumCOHNNetworkState​

Source Protobuf File

NameValueDescription
COHN_STATE_Init0
COHN_STATE_Error1
COHN_STATE_Exit2
COHN_STATE_Idle5
COHN_STATE_NetworkConnected27
COHN_STATE_NetworkDisconnected28
COHN_STATE_ConnectingToNetwork29
COHN_STATE_Invalid30

EnumCOHNStatus​

Source Protobuf File

NameValueDescription
COHN_UNPROVISIONED0
COHN_PROVISIONED1

EnumCameraControlStatus​

Source Protobuf File

NameValueDescription
CAMERA_IDLE0
CAMERA_CONTROL1Can only be set by camera, not by app or third party
CAMERA_EXTERNAL_CONTROL2
CAMERA_COF_SETUP3Set by the camera when it is on the CAH (Camera As a Hub) / COF (Cloud Offload) setup screen

EnumFlatMode​

Source Protobuf File

NameValueDescription
FLAT_MODE_UNKNOWN-1
FLAT_MODE_PLAYBACK4
FLAT_MODE_SETUP5
FLAT_MODE_VIDEO12
FLAT_MODE_TIME_LAPSE_VIDEO13
FLAT_MODE_LOOPING15
FLAT_MODE_PHOTO_SINGLE16
FLAT_MODE_PHOTO17
FLAT_MODE_PHOTO_NIGHT18
FLAT_MODE_PHOTO_BURST19
FLAT_MODE_TIME_LAPSE_PHOTO20
FLAT_MODE_NIGHT_LAPSE_PHOTO21
FLAT_MODE_BROADCAST_RECORD22
FLAT_MODE_BROADCAST_BROADCAST23
FLAT_MODE_TIME_WARP_VIDEO24
FLAT_MODE_LIVE_BURST25
FLAT_MODE_NIGHT_LAPSE_VIDEO26
FLAT_MODE_SLOMO27
FLAT_MODE_IDLE28
FLAT_MODE_VIDEO_STAR_TRAIL29
FLAT_MODE_VIDEO_LIGHT_PAINTING30
FLAT_MODE_VIDEO_LIGHT_TRAIL31
FLAT_MODE_VIDEO_BURST_SLOMO32

EnumLens​

Source Protobuf File

NameValueDescription
LENS_WIDE0
LENS_SUPERVIEW3
LENS_LINEAR4

EnumLiveStreamError​

Source Protobuf File

NameValueDescription
LIVE_STREAM_ERROR_NONE0No error (success)
LIVE_STREAM_ERROR_NETWORK1General network error during the stream
LIVE_STREAM_ERROR_CREATESTREAM2Startup error: bad URL or valid with live stream server
LIVE_STREAM_ERROR_OUTOFMEMORY3Not enough memory on camera to complete task
LIVE_STREAM_ERROR_INPUTSTREAM4Failed to get stream from low level camera system
LIVE_STREAM_ERROR_INTERNET5No internet access detected on startup of streamer
LIVE_STREAM_ERROR_OSNETWORK6Error occured in linux networking stack. Usually means the server closed the connection
LIVE_STREAM_ERROR_SELECTEDNETWORKTIMEOUT7Timed out attemping to connect to the wifi network when attemping live stream
LIVE_STREAM_ERROR_SSL_HANDSHAKE8SSL handshake failed (commonly caused due to incorrect time / time zone)
LIVE_STREAM_ERROR_CAMERA_BLOCKED9Low level camera system rejected attempt to start live stream
LIVE_STREAM_ERROR_UNKNOWN10Unknown
LIVE_STREAM_ERROR_SD_CARD_FULL40Can not perform livestream because sd card is full
LIVE_STREAM_ERROR_SD_CARD_REMOVED41Livestream stopped because sd card was removed

EnumLiveStreamStatus​

Source Protobuf File

NameValueDescription
LIVE_STREAM_STATE_IDLE0Initial status. Livestream has not yet been configured
LIVE_STREAM_STATE_CONFIG1Livestream is being configured
LIVE_STREAM_STATE_READY2Livestream has finished configuration and is ready to start streaming
LIVE_STREAM_STATE_STREAMING3Livestream is actively streaming
LIVE_STREAM_STATE_COMPLETE_STAY_ON4Live stream is exiting. No errors occured.
LIVE_STREAM_STATE_FAILED_STAY_ON5Live stream is exiting. An error occurred.
LIVE_STREAM_STATE_RECONNECTING6An error occurred during livestream and stream is attempting to reconnect.
LIVE_STREAM_STATE_UNAVAILABLE7Live stream setup is unavailable due to camera lens configuration

EnumPairingFinishState​

Source Protobuf File

NameValueDescription
SUCCESS0
FAILED1

EnumPresetGroup​

Source Protobuf File

NameValueDescription
PRESET_GROUP_ID_VIDEO1000
PRESET_GROUP_ID_PHOTO1001
PRESET_GROUP_ID_TIMELAPSE1002
PRESET_GROUP_ID_GENERAL2000

EnumPresetGroupIcon​

Source Protobuf File

NameValueDescription
PRESET_GROUP_VIDEO_ICON_ID0
PRESET_GROUP_PHOTO_ICON_ID1
PRESET_GROUP_TIMELAPSE_ICON_ID2
PRESET_GROUP_LONG_BAT_VIDEO_ICON_ID3
PRESET_GROUP_ENDURANCE_VIDEO_ICON_ID4
PRESET_GROUP_MAX_VIDEO_ICON_ID5
PRESET_GROUP_MAX_PHOTO_ICON_ID6
PRESET_GROUP_MAX_TIMELAPSE_ICON_ID7
PRESET_GROUP_ND_MOD_VIDEO_ICON_ID8
PRESET_GROUP_ND_MOD_PHOTO_ICON_ID9
PRESET_GROUP_ND_MOD_TIMELAPSE_ICON_ID10

EnumPresetIcon​

Source Protobuf File

NameValueDescription
PRESET_ICON_VIDEO0
PRESET_ICON_ACTIVITY1
PRESET_ICON_CINEMATIC2
PRESET_ICON_PHOTO3
PRESET_ICON_LIVE_BURST4
PRESET_ICON_BURST5
PRESET_ICON_PHOTO_NIGHT6
PRESET_ICON_TIMEWARP7
PRESET_ICON_TIMELAPSE8
PRESET_ICON_NIGHTLAPSE9
PRESET_ICON_SNAIL10
PRESET_ICON_VIDEO_211
PRESET_ICON_PHOTO_213
PRESET_ICON_PANORAMA14
PRESET_ICON_BURST_215
PRESET_ICON_TIMEWARP_216
PRESET_ICON_TIMELAPSE_217
PRESET_ICON_CUSTOM18
PRESET_ICON_AIR19
PRESET_ICON_BIKE20
PRESET_ICON_EPIC21
PRESET_ICON_INDOOR22
PRESET_ICON_MOTOR23
PRESET_ICON_MOUNTED24
PRESET_ICON_OUTDOOR25
PRESET_ICON_POV26
PRESET_ICON_SELFIE27
PRESET_ICON_SKATE28
PRESET_ICON_SNOW29
PRESET_ICON_TRAIL30
PRESET_ICON_TRAVEL31
PRESET_ICON_WATER32
PRESET_ICON_LOOPING33
PRESET_ICON_STARS34
PRESET_ICON_ACTION35
PRESET_ICON_FOLLOW_CAM36
PRESET_ICON_SURF37
PRESET_ICON_CITY38
PRESET_ICON_SHAKY39
PRESET_ICON_CHESTY40
PRESET_ICON_HELMET41
PRESET_ICON_BITE42
PRESET_ICON_CUSTOM_CINEMATIC43
PRESET_ICON_VLOG44
PRESET_ICON_FPV45
PRESET_ICON_HDR46
PRESET_ICON_LANDSCAPE47
PRESET_ICON_LOG48
PRESET_ICON_CUSTOM_SLOMO49
PRESET_ICON_TRIPOD50
PRESET_ICON_MAX_VIDEO55
PRESET_ICON_MAX_PHOTO56
PRESET_ICON_MAX_TIMEWARP57
PRESET_ICON_BASIC58
PRESET_ICON_ULTRA_SLO_MO59
PRESET_ICON_STANDARD_ENDURANCE60
PRESET_ICON_ACTIVITY_ENDURANCE61
PRESET_ICON_CINEMATIC_ENDURANCE62
PRESET_ICON_SLOMO_ENDURANCE63
PRESET_ICON_STATIONARY_164
PRESET_ICON_STATIONARY_265
PRESET_ICON_STATIONARY_366
PRESET_ICON_STATIONARY_467
PRESET_ICON_SIMPLE_SUPER_PHOTO70
PRESET_ICON_SIMPLE_NIGHT_PHOTO71
PRESET_ICON_HIGHEST_QUALITY_VIDEO73
PRESET_ICON_STANDARD_QUALITY_VIDEO74
PRESET_ICON_BASIC_QUALITY_VIDEO75
PRESET_ICON_STAR_TRAIL76
PRESET_ICON_LIGHT_PAINTING77
PRESET_ICON_LIGHT_TRAIL78
PRESET_ICON_FULL_FRAME79
PRESET_ICON_EASY_MAX_VIDEO80
PRESET_ICON_EASY_MAX_PHOTO81
PRESET_ICON_EASY_MAX_TIMEWARP82
PRESET_ICON_EASY_MAX_STAR_TRAIL83
PRESET_ICON_EASY_MAX_LIGHT_PAINTING84
PRESET_ICON_EASY_MAX_LIGHT_TRAIL85
PRESET_ICON_MAX_STAR_TRAIL89
PRESET_ICON_MAX_LIGHT_PAINTING90
PRESET_ICON_MAX_LIGHT_TRAIL91
PRESET_ICON_EASY_STANDARD_PROFILE100
PRESET_ICON_EASY_HDR_PROFILE101
PRESET_ICON_BURST_SLOMO102
PRESET_ICON_SPORT_POV124
PRESET_ICON_TIMELAPSE_PHOTO1000
PRESET_ICON_NIGHTLAPSE_PHOTO1001

EnumPresetTitle​

Source Protobuf File

NameValueDescription
PRESET_TITLE_ACTIVITY0
PRESET_TITLE_STANDARD1
PRESET_TITLE_CINEMATIC2
PRESET_TITLE_PHOTO3
PRESET_TITLE_LIVE_BURST4
PRESET_TITLE_BURST5
PRESET_TITLE_NIGHT6
PRESET_TITLE_TIME_WARP7
PRESET_TITLE_TIME_LAPSE8
PRESET_TITLE_NIGHT_LAPSE9
PRESET_TITLE_VIDEO10
PRESET_TITLE_SLOMO11
PRESET_TITLE_PHOTO_213
PRESET_TITLE_PANORAMA14
PRESET_TITLE_TIME_WARP_216
PRESET_TITLE_CUSTOM18
PRESET_TITLE_AIR19
PRESET_TITLE_BIKE20
PRESET_TITLE_EPIC21
PRESET_TITLE_INDOOR22
PRESET_TITLE_MOTOR23
PRESET_TITLE_MOUNTED24
PRESET_TITLE_OUTDOOR25
PRESET_TITLE_POV26
PRESET_TITLE_SELFIE27
PRESET_TITLE_SKATE28
PRESET_TITLE_SNOW29
PRESET_TITLE_TRAIL30
PRESET_TITLE_TRAVEL31
PRESET_TITLE_WATER32
PRESET_TITLE_LOOPING33
PRESET_TITLE_STARS34
PRESET_TITLE_ACTION35
PRESET_TITLE_FOLLOW_CAM36
PRESET_TITLE_SURF37
PRESET_TITLE_CITY38
PRESET_TITLE_SHAKY39
PRESET_TITLE_CHESTY40
PRESET_TITLE_HELMET41
PRESET_TITLE_BITE42
PRESET_TITLE_CUSTOM_CINEMATIC43
PRESET_TITLE_VLOG44
PRESET_TITLE_FPV45
PRESET_TITLE_HDR46
PRESET_TITLE_LANDSCAPE47
PRESET_TITLE_LOG48
PRESET_TITLE_CUSTOM_SLOMO49
PRESET_TITLE_TRIPOD50
PRESET_TITLE_BASIC58
PRESET_TITLE_ULTRA_SLO_MO59
PRESET_TITLE_STANDARD_ENDURANCE60
PRESET_TITLE_ACTIVITY_ENDURANCE61
PRESET_TITLE_CINEMATIC_ENDURANCE62
PRESET_TITLE_SLOMO_ENDURANCE63
PRESET_TITLE_STATIONARY_164
PRESET_TITLE_STATIONARY_265
PRESET_TITLE_STATIONARY_366
PRESET_TITLE_STATIONARY_467
PRESET_TITLE_SIMPLE_VIDEO68
PRESET_TITLE_SIMPLE_TIME_WARP69
PRESET_TITLE_SIMPLE_SUPER_PHOTO70
PRESET_TITLE_SIMPLE_NIGHT_PHOTO71
PRESET_TITLE_SIMPLE_VIDEO_ENDURANCE72
PRESET_TITLE_HIGHEST_QUALITY73
PRESET_TITLE_EXTENDED_BATTERY74
PRESET_TITLE_LONGEST_BATTERY75
PRESET_TITLE_STAR_TRAIL76
PRESET_TITLE_LIGHT_PAINTING77
PRESET_TITLE_LIGHT_TRAIL78
PRESET_TITLE_FULL_FRAME79
PRESET_TITLE_STANDARD_QUALITY_VIDEO82
PRESET_TITLE_BASIC_QUALITY_VIDEO83
PRESET_TITLE_HIGHEST_QUALITY_VIDEO93
PRESET_TITLE_USER_DEFINED_CUSTOM_NAME94
PRESET_TITLE_EASY_STANDARD_PROFILE99
PRESET_TITLE_EASY_HDR_PROFILE100
PRESET_TITLE_BURST_SLOMO106
PRESET_TITLE_4_3_VIDEO125
PRESET_TITLE_16_9_VIDEO126
PRESET_TITLE_16_9_SLOMO127
PRESET_TITLE_TIME_LAPSE_VIDEO131
PRESET_TITLE_TIME_LAPSE_PHOTO132
PRESET_TITLE_NIGHT_LAPSE_VIDEO133
PRESET_TITLE_NIGHT_LAPSE_PHOTO134
PRESET_TITLE_SUPERVIEW143

EnumProvisioning​

Source Protobuf File

NameValueDescription
PROVISIONING_UNKNOWN0
PROVISIONING_NEVER_STARTED1
PROVISIONING_STARTED2
PROVISIONING_ABORTED_BY_SYSTEM3
PROVISIONING_CANCELLED_BY_USER4
PROVISIONING_SUCCESS_NEW_AP5
PROVISIONING_SUCCESS_OLD_AP6
PROVISIONING_ERROR_FAILED_TO_ASSOCIATE7
PROVISIONING_ERROR_PASSWORD_AUTH8
PROVISIONING_ERROR_EULA_BLOCKING9
PROVISIONING_ERROR_NO_INTERNET10
PROVISIONING_ERROR_UNSUPPORTED_TYPE11

EnumRegisterLiveStreamStatus​

Source Protobuf File

NameValueDescription
REGISTER_LIVE_STREAM_STATUS_STATUS1
REGISTER_LIVE_STREAM_STATUS_ERROR2
REGISTER_LIVE_STREAM_STATUS_MODE3
REGISTER_LIVE_STREAM_STATUS_BITRATE4

EnumRegisterPresetStatus​

Source Protobuf File

NameValueDescription
REGISTER_PRESET_STATUS_PRESET1Send notification when properties of a preset change
REGISTER_PRESET_STATUS_PRESET_GROUP_ARRAY2Send notification when properties of a preset group change

EnumResultGeneric​

Source Protobuf File

NameValueDescription
RESULT_UNKNOWN0
RESULT_SUCCESS1
RESULT_ILL_FORMED2
RESULT_NOT_SUPPORTED3
RESULT_ARGUMENT_OUT_OF_BOUNDS4
RESULT_ARGUMENT_INVALID5
RESULT_RESOURCE_NOT_AVAILABLE6

EnumScanEntryFlags​

Source Protobuf File

NameValueDescription
SCAN_FLAG_OPEN0This network does not require authentication
SCAN_FLAG_AUTHENTICATED1This network requires authentication
SCAN_FLAG_CONFIGURED2This network has been previously provisioned
SCAN_FLAG_BEST_SSID4
SCAN_FLAG_ASSOCIATED8Camera is connected to this AP
SCAN_FLAG_UNSUPPORTED_TYPE16

EnumScanning​

Source Protobuf File

NameValueDescription
SCANNING_UNKNOWN0
SCANNING_NEVER_STARTED1
SCANNING_STARTED2
SCANNING_ABORTED_BY_SYSTEM3
SCANNING_CANCELLED_BY_USER4
SCANNING_SUCCESS5

EnumWindowSize​

Source Protobuf File

NameValueDescription
WINDOW_SIZE_4804
WINDOW_SIZE_7207
WINDOW_SIZE_108012

Messages​

Media​

Source Protobuf File

A common model to represent a media file

FieldTypeNumberDescription
folderstring1Directory in which the media is contained
filestring2Filename of media

NotifProvisioningState​

Source Protobuf File

Provision state notification

Sent during provisioning triggered via RequestConnect or RequestConnectNew

FieldTypeNumberDescription
provisioning_stateEnumProvisioning1Provisioning / connection state

NotifStartScanning​

Source Protobuf File

Scanning state notification

Triggered via RequestStartScan

FieldTypeNumberDescription
scanning_stateEnumScanning1Scanning state
scan_idint322ID associated with scan results (included if scan was successful)
total_entriesint323Number of APs found during scan (included if scan was successful)
total_configured_ssidint324Total count of camera's provisioned SSIDs

NotifyCOHNStatus​

Source Protobuf File

Current COHN status triggered by a RequestGetCOHNStatus

FieldTypeNumberDescription
statusEnumCOHNStatus1Current COHN status
stateEnumCOHNNetworkState2Current COHN network state
usernamestring3Username used for http basic auth header
passwordstring4Password used for http basic auth header
ipaddressstring5Camera's IP address on the local network
enabledbool6Is COHN currently enabled?
ssidstring7Currently connected SSID
macaddressstring8MAC address of the wifi adapter

NotifyLiveStreamStatus​

Source Protobuf File

Live Stream status

Sent either:

FieldTypeNumberDescription
live_stream_statusEnumLiveStreamStatus1Live stream status
live_stream_errorEnumLiveStreamError2Live stream error
live_stream_encodebool3Is live stream encoding?
live_stream_bitrateint324Live stream bitrate (Kbps)
live_stream_window_size_supported_arrayEnumWindowSize5Set of currently supported resolutions
live_stream_encode_supportedbool6Does the camera support encoding while live streaming?
live_stream_max_lens_unsupportedbool7Is the Max Lens feature NOT supported?
live_stream_minimum_stream_bitrateint328Camera-defined minimum bitrate (static) (Kbps)
live_stream_maximum_stream_bitrateint329Camera-defined maximum bitrate (static) (Kbps)
live_stream_lens_supportedbool10Does camera support setting lens for live streaming?
live_stream_lens_supported_arrayEnumLens11Set of currently supported FOV options
live_stream_protune_supportedbool13Does the camera support live stream protune settings

NotifyPresetStatus​

Source Protobuf File

Current Preset status

Sent either:

FieldTypeNumberDescription
preset_group_arrayPresetGroup1List of currently available Preset Groups

Preset​

Source Protobuf File

An individual preset.

FieldTypeNumberDescription
idint321Preset ID
modeEnumFlatMode2Preset flatmode ID
title_idEnumPresetTitle3Preset Title ID
title_numberint324Preset Title Number (e.g. 1/2/3 in Custom1, Custom2, Custom3)
user_definedbool5Is the Preset custom/user-defined?
iconEnumPresetIcon6Preset Icon ID
setting_arrayPresetSetting7Array of settings associated with this Preset
is_modifiedbool8Has Preset been modified from factory defaults? (False for user-defined Presets)
is_fixedbool9Is this Preset mutable?
custom_namestring10Custom string name given to this preset via RequestCustomPresetUpdate
is_visiblebool11Is the preset currently visible in the camera UI?

Note that a Preset's UI visibility can be set with RequestPresetSetVisibility

PresetGroup​

Source Protobuf File

Preset Group meta information and contained Presets

FieldTypeNumberDescription
idEnumPresetGroup1Preset Group ID
preset_arrayPreset2Array of Presets contained in this Preset Group
can_add_presetbool3Is there room in the group to add additional Presets?
iconEnumPresetGroupIcon4The icon to display for this preset group
mode_arrayEnumFlatMode5A list of flatmodes available for this preset group
custom_namestring6Custom string name given to this preset group
active_preset_idint327Active preset id in this group

PresetSetting​

Source Protobuf File

Setting representation that comprises a Preset

FieldTypeNumberDescription
idint321Setting ID
valueint322Setting value
is_captionbool3Does this setting appear on the Preset "pill" in the camera UI?

RequestCOHNCert​

Source Protobuf File

Get the COHN certificate.

Returns a ResponseCOHNCert

RequestClearCOHNCert​

Source Protobuf File

Clear the COHN certificate.

Returns a ResponseGeneric with the status of the clear

RequestConnect​

Source Protobuf File

Connect to (but do not authenticate with) an Access Point

This is intended to be used to connect to a previously-connected Access Point

Response: ResponseConnect

Notification: NotifProvisioningState sent periodically as provisioning state changes

FieldTypeNumberDescription
ssidstring1AP SSID

RequestConnectNew​

Source Protobuf File

Connect to and authenticate with an Access Point

This is only intended to be used if the AP is not previously provisioned.

Response: ResponseConnectNew sent immediately

Notification: NotifProvisioningState sent periodically as provisioning state changes

FieldTypeNumberDescription
ssidstring1AP SSID
passwordstring2AP password
static_ipbytes3Static IP address
gatewaybytes4Gateway IP address
subnetbytes5Subnet mask
dns_primarybytes6Primary DNS
dns_secondarybytes7Secondary DNS
bypass_eula_checkbool10Allow network configuration without internet connectivity

RequestCreateCOHNCert​

Source Protobuf File

Create the Camera On the Home Network SSL/TLS certificate.

Returns a ResponseGeneric with the status of the creation

FieldTypeNumberDescription
overridebool1Override current provisioning and create new cert

RequestCustomPresetUpdate​

Source Protobuf File

Request to Update the Title and / or Icon of the Active Custom Preset

This only operates on the currently active Preset and will fail if the current Preset is not custom.

The use cases are:

  1. Update the Custom Preset Icon

    • icon_id is always optional and can always be passed

and / or

  1. Update the Custom Preset Title to a...

    • Factory Preset Title: Set title_id to a non-PRESET_TITLE_USER_DEFINED_CUSTOM_NAME (94) value
    • Custom Preset Name: Set title_id to PRESET_TITLE_USER_DEFINED_CUSTOM_NAME (94) and specify a custom_name

Returns a ResponseGeneric with the status of the preset update request.

FieldTypeNumberDescription
title_idEnumPresetTitle1Preset Title ID

The range of acceptable custom title ID's can be found in the initial NotifyPresetStatus response
to RequestGetPresetStatus
custom_namestring2UTF-8 encoded custom preset name to be used if title_id is set to 94 (PRESET_TITLE_USER_DEFINED_CUSTOM_NAME)

The name must obey the following:

- Custom titles must be between 1 and 16 characters (inclusive)
- No special characters outside of the following languages: English, French, Italian, German,
Spanish, Portuguese, Swedish, Russian
icon_idEnumPresetIcon3Preset Icon ID

The range of acceptable custom icon ID's can be found in the initial NotifyPresetStatus response to
RequestGetPresetStatus

RequestGetApEntries​

Source Protobuf File

Get a list of Access Points found during a RequestStartScan

Response: ResponseGetApEntries

FieldTypeNumberDescription
start_indexint321Used for paging. 0 <= start_index < ResponseGetApEntries .total_entries
max_entriesint322Used for paging. Value must be < ResponseGetApEntries .total_entries
scan_idint323ID corresponding to a set of scan results (i.e. ResponseGetApEntries .scan_id)

RequestGetCOHNStatus​

Source Protobuf File

Get the current COHN status.

Response: NotifyCOHNStatus

Additionally, asynchronous updates can also be registered to return more NotifyCOHNStatus when a value changes.

FieldTypeNumberDescription
register_cohn_statusbool11 to register, 0 to unregister

RequestGetLastCapturedMedia​

Source Protobuf File

Get the last captured media filename

Returns a ResponseLastCapturedMedia

RequestGetLiveStreamStatus​

Source Protobuf File

Get the current livestream status (and optionally register for future status changes)

Response: NotifyLiveStreamStatus

Notification: NotifyLiveStreamStatus

FieldTypeNumberDescription
register_live_stream_statusEnumRegisterLiveStreamStatus1Array of live stream statuses to be notified about
unregister_live_stream_statusEnumRegisterLiveStreamStatus2Array of live stream statuses to stop being notified about

RequestGetPresetStatus​

Source Protobuf File

Get the set of currently available presets and optionally register to be notified when it changes.

Response: NotifyPresetStatus sent immediately

Notification: NotifyPresetStatus sent periodically as preset status changes, if registered.

The preset status changes when:

  • A client changes one of a preset's captioned settings via the API
  • The user exits from a preset's settings UI on the camera (e.g. long-press the preset pill and then press the back arrow)
  • The user creates/deletes/reorders a preset within a group
FieldTypeNumberDescription
register_preset_statusEnumRegisterPresetStatus1Array of Preset statuses to be notified about
unregister_preset_statusEnumRegisterPresetStatus2Array of Preset statuses to stop being notified about
use_constant_setting_idsbool3Configures the set of Setting IDs that are returned by NotifyPresetStatus.

Defaults to False if not set

When False, Setting IDs are tied to their camera UI string representation and may vary between cameras.

When True, Setting IDs are tied to their functional representation and are consistent across cameras.
include_hiddenbool4Whether to include hidden presets

When True, all currently available presets will be included in the response, even those hidden by the
camera UI

When False, only currently available presets that are displayed in the camera UI are included in the response.

Note that a Preset's visibility can be configured by RequestPresetSetVisibility.

RequestPairingFinish​

Source Protobuf File

Set Wireless 2.0 Pairing State

This is often colloquially referred to as "sending pairing complete"

Response: ResponseGeneric

FieldTypeNumberDescription
resultEnumPairingFinishState1Pairing state to set
phoneNamestring2This must be a non empty string but it does not actually affect anything.

RequestPresetSetVisibility​

Source Protobuf File

Set Preset UI Visibility

Shows or hides a Preset in the camera UI.

Note that a Preset's visibility determines how it is returned as part of the RequestGetPresetStatus response

Returns a ResponseGeneric with the status of the preset update request.

FieldTypeNumberDescription
idint321preset ID to operate on
visiblebool2True to set the preset visible, False to hide the preset.

RequestReleaseNetwork​

Source Protobuf File

Request to disconnect from currently-connected AP

This drops the camera out of Station (STA) Mode and returns it to Access Point (AP) mode.

Response: ResponseGeneric

RequestSetCOHNSetting​

Source Protobuf File

Configure a COHN Setting

Returns a ResponseGeneric

FieldTypeNumberDescription
cohn_activebool11 to enable COHN, 0 to disable COHN

When set to 1, STA Mode connection will be dropped and camera will not automatically re-connect for COHN.

RequestSetCameraControlStatus​

Source Protobuf File

Set Camera Control Status (as part of Global Behaviors feature)

This command is used to tell the camera that the app (i.e. External Control) wishes to claim control of the camera. This causes the camera to immediately exit most contextual menus and return to the idle screen. Any interaction with the camera's physical buttons will cause the camera to reclaim control and update control status accordingly. If the user returns the camera UI to the idle screen, the camera updates control status to Idle.

The entity currently claiming control of the camera is advertised in camera status 114. Information about whether the camera is in a contextual menu or not is advertised in camera status 63.

Response: ResponseGeneric

FieldTypeNumberDescription
camera_control_statusEnumCameraControlStatus1Declare who is taking control of the camera

RequestSetCameraName​

Source Protobuf File

Set the camera name

Response: ResponseGeneric

FieldTypeNumberDescription
namestring1(TODO define encoding) string to identify the camera

RequestSetLiveStreamMode​

Source Protobuf File

Configure Live Streaming

Response: ResponseGeneric

FieldTypeNumberDescription
urlstring1RTMP(S) URL used for live stream
encodebool2Save media to sdcard while streaming?
window_sizeEnumWindowSize3Resolution to use for live stream

The set of supported resolutions is only available from the live_stream_window_size_supported_array
in NotifyLiveStreamStatus.
certbytes6Certificate for servers that require it in PEM format
minimum_bitrateint327Minimum desired bitrate (may or may not be honored)
maximum_bitrateint328Maximum desired bitrate (may or may not be honored)
starting_bitrateint329Starting bitrate
lensEnumLens10Lens to use for live stream

The set of supported lenses is only available from the live_stream_lens_supported_array
in NotifyLiveStreamStatus.

RequestSetTurboActive​

Source Protobuf File

Enable/disable display of "Transferring Media" UI

Response: ResponseGeneric

FieldTypeNumberDescription
activebool1Enable or disable Turbo Transfer feature

RequestStartScan​

Source Protobuf File

Start scanning for Access Points

note

Serialization of this object is zero bytes.

Response: ResponseStartScanning are sent immediately after the camera receives this command

Notifications: NotifStartScanning are sent periodically as scanning state changes. Use to detect scan complete.

ResponseCOHNCert​

Source Protobuf File

COHN Certificate response triggered by RequestCOHNCert

FieldTypeNumberDescription
resultEnumResultGeneric1Was request successful?
certstring2Root CA cert (ASCII text)

ResponseConnect​

Source Protobuf File

The status of an attempt to connect to an Access Point

Sent as the initial response to RequestConnect

FieldTypeNumberDescription
resultEnumResultGeneric1Generic pass/fail/error info
provisioning_stateEnumProvisioning2Provisioning/connection state
timeout_secondsint323Network connection timeout (seconds)

ResponseConnectNew​

Source Protobuf File

The status of an attempt to connect to an Access Point

Sent as the initial response to RequestConnectNew

FieldTypeNumberDescription
resultEnumResultGeneric1Status of Connect New request
provisioning_stateEnumProvisioning2Current provisioning state of the network
timeout_secondsint323Number of seconds camera will wait before declaring a network connection attempt failed

ResponseGeneric​

Source Protobuf File

Generic Response used across many response / notification messages

FieldTypeNumberDescription
resultEnumResultGeneric1Generic pass/fail/error info

ResponseGetApEntries​

Source Protobuf File

A list of scan entries describing a scanned Access Point

This is sent in response to a RequestGetApEntries

FieldTypeNumberDescription
resultEnumResultGeneric1Generic pass/fail/error info
scan_idint322ID associated with this batch of results
entriesScanEntry3Array containing details about discovered APs

ResponseLastCapturedMedia​

Source Protobuf File

The Last Captured Media

Message is sent in response to a RequestGetLastCapturedMedia.

This contains the relative path of the last captured media starting from the DCIM directory on the SDCard. Depending on the type of media captured, it will return:

  • The single media path for single photo/video media
  • The path to the first captured media in the group for grouped media
FieldTypeNumberDescription
resultEnumResultGeneric1Was the request successful?
mediaMedia2Last captured media if result is RESULT_SUCCESS. Invalid if result is RESULT_RESOURCE_NOT_AVAILBLE.

ResponseStartScanning​

Source Protobuf File

The current scanning state.

This is the initial response to a RequestStartScan

FieldTypeNumberDescription
resultEnumResultGeneric1Generic pass/fail/error info
scanning_stateEnumScanning2Scanning state

ResponseGetApEntries::ScanEntry​

Source Protobuf File

An individual Scan Entry in a ResponseGetApEntries response

note

When scan_entry_flags contains SCAN_FLAG_CONFIGURED, it is an indication that this network has already been provisioned.

FieldTypeNumberDescription
ssidstring1AP SSID
signal_strength_barsint322Signal strength (3 bars: >-70 dBm; 2 bars: >-85 dBm; 1 bar: <=-85 dBm)
signal_frequency_mhzint324Signal frequency (MHz)
scan_entry_flagsint325Bitmasked value from EnumScanEntryFlags