recurly-client-0.0.0.1: Client for Recurly subscription management
Safe HaskellSafe-Inferred
LanguageHaskell2010

RecurlyClient.Types.SubscriptionAddOnUpdate

Description

Contains the types generated from the schema SubscriptionAddOnUpdate

Synopsis

Documentation

data SubscriptionAddOnUpdate Source #

Defines the object schema located at components.schemas.SubscriptionAddOnUpdate in the specification.

Constructors

SubscriptionAddOnUpdate 

Fields

  • subscriptionAddOnUpdateAdd_on_source :: Maybe SubscriptionAddOnUpdateAdd_on_source

    add_on_source: Used to determine where the associated add-on data is pulled from. If this value is set to `plan_add_on` or left blank, then add-on data will be pulled from the plan's add-ons. If the associated `plan` has `allow_any_item_on_subscriptions` set to `true` and this field is set to `item`, then the associated add-on data will be pulled from the site's item catalog.

  • subscriptionAddOnUpdateCode :: Maybe Text

    code: If a code is provided without an id, the subscription add-on attributes will be set to the current value for those attributes on the plan add-on unless provided in the request. If `add_on_source` is set to `plan_add_on` or left blank, then plan's add-on `code` should be used. If `add_on_source` is set to `item`, then the `code` from the associated item should be used.

    Constraints:

    • Maximum length of 50
  • subscriptionAddOnUpdateId :: Maybe Text

    id: When an id is provided, the existing subscription add-on attributes will persist unless overridden in the request.

    Constraints:

    • Maximum length of 13
  • subscriptionAddOnUpdatePercentage_tiers :: Maybe (NonEmpty SubscriptionAddOnPercentageTier)

    percentage_tiers: If percentage tiers are provided in the request, all existing percentage tiers on the Subscription Add-on will be removed and replaced by the percentage tiers in the request. Use only if add_on.tier_type is tiered or volume and add_on.usage_type is percentage. There must be one tier without an `ending_amount` value which represents the final tier. This feature is currently in development and requires approval and enablement, please contact support.

    Constraints:

    • Must have a minimum of 1 items
  • subscriptionAddOnUpdateQuantity :: Maybe Int

    quantity

    Constraints:

    • Minimum of 0.0
  • subscriptionAddOnUpdateRevenue_schedule_type :: Maybe SubscriptionAddOnUpdateRevenue_schedule_type

    revenue_schedule_type

  • subscriptionAddOnUpdateTiers :: Maybe (NonEmpty SubscriptionAddOnTier)

    tiers: If the plan add-on's `tier_type` is `flat`, then `tiers` must be absent. The `tiers` object must include one to many tiers with `ending_quantity` and `unit_amount`. There must be one tier without an `ending_quantity` value which represents the final tier.

    Constraints:

    • Must have a minimum of 1 items
  • subscriptionAddOnUpdateUnit_amount :: Maybe Float

    unit_amount: Allows up to 2 decimal places. Optionally, override the add-on's default unit amount. If the plan add-on's `tier_type` is `tiered`, `volume`, or `stairstep`, then `unit_amount` cannot be provided.

    Constraints:

    • Maxium of 1000000.0
    • Minimum of 0.0
  • subscriptionAddOnUpdateUnit_amount_decimal :: Maybe Text

    unit_amount_decimal: Allows up to 9 decimal places. Optionally, override the add-on's default unit amount. If the plan add-on's `tier_type` is `tiered`, `volume`, or `stairstep`, then `unit_amount_decimal` cannot be provided. Only supported when the plan add-on's `add_on_type` = `usage`. If `unit_amount_decimal` is provided, `unit_amount` cannot be provided.

  • subscriptionAddOnUpdateUsage_percentage :: Maybe Float

    usage_percentage: The percentage taken of the monetary amount of usage tracked. This can be up to 4 decimal places. A value between 0.0 and 100.0. Required if add_on_type is usage and usage_type is percentage.

data SubscriptionAddOnUpdateAdd_on_source Source #

Defines the enum schema located at components.schemas.SubscriptionAddOnUpdate.properties.add_on_source in the specification.

Used to determine where the associated add-on data is pulled from. If this value is set to `plan_add_on` or left blank, then add-on data will be pulled from the plan's add-ons. If the associated `plan` has `allow_any_item_on_subscriptions` set to `true` and this field is set to `item`, then the associated add-on data will be pulled from the site's item catalog.

Constructors

SubscriptionAddOnUpdateAdd_on_sourceOther Value

This case is used if the value encountered during decoding does not match any of the provided cases in the specification.

SubscriptionAddOnUpdateAdd_on_sourceTyped Text

This constructor can be used to send values to the server which are not present in the specification yet.

SubscriptionAddOnUpdateAdd_on_sourceEnumPlan_add_on

Represents the JSON value "plan_add_on"

SubscriptionAddOnUpdateAdd_on_sourceEnumItem

Represents the JSON value "item"

data SubscriptionAddOnUpdateRevenue_schedule_type Source #

Defines the enum schema located at components.schemas.SubscriptionAddOnUpdate.properties.revenue_schedule_type in the specification.

Constructors

SubscriptionAddOnUpdateRevenue_schedule_typeOther Value

This case is used if the value encountered during decoding does not match any of the provided cases in the specification.

SubscriptionAddOnUpdateRevenue_schedule_typeTyped Text

This constructor can be used to send values to the server which are not present in the specification yet.

SubscriptionAddOnUpdateRevenue_schedule_typeEnumAt_range_end

Represents the JSON value "at_range_end"

SubscriptionAddOnUpdateRevenue_schedule_typeEnumAt_range_start

Represents the JSON value "at_range_start"

SubscriptionAddOnUpdateRevenue_schedule_typeEnumEvenly

Represents the JSON value "evenly"

SubscriptionAddOnUpdateRevenue_schedule_typeEnumNever

Represents the JSON value "never"