Documentation

Documentation

YourOwn SetupYourOwn SDKYourOwn API
Sphere SetupSphere SDKSphere API
  • Resources

›Collect payload

Introduction

  • Copilot.cx Management API

Getting Started

  • Configuration
  • Hello copilot

Reference

  • Session Management
  • User
  • Thing
  • End User Authentication
  • Collect API
  • Collect payload

    • Thing events
    • Custom events
    • Misc. events

Appendix

  • Releases

Thing events

Inform the Copilot.cx system of events related to the connected device (Thing).

Please refer the user_id and thing_id best practices here.

Thing Interaction

Notifies Copilot.cx about an interaction that occurred on a Thing, such as pressing a button on the Thing, powering on the Thing and

  • Type: thing_interaction

  • Payload fields:

FieldTypeDescriptionMandatory
thing_idStringYour unique identifier of the Thing on which an interaction occurred.Y
user_idStringYour unique identifier of the User of the Thing whose status changed, if known.
Any other fieldStringAny custom field describing the interaction that was performed. Multiple fields can be specified.

my_custom_interaction_int_value and my_custom_interaction_name are just example of how you can use the custom fields for the thing_interaction event.

  • Example
    {
      "events": [
        {
          "type": "thing_interaction",
          "event_id": "d1d777e1-98f6-4b7d-998c-85cb756f4320",
          "timestamp": 1559570974642,
          "payload": {
            "my_custom_interaction_int_value": 98,
            "my_custom_interaction_name": "MyCoolInteraction",
            "thing_id": "63:64:78:26:b1:c7"
          }
        }
      ]
    }
    

Thing Connected

Notifies Copilot.cx that a thing was connected.

  • Type: thing_connected

  • Payload fields:

FieldTypeDescriptionMandatory
thing_idStringYour unique identifier of the Thing on which an interaction occurred.Y
user_idStringYour unique identifier of the User of the Thing whose status changed, if known.
  • Example
    {
      "events": [
        {
          "type": "thing_connected",
          "event_id": "d1d777e1-98f6-4b7d-998c-85cb756f4320",
          "timestamp": 1559570974642,
          "payload": {
            "thing_id": "63:64:78:26:b1:c7"
          }
        }
      ]
    }
    

Consumable Usage

Trigger this event in case your product has a consumable element (paper, cartridge, razor, etc…) and a user consumes it. This will later be used to identify consumable usage patterns and deviations from these patterns.

  • Type: consumable_usage

  • Payload fields:

FieldTypeDescriptionMandatory
thing_idStringYour unique identifier of the Thing on which an interaction occurred.Y
consumable_typeStringThe types of consumables (e.g. paper/cartrige/razor etc.)
user_idStringYour unique identifier of the User of the Thing whose status changed, if known.
  • Example
    {
      "events": [
        {
          "type": "consumable_usage",
          "event_id": "d1d777e1-98f6-4b7d-998c-85cb756f4320",
          "timestamp": 1559570974642,
          "payload": {
            "thing_id": "63:64:78:26:b1:c7",
            "consumable_type": "CoffeePod"
          }
        }
      ]
    }
    

Firmware Upgrade Started

Trigger this event at the beginning of a firmware upgrade process.

  • Type: firmware_upgrade_started

  • Payload fields:

FieldTypeDescriptionMandatory
thing_idStringYour unique identifier of the Thing on which an interaction occurred.Y
firmware_versionStringThe version of the new firmware
user_idStringYour unique identifier of the User of the Thing whose status changed, if known.
  • Example
    {
      "events": [
        {
          "type": "firmware_upgrade_started",
          "event_id": "d1d777e1-98f6-4b7d-998c-85cb756f4320",
          "timestamp": 1559570974642,
          "payload": {
            "thing_id": "63:64:78:26:b1:c7",
            "firmware_version": "17.52"
          }
        }
      ]
    }
    

Firmware Upgrade Completed

Trigger upon firmware upgrade completion.

  • Type: firmware_upgrade_completed

  • Payload fields:

FieldTypeDescriptionMandatory
thing_idStringYour unique identifier of the Thing on which an interaction occurred.Y
firmware_versionStringThe version of the new firmwareY
resultStringThe resulting status of the firmware upgrade process : success / device_unavailable / incomplete / failedY
user_idStringYour unique identifier of the User of the Thing whose status changed, if known.
  • Example
    {
      "events": [
        {
          "type": "firmware_upgrade_completed",
          "event_id": "d1d777e1-98f6-4b7d-998c-85cb756f4320",
          "timestamp": 1559570974642,
          "payload": {
            "thing_id": "63:64:78:26:b1:c7",
            "firmware_version": "17.53",
            "result": "success"
          }
        }
      ]
    }
    
← Collect APICustom events →
  • Thing Interaction
  • Thing Connected
  • Consumable Usage
  • Firmware Upgrade Started
  • Firmware Upgrade Completed
Copilot
Mail: hello@copilot.cx
Call: (212).398.0001
© Copilot.cx 2025