curl --request POST \
--url https://api.getmembrane.com/org-workspaces/{id}/access-token \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"agentSessionId": "<string>",
"tenantId": "<string>",
"tenantKey": "<string>",
"name": "<string>",
"fields": {},
"connectedProductId": "<string>",
"expiresIn": 123
}
'import requests
url = "https://api.getmembrane.com/org-workspaces/{id}/access-token"
payload = {
"agentSessionId": "<string>",
"tenantId": "<string>",
"tenantKey": "<string>",
"name": "<string>",
"fields": {},
"connectedProductId": "<string>",
"expiresIn": 123
}
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({
agentSessionId: '<string>',
tenantId: '<string>',
tenantKey: '<string>',
name: '<string>',
fields: {},
connectedProductId: '<string>',
expiresIn: 123
})
};
fetch('https://api.getmembrane.com/org-workspaces/{id}/access-token', 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.getmembrane.com/org-workspaces/{id}/access-token",
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([
'agentSessionId' => '<string>',
'tenantId' => '<string>',
'tenantKey' => '<string>',
'name' => '<string>',
'fields' => [
],
'connectedProductId' => '<string>',
'expiresIn' => 123
]),
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.getmembrane.com/org-workspaces/{id}/access-token"
payload := strings.NewReader("{\n \"agentSessionId\": \"<string>\",\n \"tenantId\": \"<string>\",\n \"tenantKey\": \"<string>\",\n \"name\": \"<string>\",\n \"fields\": {},\n \"connectedProductId\": \"<string>\",\n \"expiresIn\": 123\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.getmembrane.com/org-workspaces/{id}/access-token")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"agentSessionId\": \"<string>\",\n \"tenantId\": \"<string>\",\n \"tenantKey\": \"<string>\",\n \"name\": \"<string>\",\n \"fields\": {},\n \"connectedProductId\": \"<string>\",\n \"expiresIn\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getmembrane.com/org-workspaces/{id}/access-token")
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 \"agentSessionId\": \"<string>\",\n \"tenantId\": \"<string>\",\n \"tenantKey\": \"<string>\",\n \"name\": \"<string>\",\n \"fields\": {},\n \"connectedProductId\": \"<string>\",\n \"expiresIn\": 123\n}"
response = http.request(request)
puts response.read_body{
"token": "<string>"
}create-org-workspace-access-token
Generate an access token for an organization workspace.
curl --request POST \
--url https://api.getmembrane.com/org-workspaces/{id}/access-token \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"agentSessionId": "<string>",
"tenantId": "<string>",
"tenantKey": "<string>",
"name": "<string>",
"fields": {},
"connectedProductId": "<string>",
"expiresIn": 123
}
'import requests
url = "https://api.getmembrane.com/org-workspaces/{id}/access-token"
payload = {
"agentSessionId": "<string>",
"tenantId": "<string>",
"tenantKey": "<string>",
"name": "<string>",
"fields": {},
"connectedProductId": "<string>",
"expiresIn": 123
}
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({
agentSessionId: '<string>',
tenantId: '<string>',
tenantKey: '<string>',
name: '<string>',
fields: {},
connectedProductId: '<string>',
expiresIn: 123
})
};
fetch('https://api.getmembrane.com/org-workspaces/{id}/access-token', 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.getmembrane.com/org-workspaces/{id}/access-token",
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([
'agentSessionId' => '<string>',
'tenantId' => '<string>',
'tenantKey' => '<string>',
'name' => '<string>',
'fields' => [
],
'connectedProductId' => '<string>',
'expiresIn' => 123
]),
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.getmembrane.com/org-workspaces/{id}/access-token"
payload := strings.NewReader("{\n \"agentSessionId\": \"<string>\",\n \"tenantId\": \"<string>\",\n \"tenantKey\": \"<string>\",\n \"name\": \"<string>\",\n \"fields\": {},\n \"connectedProductId\": \"<string>\",\n \"expiresIn\": 123\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.getmembrane.com/org-workspaces/{id}/access-token")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"agentSessionId\": \"<string>\",\n \"tenantId\": \"<string>\",\n \"tenantKey\": \"<string>\",\n \"name\": \"<string>\",\n \"fields\": {},\n \"connectedProductId\": \"<string>\",\n \"expiresIn\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getmembrane.com/org-workspaces/{id}/access-token")
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 \"agentSessionId\": \"<string>\",\n \"tenantId\": \"<string>\",\n \"tenantKey\": \"<string>\",\n \"name\": \"<string>\",\n \"fields\": {},\n \"connectedProductId\": \"<string>\",\n \"expiresIn\": 123\n}"
response = http.request(request)
puts response.read_body{
"token": "<string>"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Body
Bind a plugin workspace token to an open external agent session. A plugin credential must send the field: the exchange refuses a plugin credential without it, because a plugin reads pre-session data with its login credential and the sessionless commands. Other credentials (console) do not send the field.
Tenant ID to scope the token to
Tenant key to scope the token to (resolved to tenantId)
Name for the generated token
Custom fields to include in the token
Show child attributes
Show child attributes
[INTERNAL] Connected product ID
[INTERNAL] Token lifetime in seconds (default: 1 hour, max: 90 days)
x <= 7776000Response
Generate an access token for an organization workspace.
The generated access token