Risk Scenarios
Bulk add account mappings
Link connected integration accounts using separate serviceId, accountId, and optional subunitId fields. Repeated selections are deduplicated. Linking an account already included through its whole integration is rejected. Supply the risk scenario’s object ID.
POST
/
risk-scenarios
/
{riskScenarioId}
/
mappings
/
accounts
Bulk add account mappings
curl --request POST \
--url https://api.vanta.com/v1/risk-scenarios/{riskScenarioId}/mappings/accounts \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"accountsToLink": [
{
"serviceId": "<string>",
"accountId": "<string>",
"subunitId": "<string>"
}
]
}
'import requests
url = "https://api.vanta.com/v1/risk-scenarios/{riskScenarioId}/mappings/accounts"
payload = { "accountsToLink": [
{
"serviceId": "<string>",
"accountId": "<string>",
"subunitId": "<string>"
}
] }
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({
accountsToLink: [{serviceId: '<string>', accountId: '<string>', subunitId: '<string>'}]
})
};
fetch('https://api.vanta.com/v1/risk-scenarios/{riskScenarioId}/mappings/accounts', 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.vanta.com/v1/risk-scenarios/{riskScenarioId}/mappings/accounts",
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([
'accountsToLink' => [
[
'serviceId' => '<string>',
'accountId' => '<string>',
'subunitId' => '<string>'
]
]
]),
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.vanta.com/v1/risk-scenarios/{riskScenarioId}/mappings/accounts"
payload := strings.NewReader("{\n \"accountsToLink\": [\n {\n \"serviceId\": \"<string>\",\n \"accountId\": \"<string>\",\n \"subunitId\": \"<string>\"\n }\n ]\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.vanta.com/v1/risk-scenarios/{riskScenarioId}/mappings/accounts")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"accountsToLink\": [\n {\n \"serviceId\": \"<string>\",\n \"accountId\": \"<string>\",\n \"subunitId\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.vanta.com/v1/risk-scenarios/{riskScenarioId}/mappings/accounts")
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 \"accountsToLink\": [\n {\n \"serviceId\": \"<string>\",\n \"accountId\": \"<string>\",\n \"subunitId\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_bodyAuthorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Body
application/json
Accounts to link. Repeated account selections in this request are deduplicated.
Required array length:
1 - 100 elementsShow child attributes
Show child attributes
Response
204
No content
Was this page helpful?
⌘I
Bulk add account mappings
curl --request POST \
--url https://api.vanta.com/v1/risk-scenarios/{riskScenarioId}/mappings/accounts \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"accountsToLink": [
{
"serviceId": "<string>",
"accountId": "<string>",
"subunitId": "<string>"
}
]
}
'import requests
url = "https://api.vanta.com/v1/risk-scenarios/{riskScenarioId}/mappings/accounts"
payload = { "accountsToLink": [
{
"serviceId": "<string>",
"accountId": "<string>",
"subunitId": "<string>"
}
] }
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({
accountsToLink: [{serviceId: '<string>', accountId: '<string>', subunitId: '<string>'}]
})
};
fetch('https://api.vanta.com/v1/risk-scenarios/{riskScenarioId}/mappings/accounts', 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.vanta.com/v1/risk-scenarios/{riskScenarioId}/mappings/accounts",
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([
'accountsToLink' => [
[
'serviceId' => '<string>',
'accountId' => '<string>',
'subunitId' => '<string>'
]
]
]),
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.vanta.com/v1/risk-scenarios/{riskScenarioId}/mappings/accounts"
payload := strings.NewReader("{\n \"accountsToLink\": [\n {\n \"serviceId\": \"<string>\",\n \"accountId\": \"<string>\",\n \"subunitId\": \"<string>\"\n }\n ]\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.vanta.com/v1/risk-scenarios/{riskScenarioId}/mappings/accounts")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"accountsToLink\": [\n {\n \"serviceId\": \"<string>\",\n \"accountId\": \"<string>\",\n \"subunitId\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.vanta.com/v1/risk-scenarios/{riskScenarioId}/mappings/accounts")
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 \"accountsToLink\": [\n {\n \"serviceId\": \"<string>\",\n \"accountId\": \"<string>\",\n \"subunitId\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body