This document provides guidance for developers integrating with the LES MILLS+ Partnership API.
CONTENTS
Introduction
The LES MILLS+ Partnership API is used to manage member subscriptions for a partner and allows them to issue join links to members, retrieve member subscriptions and their current status, and cancel member subscriptions.
Glossary of Terms
LES MILLS+ | The provider of subscriptions to the world's most motivating workouts at home. |
Partner | The organization that is providing LES MILLS+ subscriptions to their members. |
Member | The subscriber and end-consumer to the LES MILLS+ online content. |
Subscription | A recurring entitlement to the LES MILLS+ content for a member. A subscription is active until canceled by the partner and may not be reactivated. |
External ID | A unique id that is used by the partner to identify a member. This could be a string, number, guid, email address, etc. Used to identify a member and required to cancel their subscription. |
Join link | A single-use URL that allows a member to join LES MILLS+ without providing any form of payment to LES MILLS+. |
Join email | An email that contains a join link. |
Cancel | To end a subscription for a member. |
Member Journeys
All members who join LES MILLS+ through a partner, need to do so with a single-use join link that points to a signup page. Without a correctly generated join link, this page will display an "Invalid link" error message.
Correctly generated join links are requested by the partner using the LES MILLS+ Partnership API, and the partner can control some aspects of the link, such as how long it is valid and whether it includes the member's email address or not. A calculated signature at the end of the join link ensures authenticity and uniqueness.
As members join, they can enter their personal details, set up their password, read and accept the LES MILLS+ terms and conditions, and opt in or out of our engagement emails.
This is an essential required step for all members. A member may not join LES MILLS+ without going through this signup page.
Joining
There are typically two common journeys that a member might take to join LES MILLS+, and a partner may implement one or both of them as they see fit. Members must have unique email addresses.
Join Journey using a redirect
- The member engages with a partner website or partner mobile app and takes an action that indicates they wish to join LES MILLS+
- The website or mobile website redirects the member to the LES MILLS+ reseller sign-up page, using a single-use join link.
- The member completes the form and submits it.
- They are now an LES MILLS+ member.
POST /partner/{partnerId}/join-link
Join Journey using an email containing a join link
- The member engages with a partner website or partner mobile app and takes an action that indicates they wish to join LES MILLS+
- The partner's system instructs LES MILLS to send an email with a single-use join link.
- The member opens the email and follows the link.
- The member completes the form and submits it.
- They are now an LES MILLS+ member.
POST /partner/{partnerId}/send-join-email
Should a partner wish to customize the join email, they can build their own using their existing systems, and just use the join-link request for the link in the email.
Join Journey using an SMS containing a join link
- The member engages with a partner website or partner mobile app and takes an action that indicates they wish to join LES MILLS+.
- The partner's system instructs LES MILLS to send an SMS with a single-use join link.
- The member opens the SMS and follows the link.
- The member completes the form and submits it.
- They are now an LES MILLS+ member.
POST /partner/{partnerId}/send-join-sms
Currently, only North America is supported (+1 phone numbers). Speak to your Les Mills representative if you require a different region.
View members
A partner may retrieve a list of members and their current subscription statuses through the LES MILLS+ Partnership API.
GET /partner/{partnerId}/subscriptions
A partner may also retrieve the information/status of a single specific member.
GET /partner/{partnerId}/subscriptions/{externalId}
Canceling
Members may not cancel their LES MILLS+ subscription directly with LES MILLS+. Member subscriptions may only be canceled by a partner using the LES MILLS+ Partnership API. The Member must be identified using the External Id that was part of the join-link the member signed up with.
PUT /partner/{partnerId}/subscriptions/{externalId}/cancel
Re-joining
If a member has canceled, they may re-join, using a new join link. Ideally, the new join link should use the same External ID as the first join link.
Developer Documentation
Find full API docs here: LES MILLS+ Partnership API (2.0.0 OAS3) - Swagger UI
Credentials
API credentials will be issued to partners through their Les Mills representative at the start of the integration project.
Support
Support is available for the LES MILLS+ Partnership API through the LES MILLS+ Help Center
On the support ticket, please include:
- Requester: <your email>
- Your organization name: <company name>
- Where are you located: <country>
- Your Les Mills Account Manager: <full name of your Les Mills representative>
- Summary: <the query in a few words>
- Details: <any relevant request, response, and error information, including the full endpoint URL you or your member is using, the steps taken before experiencing an issue, information needed to identify members and their subscriptions (e.g. name and email addresses of all members affected)>
Fair & Sensible Use
It is expected that partners will use the LES MILLS+ Partnership API in a fair and sensible way.
An example of poor design (and excessive use) would be: sending a join link to a member, and then making requests every second until they complete their join journey, to know if the member has completed the join.