Get effective environment
curl --request GET \
--url https://api.replicas.dev/v1/environments/{environment_id}/effective \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.replicas.dev/v1/environments/{environment_id}/effective"
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}/effective', 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}/effective",
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}/effective"
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}/effective")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.replicas.dev/v1/environments/{environment_id}/effective")
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{
"chain": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"user_id": "<string>",
"is_global": true
}
],
"system_prompts": [
{
"environment_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"system_prompt": "<string>"
}
],
"repository": {
"repository_id": "<string>",
"repository_set_id": "<string>",
"origin_environment_id": "<string>"
},
"memory": {
"read": true,
"read_origin_environment_id": "<string>",
"write": true,
"write_origin_environment_id": "<string>"
},
"items": [
{
"kind": "variable",
"key": "<string>",
"origin_environment_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "own",
"inherited_from_environment_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"locked": true,
"masked": true,
"record": {}
}
]
}{
"error": "<string>",
"details": "<string>",
"code": "<string>"
}{
"error": "<string>",
"details": "<string>",
"code": "<string>"
}{
"error": "<string>",
"details": "<string>",
"code": "<string>"
}{
"error": "<string>",
"details": "<string>",
"code": "<string>"
}Environments
Get effective environment
Returns the environment’s configuration folded over its chain (Global, then each ancestor, then the environment itself) with provenance for every variable, file, MCP, skill, skill registry, plugin, and secret-sync connection. System prompts are listed in the order they’re combined. Values from environments you can’t read are blanked and flagged masked.
GET
/
v1
/
environments
/
{environment_id}
/
effective
Get effective environment
curl --request GET \
--url https://api.replicas.dev/v1/environments/{environment_id}/effective \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.replicas.dev/v1/environments/{environment_id}/effective"
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}/effective', 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}/effective",
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}/effective"
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}/effective")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.replicas.dev/v1/environments/{environment_id}/effective")
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{
"chain": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"user_id": "<string>",
"is_global": true
}
],
"system_prompts": [
{
"environment_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"system_prompt": "<string>"
}
],
"repository": {
"repository_id": "<string>",
"repository_set_id": "<string>",
"origin_environment_id": "<string>"
},
"memory": {
"read": true,
"read_origin_environment_id": "<string>",
"write": true,
"write_origin_environment_id": "<string>"
},
"items": [
{
"kind": "variable",
"key": "<string>",
"origin_environment_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "own",
"inherited_from_environment_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"locked": true,
"masked": true,
"record": {}
}
]
}{
"error": "<string>",
"details": "<string>",
"code": "<string>"
}{
"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.
⌘I