Get warm hook
curl --request GET \
--url https://api.replicas.dev/v1/environments/{environment_id}/warm-hooks \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.replicas.dev/v1/environments/{environment_id}/warm-hooks"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.replicas.dev/v1/environments/{environment_id}/warm-hooks', 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.replicas.dev/v1/environments/{environment_id}/warm-hooks",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
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.replicas.dev/v1/environments/{environment_id}/warm-hooks"
req, _ := http.NewRequest("GET", 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.get("https://api.replicas.dev/v1/environments/{environment_id}/warm-hooks")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.replicas.dev/v1/environments/{environment_id}/warm-hooks")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"warm_hook": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"organization_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"environment_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"version": 123,
"content": "<string>",
"is_active": true,
"created_at": "2023-11-07T05:31:56Z"
},
"warm_pool": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"organization_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"environment_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"enabled": true,
"target_size": 123,
"generation": 123,
"error_count": 123,
"next_retry_at": "2023-11-07T05:31:56Z",
"last_error_at": "2023-11-07T05:31:56Z",
"last_error_message": "<string>",
"has_base_snapshot": true,
"updated_at": "2023-11-07T05:31:56Z",
"ready_count": 123,
"stale_count": 123,
"warming_count": 123,
"snapshotting_count": 123,
"last_failure_at": "2023-11-07T05:31:56Z",
"last_failure_reason": "<string>"
},
"snapshots": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"warm_pool_config_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"generation": 123,
"is_current": true,
"is_fallback": true,
"created_at": "2023-11-07T05:31:56Z"
}
]
}{
"error": "<string>",
"details": "<string>",
"code": "<string>"
}{
"error": "<string>",
"details": "<string>",
"code": "<string>"
}{
"error": "<string>",
"details": "<string>",
"code": "<string>"
}Hooks
Get warm hook
Returns the environment’s warm hook, warm pool status, and up to 20 recent snapshots.
GET
/
v1
/
environments
/
{environment_id}
/
warm-hooks
Get warm hook
curl --request GET \
--url https://api.replicas.dev/v1/environments/{environment_id}/warm-hooks \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.replicas.dev/v1/environments/{environment_id}/warm-hooks"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.replicas.dev/v1/environments/{environment_id}/warm-hooks', 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.replicas.dev/v1/environments/{environment_id}/warm-hooks",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
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.replicas.dev/v1/environments/{environment_id}/warm-hooks"
req, _ := http.NewRequest("GET", 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.get("https://api.replicas.dev/v1/environments/{environment_id}/warm-hooks")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.replicas.dev/v1/environments/{environment_id}/warm-hooks")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"warm_hook": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"organization_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"environment_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"version": 123,
"content": "<string>",
"is_active": true,
"created_at": "2023-11-07T05:31:56Z"
},
"warm_pool": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"organization_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"environment_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"enabled": true,
"target_size": 123,
"generation": 123,
"error_count": 123,
"next_retry_at": "2023-11-07T05:31:56Z",
"last_error_at": "2023-11-07T05:31:56Z",
"last_error_message": "<string>",
"has_base_snapshot": true,
"updated_at": "2023-11-07T05:31:56Z",
"ready_count": 123,
"stale_count": 123,
"warming_count": 123,
"snapshotting_count": 123,
"last_failure_at": "2023-11-07T05:31:56Z",
"last_failure_reason": "<string>"
},
"snapshots": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"warm_pool_config_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"generation": 123,
"is_current": true,
"is_fallback": true,
"created_at": "2023-11-07T05:31:56Z"
}
]
}{
"error": "<string>",
"details": "<string>",
"code": "<string>"
}{
"error": "<string>",
"details": "<string>",
"code": "<string>"
}{
"error": "<string>",
"details": "<string>",
"code": "<string>"
}Authorizations
Organization or personal API key from Settings → API Keys.
Headers
API version. 2026-10-07 returns snake_case responses. See versioning.
Available options:
2026-10-07 Path Parameters
Environment UUID, or the literal string global.
Response
Successful response
The active warm hook for the environment (null if none has ever been saved).
Show child attributes
Show child attributes
The warm pool config and current counts (null if no pool has been configured).
Show child attributes
Show child attributes
Up to 20 retained snapshots ordered newest first.
Show child attributes
Show child attributes
⌘I