Brandfine Docs
REST API

GET /external/workspace

Workspace metadata, customConfig, and schemaOrg.

Returns metadata + free-form config the consumer site uses to configure itself (theme, feature flags, schema.org payload).

GET /external/workspace
X-Api-Key: bk_live_xxx

Response

{
  "id": "ws_2N4rDQk",
  "slug": "olavisa-pt",
  "name": "Olavisa",
  "locales": ["en", "pt"],
  "defaultLocale": "pt",
  "customConfig": {
    "theme": "purple",
    "featureFlags": { "newApply": true }
  },
  "schemaOrg": {
    "Organization": {
      "@type": "Organization",
      "name": "Olavisa",
      "legalName": "Olavisa, Lda."
    }
  }
}
FieldTypeNotes
idstringInternal workspace ID.
slugstringURL-safe workspace identifier.
namestringHuman-readable name.
localesstring[]BCP47 codes the workspace serves. First entry is canonical.
defaultLocalestringThe locale served at the bare URL.
customConfigobject | nullFree-form JSON. Consumer interprets.
schemaOrgobject | nullKeyed by @type. Merged into per-page JSON-LD.

SDK

const ws = await bf.workspace.get()

You can narrow the two free-form payloads' types if you have a known shape:

type MyConfig = { theme: string; featureFlags: Record<string, boolean> }
type MySchema = { Organization: { '@type': 'Organization'; name: string } }

const ws = await bf.workspace.get<MyConfig, MySchema>()

On this page