Use this method if you want to update the status of an existing order and create an order history entry. The status history entry must also contain extra information as shown in the JSON example.
PATCH https://gambio-shop.de/shop1/api.php/v2/orders/{order_id}/status
Parameter name | Value | Description | Additional |
---|---|---|---|
order_id | int64 | The orders ID |
Required |
Read-only parameters such as a resource's ID field are to be omitted.
The request body takes a GXOrderStatusHistory resource, containing the following writable properties:
{
"comment": "",
"customerId": 1,
"customerNotified": true,
"dateAdded": "2015-11-06 12:22:39",
"statusId": 1
}
{
"comment": "string",
"customerNotified": "boolean",
"dateAdded": "string",
"statusId": "int64"
}
Name | Type | Description | Additional |
---|---|---|---|
comment | string | ||
customerNotified | boolean | ||
dateAdded | string | ||
statusId | int64 |
In order to provide the authentication, you must insert the Basic Auth inside the HTTP header. The Basic Auth
is an encrypted base64 string that holds the following content: admin@shop.de:12345
where the structure is
as follows: username:password
.
An example header would look as follows:
Authorization: Basic YWRtaW5Ac2hvcC5kZToxMjM0NQ==
This request requires the use of one of following authorisation methods:
BASIC
.
The following HTTP status codes may be returned, optionally with a response resource.
Status code | Description | Resource |
---|---|---|
200 | OK Upon success, returns the updated order status |
GXOrderStatus |
400 | Bad Request (Missing data or invalid ID) |
defaultErrorResponse |
Here are some example implementations for this operation.
MediaType mediaType = MediaType.parse("application/json"); RequestBody body = RequestBody.create(mediaType, "{\"id\":0,\"statusId\":0,\"dateAdded\":\"\",\"comment\":\"\",\"customerNotified\":false}"); Request request = new Request.Builder() .url("https://gambio-shop.de/shop1/api.php/v2/orders/{order_id}/status") .patch(body) .addHeader("content-type", "application/json") .addHeader("authorization", "Basic REPLACE_BASIC_AUTH") .build();
Response response = client.newCall(request).execute();
var options = { "method": "PATCH", "hostname": "gambio-shop.de", "port": null, "path": "/shop1/api.php/v2/orders/{order_id}/status", "headers": {
"content-type": "application/json",
"authorization": "Basic REPLACE_BASIC_AUTH"
} };
var req = http.request(options, function (res) { var chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
var body = Buffer.concat(chunks);
console.log(body.toString());
}); });
req.write(JSON.stringify({ id: 0, statusId: 0, dateAdded: '', comment: '', customerNotified: false })); req.end();
var options = { method: 'PATCH', url: 'https://gambio-shop.de/shop1/api.php/v2/orders/{order_id}/status', headers: { authorization: 'Basic REPLACE_BASIC_AUTH',
'content-type': 'application/json' },
body: { id: 0,
statusId: 0,
dateAdded: '<ADD STRING VALUE>',
comment: '<ADD STRING VALUE>',
customerNotified: false },
json: true };
request(options, function (error, response, body) { if (error) throw new Error(error);
console.log(body); });
var req = unirest("PATCH", "https://gambio-shop.de/shop1/api.php/v2/orders/{order_id}/status");
req.headers({ "authorization": "Basic REPLACE_BASIC_AUTH", "content-type": "application/json" });
req.type("json"); req.send({ "id": 0, "statusId": 0, "dateAdded": "", "comment": "", "customerNotified": false });
req.end(function (res) { if (res.error) throw new Error(res.error);
console.log(res.body); });
var xhr = new XMLHttpRequest(); xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () { if (this.readyState === this.DONE) {
console.log(this.responseText);
} });
xhr.open("PATCH", "https://gambio-shop.de/shop1/api.php/v2/orders/{order_id}/status"); xhr.setRequestHeader("content-type", "application/json"); xhr.setRequestHeader("authorization", "Basic REPLACE_BASIC_AUTH");
xhr.send(data);
"content-type": "application/json",
"authorization": "Basic REPLACE_BASIC_AUTH"
}, "processData": false, "data": "{\"id\":0,\"statusId\":0,\"dateAdded\":\"\",\"comment\":\"\",\"customerNotified\":false}" }
$.ajax(settings).done(function (response) { console.log(response); });
$curl = curl_init();
curl_setopt_array($curl, array( CURLOPT_URL => "https://gambio-shop.de/shop1/api.php/v2/orders/{order_id}/status", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "PATCH", CURLOPT_POSTFIELDS => "{\"id\":0,\"statusId\":0,\"dateAdded\":\"\",\"comment\":\"\",\"customerNotified\":false}", CURLOPT_HTTPHEADER => array(
"authorization: Basic REPLACE_BASIC_AUTH",
"content-type: application/json"
), ));
$response = curl_exec($curl); $err = curl_error($curl);
curl_close($curl);
if ($err) { echo "cURL Error #:" . $err; } else { echo $response; }
HttpRequest::methodRegister('PATCH'); $request = new HttpRequest(); $request->setUrl('https://gambio-shop.de/shop1/api.php/v2/orders/{order_id}/status'); $request->setMethod(HttpRequest::HTTP_METH_PATCH);
$request->setHeaders(array( 'authorization' => 'Basic REPLACE_BASIC_AUTH', 'content-type' => 'application/json' ));
$request->setBody('{"id":0,"statusId":0,"dateAdded":"","comment":"","customerNotified":false}');
try { $response = $request->send();
echo $response->getBody(); } catch (HttpException $ex) { echo $ex; }
$client = new http\Client; $request = new http\Client\Request;
$body = new http\Message\Body; $body->append('{"id":0,"statusId":0,"dateAdded":"","comment":"","customerNotified":false}');
$request->setRequestUrl('https://gambio-shop.de/shop1/api.php/v2/orders/{order_id}/status'); $request->setRequestMethod('PATCH'); $request->setBody($body);
$request->setHeaders(array( 'authorization' => 'Basic REPLACE_BASIC_AUTH', 'content-type' => 'application/json' ));
$client->enqueue($request)->send(); $response = $client->getResponse();
echo $response->getBody();
conn = http.client.HTTPSConnection("gambio-shop.de")
payload = "{\"id\":0,\"statusId\":0,\"dateAdded\":\"\",\"comment\":\"\",\"customerNotified\":false}"
headers = {
'content-type': "application/json",
'authorization': "Basic REPLACE_BASIC_AUTH"
}
conn.request("PATCH", "/shop1/api.php/v2/orders/{order_id}/status", payload, headers)
res = conn.getresponse() data = res.read()
print(data.decode("utf-8"))
url = "https://gambio-shop.de/shop1/api.php/v2/orders/{order_id}/status"
payload = "{\"id\":0,\"statusId\":0,\"dateAdded\":\"\",\"comment\":\"\",\"customerNotified\":false}" headers = {
'content-type': "application/json",
'authorization': "Basic REPLACE_BASIC_AUTH"
}
response = requests.request("PATCH", url, data=payload, headers=headers)
print(response.text)
url = URI("https://gambio-shop.de/shop1/api.php/v2/orders/{order_id}/status")
http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Patch.new(url) request["content-type"] = 'application/json' request["authorization"] = 'Basic REPLACE_BASIC_AUTH' request.body = "{\"id\":0,\"statusId\":0,\"dateAdded\":\"\",\"comment\":\"\",\"customerNotified\":false}"
response = http.request(request) puts response.read_body
curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "PATCH"); curl_easy_setopt(hnd, CURLOPT_URL, "https://gambio-shop.de/shop1/api.php/v2/orders/{order_id}/status");
struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "authorization: Basic REPLACE_BASIC_AUTH"); headers = curl_slist_append(headers, "content-type: application/json"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, "{\"id\":0,\"statusId\":0,\"dateAdded\":\"\",\"comment\":\"\",\"customerNotified\":false}");
CURLcode ret = curl_easy_perform(hnd);
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://gambio-shop.de/shop1/api.php/v2/orders/{order_id}/status"
payload := strings.NewReader("{\"id\":0,\"statusId\":0,\"dateAdded\":\"<ADD STRING VALUE>\",\"comment\":\"<ADD STRING VALUE>\",\"customerNotified\":false}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("content-type", "application/json")
req.Header.Add("authorization", "Basic REPLACE_BASIC_AUTH")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
NSDictionary *headers = @{ @"content-type": @"application/json",
@"authorization": @"Basic REPLACE_BASIC_AUTH" };
NSDictionary *parameters = @{ @"id": @0,
@"statusId": @0,
@"dateAdded": @"<ADD STRING VALUE>",
@"comment": @"<ADD STRING VALUE>",
@"customerNotified": @NO };
NSData *postData = [NSJSONSerialization dataWithJSONObject:parameters options:0 error:nil];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"https://gambio-shop.de/shop1/api.php/v2/orders/{order_id}/status"]
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:10.0];
[request setHTTPMethod:@"PATCH"]; [request setAllHTTPHeaderFields:headers]; [request setHTTPBody:postData];
NSURLSession *session = [NSURLSession sharedSession]; NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request
completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
if (error) {
NSLog(@"%@", error);
} else {
NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *) response;
NSLog(@"%@", httpResponse);
}
}];
[dataTask resume];
let headers = [ "content-type": "application/json", "authorization": "Basic REPLACE_BASIC_AUTH" ] let parameters = [ "id": 0, "statusId": 0, "dateAdded": "", "comment": "", "customerNotified": false ]
let postData = NSJSONSerialization.dataWithJSONObject(parameters, options: nil, error: nil)
var request = NSMutableURLRequest(URL: NSURL(string: "https://gambio-shop.de/shop1/api.php/v2/orders/{order_id}/status")!,
cachePolicy: .UseProtocolCachePolicy,
timeoutInterval: 10.0)
request.HTTPMethod = "PATCH" request.allHTTPHeaderFields = headers request.HTTPBody = postData
let session = NSURLSession.sharedSession() let dataTask = session.dataTaskWithRequest(request, completionHandler: { (data, response, error) -> Void in if (error != nil) {
println(error)
} else {
let httpResponse = response as? NSHTTPURLResponse
println(httpResponse)
} })
dataTask.resume()
let uri = Uri.of_string "https://gambio-shop.de/shop1/api.php/v2/orders/{order_id}/status" in let headers = Header.add_list (Header.init ()) [ ("content-type", "application/json"); ("authorization", "Basic REPLACE_BASIC_AUTH"); ] in let body = Cohttp_lwt_body.of_string "{\"id\":0,\"statusId\":0,\"dateAdded\":\"\",\"comment\":\"\",\"customerNotified\":false}" in
Client.call ~headers ~body `PATCH uri
= fun (res, body_stream) -> (* Do stuff with the result *)