import { SyllableSDK } from "syllable-sdk";
const syllableSDK = new SyllableSDK({
apiKeyHeader: process.env["SYLLABLESDK_API_KEY_HEADER"] ?? "",
});
async function run() {
const result = await syllableSDK.organizations.update({
displayName: "My Great Org",
description: "An organization that does great things with agentic AI",
domains: "mygreatorg.com,mygreatorg.org",
samlProviderId: "saml.syllablesso",
updateComments: "Updated the organization to add a new domain",
});
console.log(result);
}
run();import os
from syllable_sdk import SyllableSDK
with SyllableSDK(
api_key_header=os.getenv("SYLLABLESDK_API_KEY_HEADER", ""),
) as ss_client:
res = ss_client.organizations.update(request={
"display_name": "My Great Org",
"description": "An organization that does great things with agentic AI",
"domains": "mygreatorg.com,mygreatorg.org",
"saml_provider_id": "saml.syllablesso",
"update_comments": "Updated the organization to add a new domain",
})
# Handle response
print(res)curl --request PUT \
--url https://api.syllable.cloud/api/v1/organizations/ \
--header 'Content-Type: multipart/form-data' \
--header 'Syllable-API-Key: <api-key>' \
--form 'display_name=<string>' \
--form 'logo=<string>' \
--form 'description=An organization that does great things with agentic AI' \
--form 'domains=mygreatorg.com,mygreatorg.org' \
--form saml_provider_id=saml.syllablesso \
--form 'update_comments=Updated the organization to add a new domain' \
--form logo.0='@example-file'const form = new FormData();
form.append('display_name', '<string>');
form.append('logo', '<string>');
form.append('description', 'An organization that does great things with agentic AI');
form.append('domains', 'mygreatorg.com,mygreatorg.org');
form.append('saml_provider_id', 'saml.syllablesso');
form.append('update_comments', 'Updated the organization to add a new domain');
form.append('logo.0', '{
"fileName": "example-file"
}');
const options = {method: 'PUT', headers: {'Syllable-API-Key': '<api-key>'}};
options.body = form;
fetch('https://api.syllable.cloud/api/v1/organizations/', 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.syllable.cloud/api/v1/organizations/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"display_name\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"logo\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"description\"\r\n\r\nAn organization that does great things with agentic AI\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"domains\"\r\n\r\nmygreatorg.com,mygreatorg.org\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"saml_provider_id\"\r\n\r\nsaml.syllablesso\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"update_comments\"\r\n\r\nUpdated the organization to add a new domain\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"logo.0\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001--",
CURLOPT_HTTPHEADER => [
"Content-Type: multipart/form-data; boundary=---011000010111000001101001",
"Syllable-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://api.syllable.cloud/api/v1/organizations/"
payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"display_name\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"logo\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"description\"\r\n\r\nAn organization that does great things with agentic AI\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"domains\"\r\n\r\nmygreatorg.com,mygreatorg.org\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"saml_provider_id\"\r\n\r\nsaml.syllablesso\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"update_comments\"\r\n\r\nUpdated the organization to add a new domain\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"logo.0\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001--")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Syllable-API-Key", "<api-key>")
req.Header.Add("Content-Type", "multipart/form-data; boundary=---011000010111000001101001")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://api.syllable.cloud/api/v1/organizations/")
.header("Syllable-API-Key", "<api-key>")
.header("Content-Type", "multipart/form-data; boundary=---011000010111000001101001")
.body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"display_name\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"logo\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"description\"\r\n\r\nAn organization that does great things with agentic AI\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"domains\"\r\n\r\nmygreatorg.com,mygreatorg.org\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"saml_provider_id\"\r\n\r\nsaml.syllablesso\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"update_comments\"\r\n\r\nUpdated the organization to add a new domain\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"logo.0\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001--")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.syllable.cloud/api/v1/organizations/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Syllable-API-Key"] = '<api-key>'
request["Content-Type"] = 'multipart/form-data; boundary=---011000010111000001101001'
request.body = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"display_name\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"logo\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"description\"\r\n\r\nAn organization that does great things with agentic AI\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"domains\"\r\n\r\nmygreatorg.com,mygreatorg.org\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"saml_provider_id\"\r\n\r\nsaml.syllablesso\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"update_comments\"\r\n\r\nUpdated the organization to add a new domain\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"logo.0\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001--"
response = http.request(request)
puts response.read_body{
"display_name": "<string>",
"id": 123,
"name": "<string>",
"last_updated": "2023-11-07T05:31:56Z",
"description": "An organization that does great things with agentic AI.",
"domains": "mygreatorg.com,myothergreatorg.org",
"saml_provider_id": "saml.syllablesso",
"last_updated_comments": "Updated to add an additional domain",
"slug": "my-great-org",
"last_updated_by": "<string>",
"logo_url": "https://image.png"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Update Current Organization
Update the current organization.
import { SyllableSDK } from "syllable-sdk";
const syllableSDK = new SyllableSDK({
apiKeyHeader: process.env["SYLLABLESDK_API_KEY_HEADER"] ?? "",
});
async function run() {
const result = await syllableSDK.organizations.update({
displayName: "My Great Org",
description: "An organization that does great things with agentic AI",
domains: "mygreatorg.com,mygreatorg.org",
samlProviderId: "saml.syllablesso",
updateComments: "Updated the organization to add a new domain",
});
console.log(result);
}
run();import os
from syllable_sdk import SyllableSDK
with SyllableSDK(
api_key_header=os.getenv("SYLLABLESDK_API_KEY_HEADER", ""),
) as ss_client:
res = ss_client.organizations.update(request={
"display_name": "My Great Org",
"description": "An organization that does great things with agentic AI",
"domains": "mygreatorg.com,mygreatorg.org",
"saml_provider_id": "saml.syllablesso",
"update_comments": "Updated the organization to add a new domain",
})
# Handle response
print(res)curl --request PUT \
--url https://api.syllable.cloud/api/v1/organizations/ \
--header 'Content-Type: multipart/form-data' \
--header 'Syllable-API-Key: <api-key>' \
--form 'display_name=<string>' \
--form 'logo=<string>' \
--form 'description=An organization that does great things with agentic AI' \
--form 'domains=mygreatorg.com,mygreatorg.org' \
--form saml_provider_id=saml.syllablesso \
--form 'update_comments=Updated the organization to add a new domain' \
--form logo.0='@example-file'const form = new FormData();
form.append('display_name', '<string>');
form.append('logo', '<string>');
form.append('description', 'An organization that does great things with agentic AI');
form.append('domains', 'mygreatorg.com,mygreatorg.org');
form.append('saml_provider_id', 'saml.syllablesso');
form.append('update_comments', 'Updated the organization to add a new domain');
form.append('logo.0', '{
"fileName": "example-file"
}');
const options = {method: 'PUT', headers: {'Syllable-API-Key': '<api-key>'}};
options.body = form;
fetch('https://api.syllable.cloud/api/v1/organizations/', 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.syllable.cloud/api/v1/organizations/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"display_name\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"logo\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"description\"\r\n\r\nAn organization that does great things with agentic AI\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"domains\"\r\n\r\nmygreatorg.com,mygreatorg.org\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"saml_provider_id\"\r\n\r\nsaml.syllablesso\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"update_comments\"\r\n\r\nUpdated the organization to add a new domain\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"logo.0\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001--",
CURLOPT_HTTPHEADER => [
"Content-Type: multipart/form-data; boundary=---011000010111000001101001",
"Syllable-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://api.syllable.cloud/api/v1/organizations/"
payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"display_name\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"logo\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"description\"\r\n\r\nAn organization that does great things with agentic AI\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"domains\"\r\n\r\nmygreatorg.com,mygreatorg.org\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"saml_provider_id\"\r\n\r\nsaml.syllablesso\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"update_comments\"\r\n\r\nUpdated the organization to add a new domain\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"logo.0\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001--")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Syllable-API-Key", "<api-key>")
req.Header.Add("Content-Type", "multipart/form-data; boundary=---011000010111000001101001")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://api.syllable.cloud/api/v1/organizations/")
.header("Syllable-API-Key", "<api-key>")
.header("Content-Type", "multipart/form-data; boundary=---011000010111000001101001")
.body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"display_name\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"logo\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"description\"\r\n\r\nAn organization that does great things with agentic AI\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"domains\"\r\n\r\nmygreatorg.com,mygreatorg.org\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"saml_provider_id\"\r\n\r\nsaml.syllablesso\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"update_comments\"\r\n\r\nUpdated the organization to add a new domain\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"logo.0\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001--")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.syllable.cloud/api/v1/organizations/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Syllable-API-Key"] = '<api-key>'
request["Content-Type"] = 'multipart/form-data; boundary=---011000010111000001101001'
request.body = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"display_name\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"logo\"\r\n\r\n<string>\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"description\"\r\n\r\nAn organization that does great things with agentic AI\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"domains\"\r\n\r\nmygreatorg.com,mygreatorg.org\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"saml_provider_id\"\r\n\r\nsaml.syllablesso\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"update_comments\"\r\n\r\nUpdated the organization to add a new domain\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"logo.0\"; filename=\"example-file\"\r\nContent-Type: application/octet-stream\r\n\r\n{\r\n \"fileName\": \"example-file\"\r\n}\r\n-----011000010111000001101001--"
response = http.request(request)
puts response.read_body{
"display_name": "<string>",
"id": 123,
"name": "<string>",
"last_updated": "2023-11-07T05:31:56Z",
"description": "An organization that does great things with agentic AI.",
"domains": "mygreatorg.com,myothergreatorg.org",
"saml_provider_id": "saml.syllablesso",
"last_updated_comments": "Updated to add an additional domain",
"slug": "my-great-org",
"last_updated_by": "<string>",
"logo_url": "https://image.png"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Authorizations
Body
The human-readable display name of the organization
"My Great Org"
The organization logo image file to upload. Must be a PNG file and 120x120 pixels. If not provided, the logo will not be updated.
Description of the organization
"An organization that does great things with agentic AI"
Comma-delimited list of domains that users at the organization may have in their email addresses
"mygreatorg.com,mygreatorg.org"
SAML provider ID for user authentication
"saml.syllablesso"
Comments about the update
"Updated the organization to add a new domain"
Response
Successful Response
The human-readable display name of the organization.
"My Great Org"
The internal ID of the organization.
1
Unique, non-human-readable hash for the organization
The timestamp of the most recent update to the organization
Description of the organization.
"An organization that does great things with agentic AI."
Comma-delimited list of domains that users at the organization may have in their email addresses.
"mygreatorg.com,myothergreatorg.org"
SAML provider ID for user authentication
"saml.syllablesso"
Comments for the most recent edit to the organization.
"Updated to add an additional domain"
The slug of the organization used for URLs in the Console UI. Null until slug backfill has been run.
"my-great-org"
The email of the user who most recently updated the organization
CDN URL. The org will always have a logo, but this value will be null on a response to an update where no logo was provided on the request
"https://image.png"

