# IiiDispatch.DriverApi

All URIs are relative to *http://localhost/v1*

Method | HTTP request | Description
------------- | ------------- | -------------
[**createDriver**](DriverApi.md#createDriver) | **POST** /driver | 新增司機
[**deleteDriver**](DriverApi.md#deleteDriver) | **DELETE** /driver/{username} | Delete driver
[**getDriverByName**](DriverApi.md#getDriverByName) | **GET** /driver/{username} | Get driver by user name
[**loginDriver**](DriverApi.md#loginDriver) | **POST** /driver/login | Logs driver into the system
[**logoutDriver**](DriverApi.md#logoutDriver) | **GET** /driver/logout | Logs out current logged in driver session
[**updateDriver**](DriverApi.md#updateDriver) | **PUT** /driver/{username} | Updated driver


<a name="createDriver"></a>
# **createDriver**
> createDriver(body)

新增司機

This can only be done by the logged in user.

### Example
```javascript
var IiiDispatch = require('iii_dispatch');

var apiInstance = new IiiDispatch.DriverApi();

var body = new IiiDispatch.Driver(); // Driver | Created driver object


var callback = function(error, data, response) {
  if (error) {
    console.error(error);
  } else {
    console.log('API called successfully.');
  }
};
apiInstance.createDriver(body, callback);
```

### Parameters

Name | Type | Description  | Notes
------------- | ------------- | ------------- | -------------
 **body** | [**Driver**](Driver.md)| Created driver object | 

### Return type

null (empty response body)

### Authorization

No authorization required

### HTTP request headers

 - **Content-Type**: Not defined
 - **Accept**: application/xml, application/json

<a name="deleteDriver"></a>
# **deleteDriver**
> deleteDriver(username)

Delete driver

This can only be done by the logged in user.

### Example
```javascript
var IiiDispatch = require('iii_dispatch');

var apiInstance = new IiiDispatch.DriverApi();

var username = "username_example"; // String | The name that needs to be deleted


var callback = function(error, data, response) {
  if (error) {
    console.error(error);
  } else {
    console.log('API called successfully.');
  }
};
apiInstance.deleteDriver(username, callback);
```

### Parameters

Name | Type | Description  | Notes
------------- | ------------- | ------------- | -------------
 **username** | **String**| The name that needs to be deleted | 

### Return type

null (empty response body)

### Authorization

No authorization required

### HTTP request headers

 - **Content-Type**: Not defined
 - **Accept**: application/xml, application/json

<a name="getDriverByName"></a>
# **getDriverByName**
> Driver getDriverByName(username)

Get driver by user name



### Example
```javascript
var IiiDispatch = require('iii_dispatch');

var apiInstance = new IiiDispatch.DriverApi();

var username = "username_example"; // String | The name that needs to be fetched. Use user1 for testing. 


var callback = function(error, data, response) {
  if (error) {
    console.error(error);
  } else {
    console.log('API called successfully. Returned data: ' + data);
  }
};
apiInstance.getDriverByName(username, callback);
```

### Parameters

Name | Type | Description  | Notes
------------- | ------------- | ------------- | -------------
 **username** | **String**| The name that needs to be fetched. Use user1 for testing.  | 

### Return type

[**Driver**](Driver.md)

### Authorization

No authorization required

### HTTP request headers

 - **Content-Type**: Not defined
 - **Accept**: application/xml, application/json

<a name="loginDriver"></a>
# **loginDriver**
> &#39;String&#39; loginDriver(username, password)

Logs driver into the system



### Example
```javascript
var IiiDispatch = require('iii_dispatch');

var apiInstance = new IiiDispatch.DriverApi();

var username = "username_example"; // String | The driver name for login

var password = "password_example"; // String | The password for login in clear text


var callback = function(error, data, response) {
  if (error) {
    console.error(error);
  } else {
    console.log('API called successfully. Returned data: ' + data);
  }
};
apiInstance.loginDriver(username, password, callback);
```

### Parameters

Name | Type | Description  | Notes
------------- | ------------- | ------------- | -------------
 **username** | **String**| The driver name for login | 
 **password** | **String**| The password for login in clear text | 

### Return type

**&#39;String&#39;**

### Authorization

No authorization required

### HTTP request headers

 - **Content-Type**: application/x-www-form-urlencoded
 - **Accept**: application/xml, application/json

<a name="logoutDriver"></a>
# **logoutDriver**
> logoutDriver()

Logs out current logged in driver session



### Example
```javascript
var IiiDispatch = require('iii_dispatch');

var apiInstance = new IiiDispatch.DriverApi();

var callback = function(error, data, response) {
  if (error) {
    console.error(error);
  } else {
    console.log('API called successfully.');
  }
};
apiInstance.logoutDriver(callback);
```

### Parameters
This endpoint does not need any parameter.

### Return type

null (empty response body)

### Authorization

No authorization required

### HTTP request headers

 - **Content-Type**: Not defined
 - **Accept**: application/xml, application/json

<a name="updateDriver"></a>
# **updateDriver**
> updateDriver(username, body)

Updated driver

This can only be done by the logged in user.

### Example
```javascript
var IiiDispatch = require('iii_dispatch');

var apiInstance = new IiiDispatch.DriverApi();

var username = "username_example"; // String | name that need to be updated

var body = new IiiDispatch.Driver(); // Driver | Updated driver object


var callback = function(error, data, response) {
  if (error) {
    console.error(error);
  } else {
    console.log('API called successfully.');
  }
};
apiInstance.updateDriver(username, body, callback);
```

### Parameters

Name | Type | Description  | Notes
------------- | ------------- | ------------- | -------------
 **username** | **String**| name that need to be updated | 
 **body** | [**Driver**](Driver.md)| Updated driver object | 

### Return type

null (empty response body)

### Authorization

No authorization required

### HTTP request headers

 - **Content-Type**: Not defined
 - **Accept**: application/xml, application/json

