curl --request POST \
--url https://rest.forestreet.com/v2/teams \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"name": "<string>",
"domain": "<string>",
"maxUsersCount": 1,
"explorerPermissions": {
"table": true,
"bubble": true,
"events": true,
"feature-fit": true
},
"featurePermissions": [],
"teamQuotas": {
"startDiscovery": 123,
"createSupplierDossier": 123
},
"teamAdmin": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"theme": "<string>",
"isDemo": true
}
'import requests
url = "https://rest.forestreet.com/v2/teams"
payload = {
"name": "<string>",
"domain": "<string>",
"maxUsersCount": 1,
"explorerPermissions": {
"table": True,
"bubble": True,
"events": True,
"feature-fit": True
},
"featurePermissions": [],
"teamQuotas": {
"startDiscovery": 123,
"createSupplierDossier": 123
},
"teamAdmin": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"theme": "<string>",
"isDemo": True
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
domain: '<string>',
maxUsersCount: 1,
explorerPermissions: {table: true, bubble: true, events: true, 'feature-fit': true},
featurePermissions: [],
teamQuotas: {startDiscovery: 123, createSupplierDossier: 123},
teamAdmin: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
theme: '<string>',
isDemo: true
})
};
fetch('https://rest.forestreet.com/v2/teams', 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://rest.forestreet.com/v2/teams",
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([
'name' => '<string>',
'domain' => '<string>',
'maxUsersCount' => 1,
'explorerPermissions' => [
'table' => true,
'bubble' => true,
'events' => true,
'feature-fit' => true
],
'featurePermissions' => [
],
'teamQuotas' => [
'startDiscovery' => 123,
'createSupplierDossier' => 123
],
'teamAdmin' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'theme' => '<string>',
'isDemo' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$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://rest.forestreet.com/v2/teams"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"domain\": \"<string>\",\n \"maxUsersCount\": 1,\n \"explorerPermissions\": {\n \"table\": true,\n \"bubble\": true,\n \"events\": true,\n \"feature-fit\": true\n },\n \"featurePermissions\": [],\n \"teamQuotas\": {\n \"startDiscovery\": 123,\n \"createSupplierDossier\": 123\n },\n \"teamAdmin\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"theme\": \"<string>\",\n \"isDemo\": true\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
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://rest.forestreet.com/v2/teams")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"domain\": \"<string>\",\n \"maxUsersCount\": 1,\n \"explorerPermissions\": {\n \"table\": true,\n \"bubble\": true,\n \"events\": true,\n \"feature-fit\": true\n },\n \"featurePermissions\": [],\n \"teamQuotas\": {\n \"startDiscovery\": 123,\n \"createSupplierDossier\": 123\n },\n \"teamAdmin\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"theme\": \"<string>\",\n \"isDemo\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://rest.forestreet.com/v2/teams")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"domain\": \"<string>\",\n \"maxUsersCount\": 1,\n \"explorerPermissions\": {\n \"table\": true,\n \"bubble\": true,\n \"events\": true,\n \"feature-fit\": true\n },\n \"featurePermissions\": [],\n \"teamQuotas\": {\n \"startDiscovery\": 123,\n \"createSupplierDossier\": 123\n },\n \"teamAdmin\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"theme\": \"<string>\",\n \"isDemo\": true\n}"
response = http.request(request)
puts response.read_body{
"id": 123,
"name": "<string>",
"domain": "<string>",
"adminId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"filePath": "<string>",
"explorerPermissions": {
"table": true,
"bubble": true,
"events": true,
"feature-fit": true
},
"accessExpired": 123,
"maxUsers": 123,
"isDemo": 123,
"theme": "<string>",
"teamQuotas": {
"startDiscovery": 123,
"createSupplierDossier": 123
},
"featurePermissions": {},
"isDefault": 123
}{
"success": false,
"errorCode": "INVALID_INPUT",
"message": "Bad Request - Invalid input"
}{
"success": false,
"errorCode": "FORBIDDEN",
"message": "Forbidden - User does not have permission to create a team"
}Create a team
Creates a new team with the provided details.
If no team admin is specified, the user making the request will be set as the team admin by default.
Restricted Endpoint: This endpoint is built for Forestreet administration purposes only. It is not intended for public use and should not be accessed by non-administrators. If you believe you need access to this endpoint for legitimate reasons, please contact Forestreet support.
We do not provide external support for this endpoint unless permissions had been negotiated in your contract.
curl --request POST \
--url https://rest.forestreet.com/v2/teams \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"name": "<string>",
"domain": "<string>",
"maxUsersCount": 1,
"explorerPermissions": {
"table": true,
"bubble": true,
"events": true,
"feature-fit": true
},
"featurePermissions": [],
"teamQuotas": {
"startDiscovery": 123,
"createSupplierDossier": 123
},
"teamAdmin": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"theme": "<string>",
"isDemo": true
}
'import requests
url = "https://rest.forestreet.com/v2/teams"
payload = {
"name": "<string>",
"domain": "<string>",
"maxUsersCount": 1,
"explorerPermissions": {
"table": True,
"bubble": True,
"events": True,
"feature-fit": True
},
"featurePermissions": [],
"teamQuotas": {
"startDiscovery": 123,
"createSupplierDossier": 123
},
"teamAdmin": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"theme": "<string>",
"isDemo": True
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
domain: '<string>',
maxUsersCount: 1,
explorerPermissions: {table: true, bubble: true, events: true, 'feature-fit': true},
featurePermissions: [],
teamQuotas: {startDiscovery: 123, createSupplierDossier: 123},
teamAdmin: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
theme: '<string>',
isDemo: true
})
};
fetch('https://rest.forestreet.com/v2/teams', 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://rest.forestreet.com/v2/teams",
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([
'name' => '<string>',
'domain' => '<string>',
'maxUsersCount' => 1,
'explorerPermissions' => [
'table' => true,
'bubble' => true,
'events' => true,
'feature-fit' => true
],
'featurePermissions' => [
],
'teamQuotas' => [
'startDiscovery' => 123,
'createSupplierDossier' => 123
],
'teamAdmin' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'theme' => '<string>',
'isDemo' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$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://rest.forestreet.com/v2/teams"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"domain\": \"<string>\",\n \"maxUsersCount\": 1,\n \"explorerPermissions\": {\n \"table\": true,\n \"bubble\": true,\n \"events\": true,\n \"feature-fit\": true\n },\n \"featurePermissions\": [],\n \"teamQuotas\": {\n \"startDiscovery\": 123,\n \"createSupplierDossier\": 123\n },\n \"teamAdmin\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"theme\": \"<string>\",\n \"isDemo\": true\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
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://rest.forestreet.com/v2/teams")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"domain\": \"<string>\",\n \"maxUsersCount\": 1,\n \"explorerPermissions\": {\n \"table\": true,\n \"bubble\": true,\n \"events\": true,\n \"feature-fit\": true\n },\n \"featurePermissions\": [],\n \"teamQuotas\": {\n \"startDiscovery\": 123,\n \"createSupplierDossier\": 123\n },\n \"teamAdmin\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"theme\": \"<string>\",\n \"isDemo\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://rest.forestreet.com/v2/teams")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"domain\": \"<string>\",\n \"maxUsersCount\": 1,\n \"explorerPermissions\": {\n \"table\": true,\n \"bubble\": true,\n \"events\": true,\n \"feature-fit\": true\n },\n \"featurePermissions\": [],\n \"teamQuotas\": {\n \"startDiscovery\": 123,\n \"createSupplierDossier\": 123\n },\n \"teamAdmin\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"theme\": \"<string>\",\n \"isDemo\": true\n}"
response = http.request(request)
puts response.read_body{
"id": 123,
"name": "<string>",
"domain": "<string>",
"adminId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"filePath": "<string>",
"explorerPermissions": {
"table": true,
"bubble": true,
"events": true,
"feature-fit": true
},
"accessExpired": 123,
"maxUsers": 123,
"isDemo": 123,
"theme": "<string>",
"teamQuotas": {
"startDiscovery": 123,
"createSupplierDossier": 123
},
"featurePermissions": {},
"isDefault": 123
}{
"success": false,
"errorCode": "INVALID_INPUT",
"message": "Bad Request - Invalid input"
}{
"success": false,
"errorCode": "FORBIDDEN",
"message": "Forbidden - User does not have permission to create a team"
}Authorizations
Pass a static API key for every request, provided by your customer support.
Body
x > 0Permission settings for explorer features.
Show child attributes
Show child attributes
notes, rapidReview, createTopic, createStudy, insights, editStudy, viewStudyStatus, manageTeams, editFeatureArchitecture, viewFeatureArchitecture, phraseSearch Quota information for a team.
Show child attributes
Show child attributes
Response
Team created successfully
Unique identifier of the team.
Name of the team.
Domain of the team.
Admin ID of the team.
File path for the team.
Permission settings for explorer features.
Show child attributes
Show child attributes
Access expiration status.
Maximum number of users allowed.
Demo status of the team.
Theme settings for the team.
Quota information for a team.
Show child attributes
Show child attributes
Feature permissions for the team (boolean map).
Show child attributes
Show child attributes
Default state of the team.