curl --request POST \
--url https://devx.{environment}.oleria.io/v1/action-jobs/{id}/revert \
--header 'Authorization: Bearer <token>'import requests
url = "https://devx.{environment}.oleria.io/v1/action-jobs/{id}/revert"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://devx.{environment}.oleria.io/v1/action-jobs/{id}/revert', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://devx.{environment}.oleria.io/v1/action-jobs/{id}/revert",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://devx.{environment}.oleria.io/v1/action-jobs/{id}/revert"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://devx.{environment}.oleria.io/v1/action-jobs/{id}/revert")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://devx.{environment}.oleria.io/v1/action-jobs/{id}/revert")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"jobId": "9f2b1c7e-5a84-4d6b-9c31-0e7f8a2d4b16",
"self": "/v1/action-jobs/9f2b1c7e-5a84-4d6b-9c31-0e7f8a2d4b16"
}{
"code": "BAD_REQUEST",
"message": "The request was malformed."
}{
"code": "UNAUTHORIZED",
"message": "Missing or invalid authentication token."
}{
"code": "FORBIDDEN",
"message": "The token lacks the required scope."
}{
"code": "NOT_FOUND",
"message": "No resource with the given id."
}{
"code": "REVERT_NOT_POSSIBLE",
"message": "This job cannot be reverted."
}{
"code": "TOO_MANY_REQUESTS",
"message": "Rate limit exceeded. Retry after the specified interval."
}{
"code": "INTERNAL_ERROR",
"message": "An unexpected error occurred."
}Revert
Undoes the change this job applied, where the application it was applied to supports undoing it. Check revert.available on the job first: whether a change can be undone depends on that application and on how long ago the change was made. Reverting creates a new job, returned here, which reports the undo’s own progress and per-target results; the original job records that it was reverted and points at this one. A revert cannot itself be reverted. Requires the https://devx.{environment}.oleria.io/write scope.
curl --request POST \
--url https://devx.{environment}.oleria.io/v1/action-jobs/{id}/revert \
--header 'Authorization: Bearer <token>'import requests
url = "https://devx.{environment}.oleria.io/v1/action-jobs/{id}/revert"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://devx.{environment}.oleria.io/v1/action-jobs/{id}/revert', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://devx.{environment}.oleria.io/v1/action-jobs/{id}/revert",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://devx.{environment}.oleria.io/v1/action-jobs/{id}/revert"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://devx.{environment}.oleria.io/v1/action-jobs/{id}/revert")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://devx.{environment}.oleria.io/v1/action-jobs/{id}/revert")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"jobId": "9f2b1c7e-5a84-4d6b-9c31-0e7f8a2d4b16",
"self": "/v1/action-jobs/9f2b1c7e-5a84-4d6b-9c31-0e7f8a2d4b16"
}{
"code": "BAD_REQUEST",
"message": "The request was malformed."
}{
"code": "UNAUTHORIZED",
"message": "Missing or invalid authentication token."
}{
"code": "FORBIDDEN",
"message": "The token lacks the required scope."
}{
"code": "NOT_FOUND",
"message": "No resource with the given id."
}{
"code": "REVERT_NOT_POSSIBLE",
"message": "This job cannot be reverted."
}{
"code": "TOO_MANY_REQUESTS",
"message": "Rate limit exceeded. Retry after the specified interval."
}{
"code": "INTERNAL_ERROR",
"message": "An unexpected error occurred."
}Authorizations
OAuth 2.0 client-credentials flow. Request an access token from the token endpoint and send it as Authorization: Bearer <token>.
Path Parameters
Id of the job, as returned by the write that created it.
Response
The change was accepted and is being applied. Poll the returned job for its outcome.
Was this page helpful?

