onetimesecret/onetimesecret · error · Error

Unable to update brand settings. Please try again.

Error message

Unable to update brand settings. Please try again.

What it means

Error "Unable to update brand settings. Please try again." thrown in onetimesecret/onetimesecret.

Source

Thrown at src/shared/stores/domainsStore.ts:370

  async function getBrandSettings(extid: string): Promise<BrandSettings> {
    const response = await $api.get(`/api/domains/${extid}/brand`);
    const result = gracefulParse(responseSchemas.brandSettings, response.data, 'BrandSettingsResponse');
    if (!result.ok) {
      throw new Error('Unable to load brand settings. Please try again.');
    }
    return result.data.record;
  }

  /**
   * Update brand settings for a domain
   */
  async function updateBrandSettings(extid: string, settings: Partial<BrandSettings>) {
    const response = await $api.put(`/api/domains/${extid}/brand`, {
      brand: settings,
    });
    const result = gracefulParse(responseSchemas.brandSettings, response.data, 'BrandSettingsResponse');
    if (!result.ok) {
      throw new Error('Unable to update brand settings. Please try again.');
    }
    return result.data;
  }

  /**
   * Update brand settings for a domain via PUT /:extid/brand endpoint
   *
   * Unlike updateBrandSettings() which returns only brand settings,
   * this function returns the full domain object and updates store state.
   */
  async function updateDomainBrand(extid: string, brandUpdate: UpdateDomainBrandRequest) {
    const response = await $api.put(`/api/domains/${extid}/brand`, brandUpdate);
    const result = gracefulParse(responseSchemas.customDomain, response.data, 'CustomDomainResponse');
    if (!result.ok) {
      throw new Error('Unable to update domain brand. Please try again.');
    }
    if (!records.value) return result.data.record;

View on GitHub (pinned to f81295e41b)

Solutions

  1. Validate the brand settings payload (hex colors, allowed fonts, URLs) before submitting, then retry.
  2. Check server logs for validation or persistence errors if it keeps failing.

When it happens

Trigger: Thrown at src/shared/stores/domainsStore.ts:370 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of onetimesecret/onetimesecret@f81295e41b (2026-08-23). Data as JSON: /api/errors/64887ba328cca75d. Report an issue: GitHub.