Notifications API · brands

The brand a organization's customer pages wear

GET /brands/{tenantId}

The brand a organization's customer pages wear: its business name, colours, contact, footer, terms and a fifteen-minute signed URL for its logo, with the logo's version (its upload's reference), which the pages' logo address carries so a replaced logo is a new address.

404 BrandNotFound for a organization that has not saved one (the pages then wear Manifold's plain look); 503 BrandLogoUnavailable when the logo's URL cannot be signed. Appends nothing.

Access

Public: a brand is what every message and customer page already shows its customers, and names no record

No token: the link, the claim or the first message is the credential, as the description says.

How scopes come from roles: Scopes and roles. Getting a token: Authentication and app tokens.

AI agent tool

No agent tool. The brand as a tenant's customers see it is what the customer pages service reads to dress their pages; an agent reads the tenant's own brand with notifications_get_brand.

Connecting an agent: AI agents.

Example

curl
curl -X GET 'https://notifications.getmanifold.io/brands/org_01a156d2-8680-7738-ab2e-ff985e454887'
JavaScript (fetch)
const response = await fetch("https://notifications.getmanifold.io/brands/org_01a156d2-8680-7738-ab2e-ff985e454887", {
  method: "GET",
});
if (!response.ok) throw new Error(`${response.status}: ${await response.text()}`);
const answer = await response.json();
Response · 200 · application/json
{
  "tenantId": "org_01a156d2-8680-7738-ab2e-ff985e454887",
  "businessName": "Ridgeline Outdoor",
  "brandColour": "#1f4d3a",
  "accentColour": "#1f6f50",
  "contact": {
    "email": "accounts@ridgeline-outdoor.example",
    "phone": "+61 2 9000 1234",
    "website": "https://ridgeline-outdoor.example"
  },
  "footer": "Ridgeline Outdoor Pty Ltd · ABN 12 345 678 901",
  "terms": "Quotes hold their prices until the date shown. Payment within 30 days of invoice.",
  "onBrandColour": "#ffffff",
  "logoUrl": "https://manifold-files.s3.ap-southeast-2.amazonaws.com/org_01a156d2-8680-7738-ab2e-ff985e454887/brand-logo-brand-logo-2026-10?X-Amz-Expires=900",
  "logoVersion": "brand-logo-2026-10"
}

The panel writes this call in other languages. It does not send it: Manifold's APIs do not take calls from a web page on another site, so run the call from your own code or terminal. The whole API as OpenAPI: notifications-manager.openapi.json. Base URL https://notifications.getmanifold.io.

Errors

Every refusal is a status and a JSON body whose _tag names it. A refused call changes nothing.

404

RefusalWhat it meansWhat to do
BrandNotFound No such record in this organization.Check the id in the path or the body.

503

RefusalWhat it meansWhat to do
BrandLogoUnavailable reason The logo's URL cannot be signed.Try again shortly.

How refusals work everywhere: Errors.

Used in