(Quick Reference)

51 Assign groups of customers to promotion Lists - Reference Documentation

Version: 2.1

51 Assign groups of customers to promotion Lists

51.1 List

Service: List

Description: This web service return the list of customerGroupPromotionLists data in JSON Format

URL:

https://BASE_URL/api/VERSION/customerGroupPromotionLists

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

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 
promotionListReferenceWildcard search by the resource's referenceStringnopromotionListReference=Ref-6* , promotionListReference=*ef-6 , promotionListReference=*ef-6*
customerGroupReferenceWildcard search by the resource's referenceStringnocustomerGroupReference=Ref-6* , customerGroupReference=*ef-6 , customerGroupReference=*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": 2,
        "max": 100,
        "offset": 0,
        "previous": null,
        "next": null
    },
    "data": [
        {
            "id": 4,
            "promotionListReference": "RP-001",
            "customerGroupReference": "CG-001",
            "customerGroup": {
                "id": 5,
                "reference": "CG-001",
                "name": "CusG1",
                "href": "/api/v1/customerGroups/5"
            },
            "promotionList": {
                "id": 9,
                "reference": "RP-001",
                "href": "/api/v1/promotionLists/9"
            },
            "organization": "Lyon",
            "dateCreated": "2016-08-24T11:32:37Z",
            "lastUpdated": "2016-08-24T11:32:37Z"
        },
        {
            "id": 5,
            "promotionListReference": "RP-001",
            "customerGroupReference": "CG-002",
            "customerGroup": {
                "id": 6,
                "reference": "CG-002",
                "name": "CusG2",
                "href": "/api/v1/customerGroups/6"
            },
            "promotionList": {
                "id": 9,
                "reference": "RP-001",
                "href": "/api/v1/promotionLists/9"
            },
            "organization": "Lyon",
            "dateCreated": "2016-08-24T11:32:40Z",
            "lastUpdated": "2016-08-24T11:32:40Z"
        }
    ]
}

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..."
}

51.2 Show

Service: Show

Description: This web service return an existing customer promotion list record of the specified id in JSON format

Method: GET

URL:

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

Parameters:

NameDescriptionTypeRequiredExample values
idid of the desired objectLongYes777

URL with external_id:

https://BASE_URL/api/VERSION/customerGroupPromotionLists/reference/{customerGroupId}/{promotionListId}

Parameters:

NameDescriptionTypeRequiredExamples values
customerGroupIdreference of the customer groupStringYesCG-002
promotionListIdreference of the promotion listStringYesPL-001

Success Output

Success case: response.status=200
{
    "id": 4,
    "promotionListReference": "RP-001",
    "customerGroupReference": "CG-001",
    "customerGroup": {
        "id": 5,
        "reference": "CG-001",
        "name": "CusG1",
        "href": "/api/v1/customerGroups/5"
    },
    "promotionList": {
        "id": 9,
        "reference": "RP-001",
        "href": "/api/v1/promotionLists/9"
    },
    "organization": "Lyon",
    "dateCreated": "2016-08-24T11:32:37Z",
    "lastUpdated": "2016-08-24T11:32:37Z"
}

Failure Output

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

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

51.3 Delete

Service: Delete

Description: This web service is used in order to delete an existing customerGroupPromotionLists object from the database

Method: DELETE

URL:

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

Parameters:

NameDescriptionTypeRequiredExamples values
idId of the desired record to deleteLongYes777

URL with external_id:

https://BASE_URL/api/VERSION/customerGroupPromotionLists/reference/{customerGroupId}/{promotionListId}

Parameters:

NameDescriptionTypeRequiredExamples values
customerGroupIdreference of the customer groupStringYesCG-002
promotionListIdreference of the promotion listStringYesPL-001

Success Output

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

Failure Output

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

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"
}

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

51.4 Update

Service: Update

Description: This web service is used to update an existing customerGroupPromotionLists object to the database

Method: PUT

Request content type: application/json

URL:

https://BASE_URL/api/VERSION/customerGroupPromotionLists

Parameters:

NameDescriptionTypeRequiredExample values
idid of the desired record to updateLongYes123
promotionListIdthe id of the promotionList to assignLongYes777
customerGroupIdthe id of the customer to assignLongYes111

URL with external_id:

https://BASE_URL/api/VERSION/customerGroupPromotionLists/reference/{customerGroupId}/{promotionListId}

Parameters:

NameDescriptionTypeRequiredExamples values
customerGroupIdreference of the customer groupStringYesCG-002
promotionListIdreference of the promotion listStringYesPL-001

If the value applyToAllCustomers of the specified promotion list is true then update can not be achieved

Success Output

Success case: response.status = 200
{
    "id": 6,
    "promotionListReference": "RP-001",
    "customerGroupReference": "CG-003",
    "customerGroup": {
        "id": 7,
        "reference": "CG-003",
        "name": "CusG3",
        "href": "/api/v1/customerGroups/7"
    },
    "promotionList": {
        "id": 9,
        "reference": "RP-001",
        "href": "/api/v1/promotionLists/9"
    },
    "organization": "Lyon",
    "dateCreated": "2016-08-24T11:42:30Z",
    "lastUpdated": "2016-08-24T11:42:30Z"
}

Failure Output

Failure case:response.status = 400
{
    "error": "missing_param",
    "error_description": "promotionListId parameter is missing"
}
{
    "error": "invalid_param_type",
    "error_description": "The type of parameter id you provided is not valid for this request."
}
{
    "error": "already_assigned",
    "error_description": "customer group is already assigned to promotionList."
}
{
     "error": "save_failed",
     "error_description": "Failed to save instance"
}

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

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

51.5 Create

Service: Save

Description: This web service is used to add a new customerGroupPromotionLists object to the database

URL:

https://BASE_URL/api/VERSION/customerGroupPromotionLists

Method: POST

Request content type: application/json

Parameters:

NameDescriptionTypeRequiredExample values
promotionListIdthe id of the promotionList to assignLong/StringYes777
customerGroupIdthe id of the customer to assignLong/StringYes111
useExternalIdBy default, it is set to false. set it to true if you want to use external ids.Booleannotrue , false

If the value applyToAllCustomers of the specified promotion list is true then save can not be achieved

Success Output

Success case: response.status = 201
{
    "id": 6,
    "promotionListReference": "RP-001",
    "customerGroupReference": "CG-003",
    "customerGroup": {
        "id": 7,
        "reference": "CG-003",
        "name": "CusG3",
        "href": "/api/v1/customerGroups/7"
    },
    "promotionList": {
        "id": 9,
        "reference": "RP-001",
        "href": "/api/v1/promotionLists/9"
    },
    "organization": "Lyon",
    "dateCreated": "2016-08-24T11:42:30Z",
    "lastUpdated": "2016-08-24T11:42:30Z"
}

Failure Output

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

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

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