apidocs-plat.aws.glofox.com Open in urlscan Pro
52.209.104.153  Public Scan

Submitted URL: http://apidocs-plat.aws.glofox.com/
Effective URL: https://apidocs-plat.aws.glofox.com/
Submission: On April 18 via api from US — Scanned from DE

Form analysis 1 forms found in the DOM

<form class="download-url-wrapper"><label class="select-label" for="select"><span>Select a definition</span><select id="select">
      <option value="https://api-plat.aws.glofox.com/openapi.yml">Glofox API</option>
    </select></label></form>

Text Content

Select a definitionGlofox API


GLOFOX API REFERENCE

 2.2.0 

OAS 3.0

https://api-plat.aws.glofox.com/openapi.yml

Glofox's API is based on REST protocol. Our API enables external applications to
access, create and edit users, memberships, credits, classes, bookings &
payments. Each endpoint returns JSON responses.

These headers must be included in every API call

 * x-glofox-branch-id
 * x-api-key
 * x-glofox-api-token

The API key & token are only meant for backend integrations, not for browsers.
If you need to make use of this API key, the requests must be proxied through a
backend, which in turn makes the authenticated call to our API Gateway, thus
keeping the key & token private.

Regarding time stamps, most of the API is in UTC timezone. If the field is
specified to be in "local" timezone, that's the timezone of the current location
(branch) time.

Note: To properly calculate the actual price of purchasing a resource (with
discounts and taxes included), you should pass the relevant info to the
/2.2/branches/{branchId}/price-breakdown endpoint.

Contact Glofox Integrations
Servers
https://gf-api.aws.glofox.com/staging/ - Staging
serverhttps://gf-api.aws.glofox.com/prod/ - Production server



BRANCHES

A BRANCH (A.K.A. STUDIO OR LOCATION) IS A PHYSICAL LOCATION. THEY WILL HAVE
THEIR OWN SET OF MEMBERS AND STAFF (EVEN ROAMING ONES CAN BE SHARED). THE ID
IT'S THE SAME THAT IS SEND AS A HEADER IN X-GLOFOX-API-TOKEN

GET/2.0/branches/{id}
Get a Branch



USERS

A USER IS THE ENTITY REPRESENTING ONE PERSON. THESE ENDPOINTS ALLOW TO GET THE
USERS DATA AND USER LISTS. SPECIALLY FOCUSED ON THE ONES OF TYPE MEMBER.

POST/2.1/branches/{branchId}/leads
Create a user (Lead or Client)

POST/2.1/branches/{branchId}/leads/{userId}/interactions
Add a new interaction

GET/2.1/branches/{branchId}/leads/{userId}/interactions
Gets user interactions

PUT/2.0/members/{userId}
Update a user (Lead or Client)

GET/2.0/members/{userId}
Get a user (Lead or Client)

POST/2.1/branches/{branchId}/leads/filter
Get all leads

GET/2.0/members
Get all clients

GET/2.1/branches/{branchId}/users
Search Members by Email

POST/2.0/reset
Request reset password link

GET/2.0/staff/{staffId}
Get a staff member

POST/2.0/register
Register a User

GET/2.2/users/{parentId}/linked-accounts
Get child accounts of a given user.



MEMBERSHIPS

THE /MEMBERSHIPS ENDPOINT ARE THE PLANS GROUPS, WHAT THE USER CAN PURCHASE. THE
PRIVATE ONES CAN'T BE PURCHASED BY THE MEMBER ITSELF (USUALLY USED FOR STAFF
MEMBERSHIPS, SPECIAL PROMOTIONS, OR SIMILAR).

A MEMBERSHIP IS THE MAIN SERVICE THAT A USER CAN HAVE. A USER CAN HAVE ONLY ONE
CURRENT MEMBERSHIP AT A GIVEN SINGLE TIME. IT CAN BE FOR A SINGLE PERIOD (1
MONTH) OR IN A SUBSCRIPTION WAY (1 MONTH FOR 12 MONTHS, OR 1 MONTH RENEWED TILL
MANUALLY FINISHED). THE MEMBERSHIP USUALLY MEANS THEY HAVE UNRESTRICTED ACCESS
TO THE LOCATION. THE MEMBERSHIP CAN BE UNLIMITED (TYPE: TIME), SO IT ALLOWS ANY
NUMBER OF BOOKINGS, OR RESTRICTED (TIME: TIME_CLASSES) MEANING IT HAS DOOR
ACCESS FOR 1 MONTH, BUT CAN BOOK UP TO 10 TIMES IN THAT PERIOD. A MEMBERSHIP CAN
BE A ROAMING MEMBERSHIP, MEANING IT GRANTS ACCESS TO MORE THAN 1 LOCATION. THEY
CAN AS WELL: • PURCHASE PARTICULAR BOOKINGS • PURCHASE AN ADD-ON. AN ADD-ON IS
SIMILAR TO A MEMBERSHIP, BUT IT’S OVER AN EXISTING MEMBERSHIP. IT HAS TO HAVE
THE SAME BILLING FREQUENCY. FOR DETAILS ON MEMBERSHIP LIFECYCLE CHECK THE

GET/2.0/memberships
Get all memberships

GET/2.0/memberships/{membershipId}
Get a single membership

POST/2.2/branches/{branchId}/users/{userId}/memberships/{membershipId}/plans
/{planCode}/purchase
Purchase Membership

POST/2.2/branches/{branchId}/charges/{chargeId}/finalize-flexible
Purchase Membership with Flexible payment



CREDITS

A CREDIT PACK ALLOWS TO BOOK FOR DIFFERENT EVENTS. THESE CAN BE PURCHASED
INDEPENDENTLY OR COMING FROM A RESTRICTED MEMBERSHIP.

GET/2.0/credits
Get a Users Credit Packs



ACCESS

THIS ALLOWS MANAGEMENT OF ACCESS TO THE LOCATION, THE ACCESS CAN BE SEEN ON
LOCATIONS AND USERS, AND THERE ARE SEVERAL REPORTS OVER THEM. FROM GLOFOX
PERSPECTIVE, THERE ARE 2 THINGS THAT GRANTS ACCESS: AN ACTIVE MEMBERSHIP, OR A
BOOKING WITHIN THE NEXT HOUR IF AN ACCESS IS CREATED AND THERE IS A BOOKING
WITHIN THE HOUR, ATTENDANCE TO THE BOOKING WILL BE MARKED AS WELL.

DOOR ACCESS IS SOMETHING THAT'S USUALLY IMPLEMENTED ON THE PARTNER SIDE SO IT
CAN BE IMPLEMENTED WITH STRICTER RULES IF NEEDED

TO GET THE MEMBERS WITH DOOR ACCESS, USE THE ENDPOINTS IN THE USERS SECTION.

POST/2.0/access
Create Access



CLASSES

A PROGRAM HAS A SET OF SCHEDULES, THOSE SCHEDULES ARE THEN INSTANTIATED AS
EVENTS FOR PARTICULAR DATES. IN GENERAL, ANY PARTNER WORKS ONLY WITH EVENTS AS
THE RELEVANT DATA FROM PROGRAMS IS REPLICATED IN THAT ENTITY. EVENTUALLY, USING
THE PROGRAM_ID CAN BE USEFUL TO LINK EVENTS THAT ARE DIFFERENT INSTANCES OF THE
SAME PROGRAM.

GET/2.0/events/{id}
Get event by ID

GET/2.0/events
Classes - Events & Programs



BOOKINGS

A BOOKING IS THE RESULT OF A PARTICULAR MEMBER BOOKING IN AN EVENT. AFTER THE
BOOKING HAS PASSED IT WILL HAVE THE ATTENDANCE FOR IT INSIDE.

POST/2.0/bookings
Create a booking

GET/2.0/bookings
Returns user's bookings

POST/booking/{bookingId}/user/{userId}/cancel
Cancel a Booking

GET/2.2/branches/{branchId}/bookings
Get all Bookings in a studio

POST/2.0/attendances
Mark a booking as attended

GET/2.0/branches/{branchId}/events/{eventId}/price
Get class availability booking price



PAYMENTS

A BRANCH CAN HAVE SEVERAL PAYMENT METHODS, LIKE CARD, DIRECT_DEBIT (ACH), CASH,
ETC. WHEN DOING A PURCHASE, THE PAYMENT METHOD CAN BE SPECIFIED AS WELL.

GET/2.1/branches/{branchId}/payment-methods
Get Payment Methods Available for a Branch



REPORTS

SEVERAL OPERATIONS TO GRAB AGGREGATED DATA ARE LISTED IN THIS SECTION.

POST/Analytics/report
Get all Payments for a studio

GET/2.0/analytics/trainer-performance
Trainers performance report



ELECTRONIC AGREEMENTS

A USER CAN HAVE THE NEED TO SIGN DIFFERENT ELECTRONIC CONTRACTS. OPERATIONS TO
GET THOSE AND FORCE THE SEND EMAIL FOR THOSE ARE EXPOSED HERE.

GET/TermsConditions/view
Get the waivers (also called documents) for a studio

POST/2.2/branches/{branchId}/users/{userId}/agreements/send
Send a document to a user for signature

GET/2.2/branches/{branchId}/users/{userId}/agreements/
Retrieve user agreements

POST/2.2/branches/{branchId}/users/{userId}/agreements/{agreementId}/send
Send agreement by ID



PRICE CALCULATOR

OPERATIONS FROM THE PURCHASE FLOW TO KNOW HOW MUCH A USER WILL BE CHARGED FOR A
PARTICULAR PURCHASE.

POST/2.2/branches/{branchId}/price-breakdown
Get price breakdown for a given resource.


SCHEMAS

Pagination
ResponseContainer
InteractionsResponseContainer
Interaction
BranchBaseResponse
BranchAddress
User
UserBaseResponse
UserBaseResponseContainer
Staff
UserRegisterRequest
UserResponse
UserExtendedResponseBirthAsTimeStamp
UserExtendedResponseBirthAsString
UserRegisterResponse
UserRegisterResponseContainer
UserResponseBirthAsString
UserResponseBirthAsTimeStamp
UserMembership
UserFilters
PasswordReset
PasswordResetResponse
BaseModelPagination
MembershipResponseContainer
Membership
MembershipPlan
MembershipPurchaseSuccess
Credits
Access
AccessResponse
BasicEvent
Class
TimeSlot
Course
BookingRequest
BasicBooking
CreatedBooking
CreatedClassBooking
CreatedCourseBooking
CreatedTimeSlotBooking
Booking
ClassBooking
CourseBooking
TimeSlotBooking
BranchBooking
BookingCancelRequest
AttendanceRequest
AttendanceResponse
MembershipPurchaseRequest
PaymentMethods
PaymentMethodType
FlexiblePaymentMethod
PaymentMethodIframe
PaymentsReportRequest
PaymentsReportResponse
Transaction
TrainerReportResponse
TrainerReportResult
TermsConditionsResponse
SendElectronicAgreementRequest
PriceBreakdownRequestProduct
GetPriceBreakdownRequest
PriceBreakdownAppliedDiscount
PriceBreakdownAppliedPromoCode
PriceBreakdownDiscountsBreakdownItem
PriceBreakdownDiscounts
PriceBreakdownAppliedTax
PriceBreakdownTaxesItem
PriceBreakdownTaxes
GetPriceBreakdownResponse
GetPriceBreakdownError
UserConsent
UserAgreementsResponse
Agreement