Skip to content

Magicline API (1.10.0)

  • Appointment, bookable appointment and slots operations
  • Redeem checkin vouchers
  • Class and slots operations
  • Cross studio operations
  • Get customers and contracts
  • Retrieve customer accounting details
  • Retrieve customer communication details
  • Get device information
  • Employee operations
  • Debt collection operations
  • Leads operations
  • Manage membership contracts
  • Membership operations
  • Payment operations
  • Get studio information
  • Get trial offers information
Download OpenAPI description
Languages
Servers
Demo tenant

https://open-api-demo.open-api.magicline.com/

Mock server

https://redocly.sportalliance.com/_mock/apis/magicline/openapi/openapi/

Appointments

Appointment, bookable appointment and slots operations

Operations

Checkin vouchers

Redeem checkin vouchers

Operations
Operations

Cross Studio

Cross studio operations

Operations

Customers

Get customers and contracts

Operations

Customers Account

Retrieve customer accounting details

Operations

Customers Communication

Retrieve customer communication details

Operations
Operations
Operations
Operations
Operations
Operations

Membership Self-service

Manage membership contracts

Operations

Create a contract idle period amendment

Request

Required Scopes: MEMBERSHIP_SELF_SERVICE_IDLE_PERIOD_WRITE

Create a contract idle period amendment. When the amendment is accepted, it will become an idle period. ATTENTION: Please see https://developer.magicline.com/apis/openapi/general-information#multipartform-data-requests

Security
ApiKeyAuth
Path
contractIdinteger(int64)required

Unique ID of the contract

Bodymultipart/form-data
dataobject(IdlePeriodCreateRequest)required

Represents an idle period create request

data.​startDatestring(date)required

Start date of the idle period

data.​temporalUnitstring

Represents the temporal unit of an idle period

Enum ValueDescription
MONTH

Represents a monthly temporal unit of the idle period. Can be used for month pickers only. Supports only full months.

WEEK

Represents a weekly temporal unit of the idle period. Can be used for week pickers only. Supports only full weeks.

DAY

Represents a daily temporal unit of the idle period. Can be used for day pickers only.

Example: "WEEK"
data.​termValueinteger(int32)

Duration term of the idle period. The field is related to the temporal unit

Example: 1
data.​unlimitedboolean

If true, the idle period has no defined end date. In that case, termValue and temporalUnit are empty.

Example: true
data.​reasonIdinteger(int64)required

ID of an idle period reason

Example: 1
documentstring(binary)

Idle period proposal document (jpeg, png, pdf, heic)

curl -i -X POST \
  'https://open-api-demo.open-api.magicline.com/v1/memberships/{contractId}/self-service/idle-periods' \
  -H 'Content-Type: multipart/form-data' \
  -H 'X-API-KEY: YOUR_API_KEY_HERE' \
  -F 'data[startDate]=2019-08-24' \
  -F 'data[temporalUnit]=WEEK' \
  -F 'data[termValue]=1' \
  -F 'data[unlimited]=true' \
  -F 'data[reasonId]=1' \
  -F document=string

Responses

OK

Bodyapplication/json
idinteger(int64)required

Unique ID of the idle period or amendment, depending on the state

Example: 203
startDatestring(date)required

Start date of the idle period

endDatestring(date)required

End date of the idle period

reasonstringrequired

Reason of the idle period

Example: "Vacation"
feeobject(Money)required

Represents a financial data

fee.​amountnumberrequired

Amount of the finance data tuple

Example: 20
fee.​currencystring(ISO 4217)required

Currency of the finance data tuple

Example: "EUR"
unlimitedboolean

Indicates whether the idle period is unlimited

Example: false
documentUrlstring

Temporal download-url for the idle period document, restricted to 15 minutes

statestringrequired

State of the idle period

Enum ValueDescription
ACCEPTED

The idle period is accepted

PENDING_VERIFICATION

The idle period verification is pending

Example: "PENDING_VERIFICATION"
Response
application/json
{ "id": 203, "startDate": "2019-08-24", "endDate": "2019-08-24", "reason": "Vacation", "fee": { "amount": 20, "currency": "EUR" }, "unlimited": false, "documentUrl": "string", "state": "PENDING_VERIFICATION" }

Request

Required Scopes: MEMBERSHIP_SELF_SERVICE_IDLE_PERIOD_READ

Get contract idle period or amendment by id.

Security
ApiKeyAuth
Path
contractIdinteger(int64)required

Unique ID of the contract

idlePeriodIdinteger(int64)required

Unique ID of the idle period

curl -i -X GET \
  'https://open-api-demo.open-api.magicline.com/v1/memberships/{contractId}/self-service/idle-periods/{idlePeriodId}' \
  -H 'X-API-KEY: YOUR_API_KEY_HERE'

Responses

OK

Bodyapplication/json
idinteger(int64)required

Unique ID of the idle period or amendment, depending on the state

Example: 203
startDatestring(date)required

Start date of the idle period

endDatestring(date)required

End date of the idle period

reasonstringrequired

Reason of the idle period

Example: "Vacation"
feeobject(Money)required

Represents a financial data

fee.​amountnumberrequired

Amount of the finance data tuple

Example: 20
fee.​currencystring(ISO 4217)required

Currency of the finance data tuple

Example: "EUR"
unlimitedboolean

Indicates whether the idle period is unlimited

Example: false
documentUrlstring

Temporal download-url for the idle period document, restricted to 15 minutes

statestringrequired

State of the idle period

Enum ValueDescription
ACCEPTED

The idle period is accepted

PENDING_VERIFICATION

The idle period verification is pending

Example: "PENDING_VERIFICATION"
Response
application/json
{ "id": 203, "startDate": "2019-08-24", "endDate": "2019-08-24", "reason": "Vacation", "fee": { "amount": 20, "currency": "EUR" }, "unlimited": false, "documentUrl": "string", "state": "PENDING_VERIFICATION" }

Request

Required Scopes: MEMBERSHIP_SELF_SERVICE_IDLE_PERIOD_WRITE

Update a contract idle period. When the amendment is accepted, it will become an idle period. ATTENTION: Please see https://developer.magicline.com/apis/openapi/general-information#multipartform-data-requests

Security
ApiKeyAuth
Path
contractIdinteger(int64)required

Unique ID of the contract

idlePeriodIdinteger(int64)required

Unique ID of the idle period

Bodymultipart/form-data
dataobject(IdlePeriodUpdateRequest)required

Represents an idle period update request

data.​startDatestring(date)required

Start date of the idle period

data.​temporalUnitstring

Represents the temporal unit of an idle period

Enum ValueDescription
MONTH

Represents a monthly temporal unit of the idle period. Can be used for month pickers only. Supports only full months.

WEEK

Represents a weekly temporal unit of the idle period. Can be used for week pickers only. Supports only full weeks.

DAY

Represents a daily temporal unit of the idle period. Can be used for day pickers only.

Example: "WEEK"
data.​termValueinteger(int32)

Duration term of the idle period. The field is related to the temporal unit

Example: 1
data.​unlimitedboolean

If true, the idle period has no defined end date. In that case, termValue and temporalUnit are empty.

Example: true
data.​reasonIdinteger(int64)required

ID of an idle period reason

Example: 1
data.​endDatestring(date)

End date of the idle period. This field is only utilized when shortening an existing idle period (i.e., the start date remains unchanged, but the new end date is earlier than the original).

Example: "2025-12-31"
documentstring(binary)

Idle period proposal document (jpeg, png, pdf, heic)

curl -i -X PUT \
  'https://open-api-demo.open-api.magicline.com/v1/memberships/{contractId}/self-service/idle-periods/{idlePeriodId}' \
  -H 'Content-Type: multipart/form-data' \
  -H 'X-API-KEY: YOUR_API_KEY_HERE' \
  -F 'data[startDate]=2019-08-24' \
  -F 'data[temporalUnit]=WEEK' \
  -F 'data[termValue]=1' \
  -F 'data[unlimited]=true' \
  -F 'data[reasonId]=1' \
  -F 'data[endDate]=2025-12-31' \
  -F document=string

Responses

OK

Bodyapplication/json
idinteger(int64)required

Unique ID of the idle period or amendment, depending on the state

Example: 203
startDatestring(date)required

Start date of the idle period

endDatestring(date)required

End date of the idle period

reasonstringrequired

Reason of the idle period

Example: "Vacation"
feeobject(Money)required

Represents a financial data

fee.​amountnumberrequired

Amount of the finance data tuple

Example: 20
fee.​currencystring(ISO 4217)required

Currency of the finance data tuple

Example: "EUR"
unlimitedboolean

Indicates whether the idle period is unlimited

Example: false
documentUrlstring

Temporal download-url for the idle period document, restricted to 15 minutes

statestringrequired

State of the idle period

Enum ValueDescription
ACCEPTED

The idle period is accepted

PENDING_VERIFICATION

The idle period verification is pending

Example: "PENDING_VERIFICATION"
Response
application/json
{ "id": 203, "startDate": "2019-08-24", "endDate": "2019-08-24", "reason": "Vacation", "fee": { "amount": 20, "currency": "EUR" }, "unlimited": false, "documentUrl": "string", "state": "PENDING_VERIFICATION" }
Operations
Operations
Operations

Trial Offers

Get trial offers information

Operations