POST api/v1/bots/sparkbots

Register a bot account.

Request Information

URI Parameters

None.

Body Parameters

RegisterSparkBotDto
NameDescriptionTypeAdditional 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

Sample:
{
  "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

Sample:
<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:

Sample not available.

Response Information

Resource Description

ParticleBotDto
NameDescriptionTypeAdditional 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

Sample:
{
  "AutoAddDevice": true,
  "TokenExpiresOn": "2024-12-03T12:15:27.4089221+00:00",
  "HasTokenExpired": true,
  "ParticleAccount": "sample string 4",
  "Devices": [
    {
      "Id": "dd6a5979-3a40-48d0-aec4-c839672d9f0d",
      "UserName": "sample string 2",
      "ParticleDeviceId": "sample string 3",
      "ParticleDeviceType": 4,
      "ParticleDeviceTypeName": "sample string 5",
      "Name": "sample string 6",
      "Associated": true,
      "Links": [],
      "Actions": []
    },
    {
      "Id": "dd6a5979-3a40-48d0-aec4-c839672d9f0d",
      "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": "50329363-9260-43d7-b67f-b0ae404287aa",
  "CollectorId": 6,
  "AuthenticationFailCount": 7,
  "HasError": true,
  "StreamingCollectionEnabled": true,
  "VariableCollectionEnabled": true,
  "DevicesCheckInterval": "00:00:00.1234567",
  "DefaultMeasurementCollectionInterval": "00:00:00.1234567",
  "LastSimUpdatedAt": "2024-12-03T12:15:27.4089221+00:00",
  "LastCheckedDevicesAt": "2024-12-03T12:15:27.4089221+00:00",
  "Id": "e2ca6a1d-b83d-4438-b693-e9d908c92d27",
  "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

Sample:
<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">e2ca6a1d-b83d-4438-b693-e9d908c92d27</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>dd6a5979-3a40-48d0-aec4-c839672d9f0d</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>dd6a5979-3a40-48d0-aec4-c839672d9f0d</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>2024-12-03T12:15:27.4089221+00:00</LastCheckedDevicesAt>
  <LastSimUpdatedAt>2024-12-03T12:15:27.4089221+00:00</LastSimUpdatedAt>
  <LimitStatusMessageCommandsToUser>50329363-9260-43d7-b67f-b0ae404287aa</LimitStatusMessageCommandsToUser>
  <ParticleAccount>sample string 4</ParticleAccount>
  <StreamingCollectionEnabled>true</StreamingCollectionEnabled>
  <TokenExpiresOn>2024-12-03T12:15:27.4089221+00:00</TokenExpiresOn>
  <VariableCollectionEnabled>true</VariableCollectionEnabled>
</ParticleBotDto>