(Quick Reference)

14 Assign customers to employees - Reference Documentation

Version: 2.1

14 Assign customers to employees

14.1 List

Service: List of the assigned customers to employees

Description: This web service returns the list of assigned customers to employees data in JSON format

URL:

https://BASE_URL/api/VERSION/customerEmployees

Method: GET

Parameters:

Pagination parameters:

NameDescriptionTypeRequiredPossible values
offsetTells where to start returning records from the entire set of resultsIntegerNo 
maxlimits the number of resources requested to returnIntegerNo 
sortOrders the results by the specified fieldStringNo 
orderOrders ascending (ASC) or descending DESCIntegerNoasc, desc

The max parameter is set to 100 by default.

Filters parameters:

NameDescriptionTypeRequiredExample values
dateCreated_gtFilters by the resource's creation date time and operator greater thanDateno2016-08-15T14:52:48Z
dateCreated_gteFilters by the resource's creation date time and operator greater than or equalDateno 
dateCreated_ltFilters by the resource's creation date time and operator less thanDateno 
dateCreated_lteFilters by the resource's creation date time and operator less than or equalDateno 
lastUpdated_gtFilters by the resource's last-modified date time and operator greater thanDateno 
lastUpdated_gteFilters by the resource's last-modified date time and operator greater than or equalDateno 
lastUpdated_ltFilters by the resource's last-modified date time and operator less thanDateno 
lastUpdated_lteFilters by the resource's last-modified date time and operator less than or equalDateno 
customerReferenceWildcard search by the resource's referenceStringnocustomerReference=Ref-6* , customerReference=*ef-6 , customerReference=*ef-6*
employeeReferenceWildcard search by the resource's referenceStringnoemployeeReference=Ref-6* , employeeReference=*ef-6 , employeeReference=*ef-6*
Dates should be formatted as the ISO-8601 format (YYYY-MM-DDTHH:MM:SSZ)

Success Output

Success case: response.status=200

{
    "paging": {
        "total": 3,
        "max": 100,
        "offset": 0,
        "previous": null,
        "next": null
    },
    "data": [
        {
            "id": 569,
            "customerReference": "C-001",
            "employeeReference": "Ref 6654",
            "customer": {
                "id": 1334,
                "reference": "C-001",
                "name": "Michel",
                "href": "/api/v1.0/customers/1334"
            },
            "user": {
                "id": 8,
                "reference": "Ref 6654",
                "href": "/api/v1.0/users/8"
            },
            "organization": "Lyon",
            "dateCreated": "2016-08-22T09:42:11Z",
            "lastUpdated": "2016-08-22T09:42:11Z"
        },
        {
            "id": 570,
            "customerReference": "C-002",
            "employeeReference": "Ref 6654",
            "customer": {
                "id": 1335,
                "reference": "C-002",
                "name": "Joe",
                "href": "/api/v1.0/customers/1335"
            },
            "user": {
                "id": 8,
                "reference": "Ref 6654",
                "href": "/api/v1.0/users/8"
            },
            "organization": "Lyon",
            "dateCreated": "2016-08-22T09:42:19Z",
            "lastUpdated": "2016-08-22T09:42:19Z"
        },
        {
            "id": 571,
            "customerReference": "C-003",
            "employeeReference": "Ref 6654",
            "customer": {
                "id": 1336,
                "reference": "C-003",
                "name": "Daniel",
                "href": "/api/v1.0/customers/1336"
            },
            "user": {
                "id": 8,
                "reference": "Ref 6654",
                "href": "/api/v1.0/users/8"
            },
            "organization": "Lyon",
            "dateCreated": "2016-08-22T09:42:26Z",
            "lastUpdated": "2016-08-22T09:42:26Z"
        }
    ]
}

Failure Output

Failure case:response.status = 400
{
   "error": "invalid_param",
   "error_description": "The parameters [dateCreated_gta] you provided are not valid for this request."
}
{
    "error": "invalid_datetime_format",
    "error_description": "Invalid datetime filter (not ISO-8601 formatted): [2016-08-1Z]"
}
Failure case:response.status = 500
{
   "error": "server_error",
   "error_description": "Oops! Something went wrong..."
}

14.2 Show

Service: Show an assigned customer to an employee

Description: This web service returns an assigned customer to an employee data in JSON format

Method: GET

URL:

https://BASE_URL/api/VERSION/customerEmployees/{id}

Parameters:

NameDescriptionTypeRequiredExample values
idid of the wanted recordIntegerYes777

URL with external_id:

https://BASE_URL/api/VERSION/customerEmployees/reference/{customerId}/{userId}

Parameters:

NameDescriptionTypeRequiredExamples values
customerIdreference of the customerStringYesCC-002
userIdreference of the userStringYesU-001

Success Output

Success case: response.status=200
{
    "id": 570,
    "customerReference": "C-002",
    "employeeReference": "Ref 6654",
    "customer": {
        "id": 1335,
        "reference": "C-002",
        "name": "Joe",
        "href": "/api/v1.0/customers/1335"
    },
    "user": {
        "id": 8,
        "reference": "Ref 6654",
        "href": "/api/v1.0/users/8"
    },
    "organization": "Lyon",
    "dateCreated": "2016-08-22T09:42:19Z",
    "lastUpdated": "2016-08-22T09:42:19Z"
}

Failure Output

Failure case:response.status = 400
{
    "error": "invalid_param_type",
    "error_description": "The type of parameter id you provided is not valid for this request."
}

Failure case:response.status = 404
{
    "error": "not_found",
    "error_description": "The customer employee with the id 999 doesn't exist."
}

14.3 Delete

Service: Dissociate a customer from an employee

Description: This web service is used in order to dissociate a customer from an employee, when success it will returns

Method: DELETE

URL:

https://BASE_URL/api/VERSION/customerEmployees/{id}

Parameters:

NameDescriptionTypeRequiredExamples values
idId of the desired record to deleteLongYes777

URL with external_id:

https://BASE_URL/api/VERSION/customerEmployees/reference/{customerId}/{userId}

Parameters:

NameDescriptionTypeRequiredExamples values
customerIdreference of the customerStringYesCC-002
userIdreference of the userStringYesU-001

Success Output

Success case: response.status=200
{
    "success": "true",
    "success_description": "Instance deleted successfully"
}

Failure Output

Failure case:response.status = 400
{
    "error": "invalid_param_type",
    "error_description": "The type of parameter id you provided is not valid for this request."
}
{
    "error": "delete_failed",
    "error_description": "Failed to delete instance"
}
{
  "error": "delete_not_authorized",
  "error_description": "Customer and employee are assigned to route"
}
Failure case:response.status = 404
{
    "error": "not_found",
    "error_description": "The customer employee with the id 999 doesn't exist."
}

Failure case:response.status = 500
{
    "error": "server_error",
    "error_description": "Oops! Something went wrong..."
}

14.4 Update

Service: Assign an assigned customer to a new employee

Description: This web service is used to update an assigned customer to an employee to the database

Method: PUT

Request content type: application/json

URL:

https://BASE_URL/api/VERSION/customerEmployees/{id}

Parameters:

NameDescriptionTypeRequiredExample values
idid of the desired recordLongYes111
userIdthe id of the employeeLongYes777
customerIdthe id of the customer to assignLongYes777

URL with external_id:

https://BASE_URL/api/VERSION/customerEmployees/reference/{customerId}/{userId}

Parameters:

NameDescriptionTypeRequiredExamples values
customerIdreference of the customerStringYesCC-002
userIdreference of the userStringYesU-001

Success Output

Success case: response.status=201
{
    "id": 569,
    "customerReference": "C-002",
    "employeeReference": "Ref 6654",
    "customer": {
        "id": 1335,
        "reference": "C-002",
        "name": "Joe",
        "href": "/api/v1.0/customers/1335"
    },
    "user": {
        "id": 8,
        "reference": "Ref 6654",
        "href": "/api/v1.0/users/8"
    },
    "organization": "Lyon",
    "dateCreated": "2016-08-22T09:42:11Z",
    "lastUpdated": "2016-08-22T10:38:40Z"
}

Failure Output

Failure case:response.status = 400
{
    "error": "missing_param",
    "error_description": "userId parameter is missing"
}
"error": "already_assigned",
    "error_description": "customer is already assigned to employee."
{
     "error": "save_failed",
     "error_description": "Failed to save instance"
}
{
  "error": "update_not_authorized",
  "error_description": "the current customer and employee are assigned to route"
}
Failure case:response.status = 404
{
    "error":"not_found",
    "error_description": "The user with the id 999 doesn't exist."
}

Failure case:response.status = 500
{
     "error": "server_error",
     "error_description": "Oops! Something went wrong..."
}

14.5 Create

Service: Assign customer to employee

Description: This web service is used to assign a customer to an employee, the data created will be returned in JSON format

URL:

https://BASE_URL/api/VERSION/customerEmployees

Method: POST

Request content type: application/json

Parameters:

NameDescriptionTypeRequiredExample values
userIdthe id of the employeeLong/StringYes777
customerIdthe id of the customer to assignLong/StringYes 
useExternalIdBy default, it is set to false. set it to true if you want to use external ids.Booleannotrue , false
The customer can only be assigned just one time

Success Output

Success case: response.status=201
{
    "id": 6,
    "name": "okawa",
    "reference": "9999",
    "organization": "Lyon",
    "description": null,
    "dateCreated": "2016-08-17T14:59:43Z",
    "lastUpdated": "2016-08-17T14:59:43Z"
}

Failure Output

Failure case:response.status = 400
{
    "error": "missing_param",
    "error_description": "userId parameter is missing"
}
"error": "already_assigned",
    "error_description": "customer is already assigned to employee."
{
     "error": "save_failed",
     "error_description": "Failed to save instance"
}

Failure case:response.status = 404
{
    "error":"not_found",
    "error_description": "The user with the id 999 doesn't exist."
}

Failure case:response.status = 500
{
     "error": "server_error",
     "error_description": "Oops! Something went wrong..."
}