Skip to main content
PATCH
Update Company
Update company product info, brand context, reply-tracking settings, the workspace default lists, and account-wide From and Reply-To defaults. A new profile is created when an address does not already have one. From addresses must use a configured, verified sending domain; Reply-To addresses may use any valid mailbox. The current read-only retention period is returned as replyRetentionDays by the company endpoints. Requires the company_profile:manage scope. The sending-identity and reply-tracking fields (senderProfileId, fromEmail, fromName, replyProfileId, replyTo, replyToName, replyTrackingEnabled, replyTrackingDomainMode, forwardReplies) and defaultSubscriberListIds additionally require companies:manage; a request that mixes them with profile fields is rejected as a whole rather than partially applied. Keys that already hold companies:manage satisfy company_profile:manage automatically. The response includes the same read-only emailBranding entitlement as get company. It is derived from the owner’s subscription and cannot be changed by adding a branding field to this request. Omit a field to preserve its value. For nullable profile fields such as description, companyContext, toneVoice and valueProps, send null to clear the value. Arrays and profile objects replace their previous values; emailTheme is a partial update as described below.

Request

string
required
Company ID.
string
Workspace name. Must not be blank.
boolean
default:"false"
Set to true with name and previousCompanyName to rename exact matching company names in editable email footer blocks and saved components. Includes nested footers, draft A/B variants and their localizations. Custom names, body copy, sent or sending campaigns and active A/B tests stay unchanged. Null is not accepted. Omit or pass false to change only company settings.
string
Required when renameMatchingFooters is true. Use the current name from get company. A stale name returns 409 without applying changes. Refresh and confirm the replacement again. Retrying after a successful rename does not repeat footer updates. The name and footer updates commit together; no emails are sent.
string | null
Company logo URL. Send null to clear it.
string | null
Your own dark-mode version of the logo, replacing the automatic copy with a thin white outline. Every email uses it, in light and dark inboxes alike, so make sure it reads on both. Requires a logo, either in the same request or already saved; changing the logo later drops it. Send null to go back to the automatic one. The response reports it as darkModeLogoStatus: "custom".
string | null
Founder name for your company profile and generated copy. Send null to clear it.
object | null
Replacement brand-color data, including optional footerTheme. Read and merge the current object before updating one entry; this field is replaced wholesale. Send null to clear it.
array | null
Replacement testimonial data for your company profile and AI context. Send null to clear it.
string
Preferred generated email length: concise, balanced, or detailed.
string | null
How AI writes emails by default: visual for designed emails with sections and imagery, or plain for simple text-focused emails with one button. Both still use your theme, header and footer. Send null to clear the choice: generation then designs emails and the dashboard asks again. While a saved reference email exists, generated emails stay designed until you clear it.
string | null
Company category: saas, content, ecommerce, offline, mobile_app or other. It decides which sequence templates are recommended and steers AI writing; mobile_app recommends push-first mobile app journeys. The value is recorded as your choice, which website detection never overwrites. Send null to clear it; detection may classify the company again the next time your website is synced. Other strings return 400, and a value that is not a string or null returns 422.
string
Default header and footer for new emails: branded adds your logo and the full footer with social links, minimal uses no logo and a compact footer. Existing emails keep their own setting. While a saved reference email exists, AI-generated emails use its header and footer instead until you clear it.
Footer style for new AI-designed emails: auto (the default, picks one that fits your brand), classic (brand-colored social icons, centered), mono (monochrome icons, company name as a small wordmark), band (mono on a dark full-width band) or editorial (mono, left-aligned). Existing emails keep their footers. Other values return 400.
Colors and copy of the auto-added footer, the compliance footer Sequenzy appends when an email has no footer block. Merged into the stored theme: omitted fields keep their value, null or "" resets one field to its default (so you can send back the theme get company returns, including backgroundColor: "transparent"), and footerTheme: null resets them all. Other brandColors keys are kept, and footerTheme applies after a brandColors replacement in the same request. Supported fields:
  • backgroundColor, companyTextColor, metaTextColor, linkColor, borderColor: 6-digit hex values. The background defaults to transparent (the email background)
  • reasonText, unsubscribeText, privacyPolicyText: strings; empty uses the localized default
  • showCompanyLine: show the company name above the reason text (default false)
  • style: same setting as footerStyle
Malformed values, unknown fields and a style that differs from footerStyle in the same request return 400 and save nothing. A value that is not an object or null returns 422. The footer’s font, size and line height are set in emailTheme.typography.
Replacement map of platform keys to URL strings. Send null to clear it. Branded footers show an icon for these keys: x, threads, bluesky, linkedin, instagram, facebook, youtube, tiktok, pinterest, discord, reddit, and the mobile app store listings appstore and googleplay (twitter is read as x). Other keys are stored but get no icon.
string | null
Privacy policy URL. Send null to clear it.
string | null
Terms URL. Send null to clear it.
string | null
Company postal address used in marketing footers. Send null to clear it.
string
Default language for generated email copy, such as en. Must not be blank.
object | null
Replacement product pricing context for generated copy. Send null to clear it.
string | null
Default email font family. Send null to clear the override.
string
Default email text direction: ltr or rtl.
string
Primary brand color as a 6-digit hex value, for example #0ea5e9. Also updates the email theme’s primary color unless emailTheme sets one explicitly.
object | null
Default email theme applied to campaigns, sequences, and transactional email. Partial update: omitted fields keep their current value (or the preset default), and numeric values are clamped to supported ranges. Pass null to reset to the platform default theme. Supported fields:
  • presetId: default, soft, editorial, or bold
  • buttonStyle: solid (filled, the default) or outline (transparent fill with a brand-color border)
  • colors: 6-digit hex values for primary, background (outer canvas), content (inner content card; omit to preserve its current value, or to follow the canvas when no content color is stored), surface (nested cards and tinted tiles), text, mutedText, heading, border, link, and optionally buttonText (solid button label color; omit to auto-derive a readable color from the button fill)
  • typography: numbers for baseFontSize, leadFontSize, baseLineHeight, heading1Size, heading2Size, heading3Size, buttonFontSize, buttonFontWeight (400-800), headingFontWeight (300-900, applied to all heading levels; omit for the per-level defaults), and headingLetterSpacing (px, -2 to 4, negative = tighter tracking); plus headingFontFamily as a font-stack string for serif-headline + sans-body pairings (omit so headings inherit the email font). Footer type: footerFontFamily (font stack for footer blocks and the auto-added footer; omit to use the email font, and a footer block’s own fontFamily still wins), footerFontSize (px, 10 to 16, default 12; the company line is set 2px larger, 1px for the mono, band and editorial wordmark) and footerLineHeight (1 to 2, default 1.333). Send null for any of the three to reset it to the default
  • layout: numbers for contentWidth, containerPaddingX, containerPaddingY, blockSpacing, baseRadius, buttonRadius, sectionPadding, buttonPaddingX, buttonPaddingY, borderedBlockPadding; plus contentAlign, center (default) or left, which places the content column flush left in wide email clients instead of centering it. Buttons, the logo and footers line up on the left with it unless they are set to right, or kept centered with the block’s styles.keepAlign: true. Phones show the column full width either way. Any other value returns 400
The auto-added footer’s colors and copy are set with footerTheme below.
string | null
Short product or company summary.
string | null
Basic product/company knowledge AI should use when writing emails.
string | null
Tone of voice guidance for generated copy.
string | null
Art direction for AI-designed emails: layout, density, which sections belong in an email, imagery, and CTA prominence. toneVoice steers the copy; this steers the design. When empty, the next email generation prefills it with the direction derived from the brand. Send null to clear it - the next generation writes a fresh one.
array | null
Value propositions, usually objects with title and description.
string
Existing sender profile to make the account-wide default, and the profile fromName renames. List IDs with GET /v1/sender-profiles. Mutually exclusive with fromEmail.
string
Account-wide default From address. Its domain must already be configured and verified.
string
Display name of the default From profile. Sent on its own it renames the current default profile without changing its address; with senderProfileId it renames that profile; with fromEmail it names the profile for that address. If the address already carries several display names, the request is rejected - pass senderProfileId to say which one to rename.
string
Existing reply profile to make the account-wide default, and the profile replyToName renames. Mutually exclusive with replyTo.
string
Account-wide default Reply-To address.
string
Display name of the default Reply-To profile. Sent on its own it renames the current default profile without changing its address; with replyProfileId it renames that profile; with replyTo it names the profile for that address.
boolean
Turn the inbox on or off for this company. When on, replies to your emails and email sent to the inbox address are stored as conversations. To turn it on, the workspace needs a verified receiving domain, unless it has received conversations before; otherwise the request fails with 409 and code receiving_domain_required. The first verification of a receiving domain you added turns the inbox on for you.
string
Where reply addresses in your emails point. custom uses your verified receiving domain for emails from every sending domain, and inbound.sequenzy.com until it is verified. sequenzy always uses inbound.sequenzy.com. Adding your first receiving domain sets it to custom.
boolean
Enable or disable forwarding captured replies to the configured mailbox.
array | null
Which lists new contacts join when something creates a subscriber without explicit list targeting - forms, API writes, events, tag actions, imports, live ingestion from integrations without their own list targeting, and payment-provider backfills. PostHog history imports are an exception and create contacts without list memberships.The three states are different and none is a synonym for another:
  • null: every current and future list, including private lists
  • []: no list at all
  • populated array: exactly those lists
Unknown IDs, and IDs belonging to another company, are rejected rather than skipped - the whole request fails so you never end up defaulting to fewer lists than you asked for. Accepts at most 100 lists.Changing this affects only later writes. Nobody is moved or removed from a list retroactively, so a list already filled by an integration backfill still needs remove subscribers from a list.In the dashboard the same setting lives under Contacts -> Lists -> Default Lists.
Keep new contacts out of every list unless something targets them explicitly:

Responses

Only the new renameMatchingFooters: true option additionally requires emails:write, templates:write, campaigns:write, sequences:write, transactional:write and ab_tests:write. Personal keys also require workspace owner or admin access. Ordinary company updates keep their existing permissions.