Mariana Tek Launch Guide
Congratulations! You've successfully navigated the build process and have an integration ready to go live on a Mariana Tek client studio. This document provides the information needed to smoothly launch your integration in the MT production environment - with a single client or multiple clients - and for successful integration maintenance thereafter. Be sure to review and become familiar with this document prior to your expected launch date.
If there are further questions about this launch process after review, reach out to integrations@marianatek.com.
TL;DR
- Steps needed to go live:
- Ensure the integration is approved as appropriate (Studio Owner, Mariana Tek Review)
- Provide your production config details to the Integrations Team as needed, and switch to using production credentials to make requests to the client's API URL
- For public integrations: Provide your app details for marketing, important notifications, and client support.
- For newly onboarding MT Clients: Determine the optimal timing for enabling your integration (i.e. before MT launch or after MT launch) and communicate with the client and MT Teams
- Create a maintenance mode for your app, subscribe to MT Status Updates, and follow the troubleshooting tips for issues with the integration
Studio Authorization or Approval
Integrations will be enabled on all studio locations of a given brand when activated. For this reason, the corporate studio owner must send approval if any individual studio location requests the integration. Your integration must be able to scope data access as needed, based on the client's business model.
Public integrations must undergo technical review by Mariana Tek and be approved to go live. In order to launch an approved, one-click-install public integration on a client's live environment, the corporate studio owner (or designated point of contact) must trigger an install request flow. The integration will be authorized, either through the MT Admin Integrations Catalog flow, an email request to the Support Team, or in a client's communication with their Onboarding Specialist (for an onboarding Mariana Tek client).
Custom Developers (building a private integration for a single brand): When requesting production credentials (API key, OAuth Credentials or Webhooks subscription), be sure that the studio owner has sent approval via email to the Integrations Team.
Technical Prep for the Live Production Environment
When switching your integration from the sandbox environment to the production environment, there are a few technical adjustments required on your end:
API URL
Each brand has a unique base API URL for their studios' data. In the production environment, instead of using the sandbox API URL i.e. https://tenant-name.sandbox.marianatek.com/api
, your integration will access the brand's production URL i.e.https://tenant-name.marianatek.com/api
, using your production API credentials (once enabled). For public integrations enabled on multiple brands, your integration will need to make authenticated requests against the specific API URLs for every brand. After the integration is enabled, your team will receive the clients production API URL in the post-install email from MT.
API Credentials
To authenticate in the production environment, switch the API Credentials (i.e. API keys, OAuth Credentials) from the ones used in the sandbox to your production API credentials. Production credentials for your integration are obtained through the Developer Portal (for those with beta access), or sent securely from the Integrations Team to your technical lead (with studio owner approval) upon request. For the production OAuth flow to be successful, your team must ensure the production Client ID
and Client Secret
are in place on your end, and register the production redirect URI
with our system. If your integration uses OAuth credentials or Webhooks, be sure to provide the MT Integrations Team with your production redirect URI
and/or production webhooks callback URL
, when requesting production credentials to go live.
Important Note: The production API credentials for your integration should be kept confidential at all times, and not sent unobscured via email, or exposed through the user interface or browser.
Service User ID
For API Keys.
Your integration will be linked to a different Service User in the production environment than the sandbox, and will have a new Service User ID for each client. To obtain the Service User ID for your integration on a new client, make an authenticated GET
request, using your production API key, to the Account
endpoint on the clients production API URL, i.e. https://tenant-name.marianatek.com/api/customer/v1/me/account
. The data response object will provide the Service User ID for your integration on that specific client.
Best Practices: Ensure strict data integrity at all times. For public integrations, we recommend configuring the API URL and Service User ID as variables linked to client accounts, to be able to accommodate multiple clients.
Client Business Model
You may encounter different organizational models for Mariana Tek Clients and this may impact the way your integration should provide service and display data in your interface. It is required for approval that your public integration is designed to support all of the different client business models. In every model below, the integration will be enabled on all brand locations when activated. However, data scoping may be appropriate depending on the studio owners' business structure. In simple terms, this means that the data your integration accesses and/or displays to users may need to be limited by location. This data scoping can be accomplished through your use of location query filters on the API requests. If you have further questions regarding how to use location filters, contact the Integrations Team.
- Single-Location Studio - This model will be easiest to support as location scoping won't be necessary initially. However, this may change upon the studios expansion to new locations.
- Multi-Location Studios - This is identical to the sandbox setup, where a brand has multiple studio locations with the same owner. Data may be managed as a conglomerate or grouped per region or location, depending on the brand or studio owners' preferences.
- Franchise Model - Each location of a brand may have a separate owner, and in most cases, data will need to remain distinct between locations. Note: The corporate franchisor, and not the franchisees, must still approve the integration first, in this scenario.
Upon onboarding new studios for your service, it is important for your team to discuss and understand the client's model, to be able to provide data access that matches their needs.
Mobile 5th Tab App Launch
To launch a Mobile 5th Tab integration to the production environment, the above info is applicable (with the exception that data is scoped by user), and additional steps are also required:
Mariana Tek Approval - All Mobile 5th Tab Applications, regardless of whether public or custom, must have been reviewed and approved by MT prior to launch.
Configuration Details - Additional configuration details are needed to launch, which include:
- Production Redirect URI - The production Redirect URI
- Page URL - The URL of the 5th tab microsite
- Page Title - The title displayed in the top app bar on the mobile app
- Icon - The exact mobile 5th tab icon which appears on the bottom navigation bar
- Launch Date - Expected date for the Mobile 5th tab app to be enabled and visible in the mobile application
The above configuration details, along with studio owner approval, must be sent to the Integrations Team to launch a Mobile 5th Tab Integration on a live client.
Integration Client Support
Note: For public integrations
It will be important to provide information regarding your integration which can be shown to prospective clients, displayed in the Integrations Catalog in the Mariana Tek Admin, or used in other marketing materials. If there are questions from clients on how to use the app or service, there must be a support email available for them to contact your team. Additionally, we will provide your team notifications post new install, or in the event of serious technical issues involving the integration.
Some of the app details we will need include:
- Organization Logo (200 x 200px round JPEG format)
- A description of your application/service
- The URL for your integration's website
- A support email for clients
- An email to send new client install notifications
Special Note: For studios onboarding to Mariana Tek, it is important to consider the best timing to enable your integration. Some brands would prefer the integration in place at the time of launch for continuity of the customer experience. In some cases, due to technical limitations, it is most appropriate to enable post launch. After discussion with the client and consideration of any potential technical impact, then the install flow can be initiated. For technical considerations, reach out to the Integrations Team.
Be sure to connect with the Integrations Team for a complete list of details needed.
Post Launch Maintenance
Once your integration is live and installed, there are details that your team should be aware of, to maintain a smooth and successful partnership, with a great client experience.
Maintenance Windows
The Mariana Tek platform has periodic scheduled maintenance windows, during which some or all platform services are affected. This will likely impact your integration's ability to provide services during this time. Also, in the uncommon event of an outage or degraded performance, it will be important for your application to be able to notify users in your interface. We recommend building a maintenance mode into your app, and keeping abreast of platform events by subscribing to Mariana Tek's Status Page.
Troubleshooting
In the event that a client or your team becomes aware of an issue with the integration, it's essential to be able to accurately troubleshoot and diagnose the technical issue. To shield our mutual clients from technical troubles while working out a solution, reach out directly to the Integrations Team with the details from your evaluation. We recommend the following troubleshooting tips:
Troubleshooting Tips
- Check the requests - Use API testing tools such as Postman, Insomnia, etc. to test requests and view the data response, status codes, and error messages. Note the API endpoints affected and record any Reference ID's returned
- Mariana Tek Status Codes -
- 200, 201 - Successful requests
- 302 - Successful redirects
- 401, 403 - Forbidden, unauthorized - API credentials missing/incorrect or user permission issue
- 422 - Client issue - invalid data sent to the server - check error message details, request body formatting, and request headers
- 500's - Internal Server Issue - Unexpected/illegal request, error, platform issue
- Check the timing - note dates and times when the issue started, subsequent occurrences, and whether it is ongoing or intermittant
- Keep logs - it is recommended that you maintain logs of your integration's key functions and processes and check these during the troubleshooting process
- Scope the impact - is it affecting a single studio client or multiple studio clients? Which studios are affected and approximately how many end users?
- Review and gather necessary details - record the specific ID's of the Users/Reservations/Class Sessions affected. Note: screen recordings and screenshots are generally most effective, including screenshots of the request and response
- Coordinate with the Integrations Team and be certain to provide a brief issue summary and the key details, as gathered above, for further investigation and escalation as needed.
This process helps promote a speedy and successful resolution.
Integration Updates
If you would like to expand the services and features your integration provides, we support and encourage this. We're glad to re-establish sandbox access as needed for your team to build and test new offerings. However, to ensure the public integration is still approved, additional features should be communicated with the Integrations Team, who will need to approve the new functionality before it is released
We're excited to launch this integration with you! Let's go!!!