Skip to content

PerfectGym Next API (1.16.3)

  • 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
  • Retrieve customer transaction details
  • Get device information
  • Employee operations
  • Debt collection operations
  • Leads operations
  • Get member lists
  • Manage membership contracts
  • Membership operations
  • Online offer operations
  • Payment operations
  • Get studio information
  • Get trial offers information
Download OpenAPI description
Languages
Servers
Demo tenant

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

Mock server

https://redocly.sportalliance.com/_mock/apis/perfectgym/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

Customers Transactions

Retrieve customer transaction details

Operations
Operations
Operations
Operations
Operations
Operations

Membership Self-service

Manage membership contracts

Operations

Create additional module contract cancelation amendment

Request

Required Scopes: MEMBERSHIP_SELF_SERVICE_ADDITIONAL_MODULE_CONTRACT_WRITE

Creates additional module contract cancelation amendment for specified contract id and additional module contract id

Security
ApiKeyAuth
Path
contractIdinteger(int64)required

Unique ID of the main contract

additionalModuleContractIdinteger(int64)required

Unique ID of the additional module contract

Bodyapplication/jsonrequired
cancelationDatestring(date)required

Date the contract should be canceled to

Example: "2023-01-25"
cancelationReasonIdinteger(int64)required

Id of the reason why the contract is canceled

Example: 1234
curl -i -X POST \
  'https://open-api-demo.open-api.perfectgym.com/v1/memberships/{contractId}/self-service/additional-module-contracts/{additionalModuleContractId}/ordinary-cancelation' \
  -H 'Content-Type: application/json' \
  -H 'X-API-KEY: YOUR_API_KEY_HERE' \
  -d '{
    "cancelationDate": "2023-01-25",
    "cancelationReasonId": 1234
  }'

Responses

OK

Bodyapplication/json
successstring
Response
application/json
{ "success": "string" }

withdraw cancelation of the additional module contract

Request

Required Scopes: MEMBERSHIP_SELF_SERVICE_ADDITIONAL_MODULE_CONTRACT_WRITE

Withdraws additional module contract cancelation amendment or reverts cancelation for specific additional module contract id

Security
ApiKeyAuth
Path
contractIdinteger(int64)required

Unique ID of the contract

additionalModuleContractIdinteger(int64)required

Unique ID of the additional module contract

curl -i -X POST \
  'https://open-api-demo.open-api.perfectgym.com/v1/memberships/{contractId}/self-service/additional-module-contracts/{additionalModuleContractId}/withdraw-cancelation' \
  -H 'X-API-KEY: YOUR_API_KEY_HERE'

Responses

OK

Bodyapplication/json
successstring
Response
application/json
{ "success": "string" }

Get contract's remaining idle periods

Request

Required Scopes: MEMBERSHIP_SELF_SERVICE_IDLE_PERIOD_READ

Returns contract's remaining idle periods

Security
ApiKeyAuth
Path
contractIdinteger(int64)required

Unique ID of the contract

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

Responses

OK

Bodyapplication/json
remainingMaxTermsobject(Term)

Represents remaining max amount of idle period terms

remainingFreeTermsobject(Term)required

Represents remaining free idle periods

remainingFreeTerms.​valueinteger(int32)required

The value of the term

Example: 2
remainingFreeTerms.​unitstringrequired

Represents a temporal unit

Enum ValueDescription
MONTH

Represents month unit

YEAR

Represents year unit

WEEK

Represents a week unit

DAY

Represents a day unit

Example: "WEEK"
Response
application/json
{ "remainingMaxTerms": { "value": 2, "unit": "WEEK" }, "remainingFreeTerms": { "value": 2, "unit": "WEEK" } }
Operations

Online offers

Online offer operations

Operations
Operations
Operations

Trial Offers

Get trial offers information

Operations