Campaigns V2

Update Audience Weights

Changed on

Bulk-updates treatment-variant traffic percentages in place (preserving variant identity). Every treatment must be present, with no duplicate IDs; the HOLDOUT variant (if any) is auto-balanced to (100 - sum). Requires campaigns:write scope.

put/v2/campaigns/{id}/audiences/{audience_id}/weights

Request

  • Base URL
    https://api.superwall.com
  • URL
    https://api.superwall.com/v2/campaigns/{id}/audiences/{audience_id}/weights
  • Auth
    • HTTP bearer
    • or API key in cookie accounts_superwall_token
    • or HTTP bearer

Path parameters

idstring required
audience_idstring required

Request body

Response

Success

idstring required
object'audience' required

Object type, always audience

enabledboolean required

Whether this audience is enabled

expressionstring nullable required

Compiled filter expression for matching users, or null for all users

rule_conditionsunknown required
expression_celstring nullable required

The CEL expression evaluated by modern SDKs, derived from rule_conditions. Null when the audience has no structured rule.

expression_sqlstring nullable required

The dashboard-side SQL compilation of rule_conditions (for preview/copy). Null when the audience has no structured rule.

rankstring required

Priority rank of this audience within the campaign

descriptionstring nullable required

Human-readable description of the audience

Changes

    • warning

      added the new credentials_missing enum value to the / response property for the response status

    • warning

      added the new credentials_missing enum value to the / response property for the response status

    • warning

      added the new credentials_missing enum value to the / response property for the response status

    • info

      added subschema #1 subschema #2 to the response body anyOf list for the response status

    • info

      added subschema #1 subschema #2 subschema #3 subschema #4 subschema #5 to the response body anyOf list for the response status

    • info

      added subschema #2 subschema #3 to the response body anyOf list for the response status

    • info

      removed subschema #1 subschema #2 from the response body anyOf list for the response status

    • info

      removed subschema #1 subschema #2 subschema #3 subschema #4 subschema #5 from the response body anyOf list for the response status

    • info

      removed subschema #2 subschema #3 from the response body anyOf list for the response status

    • breaking

      the // request property type changed from number to integer