Skip to main content
PATCH
Update Workspace Config

Authorizations

ServiceToken <token>
string
header
required

You can get Service Token from SuprSend dashboard -> Account Settings -> Service Tokens section.

Path Parameters

workspace
string
required

Workspace slug (e.g. staging, production).

Body

application/json

Body for PATCH /v1/{workspace}/config/. Include only the fields you want to change — omitted fields are left untouched.

user_inbox_preference_enabled
boolean

If you are using the Inbox channel, enable this to show the Inbox channel in the preference centre.

Example:

true

sms_vendor_type
enum<string>

Switch the workspace's SMS delivery mode. Confirm with your SMS provider before switching to or from dlt.

Available options:
basic,
dlt
Example:

"basic"

user_tenancy_mode
enum<string>

Change how users are constrained across tenants. See User-tenant mapping for the effects of switching this value.

Available options:
shared,
exclusive
Example:

"shared"

user_tenancy_channel_fallback_mode
enum<string>

Switch between all (every channel falls back from global) and allowlist (only channels in user_tenancy_channel_fallback fall back).

Available options:
all,
allowlist
Example:

"allowlist"

user_tenancy_channel_fallback
string[]

Channel keys allowed to fall back when user_tenancy_channel_fallback_mode = allowlist. Ignored otherwise.

Example:
user_tenancy_channel_fallback_applies_to_default_tenant
boolean

When true, the fallback rule above also governs sends with no tenant_id.

Example:

false

Response

Workspace config updated. The full updated config is returned.

Workspace-level configuration flags.

user_inbox_preference_enabled
boolean

If you are using the Inbox channel, enable this to show the Inbox channel in the preference centre.

Example:

true

sms_vendor_type
enum<string>

SMS delivery mode for the workspace. Use dlt for India DLT-compliant sends; basic for standard sends.

Available options:
basic,
dlt
Example:

"basic"

user_tenancy_mode
enum<string>

Constraint on user-tenant associations for this workspace.

  • shared — a user can belong to any number of tenants.
  • exclusive — a user can belong to at most one tenant. The associate call rejects users that already have a mapping.

New workspaces default to exclusive; workspaces that existed before this setting was introduced default to shared.

Available options:
shared,
exclusive
Example:

"exclusive"

user_tenancy_channel_fallback_mode
enum<string>

Controls which channels a tenant-scoped profile is allowed to inherit from the user's global profile when the tenant has no override for that channel.

  • all — every channel falls back to global (default; reproduces a straight shallow merge).
  • allowlist — only the channels listed in user_tenancy_channel_fallback fall back; every other channel is dropped from the send when the tenant has no override for it. Prevents identities like $androidpush or $slack from leaking across tenants.
Available options:
all,
allowlist
Example:

"all"

user_tenancy_channel_fallback
string[]

Channel keys allowed to fall back from the global profile when user_tenancy_channel_fallback_mode = allowlist. Ignored when the mode is all.

Typical setup: ["$email", "$sms", "$whatsapp"] — safe to fall back — while excluding $androidpush, $iospush, $webpush, $inbox, and $slack.

Example:
user_tenancy_channel_fallback_applies_to_default_tenant
boolean
default:false

Whether the fallback rule above also governs sends that carry no tenant_id (the default-tenant path).

  • false (default) — the default-tenant path always falls back for every channel, regardless of the allowlist.
  • true — the default-tenant path follows the same user_tenancy_channel_fallback_mode + user_tenancy_channel_fallback rule as other tenants.
Example:

false