Get membership switch configuration by id for a customer

Deprecated

Required Scopes: `MEMBERSHIP_READ` Returns extended information about the membership offer.

Endpoint

GET /v1/memberships/{customerId}/membership-switch/configs/{configId}

Path Parameters

customerId required integer (int64)

The ID of the customer to load a membership switch configuration for

configId required integer (int64)

The ID of the membership switch configuration

Query Parameters

studioId integer (int64)

An optional studio ID to validate whether the specified membership switch configuration is available for that studio

Responses

OK

Response Body application/json

Detailed information about the membership switch configuration

id integer(int64) required

Unique ID of the configuration

Example:  1000
name required

Name of the configuration

Example:  "Premium Membership Upgrade"
presentation required

Membership switch configuration presentation details

bannerText

Text associated to the configured presentation banner

imageUrl

Image URL of the presentation banner. It will expire after 15 minutes.

sourceContracts array[object] required

List of source contracts for the membership switch

id integer(int64) required

Unique ID of the source contract rate

Example:  1000
rateName required

Name of the source contract rate

Example:  "Basic Membership"
destinationMembershipOffers array[object] required

List of destination membership offers

id integer(int64) required

Unique identifier for the membership offer.

description required

Description of the membership offer.

Example:  "This offer includes access to all gym facilities and group classes."
name required

Name of the membership offer.

Example:  "Standard Membership"
subDescription

Sub description for the membership offer.

Example:  "Best value for regular gym-goers."
imageUrl

Temporary valid download link for rate bundle image. Expires after 2 hours.

Example:  "https://example.com"
footnote

Contractual or legal comments to be displayed below the offer.

Example:  "This offer is valid for new members only. Terms and conditions apply."
preUseType required

Contract pre-use type information.

Allowed values:
NOT_AVAILABLE Contract is not available for pre-use
CHARGEABLE Contract pre-use is chargeable
FREE Contract pre-use is free
Example:  "NOT_AVAILABLE"
limitedOfferingPeriod required

Represents a date period.

startDate string(date) required

Start of the interval

Example:  "2025-01-01"
endDate string(date) required

End of the interval

Example:  "2026-01-01"
rateCodes array[object] required

Rate codes of the membership offer.

name

The name of the rate code

Example:  "Standard Rate"
identifier

Unique identifier for the rate code.

Example:  "RC12345"
includedModules array[object] required

List of included modules of this membership offer.

id integer(int64) required

Unique identifier for the membership offer module.

Example:  1234567890
name required

Name of the membership offer module.

Example:  "Premium Fitness Package"
description required

Description of the membership offer module.

Example:  "Includes access to all gym facilities and group classes."
imageUrl

Image url of membership offer module. Expires after 5hours.

Example:  "https://some-module.com"
term required

Represents the terms of a membership offer.

extensionType required

Module term extension type

Allowed values:
NONE No extension
TERM_EXTENSION Term extension
SUBSEQUENT_RATE_DETAIL Subsequent rate detail
Example:  "TERM_EXTENSION"
term

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
termExtension

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
cancelationPeriod

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
extensionCancelationPeriod

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
trialPeriod

Represents the trial period of a membership offer.

trialPeriod required

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
description required

Description of the trial period

Example:  "Free trial for 30 days"
consentTextBlock

Contract text block information.

id integer(int64)

The unique identifier of the text block

Example:  1234567890
title

The title of the text block

Example:  "Title of 1. text block"
text

The text of the text block

Example:  "Text of 1. text block"
order integer(int32)

The order of the text block in the contract

Example:  1
hasSignature

Text block configuration has a signature field. You have the option to show a signature input field and it will be added in the contract document. It is not a required field in magicline. It is up to your implementation if you add this field.

showCommunicationPrivacyOptions

Text block contains information about the communication privacy options. You are advised to show a matrix with communication settings in combination with this text block.

attachmentType

Indicates the type of attachment for this block

Allowed values:
NONE No text block
FILE File information available in `attachedDocument`
URL Url information available in `attachedExternalUrlDto`
CONTRACT_PDF_PREVIEW Contract PDF preview
Example:  "CONTRACT_PDF_PREVIEW"
attachedExternalUrlDto

Represents url information.

title required

Url title

Example:  "Example Resource"
url required

Url to access the resource

Example:  "https://some-url.com"
attachedDocument

Represents document information.

fileName required

Name of the file to download

Example:  "contract.pdf"
url required

Temporary valid download link. Expires after 5 hours.

Example:  "https://some-url.com"
rateBundleModuleId integer(int64)

The ID of the associated rate bundle module. Only set if this is a module consent text block.

Example:  1234567890
confirmationRequired
rateCodes array[object]

Rate codes of the membership offer module.

name

The name of the rate code

Example:  "Standard Rate"
identifier

Unique identifier for the rate code.

Example:  "RC12345"
contractSignaturesRequired

Indicates if contract signatures are required for this membership offer.

allowedPaymentChoices array[object] required

Allowed payment choices for this membership offer.

maximumNumberOfSelectableModules integer(int32)

Maximum number of `selectableModules` for this membership offer. If 0, no modules can be selected.

contractTextBlocks array[object] required

List of contract text blocks that are part of this membership offer.

id integer(int64)

The unique identifier of the text block

Example:  1234567890
title

The title of the text block

Example:  "Title of 1. text block"
text

The text of the text block

Example:  "Text of 1. text block"
order integer(int32)

The order of the text block in the contract

Example:  1
hasSignature

Text block configuration has a signature field. You have the option to show a signature input field and it will be added in the contract document. It is not a required field in magicline. It is up to your implementation if you add this field.

showCommunicationPrivacyOptions

Text block contains information about the communication privacy options. You are advised to show a matrix with communication settings in combination with this text block.

attachmentType

Indicates the type of attachment for this block

Allowed values:
NONE No text block
FILE File information available in `attachedDocument`
URL Url information available in `attachedExternalUrlDto`
CONTRACT_PDF_PREVIEW Contract PDF preview
Example:  "CONTRACT_PDF_PREVIEW"
attachedExternalUrlDto

Represents url information.

title required

Url title

Example:  "Example Resource"
url required

Url to access the resource

Example:  "https://some-url.com"
attachedDocument

Represents document information.

fileName required

Name of the file to download

Example:  "contract.pdf"
url required

Temporary valid download link. Expires after 5 hours.

Example:  "https://some-url.com"
rateBundleModuleId integer(int64)

The ID of the associated rate bundle module. Only set if this is a module consent text block.

Example:  1234567890
confirmationRequired
selectableModules array[object]

List of selectable modules for this membership offer. Limited by `maximumNumberOfSelectableModules`.

id integer(int64) required

Unique identifier for the membership offer module.

Example:  1234567890
name required

Name of the membership offer module.

Example:  "Premium Fitness Package"
description required

Description of the membership offer module.

Example:  "Includes access to all gym facilities and group classes."
imageUrl

Image url of membership offer module. Expires after 5hours.

Example:  "https://some-module.com"
term required

Represents the terms of a membership offer.

extensionType required

Module term extension type

Allowed values:
NONE No extension
TERM_EXTENSION Term extension
SUBSEQUENT_RATE_DETAIL Subsequent rate detail
Example:  "TERM_EXTENSION"
term

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
termExtension

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
cancelationPeriod

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
extensionCancelationPeriod

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
trialPeriod

Represents the trial period of a membership offer.

trialPeriod required

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
description required

Description of the trial period

Example:  "Free trial for 30 days"
consentTextBlock

Contract text block information.

id integer(int64)

The unique identifier of the text block

Example:  1234567890
title

The title of the text block

Example:  "Title of 1. text block"
text

The text of the text block

Example:  "Text of 1. text block"
order integer(int32)

The order of the text block in the contract

Example:  1
hasSignature

Text block configuration has a signature field. You have the option to show a signature input field and it will be added in the contract document. It is not a required field in magicline. It is up to your implementation if you add this field.

showCommunicationPrivacyOptions

Text block contains information about the communication privacy options. You are advised to show a matrix with communication settings in combination with this text block.

attachmentType

Indicates the type of attachment for this block

Allowed values:
NONE No text block
FILE File information available in `attachedDocument`
URL Url information available in `attachedExternalUrlDto`
CONTRACT_PDF_PREVIEW Contract PDF preview
Example:  "CONTRACT_PDF_PREVIEW"
attachedExternalUrlDto

Represents url information.

title required

Url title

Example:  "Example Resource"
url required

Url to access the resource

Example:  "https://some-url.com"
attachedDocument

Represents document information.

fileName required

Name of the file to download

Example:  "contract.pdf"
url required

Temporary valid download link. Expires after 5 hours.

Example:  "https://some-url.com"
rateBundleModuleId integer(int64)

The ID of the associated rate bundle module. Only set if this is a module consent text block.

Example:  1234567890
confirmationRequired
rateCodes array[object]

Rate codes of the membership offer module.

name

The name of the rate code

Example:  "Standard Rate"
identifier

Unique identifier for the rate code.

Example:  "RC12345"
paymentFrequency required

Represents the payment frequency

id integer(int64)

The unique identifier of the payment frequency. (`null` possible for starter package)

Example:  1234567890
type required

Payment frequency type of a contract

Allowed values:
FREE Represents that the contract payment frequency is free of charge.
NON_RECURRING Represents that the contract payment frequency is non recurring, meaning only one payment is necessary here.
RECURRING Represents that the contract payment frequency is recurring, meaning that the payment will take place every term.
MONTH_DAY Represents that the contract payment frequency is based on month days, with a possibly individual price per month day.
TERM_BASED Represents that the contract payment frequency is based on terms, with a possibly individual price per term.
Example:  "FREE"
term

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
price

Represents a financial data

amount required

Amount of the finance data tuple

Example:  20
currency string(ISO 4217) required

Currency of the finance data tuple

Example:  "EUR"
monthDaysToPrices array[object]

Month day to prices list, used for contract payment frequency type `MONTH_DAY`

monthDay required

The month day of the month day to price mapping

month
Allowed values:
JANUARY FEBRUARY MARCH APRIL MAY JUNE JULY AUGUST SEPTEMBER OCTOBER NOVEMBER DECEMBER
monthValue integer(int32)
dayOfMonth integer(int32)
price required

Represents a financial data

amount required

Amount of the finance data tuple

Example:  20
currency string(ISO 4217) required

Currency of the finance data tuple

Example:  "EUR"
termsToPrices array[object]

Terms to prices list, used for contract payment frequency type `TERM_BASED`. Note that the price will become active `AFTER` the respective term has passed

term required

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
price required

Represents a financial data

amount required

Amount of the finance data tuple

Example:  20
currency string(ISO 4217) required

Currency of the finance data tuple

Example:  "EUR"
recurring

Whether the cycle of payments repeats indefinitely. Only relevant if type is `TERM_BASED` or `MONTH_DAY`.

ageBasedAdjustments array[object]

List of age-based adjustments for the membership offer module.

ageRange required

Represents an age range.

startAge integer(int32) required

Start age of the range, inclusive.

Example:  18
endAge integer(int32) required

End age of the range, inclusive.

Example:  65
value required

The value of the adjustment, based on `type`.

Example:  10
type required

Age based adjustment type

Allowed values:
ABSOLUTE Absolute adjustment of the price
PERCENTAGE Percentage adjustment of the price
Example:  "ABSOLUTE"
formattedPaymentFrequency required

The formatted payment frequency

Example:  "Every 6 months"
terms array[object]

List of terms that are part of this membership offer.

id integer(int64) required

Unique identifier of the membership offer term

Example:  1234567890
term

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
contractVolumeInformation

Contains the total amount to be paid during the initial runtime of the contract and the average amounts per month and per the rate's payment frequency (e.g. 1 week)

totalContractVolume

Represents a financial data

amount required

Amount of the finance data tuple

Example:  20
currency string(ISO 4217) required

Currency of the finance data tuple

Example:  "EUR"
averagePaymentVolumePerMonth

Represents a financial data

amount required

Amount of the finance data tuple

Example:  20
currency string(ISO 4217) required

Currency of the finance data tuple

Example:  "EUR"
averagePaymentVolumePerPaymentFrequencyTerm

Represents a financial data

amount required

Amount of the finance data tuple

Example:  20
currency string(ISO 4217) required

Currency of the finance data tuple

Example:  "EUR"
paymentFrequency required

Represents the payment frequency

id integer(int64)

The unique identifier of the payment frequency. (`null` possible for starter package)

Example:  1234567890
type required

Payment frequency type of a contract

Allowed values:
FREE Represents that the contract payment frequency is free of charge.
NON_RECURRING Represents that the contract payment frequency is non recurring, meaning only one payment is necessary here.
RECURRING Represents that the contract payment frequency is recurring, meaning that the payment will take place every term.
MONTH_DAY Represents that the contract payment frequency is based on month days, with a possibly individual price per month day.
TERM_BASED Represents that the contract payment frequency is based on terms, with a possibly individual price per term.
Example:  "FREE"
term

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
price

Represents a financial data

amount required

Amount of the finance data tuple

Example:  20
currency string(ISO 4217) required

Currency of the finance data tuple

Example:  "EUR"
monthDaysToPrices array[object]

Month day to prices list, used for contract payment frequency type `MONTH_DAY`

monthDay required

The month day of the month day to price mapping

month
Allowed values:
JANUARY FEBRUARY MARCH APRIL MAY JUNE JULY AUGUST SEPTEMBER OCTOBER NOVEMBER DECEMBER
monthValue integer(int32)
dayOfMonth integer(int32)
price required

Represents a financial data

amount required

Amount of the finance data tuple

Example:  20
currency string(ISO 4217) required

Currency of the finance data tuple

Example:  "EUR"
termsToPrices array[object]

Terms to prices list, used for contract payment frequency type `TERM_BASED`. Note that the price will become active `AFTER` the respective term has passed

term required

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
price required

Represents a financial data

amount required

Amount of the finance data tuple

Example:  20
currency string(ISO 4217) required

Currency of the finance data tuple

Example:  "EUR"
recurring

Whether the cycle of payments repeats indefinitely. Only relevant if type is `TERM_BASED` or `MONTH_DAY`.

ageBasedAdjustments array[object]

List of age-based adjustments for the membership offer module.

ageRange required

Represents an age range.

startAge integer(int32) required

Start age of the range, inclusive.

Example:  18
endAge integer(int32) required

End age of the range, inclusive.

Example:  65
value required

The value of the adjustment, based on `type`.

Example:  10
type required

Age based adjustment type

Allowed values:
ABSOLUTE Absolute adjustment of the price
PERCENTAGE Percentage adjustment of the price
Example:  "ABSOLUTE"
formattedPaymentFrequency required

The formatted payment frequency

Example:  "Every 6 months"
extensionTerm

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
defaultContractStartDate string(date)

The default contract start date

Example:  "2025-08-24"
defaultContractStartDateOfUse string(date)

The default contract start date of use

Example:  "2025-09-01"
priceAdjustmentRules array[object]

Price adjustment rules that are part of this membership offer term.

defaultDescription required

A complete formatted sentence which contains all details about this price adjustment rule. If the presentation should differ use the separate attributes.

Example:  "Formatted description of price adjustment rule"
value required

Value of price adjustment rule, might be percentage or amount, depends on `chargeAdjustmentType`

Example:  "5%"
recurrenceFrequency required

Recurrence of price adjustment rule, how often and when applies this rule

Example:  "monthly"
type required

States how the rule adjusts the price

Allowed values:
RAISE Raise price
REDUCTION Reduce price
NEW_BASIC_AMOUNT New price is the basic amount
Example:  "RAISE"
chargeAdjustmentType required

How the rule changes the price

Allowed values:
RELATIVE Relative adjustment of the price
ABSOLUTE Absolute adjustment of the price
BASIC_AMOUNT Fix the price to the basic amount
Example:  "RELATIVE"
flatFees array[object] required

Flat fees that are part of this membership offer.

name required

The name of the flat fee

Example:  "Starter Package"
identifier

The identifier of the flat fee

Example:  "ID12345"
formattedPaymentFrequency required

The formatted payment frequency of the flat fee

Example:  "12M"
firstBookingDelay

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
paymentFrequency

Represents the payment frequency

id integer(int64)

The unique identifier of the payment frequency. (`null` possible for starter package)

Example:  1234567890
type required

Payment frequency type of a contract

Allowed values:
FREE Represents that the contract payment frequency is free of charge.
NON_RECURRING Represents that the contract payment frequency is non recurring, meaning only one payment is necessary here.
RECURRING Represents that the contract payment frequency is recurring, meaning that the payment will take place every term.
MONTH_DAY Represents that the contract payment frequency is based on month days, with a possibly individual price per month day.
TERM_BASED Represents that the contract payment frequency is based on terms, with a possibly individual price per term.
Example:  "FREE"
term

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
price

Represents a financial data

amount required

Amount of the finance data tuple

Example:  20
currency string(ISO 4217) required

Currency of the finance data tuple

Example:  "EUR"
monthDaysToPrices array[object]

Month day to prices list, used for contract payment frequency type `MONTH_DAY`

monthDay required

The month day of the month day to price mapping

month
Allowed values:
JANUARY FEBRUARY MARCH APRIL MAY JUNE JULY AUGUST SEPTEMBER OCTOBER NOVEMBER DECEMBER
monthValue integer(int32)
dayOfMonth integer(int32)
price required

Represents a financial data

amount required

Amount of the finance data tuple

Example:  20
currency string(ISO 4217) required

Currency of the finance data tuple

Example:  "EUR"
termsToPrices array[object]

Terms to prices list, used for contract payment frequency type `TERM_BASED`. Note that the price will become active `AFTER` the respective term has passed

term required

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
price required

Represents a financial data

amount required

Amount of the finance data tuple

Example:  20
currency string(ISO 4217) required

Currency of the finance data tuple

Example:  "EUR"
recurring

Whether the cycle of payments repeats indefinitely. Only relevant if type is `TERM_BASED` or `MONTH_DAY`.

ageBasedAdjustments array[object]

List of age-based adjustments for the membership offer module.

ageRange required

Represents an age range.

startAge integer(int32) required

Start age of the range, inclusive.

Example:  18
endAge integer(int32) required

End age of the range, inclusive.

Example:  65
value required

The value of the adjustment, based on `type`.

Example:  10
type required

Age based adjustment type

Allowed values:
ABSOLUTE Absolute adjustment of the price
PERCENTAGE Percentage adjustment of the price
Example:  "ABSOLUTE"
formattedPaymentFrequency required

The formatted payment frequency

Example:  "Every 6 months"
starterPackage
extensionFixedTerm

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
extensionType required

Membership offer extension type

Allowed values:
NONE No extension
TERM_EXTENSION Term extension
SUBSEQUENT_RATE_DETAIL Subsequent rate detail
Example:  "NONE"
subsequentRate

Represents a subsequent rate for a membership offer.

name required

Name of the subsequent rate

Example:  "Combined fitness and wellness"
paymentFrequency required

Represents the payment frequency

id integer(int64)

The unique identifier of the payment frequency. (`null` possible for starter package)

Example:  1234567890
type required

Payment frequency type of a contract

Allowed values:
FREE Represents that the contract payment frequency is free of charge.
NON_RECURRING Represents that the contract payment frequency is non recurring, meaning only one payment is necessary here.
RECURRING Represents that the contract payment frequency is recurring, meaning that the payment will take place every term.
MONTH_DAY Represents that the contract payment frequency is based on month days, with a possibly individual price per month day.
TERM_BASED Represents that the contract payment frequency is based on terms, with a possibly individual price per term.
Example:  "FREE"
term

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
price

Represents a financial data

amount required

Amount of the finance data tuple

Example:  20
currency string(ISO 4217) required

Currency of the finance data tuple

Example:  "EUR"
monthDaysToPrices array[object]

Month day to prices list, used for contract payment frequency type `MONTH_DAY`

monthDay required

The month day of the month day to price mapping

month
Allowed values:
JANUARY FEBRUARY MARCH APRIL MAY JUNE JULY AUGUST SEPTEMBER OCTOBER NOVEMBER DECEMBER
monthValue integer(int32)
dayOfMonth integer(int32)
price required

Represents a financial data

amount required

Amount of the finance data tuple

Example:  20
currency string(ISO 4217) required

Currency of the finance data tuple

Example:  "EUR"
termsToPrices array[object]

Terms to prices list, used for contract payment frequency type `TERM_BASED`. Note that the price will become active `AFTER` the respective term has passed

term required

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
price required

Represents a financial data

amount required

Amount of the finance data tuple

Example:  20
currency string(ISO 4217) required

Currency of the finance data tuple

Example:  "EUR"
recurring

Whether the cycle of payments repeats indefinitely. Only relevant if type is `TERM_BASED` or `MONTH_DAY`.

ageBasedAdjustments array[object]

List of age-based adjustments for the membership offer module.

ageRange required

Represents an age range.

startAge integer(int32) required

Start age of the range, inclusive.

Example:  18
endAge integer(int32) required

End age of the range, inclusive.

Example:  65
value required

The value of the adjustment, based on `type`.

Example:  10
type required

Age based adjustment type

Allowed values:
ABSOLUTE Absolute adjustment of the price
PERCENTAGE Percentage adjustment of the price
Example:  "ABSOLUTE"
formattedPaymentFrequency required

The formatted payment frequency

Example:  "Every 6 months"
cancelationStrategy required

Membership offer cancelation strategy

Allowed values:
TERM Term cancelation
RECEIPT_DATE Receipt date cancelation
Example:  "TERM"
cancelationPeriod

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
extensionCancelationPeriod

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
rateBonusPeriods array[object]

Rate bonus periods that are part of this membership offer term.

term required

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
termStrategy required

Membership offer rate bonus period term strategy.

Allowed values:
CONTRACT_START Contract start date
FIXED Fixed date
END_OF_CURRENT_TERM End of current term
START_OF_NEXT_TERM Start of next term
Example:  "CONTRACT_START"
displaySeparately

Indicates whether the bonus period should be displayed separately in the offer details

Example:  true
runtimeExtensionType required

Membership offer bonus period type.

Allowed values:
WITH_EXTENSION Period with extension
WITHOUT_EXTENSION Period without extension
Example:  "WITH_EXTENSION"
extendsCancellationPeriod

Indicates whether the bonus period extends the cancellation period

Example:  false
rateStartPrice

Represents a financial data

amount required

Amount of the finance data tuple

Example:  20
currency string(ISO 4217) required

Currency of the finance data tuple

Example:  "EUR"
optionalModules array[object]

Optional modules additionally payable.

id integer(int64) required

Unique identifier for the membership offer module.

Example:  1234567890
name required

Name of the membership offer module.

Example:  "Premium Fitness Package"
description required

Description of the membership offer module.

Example:  "Includes access to all gym facilities and group classes."
imageUrl

Image url of membership offer module. Expires after 5hours.

Example:  "https://some-module.com"
term required

Represents the terms of a membership offer.

extensionType required

Module term extension type

Allowed values:
NONE No extension
TERM_EXTENSION Term extension
SUBSEQUENT_RATE_DETAIL Subsequent rate detail
Example:  "TERM_EXTENSION"
term

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
termExtension

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
cancelationPeriod

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
extensionCancelationPeriod

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
trialPeriod

Represents the trial period of a membership offer.

trialPeriod required

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
description required

Description of the trial period

Example:  "Free trial for 30 days"
consentTextBlock

Contract text block information.

id integer(int64)

The unique identifier of the text block

Example:  1234567890
title

The title of the text block

Example:  "Title of 1. text block"
text

The text of the text block

Example:  "Text of 1. text block"
order integer(int32)

The order of the text block in the contract

Example:  1
hasSignature

Text block configuration has a signature field. You have the option to show a signature input field and it will be added in the contract document. It is not a required field in magicline. It is up to your implementation if you add this field.

showCommunicationPrivacyOptions

Text block contains information about the communication privacy options. You are advised to show a matrix with communication settings in combination with this text block.

attachmentType

Indicates the type of attachment for this block

Allowed values:
NONE No text block
FILE File information available in `attachedDocument`
URL Url information available in `attachedExternalUrlDto`
CONTRACT_PDF_PREVIEW Contract PDF preview
Example:  "CONTRACT_PDF_PREVIEW"
attachedExternalUrlDto

Represents url information.

title required

Url title

Example:  "Example Resource"
url required

Url to access the resource

Example:  "https://some-url.com"
attachedDocument

Represents document information.

fileName required

Name of the file to download

Example:  "contract.pdf"
url required

Temporary valid download link. Expires after 5 hours.

Example:  "https://some-url.com"
rateBundleModuleId integer(int64)

The ID of the associated rate bundle module. Only set if this is a module consent text block.

Example:  1234567890
confirmationRequired
rateCodes array[object]

Rate codes of the membership offer module.

name

The name of the rate code

Example:  "Standard Rate"
identifier

Unique identifier for the rate code.

Example:  "RC12345"
paymentFrequency required

Represents the payment frequency

id integer(int64)

The unique identifier of the payment frequency. (`null` possible for starter package)

Example:  1234567890
type required

Payment frequency type of a contract

Allowed values:
FREE Represents that the contract payment frequency is free of charge.
NON_RECURRING Represents that the contract payment frequency is non recurring, meaning only one payment is necessary here.
RECURRING Represents that the contract payment frequency is recurring, meaning that the payment will take place every term.
MONTH_DAY Represents that the contract payment frequency is based on month days, with a possibly individual price per month day.
TERM_BASED Represents that the contract payment frequency is based on terms, with a possibly individual price per term.
Example:  "FREE"
term

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
price

Represents a financial data

amount required

Amount of the finance data tuple

Example:  20
currency string(ISO 4217) required

Currency of the finance data tuple

Example:  "EUR"
monthDaysToPrices array[object]

Month day to prices list, used for contract payment frequency type `MONTH_DAY`

monthDay required

The month day of the month day to price mapping

month
Allowed values:
JANUARY FEBRUARY MARCH APRIL MAY JUNE JULY AUGUST SEPTEMBER OCTOBER NOVEMBER DECEMBER
monthValue integer(int32)
dayOfMonth integer(int32)
price required

Represents a financial data

amount required

Amount of the finance data tuple

Example:  20
currency string(ISO 4217) required

Currency of the finance data tuple

Example:  "EUR"
termsToPrices array[object]

Terms to prices list, used for contract payment frequency type `TERM_BASED`. Note that the price will become active `AFTER` the respective term has passed

term required

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
price required

Represents a financial data

amount required

Amount of the finance data tuple

Example:  20
currency string(ISO 4217) required

Currency of the finance data tuple

Example:  "EUR"
recurring

Whether the cycle of payments repeats indefinitely. Only relevant if type is `TERM_BASED` or `MONTH_DAY`.

ageBasedAdjustments array[object]

List of age-based adjustments for the membership offer module.

ageRange required

Represents an age range.

startAge integer(int32) required

Start age of the range, inclusive.

Example:  18
endAge integer(int32) required

End age of the range, inclusive.

Example:  65
value required

The value of the adjustment, based on `type`.

Example:  10
type required

Age based adjustment type

Allowed values:
ABSOLUTE Absolute adjustment of the price
PERCENTAGE Percentage adjustment of the price
Example:  "ABSOLUTE"
formattedPaymentFrequency required

The formatted payment frequency

Example:  "Every 6 months"
termAfterExtension

Represents a term

value integer(int32) required

The value of the term

Example:  2
unit required

Represents a temporal unit

Allowed values:
DAY Represents a day unit
WEEK Represents a week unit
MONTH Represents month unit
YEAR Represents year unit
Example:  "WEEK"
priceAfterExtension

Represents a financial data

amount required

Amount of the finance data tuple

Example:  20
currency string(ISO 4217) required

Currency of the finance data tuple

Example:  "EUR"
timeRestrictions

Time restrictions for offer based on opening hours category

openingHoursCategory

Opening hours category information

categoryId integer(int64) required

ID of the opening hours category

Example:  1234567890
name required

Name of the opening hours category

Example:  "Off-Peak"
availabilities array[object]

List of availabilities for this offer

dayOfWeek required

Day of the week

Allowed values:
MONDAY TUESDAY WEDNESDAY THURSDAY FRIDAY SATURDAY SUNDAY
Example:  "MONDAY"
timeFrom string(time) required

Start time in ISO-8601 format

Example:  "06:00:00"
timeTo string(time) required

End time in ISO-8601 format

Example:  "23:00:00"
Validation of the request failed.

Response Body application/json

Error data

errorMessage required

Resolved message in the context-specific default locale

errorCode

Key for translation files

traceId

Datadog trace id

args array[object] deprecated

Arguments referenced by format specifiers while resolving the message from translation files

typedArgs array[object] deprecated

Same as `args` but with type information

value
type
Allowed values:
TIMESTAMP BOOLEAN DATE MONTH_DAY TIME TERM TERM_LIST INTEGER DECIMAL STRING MONEY LIMITABLE_CONFIG_PROPERTY I18N_KEY I18N_KEY_LIST PERMISSION_LIST ENUM AVAILABILITY_LIST
reference

Reference to validation error

Example:  "parent.child"
Authentication failed. No api-key, wrong api-key or wrong header name.

Response Body application/json

Error data

errorMessage required

Resolved message in the context-specific default locale

errorCode

Key for translation files

traceId

Datadog trace id

args array[object] deprecated

Arguments referenced by format specifiers while resolving the message from translation files

typedArgs array[object] deprecated

Same as `args` but with type information

value
type
Allowed values:
TIMESTAMP BOOLEAN DATE MONTH_DAY TIME TERM TERM_LIST INTEGER DECIMAL STRING MONEY LIMITABLE_CONFIG_PROPERTY I18N_KEY I18N_KEY_LIST PERMISSION_LIST ENUM AVAILABILITY_LIST
reference

Reference to validation error

Example:  "parent.child"
Authorization failed. The caller has no privilege to the given resource.

Response Body application/json

Error data

errorMessage required

Resolved message in the context-specific default locale

errorCode

Key for translation files

traceId

Datadog trace id

args array[object] deprecated

Arguments referenced by format specifiers while resolving the message from translation files

typedArgs array[object] deprecated

Same as `args` but with type information

value
type
Allowed values:
TIMESTAMP BOOLEAN DATE MONTH_DAY TIME TERM TERM_LIST INTEGER DECIMAL STRING MONEY LIMITABLE_CONFIG_PROPERTY I18N_KEY I18N_KEY_LIST PERMISSION_LIST ENUM AVAILABILITY_LIST
reference

Reference to validation error

Example:  "parent.child"
Entity does not exists.

Response Body application/json

Error data

errorMessage required

Resolved message in the context-specific default locale

errorCode

Key for translation files

traceId

Datadog trace id

args array[object] deprecated

Arguments referenced by format specifiers while resolving the message from translation files

typedArgs array[object] deprecated

Same as `args` but with type information

value
type
Allowed values:
TIMESTAMP BOOLEAN DATE MONTH_DAY TIME TERM TERM_LIST INTEGER DECIMAL STRING MONEY LIMITABLE_CONFIG_PROPERTY I18N_KEY I18N_KEY_LIST PERMISSION_LIST ENUM AVAILABILITY_LIST
reference

Reference to validation error

Example:  "parent.child"
Concurrent modification detected. The entity was modified by another request.

Response Body application/json

Error data

errorMessage required

Resolved message in the context-specific default locale

errorCode

Key for translation files

traceId

Datadog trace id

args array[object] deprecated

Arguments referenced by format specifiers while resolving the message from translation files

typedArgs array[object] deprecated

Same as `args` but with type information

value
type
Allowed values:
TIMESTAMP BOOLEAN DATE MONTH_DAY TIME TERM TERM_LIST INTEGER DECIMAL STRING MONEY LIMITABLE_CONFIG_PROPERTY I18N_KEY I18N_KEY_LIST PERMISSION_LIST ENUM AVAILABILITY_LIST
reference

Reference to validation error

Example:  "parent.child"
Access denied - rate limit is exceeded.

Response Body application/json

Error data

errorMessage required

Resolved message in the context-specific default locale

errorCode

Key for translation files

traceId

Datadog trace id

args array[object] deprecated

Arguments referenced by format specifiers while resolving the message from translation files

typedArgs array[object] deprecated

Same as `args` but with type information

value
type
Allowed values:
TIMESTAMP BOOLEAN DATE MONTH_DAY TIME TERM TERM_LIST INTEGER DECIMAL STRING MONEY LIMITABLE_CONFIG_PROPERTY I18N_KEY I18N_KEY_LIST PERMISSION_LIST ENUM AVAILABILITY_LIST
reference

Reference to validation error

Example:  "parent.child"
Unexpected system error.

Response Body application/json

Error data

errorMessage required

Resolved message in the context-specific default locale

errorCode

Key for translation files

traceId

Datadog trace id

args array[object] deprecated

Arguments referenced by format specifiers while resolving the message from translation files

typedArgs array[object] deprecated

Same as `args` but with type information

value
type
Allowed values:
TIMESTAMP BOOLEAN DATE MONTH_DAY TIME TERM TERM_LIST INTEGER DECIMAL STRING MONEY LIMITABLE_CONFIG_PROPERTY I18N_KEY I18N_KEY_LIST PERMISSION_LIST ENUM AVAILABILITY_LIST
reference

Reference to validation error

Example:  "parent.child"