---
title: "One brand: settings, hosts, the DNS records to create and the newest domain checks"
method: GET
path: "/operator/brands/{brandId}"
tags: ["Operator"]
---

# One brand: settings, hosts, the DNS records to create and the newest domain checks

`GET /operator/brands/{brandId}`

## Request

- Base URL: `https://hostingsurge.com/api/v1`
- URL: `https://hostingsurge.com/api/v1/operator/brands/{brandId}`
- Auth: one of:
  - HTTP bearer
  - API key in cookie `__Host-hs_session`

## Path parameters

- `brandId` string, uuid, required

## Response `200`

Brand

- object
  - `id` string, uuid, required
  - `name` string, required
  - `isPrimary` boolean, required
  - `domain` string, nullable, required
  - `appDomain` string, nullable, required
  - `apiDomain` string, nullable, required
  - `logoUrl` string, nullable, required
  - `faviconUrl` string, nullable, required
  - `primaryColor` string, nullable, required
  - `secondaryColor` string, nullable, required
  - `fontDisplay` 'schibsted' | 'plex-serif' | 'jetbrains-mono' | 'system-sans' | 'system-serif' | 'null', nullable, required
  - `fontBody` 'schibsted' | 'plex-serif' | 'jetbrains-mono' | 'system-sans' | 'system-serif' | 'null', nullable, required
  - `country` string, nullable, required
  - `languages` string[], nullable, required
  - `defaultCurrency` 'usd' | 'eur' | 'sek' | 'gbp' | 'nok' | 'dkk' | 'chf' | 'pln' | 'null', nullable, required
  - `vatMode` 'inclusive' | 'exclusive' | 'null', nullable, required
  - `priceMultiplier` number, required
  - `productOverrides` object, required
    - `products` object
    - `features` object
  - `supportEmail` string, nullable, required
  - `emailFromName` string, nullable, required
  - `companyIdentity` object, required
    - `legalName` string, nullable
    - `orgNumber` string, nullable
    - `vatNumber` string, nullable
    - `address` string, nullable
  - `legalDocuments` object, required
    - `termsUrl` string, nullable
    - `privacyUrl` string, nullable
    - `cookiesUrl` string, nullable
  - `analytics` object, required
    - `plausibleDomain` string, nullable
    - `gaMeasurementId` string, nullable
  - `seo` object, required
    - `titleTemplate` string, nullable
    - `description` string, nullable
    - `defaultOgImage` string, nullable
  - `enabled` boolean, required
  - `hosts` string[], required
  - `clonedFrom` string, uuid, nullable, required
  - `domainChecks` object[], required
    - `host` string, required
    - `dns` boolean, required
    - `https` boolean, required
    - `ok` boolean, required
    - `detail` string, nullable, required
  - `domainsCheckedAt` string, nullable, required: ISO-8601 timestamp
  - `domainsVerifiedAt` string, nullable, required: ISO-8601 timestamp
  - `verifiedForEnable` boolean, required
  - `createdAt` string, required: ISO-8601 timestamp
  - `updatedAt` string, required: ISO-8601 timestamp
  - `organizations` integer, required
  - `dnsRecords` object[], required
    - `host` string, required
    - `type` 'A' | 'AAAA' | 'CNAME', required
    - `value` string, required
    - `purpose` 'site' | 'app' | 'api', required
  - `configured` boolean, required

## Other responses

- `400`: Invalid request (code invalid_request; details.field names the setting)
- `403`: A change on an operator-console session older than 5 minutes (details.reauthenticate), an operator of another brand than the primary one, or not an operator
- `404`: Not found (also another brand outside the operator's reach); also the answer to any request without a live operator-console session
- `409`: Conflict (name or domain taken, domains of an enabled brand, not verified, the primary brand)
- `429`: Too many requests (code rate_limited)

---

[API](https://skmtc.dev/hostingsurge/apis/hostingsurge-platform-api.md) · [All operations](https://skmtc.dev/hostingsurge/apis/hostingsurge-platform-api/llms.txt) · [OpenAPI document](https://skmtc.dev/hostingsurge/apis/hostingsurge-platform-api/revisions/4d08337cdff1?raw)
