POST api/v1/bots/sparkbots
Register a bot account.
Request Information
URI Parameters
None.
Body Parameters
RegisterSparkBotDto| Name | Description | Type | Additional information | 
|---|---|---|---|
| Name | 
                         Friendly name of the bot (i.e. "ParticleBot the second");  | 
                    string | 
                                 Required  | 
                
| UserName | 
                         Your Particle.io username (email)  | 
                    string | 
                                 Required  | 
                
| Password | 
                         Particle.io password. If you prefer not to use your password you may use a token generated at Particle.io.  | 
                    string | 
                             None.  | 
                
| ParticleToken | 
                         Authentication token from Particle.io. Use this in-place of password if you prefer not to use your password (UserName still required).  | 
                    string | 
                             None.  | 
                
| AutoAddDevices | 
                         If the devices in the Particle account should be automatically added to Tinamous.  | 
                    boolean | 
                             None.  | 
                
| DeviceTags | 
                         Tags to apply to a device when it is created  | 
                    Collection of string | 
                             None.  | 
                
Request Formats
application/json, text/json, application/senml+json
{
  "Name": "sample string 1",
  "UserName": "sample string 2",
  "Password": "sample string 3",
  "ParticleToken": "sample string 4",
  "AutoAddDevices": true,
  "DeviceTags": [
    "sample string 1",
    "sample string 2"
  ]
}
        application/xml, text/xml
<RegisterSparkBotDto xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/AnalysisUK.Tinamous.www.ApiControllers.Models.Bots.SparkBot">
  <AutoAddDevices>true</AutoAddDevices>
  <DeviceTags xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:string>sample string 1</d2p1:string>
    <d2p1:string>sample string 2</d2p1:string>
  </DeviceTags>
  <Name>sample string 1</Name>
  <ParticleToken>sample string 4</ParticleToken>
  <Password>sample string 3</Password>
  <UserName>sample string 2</UserName>
</RegisterSparkBotDto>
        application/x-www-form-urlencoded
Sample not available.
Response Information
Resource Description
ParticleBotDto| Name | Description | Type | Additional information | 
|---|---|---|---|
| AutoAddDevice | boolean | 
                             None.  | 
                |
| TokenExpiresOn | date | 
                             None.  | 
                |
| HasTokenExpired | boolean | 
                             None.  | 
                |
| ParticleAccount | string | 
                             None.  | 
                |
| Devices | Collection of ParticleDeviceSummaryDto | 
                             None.  | 
                |
| DeviceTags | Collection of string | 
                             None.  | 
                |
| AllowStatusMessageCommands | 
                         Allow status messages to be used to invoke Alexa SmartHome functions  | 
                    boolean | 
                             None.  | 
                
| LimitStatusMessageCommandsToUser | 
                         Only allow status message commands from this member/device (Null allows any member/device).  | 
                    globally unique identifier | 
                             None.  | 
                
| AuthenticationFailCount | 
                         How many authentication failures have been seen  | 
                    integer | 
                             None.  | 
                
| HasError | 
                         If the bot has errors  | 
                    boolean | 
                             None.  | 
                
| StreamingCollectionEnabled | 
                         If the bot should use a stream connection to collect data from the device.  | 
                    boolean | 
                             None.  | 
                
| VariableCollectionEnabled | boolean | 
                             None.  | 
                |
| DevicesCheckInterval | 
                         How often the users account should check for new devices  | 
                    time interval | 
                             None.  | 
                
| DefaultMeasurementCollectionInterval | 
                         Default for how often the device should be checked for measurement collection.  | 
                    time interval | 
                             None.  | 
                
| LastSimUpdatedAt | 
                         When the sims were last updated  | 
                    date | 
                             None.  | 
                
| LastCheckedDevicesAt | 
                         When the last devices check occured  | 
                    date | 
                             None.  | 
                
| Id | 
                         User Id  | 
                    globally unique identifier | 
                             None.  | 
                
| Name | 
                         The users name  | 
                    string | 
                             None.  | 
                
| UserName | 
                         UserName (used to login with)  | 
                    string | 
                             None.  | 
                
| FullUserName | 
                         User Id and Account name  | 
                    string | 
                             None.  | 
                
| BotType | 
                         The type of bot.  | 
                    string | 
                             None.  | 
                
| DisplayName | 
                         Users first and last name  | 
                    string | 
                             None.  | 
                
| DevicesCheckIntervalMinutes | 
                         How often the spark account should be checked for new devices.  | 
                    integer | 
                             None.  | 
                
| MeasurementCollectionIntervalMinutes | 
                         How often measurements should be collected from the devices (applies to new devices only).  | 
                    integer | 
                             None.  | 
                
| Links | 
                         Collection of links appropriate for the user  | 
                    Collection of LinkDto | 
                             None.  | 
                
| Actions | Collection of LinkDto | 
                             None.  | 
                |
| Description | string | 
                             None.  | 
                |
| Enabled | boolean | 
                             None.  | 
                |
| Authenticated | 
                         If the bot is authenticated.  | 
                    boolean | 
                             None.  | 
                
Response Formats
application/json, text/json, application/senml+json
{
  "AutoAddDevice": true,
  "TokenExpiresOn": "2025-11-04T11:51:56.7244083+00:00",
  "HasTokenExpired": true,
  "ParticleAccount": "sample string 4",
  "Devices": [
    {
      "Id": "52fc9b83-9fa4-472d-adf7-7c13b2714d6e",
      "UserName": "sample string 2",
      "ParticleDeviceId": "sample string 3",
      "ParticleDeviceType": 4,
      "ParticleDeviceTypeName": "sample string 5",
      "Name": "sample string 6",
      "Associated": true,
      "Links": [],
      "Actions": []
    },
    {
      "Id": "52fc9b83-9fa4-472d-adf7-7c13b2714d6e",
      "UserName": "sample string 2",
      "ParticleDeviceId": "sample string 3",
      "ParticleDeviceType": 4,
      "ParticleDeviceTypeName": "sample string 5",
      "Name": "sample string 6",
      "Associated": true,
      "Links": [],
      "Actions": []
    }
  ],
  "DeviceTags": [
    "sample string 1",
    "sample string 2"
  ],
  "AllowStatusMessageCommands": true,
  "LimitStatusMessageCommandsToUser": "5a0f10d4-af12-4c53-a23e-3c3e6a530809",
  "CollectorId": 6,
  "AuthenticationFailCount": 7,
  "HasError": true,
  "StreamingCollectionEnabled": true,
  "VariableCollectionEnabled": true,
  "DevicesCheckInterval": "00:00:00.1234567",
  "DefaultMeasurementCollectionInterval": "00:00:00.1234567",
  "LastSimUpdatedAt": "2025-11-04T11:51:56.7244083+00:00",
  "LastCheckedDevicesAt": "2025-11-04T11:51:56.7244083+00:00",
  "Id": "a7dcd516-2cf4-46e4-a38f-a0042cce1b6d",
  "Name": "sample string 15",
  "UserName": "sample string 16",
  "FullUserName": "sample string 17",
  "BotType": "sample string 18",
  "DisplayName": "sample string 19",
  "DevicesCheckIntervalMinutes": 20,
  "MeasurementCollectionIntervalMinutes": 21,
  "Links": [
    {
      "Href": "sample string 1",
      "Rel": "sample string 2",
      "Action": "sample string 3"
    },
    {
      "Href": "sample string 1",
      "Rel": "sample string 2",
      "Action": "sample string 3"
    }
  ],
  "Actions": [
    {
      "Href": "sample string 1",
      "Rel": "sample string 2",
      "Action": "sample string 3"
    },
    {
      "Href": "sample string 1",
      "Rel": "sample string 2",
      "Action": "sample string 3"
    }
  ],
  "Description": "sample string 22",
  "Enabled": true,
  "Authenticated": true
}
        application/xml, text/xml
<ParticleBotDto xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/AnalysisUK.Tinamous.www.ApiControllers.Models.Bots.SparkBot">
  <Actions xmlns:d2p1="http://schemas.datacontract.org/2004/07/AnalysisUK.Tinamous.www.ApiControllers.Models.Shared" xmlns="http://schemas.datacontract.org/2004/07/AnalysisUK.Tinamous.www.ApiControllers.Models.Bots">
    <d2p1:LinkViewModel>
      <d2p1:Action>sample string 3</d2p1:Action>
      <d2p1:Href>sample string 1</d2p1:Href>
      <d2p1:Rel>sample string 2</d2p1:Rel>
    </d2p1:LinkViewModel>
    <d2p1:LinkViewModel>
      <d2p1:Action>sample string 3</d2p1:Action>
      <d2p1:Href>sample string 1</d2p1:Href>
      <d2p1:Rel>sample string 2</d2p1:Rel>
    </d2p1:LinkViewModel>
  </Actions>
  <Authenticated xmlns="http://schemas.datacontract.org/2004/07/AnalysisUK.Tinamous.www.ApiControllers.Models.Bots">true</Authenticated>
  <BotType xmlns="http://schemas.datacontract.org/2004/07/AnalysisUK.Tinamous.www.ApiControllers.Models.Bots">sample string 18</BotType>
  <Description xmlns="http://schemas.datacontract.org/2004/07/AnalysisUK.Tinamous.www.ApiControllers.Models.Bots">sample string 22</Description>
  <DevicesCheckIntervalMinutes xmlns="http://schemas.datacontract.org/2004/07/AnalysisUK.Tinamous.www.ApiControllers.Models.Bots">20</DevicesCheckIntervalMinutes>
  <DisplayName xmlns="http://schemas.datacontract.org/2004/07/AnalysisUK.Tinamous.www.ApiControllers.Models.Bots">sample string 19</DisplayName>
  <Enabled xmlns="http://schemas.datacontract.org/2004/07/AnalysisUK.Tinamous.www.ApiControllers.Models.Bots">true</Enabled>
  <FullUserName xmlns="http://schemas.datacontract.org/2004/07/AnalysisUK.Tinamous.www.ApiControllers.Models.Bots">sample string 17</FullUserName>
  <Id xmlns="http://schemas.datacontract.org/2004/07/AnalysisUK.Tinamous.www.ApiControllers.Models.Bots">a7dcd516-2cf4-46e4-a38f-a0042cce1b6d</Id>
  <Links xmlns:d2p1="http://schemas.datacontract.org/2004/07/AnalysisUK.Tinamous.www.ApiControllers.Models.Shared" xmlns="http://schemas.datacontract.org/2004/07/AnalysisUK.Tinamous.www.ApiControllers.Models.Bots">
    <d2p1:LinkViewModel>
      <d2p1:Action>sample string 3</d2p1:Action>
      <d2p1:Href>sample string 1</d2p1:Href>
      <d2p1:Rel>sample string 2</d2p1:Rel>
    </d2p1:LinkViewModel>
    <d2p1:LinkViewModel>
      <d2p1:Action>sample string 3</d2p1:Action>
      <d2p1:Href>sample string 1</d2p1:Href>
      <d2p1:Rel>sample string 2</d2p1:Rel>
    </d2p1:LinkViewModel>
  </Links>
  <MeasurementCollectionIntervalMinutes xmlns="http://schemas.datacontract.org/2004/07/AnalysisUK.Tinamous.www.ApiControllers.Models.Bots">21</MeasurementCollectionIntervalMinutes>
  <Name xmlns="http://schemas.datacontract.org/2004/07/AnalysisUK.Tinamous.www.ApiControllers.Models.Bots">sample string 15</Name>
  <UserName xmlns="http://schemas.datacontract.org/2004/07/AnalysisUK.Tinamous.www.ApiControllers.Models.Bots">sample string 16</UserName>
  <AllowStatusMessageCommands>true</AllowStatusMessageCommands>
  <AuthenticationFailCount>7</AuthenticationFailCount>
  <AutoAddDevice>true</AutoAddDevice>
  <CollectorId>6</CollectorId>
  <DefaultMeasurementCollectionInterval>PT0.1234567S</DefaultMeasurementCollectionInterval>
  <DeviceTags xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:string>sample string 1</d2p1:string>
    <d2p1:string>sample string 2</d2p1:string>
  </DeviceTags>
  <Devices xmlns:d2p1="http://schemas.datacontract.org/2004/07/AnalysisUK.Tinamous.www.ApiControllers.Bots.Models">
    <d2p1:ParticleDeviceSummaryDto>
      <d2p1:Actions xmlns:d4p1="http://schemas.datacontract.org/2004/07/AnalysisUK.Tinamous.www.ApiControllers.Models.Shared" />
      <d2p1:Associated>true</d2p1:Associated>
      <d2p1:Id>52fc9b83-9fa4-472d-adf7-7c13b2714d6e</d2p1:Id>
      <d2p1:Links xmlns:d4p1="http://schemas.datacontract.org/2004/07/AnalysisUK.Tinamous.www.ApiControllers.Models.Shared" />
      <d2p1:Name>sample string 6</d2p1:Name>
      <d2p1:ParticleDeviceId>sample string 3</d2p1:ParticleDeviceId>
      <d2p1:ParticleDeviceType>4</d2p1:ParticleDeviceType>
      <d2p1:ParticleDeviceTypeName>sample string 5</d2p1:ParticleDeviceTypeName>
      <d2p1:UserName>sample string 2</d2p1:UserName>
    </d2p1:ParticleDeviceSummaryDto>
    <d2p1:ParticleDeviceSummaryDto>
      <d2p1:Actions xmlns:d4p1="http://schemas.datacontract.org/2004/07/AnalysisUK.Tinamous.www.ApiControllers.Models.Shared" />
      <d2p1:Associated>true</d2p1:Associated>
      <d2p1:Id>52fc9b83-9fa4-472d-adf7-7c13b2714d6e</d2p1:Id>
      <d2p1:Links xmlns:d4p1="http://schemas.datacontract.org/2004/07/AnalysisUK.Tinamous.www.ApiControllers.Models.Shared" />
      <d2p1:Name>sample string 6</d2p1:Name>
      <d2p1:ParticleDeviceId>sample string 3</d2p1:ParticleDeviceId>
      <d2p1:ParticleDeviceType>4</d2p1:ParticleDeviceType>
      <d2p1:ParticleDeviceTypeName>sample string 5</d2p1:ParticleDeviceTypeName>
      <d2p1:UserName>sample string 2</d2p1:UserName>
    </d2p1:ParticleDeviceSummaryDto>
  </Devices>
  <DevicesCheckInterval>PT0.1234567S</DevicesCheckInterval>
  <HasError>true</HasError>
  <HasTokenExpired>true</HasTokenExpired>
  <LastCheckedDevicesAt>2025-11-04T11:51:56.7244083+00:00</LastCheckedDevicesAt>
  <LastSimUpdatedAt>2025-11-04T11:51:56.7244083+00:00</LastSimUpdatedAt>
  <LimitStatusMessageCommandsToUser>5a0f10d4-af12-4c53-a23e-3c3e6a530809</LimitStatusMessageCommandsToUser>
  <ParticleAccount>sample string 4</ParticleAccount>
  <StreamingCollectionEnabled>true</StreamingCollectionEnabled>
  <TokenExpiresOn>2025-11-04T11:51:56.7244083+00:00</TokenExpiresOn>
  <VariableCollectionEnabled>true</VariableCollectionEnabled>
</ParticleBotDto>