Appointment, bookable appointment and slots operations
PerfectGym Next API (1.11.1)
- 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
https://open-api-demo.open-api.perfectgym.com/
https://redocly.sportalliance.com/_mock/apis/perfectgym/openapi/openapi/
- Demo tenant
https://open-api-demo.open-api.perfectgym.com/v1/cross-studio/customers/by
- Mock server
https://redocly.sportalliance.com/_mock/apis/perfectgym/openapi/openapi/v1/cross-studio/customers/by
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://open-api-demo.open-api.perfectgym.com/v1/cross-studio/customers/by?cardNumber=string&cardNumberFormat=DECIMAL&debtorId=string&barcode=string&pin=string&customerNumber=string&qrCodeUuid=497f6eca-6276-4993-bfeb-53cbbbba6f08' \
-H 'X-API-KEY: YOUR_API_KEY_HERE'OK
Gender of the customer
| Enum Value | Description |
|---|---|
| MALE | Male gender of the customer |
| FEMALE | Female gender of the customer |
| UNISEX | Unisex gender of the customer |
Additional address information of the customer's address
Status of customer
| Enum Value | Description |
|---|---|
| FORMER_MEMBER | Customer is a former member |
| PROSPECT | Customer without contracts |
| MEMBER | Customer with contracts attached |
Url with an image to download. It will expire after 15 minutes
List of additional information field assignments of the customer
Customer's creation date time in ISO-8601 format
{ "id": 1001, "customerNumber": "1-12345", "firstName": "Edgar", "secondFirstName": "Thomas", "lastName": "Bullock", "secondLastName": "Meyer", "dateOfBirth": "1952-05-04", "email": "example@email.com", "gender": "MALE", "street": "Am Bahnhof", "houseNumber": 89, "zipCode": "12133", "city": "Munich", "country": "DE", "secondStreet": "Second Street", "cityPart": "Tegel", "district": "District 12", "streetType": "Avenue", "streetBlock": "5th block", "portal": "Portal 1", "stairway": "Right stairway", "door": "Door 1", "province": "Champagne", "additionalAddressInformation": "Additional information", "floor": "2nd floor", "buildingName": "Empire State Building", "status": "MEMBER", "cardNumbers": [ "1290158199" ], "imageUrl": "https://example.com", "phonePrivate": "+49 30901820", "phonePrivateMobile": "+49 15223433333", "phoneBusiness": "+49 30901820", "phoneBusinessMobile": "+49 15223433333", "idlePeriods": [ { … } ], "bankAccount": { "accountHolder": "Sven Hannawald", "bankName": "Deutsche Bank", "bic": "DEUTDEFFXXX", "iban": "DE91 1000 0000 0123 4567 89" }, "accessRefusal": true, "accessRestrictions": [ { … } ], "uuid": "7be3932c-825b-4401-abff-29e9f9410bc7", "referralCode": "20J6N", "studioId": 1238735970, "preferredLanguage": { "languageCode": "de", "countryCode": "DE" }, "additionalInformationFieldAssignments": [ { … } ], "thirdPartyId": "A1000", "createdDateTime": "2022-06-15T23:59:59.999+02:00[Europe/Berlin]", "accessMediums": [ { … } ] }
- Demo tenant
https://open-api-demo.open-api.perfectgym.com/v1/cross-studio/customers/{customerId}
- Mock server
https://redocly.sportalliance.com/_mock/apis/perfectgym/openapi/openapi/v1/cross-studio/customers/{customerId}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://open-api-demo.open-api.perfectgym.com/v1/cross-studio/customers/{customerId}?cardNumberFormat=DECIMAL' \
-H 'X-API-KEY: YOUR_API_KEY_HERE'OK
Gender of the customer
| Enum Value | Description |
|---|---|
| MALE | Male gender of the customer |
| FEMALE | Female gender of the customer |
| UNISEX | Unisex gender of the customer |
Additional address information of the customer's address
Status of customer
| Enum Value | Description |
|---|---|
| FORMER_MEMBER | Customer is a former member |
| PROSPECT | Customer without contracts |
| MEMBER | Customer with contracts attached |
Url with an image to download. It will expire after 15 minutes
List of additional information field assignments of the customer
Customer's creation date time in ISO-8601 format
{ "id": 1001, "customerNumber": "1-12345", "firstName": "Edgar", "secondFirstName": "Thomas", "lastName": "Bullock", "secondLastName": "Meyer", "dateOfBirth": "1952-05-04", "email": "example@email.com", "gender": "MALE", "street": "Am Bahnhof", "houseNumber": 89, "zipCode": "12133", "city": "Munich", "country": "DE", "secondStreet": "Second Street", "cityPart": "Tegel", "district": "District 12", "streetType": "Avenue", "streetBlock": "5th block", "portal": "Portal 1", "stairway": "Right stairway", "door": "Door 1", "province": "Champagne", "additionalAddressInformation": "Additional information", "floor": "2nd floor", "buildingName": "Empire State Building", "status": "MEMBER", "cardNumbers": [ "1290158199" ], "imageUrl": "https://example.com", "phonePrivate": "+49 30901820", "phonePrivateMobile": "+49 15223433333", "phoneBusiness": "+49 30901820", "phoneBusinessMobile": "+49 15223433333", "idlePeriods": [ { … } ], "bankAccount": { "accountHolder": "Sven Hannawald", "bankName": "Deutsche Bank", "bic": "DEUTDEFFXXX", "iban": "DE91 1000 0000 0123 4567 89" }, "accessRefusal": true, "accessRestrictions": [ { … } ], "uuid": "7be3932c-825b-4401-abff-29e9f9410bc7", "referralCode": "20J6N", "studioId": 1238735970, "preferredLanguage": { "languageCode": "de", "countryCode": "DE" }, "additionalInformationFieldAssignments": [ { … } ], "thirdPartyId": "A1000", "createdDateTime": "2022-06-15T23:59:59.999+02:00[Europe/Berlin]", "accessMediums": [ { … } ] }
- Demo tenant
https://open-api-demo.open-api.perfectgym.com/v1/cross-studio/customers/search
- Mock server
https://redocly.sportalliance.com/_mock/apis/perfectgym/openapi/openapi/v1/cross-studio/customers/search
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://open-api-demo.open-api.perfectgym.com/v1/cross-studio/customers/search \
-H 'Content-Type: application/json' \
-H 'X-API-KEY: YOUR_API_KEY_HERE' \
-d '{
"firstName": "Edga",
"lastName": "Bull",
"email": "example@email.com",
"dateOfBirth": "1952-05-04",
"cardNumberFormat": "DECIMAL"
}'OK
Gender of the customer
| Enum Value | Description |
|---|---|
| MALE | Male gender of the customer |
| FEMALE | Female gender of the customer |
| UNISEX | Unisex gender of the customer |
Additional address information of the customer's address
Status of customer
| Enum Value | Description |
|---|---|
| FORMER_MEMBER | Customer is a former member |
| PROSPECT | Customer without contracts |
| MEMBER | Customer with contracts attached |
Url with an image to download. It will expire after 15 minutes
List of additional information field assignments of the customer
Customer's creation date time in ISO-8601 format
UID list of the customer card numbers in expected format. (The new property to use is accessMediums)
[ { "id": 1001, "customerNumber": "1-12345", "firstName": "Edgar", "secondFirstName": "Thomas", "lastName": "Bullock", "secondLastName": "Meyer", "dateOfBirth": "1952-05-04", "email": "example@email.com", "gender": "MALE", "street": "Am Bahnhof", "houseNumber": 89, "zipCode": "12133", "city": "Munich", "country": "DE", "secondStreet": "Second Street", "cityPart": "Tegel", "district": "District 12", "streetType": "Avenue", "streetBlock": "5th block", "portal": "Portal 1", "stairway": "Right stairway", "door": "Door 1", "province": "Champagne", "additionalAddressInformation": "Additional information", "floor": "2nd floor", "buildingName": "Empire State Building", "status": "MEMBER", "cardNumbers": [ … ], "imageUrl": "https://example.com", "phonePrivate": "+49 30901820", "phonePrivateMobile": "+49 15223433333", "phoneBusiness": "+49 30901820", "phoneBusinessMobile": "+49 15223433333", "idlePeriods": [ … ], "bankAccount": { … }, "accessRefusal": true, "accessRestrictions": [ … ], "uuid": "7be3932c-825b-4401-abff-29e9f9410bc7", "referralCode": "20J6N", "studioId": 1238735970, "preferredLanguage": { … }, "additionalInformationFieldAssignments": [ … ], "thirdPartyId": "A1000", "createdDateTime": "2022-06-15T23:59:59.999+02:00[Europe/Berlin]", "accessMediums": [ … ] } ]
- Demo tenant
https://open-api-demo.open-api.perfectgym.com/v1/cross-studio/customers/{customerId}/activities/checkins
- Mock server
https://redocly.sportalliance.com/_mock/apis/perfectgym/openapi/openapi/v1/cross-studio/customers/{customerId}/activities/checkins
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://open-api-demo.open-api.perfectgym.com/v1/cross-studio/customers/{customerId}/activities/checkins?fromDate=2019-08-24&toDate=2019-08-24&sliceSize=10&offset=0' \
-H 'X-API-KEY: YOUR_API_KEY_HERE'{ "result": [ { … } ], "hasNext": true, "offset": "1234567890" }
- Demo tenant
https://open-api-demo.open-api.perfectgym.com/v1/cross-studio/membership-offers/studios
- Mock server
https://redocly.sportalliance.com/_mock/apis/perfectgym/openapi/openapi/v1/cross-studio/membership-offers/studios
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
https://open-api-demo.open-api.perfectgym.com/v1/cross-studio/membership-offers/studios \
-H 'X-API-KEY: YOUR_API_KEY_HERE'[ { "name": "Example studio", "description": "Example studio description", "country": "Germany", "countryCode": "DE", "studioId": 123, "openingDate": "2025-06-11", "closingDate": "2029-01-01" } ]