Skip to content

WiFi Motion Core APIs (v3-x-x)

The WiFi Motion Core Cloud APIs facilitate the creation, configuration, and management of WiFi Motion networks via RESTful APIs. Additionally, it offers interfaces for accessing topologies, events, and motion data. The only difference is that the Core APIs do not specifically reference a user, and instead provide you with the ability to query the data from any network that is available in the environment.

Download OpenAPI description
Languages
Servers
Mock server

https://docs.cognitivesystems.com/_mock/assets/specs/mns/v3-x-x/

Network Settings

Operations

Motion History

Operations

Live Motion

Operations

Events

Operations

Insights v2

Operations

Universal Alerting

Operations

Network Status

Operations

Network Meta

Operations

Location Data

Operations

Find

Operations

Application Settings

Operations

Config

Operations

Reset Network

Request

Resets configuration for the given network back to defaults. Clears any saved guardian status (which resets topology).

Security
ApiKey
Path
network_idintegerrequired

Motion Network ID (returned as 'id' by Find API calls)

Query
keepRadarboolean

Do not reset radar configuration

keepGuardianboolean

Do not reset guardian configuration

keepMetastring

List of meta keys to not reset

Default "dwm, guardian_env, neuron_env"
updateboolean

Propagate this reset to device firmware

keepStatusboolean

Do not reset topology

curl -i -X POST \
  'https://docs.cognitivesystems.com/_mock/assets/specs/mns/v3-x-x/network/{network_id}/config/reset?keepRadar=true&keepGuardian=true&keepMeta=dwm%2C+guardian_env%2C+neuron_env&update=true&keepStatus=true' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

OK.

Bodyapplication/json
last_guardian_statusobject or null(GuardianStatusReport)

Status report emitted by the network on a regular interval. Contains information on the network's topology, health and motion detection metrics.

radar_configobject(RadarConfig)

Configuration that's shared by all Nodes in this Motion Network.

guardian_configobject(GuardianConfig)

Configuration for gateway or mesh root.

created_atnumber(float)required

UTC second timestamp of network creation.

updated_atnumber(float)required

UTC second timestamp of last configuration update.

guardian_idstringrequired

Unique network identifier. Populated by location_id on network creation.

last_heardnumber(float)

UTC timestamp of last guardian-status message.

metaobject(MetaConfig)

Network metadata storage.

master_node_idintegerrequired

Unique ID of gateway or mesh root node.

shard_idintegerrequired

Identifies the shard the network is stored in.

guardian_typestringrequired

String representation of network's shard in shard-shard-id format.

disconnected_atnumber(float)

UTC second timestamp of recorded disconnection.

nodesArray of objects(MotionNetworkRadarNode)

When expandNodes=true or in a configuration update context, the nodes part of this network are returned in this array.

idinteger(int64)required

Unique network integer identifier.

connection_statusboolean or null

Current connection status (null if has never been connected).

connection_reportobject(GuardianEvent)
device_infoobject

Mac-address keyed device info for all clients in this network.

Response
application/json
{ "last_guardian_status": { "leafblower": {}, "network_id": 0, "shard_id": "string", "radars": {}, "ts": 0.1, "last_motion": 0.1, "motion_tripped": 0, "startup": true, "version": {}, "health": {}, "capabilities": [], "coverage": {}, "guardian_id": "string", "dhcp": {}, "motion_enabled": 0, "armed": 0, "paused": true }, "radar_config": { "dynamic_sensitivity": "string", "bridge": {}, "motion80211": {} }, "guardian_config": { "history_motion": {}, "device_events": {}, "live_motion": {}, "link_events": {}, "leafblower": {}, "debug": {}, "user_priority": [], "motion_events": {} }, "created_at": 0.1, "updated_at": 0.1, "guardian_id": "string", "last_heard": 0.1, "meta": { "dwm": {}, "home": {}, "location": {}, "neuron_env": "string", "motion_paused": 0, "mqSecureRadarPort": 0, "auto_segment": 0, "guardian_env": "string", "friendly_name": {}, "new_network_id": 0, "old_network_id": 0, "new_guardian_id": "string", "gatekeeper_redirect": "string", "property1": "string", "property2": "string" }, "master_node_id": 0, "shard_id": 0, "guardian_type": "string", "disconnected_at": 0.1, "nodes": [ {} ], "id": 0, "connection_status": true, "connection_report": { "_id": "string", "category": "Link", "loc": [], "detail": {}, "link_dst_name": "string", "network_id": 0, "ts": 0.1, "evt_detected_ts": 0.1, "intensity_window": [], "link_id": "string", "loc_name": "string", "tag": "string", "link_src_name": "string", "guardian_id": "string", "node_id": 0, "deviceId": "string", "node_name": "string", "debug": {}, "armed": 0, "event": "MotionDetectedEvent", "_consumer": "string", "data": {} }, "device_info": { "property1": {}, "property2": {} } }

Get Guardian configuration

Request

Security
ApiKey
Path
network_idintegerrequired

Motion Network ID (returned as 'id' by Find API calls)

Query
keystring

If provided, all operations will be relative to this top-level key.

curl -i -X GET \
  'https://docs.cognitivesystems.com/_mock/assets/specs/mns/v3-x-x/network/{network_id}/config/guardian?key=string' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

OK.

Bodyapplication/json
history_motionobject
device_eventsobject
live_motionobject
link_eventsobject
leafblowerobject
debugobject
user_priorityArray of strings

The list of user priority rooms in order from highest to lowest

motion_eventsobject
Response
application/json
{ "history_motion": { "count": 60, "enable": 1, "interval": 5000, "flush_interval": 300 }, "device_events": { "enable": 0 }, "live_motion": { "enable": 1, "force_enable": 0, "interval": 500, "loc_conf_enable": 0 }, "link_events": { "enable": 0, "throughput_threshold": 0, "idle_link_timeout": 0, "throughput_cooldown": 0, "noise_duration": 0, "noise_cooldown": 0, "noise_threshold": 0, "throughput_duration": 0 }, "leafblower": { "cutoff": 0, "blower_size": 60, "log_debug": 0, "link_expiry": 1008, "sneaky_cutoff": -1.1, "sneaky_link_limit": 0, "whitelist": {}, "link_limit": 3, "whitelist_enable": 0, "cycle_count": 10, "cycle_time": 0 }, "debug": { "status": 0, "leafblower": 0, "gateway": 0, "zilker": 0 }, "user_priority": [ "string" ], "motion_events": { "enable": 1, "threshold": 0, "pet_mode": 0, "cooldown": 0, "excessive_mins": 0, "excessive_density": 0.7, "pulse_enabled": 0, "pulse_interval": 0, "armed": 1, "override": {}, "property1": 0, "property2": 0 } }

Set Guardian configuration

Request

Security
ApiKey
Path
network_idintegerrequired

Motion Network ID (returned as 'id' by Find API calls)

Query
keystring

If provided, all operations will be relative to this top-level key.

updateboolean

When true the new configuration is immediately propagated to the network.

Default false
Bodyapplication/json
history_motionobject
device_eventsobject
live_motionobject
link_eventsobject
leafblowerobject
debugobject
user_priorityArray of strings

The list of user priority rooms in order from highest to lowest

motion_eventsobject
curl -i -X POST \
  'https://docs.cognitivesystems.com/_mock/assets/specs/mns/v3-x-x/network/{network_id}/config/guardian?key=string&update=false' \
  -H 'Authorization: YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "history_motion": {
      "count": 60,
      "enable": 1,
      "interval": 5000,
      "flush_interval": 300
    },
    "device_events": {
      "enable": 0
    },
    "live_motion": {
      "enable": 1,
      "force_enable": 0,
      "interval": 500,
      "loc_conf_enable": 0
    },
    "link_events": {
      "enable": 0,
      "throughput_threshold": 0,
      "idle_link_timeout": 0,
      "throughput_cooldown": 0,
      "noise_duration": 0,
      "noise_cooldown": 0,
      "noise_threshold": 0,
      "throughput_duration": 0
    },
    "leafblower": {
      "cutoff": 0,
      "blower_size": 60,
      "log_debug": 0,
      "link_expiry": 1008,
      "sneaky_cutoff": -1.1,
      "sneaky_link_limit": 0,
      "whitelist": {
        "property1": 0,
        "property2": 0
      },
      "link_limit": 3,
      "whitelist_enable": 0,
      "cycle_count": 10,
      "cycle_time": 0
    },
    "debug": {
      "status": 0,
      "leafblower": 0,
      "gateway": 0,
      "zilker": 0
    },
    "user_priority": [
      "string"
    ],
    "motion_events": {
      "enable": 1,
      "threshold": 0,
      "pet_mode": 0,
      "cooldown": 0,
      "excessive_mins": 0,
      "excessive_density": 0.7,
      "pulse_enabled": 0,
      "pulse_interval": 0,
      "armed": 1,
      "override": {
        "min_duration": 0,
        "density_window": 0,
        "density_thres": 0,
        "intensity_thres": 0
      },
      "property1": 0,
      "property2": 0
    }
  }'

Responses

OK.

Bodyapplication/json
history_motionobject
device_eventsobject
live_motionobject
link_eventsobject
leafblowerobject
debugobject
user_priorityArray of strings

The list of user priority rooms in order from highest to lowest

motion_eventsobject
Response
application/json
{ "history_motion": { "count": 60, "enable": 1, "interval": 5000, "flush_interval": 300 }, "device_events": { "enable": 0 }, "live_motion": { "enable": 1, "force_enable": 0, "interval": 500, "loc_conf_enable": 0 }, "link_events": { "enable": 0, "throughput_threshold": 0, "idle_link_timeout": 0, "throughput_cooldown": 0, "noise_duration": 0, "noise_cooldown": 0, "noise_threshold": 0, "throughput_duration": 0 }, "leafblower": { "cutoff": 0, "blower_size": 60, "log_debug": 0, "link_expiry": 1008, "sneaky_cutoff": -1.1, "sneaky_link_limit": 0, "whitelist": {}, "link_limit": 3, "whitelist_enable": 0, "cycle_count": 10, "cycle_time": 0 }, "debug": { "status": 0, "leafblower": 0, "gateway": 0, "zilker": 0 }, "user_priority": [ "string" ], "motion_events": { "enable": 1, "threshold": 0, "pet_mode": 0, "cooldown": 0, "excessive_mins": 0, "excessive_density": 0.7, "pulse_enabled": 0, "pulse_interval": 0, "armed": 1, "override": {}, "property1": 0, "property2": 0 } }

Node

Operations

Management

Operations