Skip to main content
POST
Upsert user tenant profile

Authorizations

Authorization
string
header
required

Pass as Bearer <API_KEY>. Get API Key from SuprSend dashboard Developers -> API Keys section.

Path Parameters

distinct_id
string
required

Unique identifier of the user in your system. The user's global profile must exist before you upsert a per-tenant profile.

tenant_id
string
required

Tenant to scope the profile update to. Tenant must exist in the workspace.

Body

application/json

Per-tenant profile payload. Same channel and property keys as Create / Update Users. Any key set here becomes the per-tenant override; keys omitted here fall through to the global profile at send time.

$email
string<email>[]

List of email addresses to set on the per-tenant profile.

$sms
string[]

List of phone numbers for SMS on the per-tenant profile.

$whatsapp
string[]

List of phone numbers for WhatsApp on the per-tenant profile.

$inbox
string[]

List of inbox identifiers on the per-tenant profile.

$androidpush
string[]

Android push tokens on the per-tenant profile. Use this to isolate device tokens per tenant / app install.

$iospush
string[]

iOS push tokens on the per-tenant profile.

$webpush
object[]

Web push subscription objects on the per-tenant profile.

$slack
object[]

Slack channel configuration on the per-tenant profile. Same shape as the global profile — email + access_token, user_id + access_token, channel + access_token, or incoming_webhook.

$ms_teams
object[]

Microsoft Teams channel configuration on the per-tenant profile. Same shape as the global profile.

$timezone
string

IANA timezone for the per-tenant profile.

Example:

"America/New_York"

$preferred_language
string

Preferred language code for the per-tenant profile.

Example:

"en"

$locale
string

Locale for the per-tenant profile.

Example:

"en_GB"

{key}
any

Any custom property to set on the per-tenant profile. Overrides the same key on the global profile at send time.

Response

201 - Created. The response is the full user object with the merged (effective) profile at the top level and the per-tenant override under tenant.

distinct_id
string

The user identifier the operation applied to.

Example:

"user@example.com"

properties
object

Merged (effective) properties — global properties layered with per-tenant overrides.

created_at
string<date-time>

Timestamp when the user was originally created.

updated_at
string<date-time>

Timestamp when the user was last updated (global or per-tenant).

tenant
object

The per-tenant override block for the tenant the request targeted. Contains only the fields explicitly set at the tenant level, not the merged view.