Class WithdrawalsApiV2Controller
Class WithdrawalsApiV2Controller
Provides a gateway to the WithdrawalWriteService and WithdrawalReadService classes, which handle the shop
withdrawal resources.
-
AbstractApiV2Controller
-
┗
HttpApiV2Controller
-
┗
WithdrawalsApiV2Controller
Methods summary
protected
__initialize( void )
Initializes API Controller
Initializes API Controller
public
get( void )
Api
{get} /withdrawals/:id Get withdrawals
Apidescription
Get multiple or a single withdrawal record through the GET method
Apierror
404-NotFound Withdrawal record could not be found.
Apierrorexample
Error-Response (Missing or invalid ID)
HTTP/1.1 400 Bad Request
{
"code": 400,
"status": "error",
"message": "Withdrawal record ID is invalid."
}
Error-Response (Withdrawal Not Found)
HTTP/1.1 404 Not Found
{
"code": 404,
"status": "error",
"message": "Withdrawal record could not be found."
}
Apiexample
{curl} Get All Withdrawal records
curl -i --user admin@shop.de:12345 http://shop.de/api.php/v2/withdrawals
{curl} Get Withdrawal record With ID = 982
curl -i --user admin@shop.de:12345 http://shop.de/api.php/v2/withdrawals/982
Apigroup
Withdrawals
Apiname
GetWithdrawals
Apiversion
2.6.0
public
post( void )
Api
{post} /withdrawals Create withdrawal
Apidescription
This method enables the creation of a new withdrawal 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": "Withdrawal data were not provided."
}
Apigroup
Withdrawals
Apiname
CreateWithdrawal
Apiparam
{String} withdrawalDate The withdrawal date. Must have the 'Y-m-d H:i:s' format.
{String} content The withdrawal content.
{Object} order Contains various order specific information.
{Number} order.orderId Order ID.
{Number} order.customerId Customer's ID.
{String} order.customerGender Customer's gender.
{String} order.customerFirstName Customer's first name.
{String} order.customerLastName Customer's last name.
{String} order.customerStreetAddress Customer's street address with house number.
{String} order.customerPostCode Customer's post code.
{String} order.customerCity Customer's city.
{String} order.customerCountry Customer's country.
{String} order.customerEmail Customer's email address.
{String} order.orderDate Order date. Must have the 'Y-m-d H:i:s' format.
{String} order.deliveryDate Delivery date. Must have the 'Y-m-d H:i:s' format.
{Boolean} createdByAdmin Whether the withdrawal was created by customer or by an admin.
Apiparamexample
{json} Withdrawal entity
{
"withdrawalDate": "2018-01-05 00:00:00",
"content": "Hiermit widerrufe(n) ich/wir den von mir/uns abgeschlossenen Vertrag ...",
"order": {
"orderId": 400212,
"customerId": 1,
"customerGender": "Herr",
"customerFirstName": "John",
"customerLastName": "Doe",
"customerStreetAddress": "Parallelweg 30",
"customerPostCode": "28219",
"customerCity": "Bremen",
"customerCountry": "Germany",
"customerEmail": "john@doe.com",
"orderDate": "2018-01-05 00:00:00",
"deliveryDate": "1970-01-01 00:00:00"
},
"createdByAdmin": true
}
Apisuccess
(201) Request-Body If successful, this method returns the complete withdrawal resource
in the response body.
Apisuccessexample
{json} Success-Response
{
"id": 3,
"withdrawalDate": "2018-01-05 00:00:00",
"content": "Hiermit widerrufe(n) ich/wir den von mir/uns abgeschlossenen Vertrag ...",
"order": {
"orderId": 400212,
"customerId": 1,
"customerGender": "Herr",
"customerFirstName": "John",
"customerLastName": "Doe",
"customerStreetAddress": "Parallelweg 30",
"customerPostCode": "28219",
"customerCity": "Bremen",
"customerCountry": "Germany",
"customerEmail": "john@doe.com",
"orderDate": "2018-01-05 00:00:00",
"deliveryDate": "1970-01-01 00:00:00"
},
"dateCreated": "2018-01-10 19:10:00",
"createdByAdmin": true
}
Apiversion
2.6.0
public
put( void )
Api
{put} /withdrawals/:id Update withdrawal
Apidescription
Use this method to update an existing withdrawal record. Take a look in the POST method for more detailed
explanation on every resource property.
Apierror
400-BadRequest Withdrawal data were not provided.
Apierrorexample
Error-Response (Missing or invalid ID)
HTTP/1.1 400 Bad Request
{
"code": 400,
"status": "error",
"message": "Withdrawal record ID was not provided or is invalid."
}
Error-Response (No data)
HTTP/1.1 400 Bad Request
{
"code": 400,
"status": "error",
"message": "Withdrawal data were not provided."
}
Apigroup
Withdrawals
Apiname
UpdateWithdrawal
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} /withdrawals/:id Delete withdrawal
Apidescription
Removes a withdrawal record from the system. This method will always return success
even if the withdrawal does not exist (due to internal WithdrawalWriteService 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": "Withdrawal record ID was not provided or is invalid."
}
Apiexample
{curl} Delete Withdrawal with ID = 84
curl -X DELETE --user admin@shop.de:12345 http://shop.de/api.php/v2/withdrawals/84
Apigroup
Withdrawals
Apiname
DeleteWithdrawal
Apisuccessexample
{json} Success-Response
{
"code": 200,
"status": "success",
"action": "delete",
"withdrawalId": 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