Class ReviewsApiV2Controller
Class ReviewsApiV2Controller
Provides a gateway to the ReviewWriteService and ReviewReadService classes, which handle the shop
review resources.
-
AbstractApiV2Controller
-
┗
HttpApiV2Controller
-
┗
ReviewsApiV2Controller
Methods summary
protected
__initialize( void )
Initializes API Controller
Initializes API Controller
public
get( void )
Api
{get} /reviews/:id Get reviews
Apidescription
Get multiple or a single review record through the GET method
Apierror
400-BadRequest Reviews data were not provided or reviews record or is invalid.
404-NotFound Review record could not be found.
Apierrorexample
Error-Response (Missing or invalid ID)
HTTP/1.1 400 Bad Request
{
"code": 400,
"status": "error",
"message": "Review record ID is invalid."
}
Error-Response (Review Not Found)
HTTP/1.1 404 Not Found
{
"code": 404,
"status": "error",
"message": "Review record could not be found."
}
Apiexample
{curl} Get All Review records
curl -i --user admin@shop.de:12345 http://shop.de/api.php/v2/reviews
{curl} Get Review record With ID = 982
curl -i --user admin@shop.de:12345 http://shop.de/api.php/v2/reviews/982
Apigroup
Reviews
Apiname
GetReviews
Apiversion
2.6.0
public
post( void )
Api
{post} /reviews Create review
Apidescription
This method enables the creation of a new review into the system.
Apierror
400-BadRequest The body of the request was empty.
Apierrorexample
Error-Response
HTTP/1.1 400 Bad Request
{
"code": 400,
"status": "error",
"message": "Review data were not provided."
}
Apigroup
Reviews
Apiname
CreateReview
Apiparam
{Number} productId The ID of the reviewed product.
{Number} rating The numeric rating value. All integers from 1 to 5 are valid.
{Number} languageId The language ID.
{String} text The review content.
{Object} customer Contains various customer specific information.
{Number} customer.customerId Customer's ID.
{String} customer.customerName Customer's name.
Apiparamexample
{json} Review entity
{
"productId": 2,
"rating": 5,
"languageId": 1,
"text": "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam",
"customer": {
"customerId": 3,
"customerName": "John Doe"
}
}
Apisuccess
(201) Request-Body If successful, this method returns the complete review resource in the response
body.
Apisuccessexample
{json} Success-Response
{
"id": 3,
"productId": 2,
"rating": 5,
"dateAdded": "2018-01-10 19:10:00",
"lastModified": "2018-01-10 19:10:00",
"languageId": 1,
"text": "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam",
"customer": {
"customerId": 3,
"customerName": "John Doe"
}
}
Apiversion
2.6.0
public
put( void )
Api
{put} /reviews/:id Update review
Apidescription
Use this method to update an existing review record. Take a look in the POST method for more detailed
explanation on every resource property.
Apierror
400-BadRequest Review data were not provided.
Apierrorexample
Error-Response (Missing or invalid ID)
HTTP/1.1 400 Bad Request
{
"code": 400,
"status": "error",
"message": "Review record ID was not provided or is invalid."
}
Error-Response (No data)
HTTP/1.1 400 Bad Request
{
"code": 400,
"status": "error",
"message": "Review data were not provided."
}
Apigroup
Reviews
Apiname
UpdateReview
Apisuccess
Response-Body If successful, this method returns the updated withdrawal resource in the
response body.
Apiversion
2.6.0
public
delete( void )
Api
{delete} /reviews/:id Delete review
Apidescription
Removes a review record from the system. This method will always return success
even if the review does not exist (due to internal ReviewWriteService architecture
decisions, which strive to avoid unnecessary failures).
Apierrorexample
Error-Response (Missing or invalid ID)
HTTP/1.1 400 Bad Request
{
"code": 400,
"status": "error",
"message": "Review record ID was not provided or is invalid."
}
Apiexample
{curl} Delete review with ID = 84
curl -X DELETE --user admin@shop.de:12345 http://shop.de/api.php/v2/reviews/84
Apigroup
Reviews
Apiname
DeleteReview
Apisuccessexample
{json} Success-Response
{
"code": 200,
"status": "success",
"action": "delete",
"reviewId": 84
}
Apiversion
2.6.0
_linkResponse(),
_locateResource(),
_mapResponse(),
_minimizeResponse(),
_paginateResponse(),
_searchResponse(),
_setJsonValue(),
_sortResponse(),
_writeResponse()
__construct(),
_prepareResponse(),
_setRateLimitHeader(),
_validateRequest()
Constants summary
DEFAULT_CONTROLLER_NAME,
DEFAULT_PAGE_ITEMS,
DEFAULT_RATE_LIMIT,
DEFAULT_RATE_RESET_PERIOD
Properties summary
$api,
$uri