/
Contents
Organization branding
Public, unauthenticated branding of a company (name, logos, favicons), used by Nucleo's public pages (for example booking pages) that have no signed-in user but must carry the company's brand.
Base URL, authentication and conventions of this API are on the OAuth & OpenID Connect API page.
get
/api/public/organizations/{slug}/brandingGet a company's public branding
Name, logos (light and dark) and favicons of a company, by slug. Only data that is public by
nature (logo URLs point to public storage) — never members, domains or billing. Cached for
5 minutes on the server and sent with Cache-Control: public, max-age=300.
Rate limit: 120 requests per minute per IP address.
GET https://auth.nucleoplatform.com/api/public/organizations/{slug}/branding
Authentication: None — public endpoint
Rate limit: 120 requests per 1m, per IP
Path parameters
slugstringrequiredCompany slug, lowercase. Must match
^[a-z0-9][a-z0-9-]{0,63}$, otherwise404.max length 64pattern ^[a-z0-9][a-z0-9-]{0,63}$Example:acme
Responses
200Branding.application/json
HeadersCache-Control
dataOrganizationBrandingrequiredChild attributes
slugstringnamestringlogo_urlstring (uri) | nulllogo_dark_urlstring (uri) | nullfavicon_urlstring (uri) | nullfavicon_light_urlstring (uri) | null
404Unknown or invalid slug.application/json
messagestring
429Rate limit exceeded.application/json
HeadersRetry-AfterX-RateLimit-LimitX-RateLimit-Remaining
messagestring
curl -X GET https://auth.nucleoplatform.com/api/public/organizations/acme/branding \
-H 'Accept: application/json'const res = await fetch("https://auth.nucleoplatform.com/api/public/organizations/acme/branding", {
method: "GET",
headers: {
Accept: "application/json",
},
});
const data = await res.json();
console.log(res.status, data);<?php
require 'vendor/autoload.php';
$client = new GuzzleHttp\Client();
$response = $client->request('GET', 'https://auth.nucleoplatform.com/api/public/organizations/acme/branding', [
'headers' => [
'Accept' => 'application/json',
],
'http_errors' => false,
]);
echo $response->getStatusCode(), PHP_EOL;
echo $response->getBody();{
"data": {
"slug": "acme",
"name": "Acme Apparel",
"logo_url": "https://cdn.acme.example/brand/logo.svg",
"logo_dark_url": "https://cdn.acme.example/brand/logo-dark.svg",
"favicon_url": "https://cdn.acme.example/brand/favicon.png",
"favicon_light_url": null
}
}{
"message": "Not found"
}{
"message": "Too Many Attempts."
}Was this page helpful?