IBM Watson IoT Driver Behavior

Live

IBM Watson IoT Driver Behavior

+ Day(s) remaining in the trial

Overview

By using the Watson IoT Driver Behavior service on Bluemix, you can analyze the behavior of a driver from vehicle probe data and contextual data. The analytics of Driver Behavior can detect different types of driver behavior, which includes frequent braking, speeding, sharp turning, harsh acceleration, and harsh braking. By using the REST APIs that are provided for the Driver Behavior service, you can retrieve the analysis results and use them in your Bluemix applications. You can optionally adjust the threshold parameters that control the analytics of the Driver Behavior service from the administrative web console on the service dashboard.

Getting started

Authentication

To authenticate to the Driver Behavior API, submit the user name and the password for the service instance that you would like to use. The API supports HTTP basic authentication. To see the user credentials of the Driver Behavior instance that you created on Bluemix, go to the dashboard and click Manage. **NOTE:** The Username and Password credentials for the Driver Behavior service instance are not the same as your Bluemix account user name and password.

Security

Keys

Pick a key to use with this API. Make sure you are logged in with your IBM id for your keys to be populated in the dropdown below. By selecting a key, it will be pre-filled for each endpoint in the Documentation section that can be used with the built-in testing. If you want to change which key to use for a particular endpoint, you can do so at the endpoint in the Documentation section.
You can manage your API keys in the <MyAPIs> section. API keys authenticate you to your subscription, so make sure to keep them secret. Do not share the X-IBM-Client-Secret portion of any API key in publicly accessible places such as GitHub, or client-side code.



Manage your keys
 

Documentation

IBM Watson IoT Driver Behavior:

CarProbe

Delete car probe data list by date
Deletes car probe data that matches the specified date.

DELETE   /datastore/carProbe

			https://automotive.internetofthings.ibmcloud.com/driverinsights/datastore/carProbe
		
Keys
Path and Query parameters

date

STRING , required

[required] Date of car probe data that you would like to delete (yyyy-mm-dd)

tenant_id

STRING , required

[required] Tenant ID.

Request code
								
HttpResponse<String> response = Unirest.delete("https://api.ibm.com/driverinsights/datastore/carProbe?tenant_id=SOME_STRING_VALUE&date=SOME_STRING_VALUE") .header("accept", "application/json") .header("content-type", "application/json") .asString();
Response model

200

Successful operation.

Body

error_message

STRING , required

Description of error.

return_code

INTEGER , required

0: No error

400

Status value is invalid.

Body

Response example

200

Successful operation.

								{
  "error_message" : string,
  "return_code" : 0
}
							

400

Status value is invalid.

								
							
Get car probe data list as date
Lists the dates of existing car probe data.

GET   /datastore/carProbe/dateList

			https://automotive.internetofthings.ibmcloud.com/driverinsights/datastore/carProbe/dateList
		
Keys
Path and Query parameters

tenant_id

STRING , required

[required] Tenant ID.

Request code
								
HttpResponse<String> response = Unirest.get("https://api.ibm.com/driverinsights/datastore/carProbe/dateList?tenant_id=SOME_STRING_VALUE") .header("accept", "application/json") .header("content-type", "application/json") .asString();
Response model

200

Successful operation.

Body

error_message

STRING , required

Description of error.

return_code

INTEGER , required

0: No error

date

ARRAY , required

Array of dates.

400

Status value is invalid.

Body

Response example

200

Successful operation.

								{
  "error_message" : string,
  "return_code" : 0,
  "date" : [string]
}
							

400

Status value is invalid.

								
							
Send car probe data
Sends car probe data.

POST   /datastore/carProbe

			https://automotive.internetofthings.ibmcloud.com/driverinsights/datastore/carProbe
		
Keys
Path and Query parameters

tenant_id

STRING , required

[required] Tenant ID.

Request code
								
HttpResponse<String> response = Unirest.post("https://api.ibm.com/driverinsights/datastore/carProbe?tenant_id=SOME_STRING_VALUE") .header("accept", "application/json") .header("content-type", "application/json") .asString();
Request model

trip_id

STRING , required

[required] Trip ID: uniquely identify a trip - [format] alphanumeric characters, hyphens(-), underscores(_), or periods(.).

timestamp

STRING , required

[required] The time that the GPS point was generated in the format of yyyy-MM-ddTHH:mm:ss.[fff](Z|+hh:mm|-hh:mm) , for example, 2015-01-01T00:00:00.000Z, 2015-01-01T00:00:00Z, 2015-01-01T00:00:00.000+00:00, 2015-01-01T00:00:00+00:00

distance

DOUBLE , optional

Distance on the road segment from the starting point of the road segment to the matched location point(locating by matched_longitude and matched_latitude).

matched_heading

DOUBLE , required

[required] The angle of moving direction, which is a value from 0-360, whereby North is 0. The value increases in a clockwise direction, and is fixed by map-matching. To get the matched_heading value, use the mapMatching API command that is provided by the Context Mapping service.

speed

DOUBLE , required

[required] Moving speed in km/h, which is a value that is from 0-180.

matched_longitude

DOUBLE , required

[required] Longitude of matched location on the link. The value must be more than minus 180 and less than 180. The matched_longitude and matched_latitude values must not be 0 at the same time. To get the matched_longitude value, use the mapMatching API command that is provided by the Context Mapping service.

mo_id

STRING , required

[required] Moving object ID [format] alphanumeric characters, hyphens(-), underscores(_), or periods(.).

driver_id

STRING , optional

Driver ID [format] alphanumeric characters, hyphens(-), underscores(_), or periods(.).

longitude

DOUBLE , required

[required] Longitude. If matched_longitude is set, longitude can be optional. longitude should be set in Trjectory Pattern Analysis.

matched_latitude

DOUBLE , required

[required] Latitude of matched location on the link. The value must be more than -90 and less than 90. The matched_longitude and matched_latitude values must not be 0 at the same time. To get the matched_longitude value, use the mapMatching API command that is provided by the Context Mapping service.

matched_link_id

STRING , optional

The matched road link ID on the map - [format] alphanumeric characters, hyphen(-), underscore(_), or period (.). To get the matched_link_id value, use the mapMatching API command that is provided by the Context Mapping service.

latitude

DOUBLE , required

[required] Latitude If matched_latitude is set, latitude can be optional. latitude should be set in Trjectory Pattern Analysis.

road_type

STRING , optional

The road type value must match the "PARAMETERS > Context > Road Type" that you can configure in the administrative console. The default value is "Unknown", and is used when no value is specified. Format: alphanumeric characters, hyphen(-), underscore(_), or period (.). To get the road_type value, use the getLinkInformation API command that is provided by the Context Mapping service.

heading

DOUBLE , required

[required] The angle of moving direction, whereby North is 0, and where the value increases in a clockwise direction. If matched_heading is set heading can be optional. heading should be set in Trjectory Pattern Analysis.

Request example
{
  "trip_id": string,
  "timestamp": string,
  "distance": double,
  "matched_heading": double,
  "speed": double,
  "matched_longitude": double,
  "mo_id": string,
  "driver_id": string,
  "longitude": double,
  "matched_latitude": double,
  "matched_link_id": string,
  "latitude": double,
  "road_type": string,
  "heading": double
}
Response model

200

Successful operation.

Body

error_message

STRING , required

Description of error.

return_code

INTEGER , required

0: No error

400

Status value is invalid.

Body

Response example

200

Successful operation.

								{
  "error_message" : string,
  "return_code" : 0
}
							

400

Status value is invalid.

								
							

Loading content...