Import From Provider
curl --request POST \
--url https://api.example.com/integrations/{workspace_id}/{team_id}/{project_id}/{environment_id}/ \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"token": "<string>",
"source": {
"project_id": "<string>",
"environment_id": "<string>",
"service_id": "<string>",
"target": "<string>"
},
"reveal": false,
"mode": "skip"
}
'import requests
url = "https://api.example.com/integrations/{workspace_id}/{team_id}/{project_id}/{environment_id}/"
payload = {
"token": "<string>",
"source": {
"project_id": "<string>",
"environment_id": "<string>",
"service_id": "<string>",
"target": "<string>"
},
"reveal": False,
"mode": "skip"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
token: '<string>',
source: {
project_id: '<string>',
environment_id: '<string>',
service_id: '<string>',
target: '<string>'
},
reveal: false,
mode: 'skip'
})
};
fetch('https://api.example.com/integrations/{workspace_id}/{team_id}/{project_id}/{environment_id}/', 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.example.com/integrations/{workspace_id}/{team_id}/{project_id}/{environment_id}/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'token' => '<string>',
'source' => [
'project_id' => '<string>',
'environment_id' => '<string>',
'service_id' => '<string>',
'target' => '<string>'
],
'reveal' => false,
'mode' => 'skip'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/integrations/{workspace_id}/{team_id}/{project_id}/{environment_id}/"
payload := strings.NewReader("{\n \"token\": \"<string>\",\n \"source\": {\n \"project_id\": \"<string>\",\n \"environment_id\": \"<string>\",\n \"service_id\": \"<string>\",\n \"target\": \"<string>\"\n },\n \"reveal\": false,\n \"mode\": \"skip\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
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.example.com/integrations/{workspace_id}/{team_id}/{project_id}/{environment_id}/")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"token\": \"<string>\",\n \"source\": {\n \"project_id\": \"<string>\",\n \"environment_id\": \"<string>\",\n \"service_id\": \"<string>\",\n \"target\": \"<string>\"\n },\n \"reveal\": false,\n \"mode\": \"skip\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/integrations/{workspace_id}/{team_id}/{project_id}/{environment_id}/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"token\": \"<string>\",\n \"source\": {\n \"project_id\": \"<string>\",\n \"environment_id\": \"<string>\",\n \"service_id\": \"<string>\",\n \"target\": \"<string>\"\n },\n \"reveal\": false,\n \"mode\": \"skip\"\n}"
response = http.request(request)
puts response.read_body{
"environment_id": "<string>",
"created": 123,
"updated": 123,
"unchanged": 123,
"skipped": [
{
"key": "<string>",
"reason": "<string>"
}
]
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}SECRET IMPORT
Import From Provider
Write a provider’s variables into this environment.
New keys are created at version 1. Existing keys are left alone under ‘skip’; under ‘overwrite’ they gain a new version, so the value that was here stays readable through the version history.
POST
/
integrations
/
{workspace_id}
/
{team_id}
/
{project_id}
/
{environment_id}
/
Import From Provider
curl --request POST \
--url https://api.example.com/integrations/{workspace_id}/{team_id}/{project_id}/{environment_id}/ \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"token": "<string>",
"source": {
"project_id": "<string>",
"environment_id": "<string>",
"service_id": "<string>",
"target": "<string>"
},
"reveal": false,
"mode": "skip"
}
'import requests
url = "https://api.example.com/integrations/{workspace_id}/{team_id}/{project_id}/{environment_id}/"
payload = {
"token": "<string>",
"source": {
"project_id": "<string>",
"environment_id": "<string>",
"service_id": "<string>",
"target": "<string>"
},
"reveal": False,
"mode": "skip"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
token: '<string>',
source: {
project_id: '<string>',
environment_id: '<string>',
service_id: '<string>',
target: '<string>'
},
reveal: false,
mode: 'skip'
})
};
fetch('https://api.example.com/integrations/{workspace_id}/{team_id}/{project_id}/{environment_id}/', 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.example.com/integrations/{workspace_id}/{team_id}/{project_id}/{environment_id}/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'token' => '<string>',
'source' => [
'project_id' => '<string>',
'environment_id' => '<string>',
'service_id' => '<string>',
'target' => '<string>'
],
'reveal' => false,
'mode' => 'skip'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/integrations/{workspace_id}/{team_id}/{project_id}/{environment_id}/"
payload := strings.NewReader("{\n \"token\": \"<string>\",\n \"source\": {\n \"project_id\": \"<string>\",\n \"environment_id\": \"<string>\",\n \"service_id\": \"<string>\",\n \"target\": \"<string>\"\n },\n \"reveal\": false,\n \"mode\": \"skip\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
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.example.com/integrations/{workspace_id}/{team_id}/{project_id}/{environment_id}/")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"token\": \"<string>\",\n \"source\": {\n \"project_id\": \"<string>\",\n \"environment_id\": \"<string>\",\n \"service_id\": \"<string>\",\n \"target\": \"<string>\"\n },\n \"reveal\": false,\n \"mode\": \"skip\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/integrations/{workspace_id}/{team_id}/{project_id}/{environment_id}/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"token\": \"<string>\",\n \"source\": {\n \"project_id\": \"<string>\",\n \"environment_id\": \"<string>\",\n \"service_id\": \"<string>\",\n \"target\": \"<string>\"\n },\n \"reveal\": false,\n \"mode\": \"skip\"\n}"
response = http.request(request)
puts response.read_body{
"environment_id": "<string>",
"created": 123,
"updated": 123,
"unchanged": 123,
"skipped": [
{
"key": "<string>",
"reason": "<string>"
}
]
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
OAuth2PasswordBearerAPIKeyHeader
The access token received from the authorization server in the OAuth 2.0 flow.
Headers
Path Parameters
Body
application/json
Available options:
railway, vercel, render API token for the provider. Never stored.
Which set of variables to read, in the provider's own terms.
Show child attributes
Show child attributes
Return values in clear text instead of masked.
What to do with keys that already exist here: 'skip' leaves them alone, 'overwrite' records the provider's value as a new version.
Available options:
skip, overwrite ⌘I