cURL
curl --request POST \
--url https://api.rigbox.dev/api/v1/workspaces/{id}/app-releases/{release_id}/activate \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.rigbox.dev/api/v1/workspaces/{id}/app-releases/{release_id}/activate"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.rigbox.dev/api/v1/workspaces/{id}/app-releases/{release_id}/activate', 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://api.rigbox.dev/api/v1/workspaces/{id}/app-releases/{release_id}/activate",
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://api.rigbox.dev/api/v1/workspaces/{id}/app-releases/{release_id}/activate"
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://api.rigbox.dev/api/v1/workspaces/{id}/app-releases/{release_id}/activate")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.rigbox.dev/api/v1/workspaces/{id}/app-releases/{release_id}/activate")
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{
"release": {
"apps": "<unknown>",
"artifact_release_id": "<string>",
"can_rollback": true,
"created_at": "2023-11-07T05:31:56Z",
"id": "<string>",
"idempotency_key": "<string>",
"is_current": true,
"owner_key": "<string>",
"status": "<string>",
"updated_at": "2023-11-07T05:31:56Z",
"user_id": "<string>",
"workspace_id": "<string>",
"error": "<string>",
"previous_release_id": "<string>",
"source_commit": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}
}Activate an app release
POST
/
api
/
v1
/
workspaces
/
{id}
/
app-releases
/
{release_id}
/
activate
cURL
curl --request POST \
--url https://api.rigbox.dev/api/v1/workspaces/{id}/app-releases/{release_id}/activate \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.rigbox.dev/api/v1/workspaces/{id}/app-releases/{release_id}/activate"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.rigbox.dev/api/v1/workspaces/{id}/app-releases/{release_id}/activate', 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://api.rigbox.dev/api/v1/workspaces/{id}/app-releases/{release_id}/activate",
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://api.rigbox.dev/api/v1/workspaces/{id}/app-releases/{release_id}/activate"
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://api.rigbox.dev/api/v1/workspaces/{id}/app-releases/{release_id}/activate")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.rigbox.dev/api/v1/workspaces/{id}/app-releases/{release_id}/activate")
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{
"release": {
"apps": "<unknown>",
"artifact_release_id": "<string>",
"can_rollback": true,
"created_at": "2023-11-07T05:31:56Z",
"id": "<string>",
"idempotency_key": "<string>",
"is_current": true,
"owner_key": "<string>",
"status": "<string>",
"updated_at": "2023-11-07T05:31:56Z",
"user_id": "<string>",
"workspace_id": "<string>",
"error": "<string>",
"previous_release_id": "<string>",
"source_commit": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}
}Requires the v0.13 app-release capability for your account. See app release workflows for preparation, activation, and recovery.
The handler can accept work asynchronously. Poll the release and inspect its status rather than treating an accepted request as a healthy deployment.
The workspace must be running with an available network address. Otherwise, this endpoint returns HTTP 409 with an actionable message before accepting a release operation. Start the workspace explicitly, wait for it to be running, and submit the request again. Retained history and stored deployment logs remain available while it is stopped.