this article lists the changes made to the API according to the API versioning standards in Perfect Gym.
Changes in API v2.2
Non-breaking changes in API v2.2
we will list here all new endpoints or extensions of existing endpoints compare to API v2.1
Breaking changes in API v2.2
OData PaymentPlans
More records may be returned - there will be contained records with property membershipTypeId having null value.
OData TransactionInvoiceItems
transactionId property has been replaced by 4 properties
- transactionId
- transactionPaymentId
- contractChargeId
- contractPaymentId
with corresponding expandable objects to better illustrate which exact transactions are attached to the invoice item.
Bookings area REST endpoints
- Removed obsolete CancelClassBooking endpoint
- CancelSingleBooking endpoint possible error codes changed:
It was:
CancelLimitExceeded, ClassNotBooked, MakeUpProductLimitReached, NotAllowedToCancelByMember, NotEnoughProductsInWarehouse, ToLateToCancel, UnknownError
Now it is:BookingDoesNotExist, CancelLimitExceeded, CancellingByMemberIsDisabled, TimeLimitReached, UnknownError
- CancelMemberBookingsForClass endpoint possible error codes changed:It was:
CancelLimitExceeded, ClassNotBooked, MakeUpProductLimitReached, NotAllowedToCancelByMember, NotEnoughProductsInWarehouse, ToLateToCancel, UnknownError
Now it is:BookingDoesNotExist, CancelLimitExceeded, CancellingByMemberIsDisabled, TimeLimitReached, UnknownError
- BookClass endpoint possible error codes changed:
It was:
ActivityLevelRequirementNotMet, AgeRequirementNotMet, BookingCommentsAreTooLong, BookingIsUnavailableForThisApp, BookingNotAllowed, BookingRejected, BookingTooLate, BookingTooSoon, BookingWithoutActiveContractNotAllowed, BookingWithOutstandingDebtNotAllowed, ClassAlreadyBooked, DailyBookingLimitReached, DailyZoneBookingLimitReached, EventDeleted, GlobalBookingLimitReached, GuestLimitReached, MultibookingExceededAvailableSlots, NotAllowedToBookMultipleEventsPerDayAtTheSameTime, OutOfHoursAccess, StandbyListLimitReached, UnknownError, UserBannedFromBooking, UserHasNoProductWhichAllowsBooking, UserHasOtherCalendarEventAtRequestedTime, UserNotAllowedToAccessClub, UserNotAllowedToAccessZone
Now it is:BookingBlockedDueToBlockingNote, BookingBlockedForUser, BookingTimeLimitExceeded, BookingUnavailableForSpecifiedApp, ClassesAlreadyBooked, DailyBookingLimitReached, DailyZoneBookingLimitReached, EventIsDeleted, GlobalActiveBookingLimitReached, GuestLimitReached, IncorrectNumberOfSlots, NoPermissionToBookSomeoneForClass, StandbyLimitReached, TooLongCommentsSection, TooSoonToBook, UnknownError, UserAlreadyHasPreReservationForThisClass, UserDoesNotMeetAgeLimit, UserDoesNotMeetSkillRequirements, UserHasNoActiveContractInDate, UserHasNoProductToBookOutOfHours, UserHasNotRequiredProductToBook, UserHasOtherCalendarEventAtRequestedTime, UserNotAllowedInZone, UserNotAllowedToAccessClubByMembership, UserNotAllowedToAccessClubInClassTime, UserNotAllowedToBook, UserOnFinancialDebit
Changes in API v2.1
Breaking changes in API v2.1
OData PaymentPlans endpoint do not provide translations any more
Fields have been removed from the result items:
- displayName
- descriptionShort
- descriptionLong
PaymentPlans endpoint now returns no translated names (it no longer uses "Accept-Language" HTTP header) only.
Translated names are available in PaymentPlanTranslations endpoint.
PaymentPlanTranslations result got new field:
- descriptionLong
endpoint MemberAgreements/Set has been replaced by MemberAgreements/SetOrUpdate
Non-breaking changes in API v2.1
new endpoints:
- ClassBooking/CancelSingleBooking
- ClassBooking/CancelMemberBookingsForClass
- odata/Crm2ConsultantAvailability
- odata/Crm2Events
- Crm2/ConvertLeadToGuestMember
- Transactions/AddPaymentRefund
- Transactions/AddContractCharge
changes in existing endpoints:
- parameter canBePurchasedOnlyOneTime in endpoint Products/AddProduct
- parameter paymentPlanId in endpoint Marketing/ValidateVoucherCode
- property isAdditionallyPaid in OData ClassCategory data model
- property isdeleted, version in OData ContractDiscountDefinition data model
- property creationDateTime in OData Crm2Lead data model
- property isRequired in OData CustomAttributeDefinition data model
- property memberType in OData Member data model
- property descriptionLong in OData PaymentPlanTranslation data model
- property canBePurchasedOnlyOneTime in OData Product data model