### UTM Parameter Configuration Examples
Source: https://docs.flip.to/platform/collaboratives/campaign-tracking
Examples demonstrating how to configure UTM parameters for campaign tracking on Flip.to, including the use of wildcards for flexible matching.
```APIDOC
Campaign Parameter Setup Examples:
Example 1: All campaigns that run on google
Source: overlook_google
Example 2: All campaigns that run during the summer across all sources
Campaign: overlook_summer%
Example 3: All paid campaigns on google that run during the summer
Source: overlook_google
Medium: cpc
Campaign: overlook_summer%
```
--------------------------------
### Example Booking Engine URL
Source: https://docs.flip.to/platform/mission-control/booking-engine-url
An example of a booking engine URL template utilizing various Flip.to tokens for passing dynamic reservation details.
```URL
https://your.bookingengine.com/page.html?hotel=12345&aDate={start-date,format=MM/dd/yyyy}&dDate={end-date,format=MM/dd/yyyy}&rooms={rooms,fallback=1}&adults={adults}&child={children,fallback=0}&pc={promo-code}&airport={traveler-airport-code}
```
--------------------------------
### Signup Data Response Example
Source: https://docs.flip.to/api/reference/platform-api
Example JSON response structure for signup data, including total count, pagination details, and a list of signups with their associated property and contact information.
```json
{
"total": 19388,
"page": 1,
"signups": [
{
"id": "C123600-2B05-47E3-8FBE-3EAB9E8A5Q11",
"createDate": "2021-12-01T00:01:00",
"propertyId": "1234DF43-C41C-442F-804C-1234A7952738",
"propertySlug": "overlook-hotel",
"email": "james@flip.to",
"first": "James",
"last": "Smith",
"phone": "1234567890",
"phoneConsentMode": "Checkbox",
"languageCode": "en",
"isOptout": false,
"isPrivacyRestricted": false,
"layerType": "photo contest",
"category": "friend",
"country": "United States",
"region": "FL",
"city": "Orlando"
}
]
}
```
--------------------------------
### Sponsor Referrals Channel Impact Example Response
Source: https://docs.flip.to/api/reference/collaborative-api
An example JSON response structure for the Sponsor Referrals Channel Impact API endpoint, showing aggregated referral and influenced transactions and revenue.
```JSON
[
{
"year": 2023,
"timeGrouping": 1,
"source": "google",
"medium": "search",
"term": null,
"referralTransactions": 3,
"referralRevenue": 1500,
"influencedTransactions": 2,
"influencedRevenue": 1000
},
{
"year": 2023,
"timeGrouping": 2,
"source": "google",
"medium": "search",
"term": null,
"referralTransactions": 5,
"referralRevenue": 2500,
"influencedTransactions": 4,
"influencedRevenue": 2000
}
]
```
--------------------------------
### Sample Image URL
Source: https://docs.flip.to/integrations/email/cancellation-email
An example of how to construct the image source URL with various parameters for cancellation tracking.
```html
```
--------------------------------
### Add Flip.to Booking Engine Snippet to RezTrip
Source: https://docs.flip.to/integrations/booking-engines/vendors/reztrip
This snippet initializes the Flip.to data layer for the RezTrip booking engine. It requires your Flip.to companyCode and RezTrip property code to be configured. Place this within the \
tag of your booking engine.
```javascript
```
--------------------------------
### Configure DNS CNAME Record
Source: https://docs.flip.to/platform/mission-control/custom-domains
Add a CNAME record with your domain registrar to point your custom domain to Flip.to's servers. This is a crucial step for directing traffic correctly.
```APIDOC
DNS Configuration:
CNAME Record
- Purpose: To point your custom domain to Flip.to's servers.
- Parameters:
- Name: Your custom domain (e.g., `stories.yourwebsite.com`)
- Value (or Points-to): `hub.flip.to`
- Notes:
- This record must be configured at your domain registrar.
- Ensure the 'Value' field is exactly `hub.flip.to`.
- DNS changes can take up to 24 hours to propagate.
```
--------------------------------
### Add Flip.to Booking Engine Integration Snippet
Source: https://docs.flip.to/integrations/booking-engines/vendors/revraise-by-azds
This JavaScript snippet integrates Flip.to with the RevRaise booking engine. It should be placed within the \ tag of the booking engine. Replace 'XX' with your Flip.to companyCode. This script initializes Flip.to's data layer and loads the discovery script for the booking engine.
```javascript
```
--------------------------------
### Flip.to Booking Engine Integration Snippet
Source: https://docs.flip.to/integrations/booking-engines/set-up-your-booking-engine
This snippet should be added to the \"\" tag of every page of your booking engine, including the confirmation page. It initializes the Flip.to data layer with essential configuration details. Key parameters include bookingEngine, companyCode, code, and language, which must be configured with your unique IDs and desired language settings.
```javascript
```
--------------------------------
### Add Flip.to Discovery Integration Snippet
Source: https://docs.flip.to/integrations/websites/set-up-your-website
If you are implementing Flip.to Discovery, this additional script snippet is required. Place it on your website pages and replace YOUR_DISCOVERY_ID_HERE with your unique Discovery ID. Like the main integration snippet, it loads asynchronously.
```html
```
--------------------------------
### Add Flip.to Website Integration Snippet
Source: https://docs.flip.to/integrations/websites/set-up-your-website
This script snippet should be added to the `` tag of every page on your website. It requires your unique Website ID and loads asynchronously to ensure it doesn't delay page load, impacting user experience and tracking.
```html
```
--------------------------------
### Sponsor Referrals Geo Impact Example Response
Source: https://docs.flip.to/api/reference/collaborative-api
An example JSON response structure for the Sponsor Referrals Geo Impact API endpoint, showing aggregated referral and influenced transactions and revenue.
```JSON
[
{
"year": 2023,
"timeGrouping": 1,
"referralTransactions": 3,
"referralRevenue": 1500,
"influencedTransactions": 2,
"influencedRevenue": 1000
},
{
"year": 2023,
"timeGrouping": 2,
"referralTransactions": 5,
"referralRevenue": 2500,
"influencedTransactions": 4,
"influencedRevenue": 2000
}
]
```
--------------------------------
### Add Flip.to Confirmation Snippet (JavaScript)
Source: https://docs.flip.to/integrations/booking-engines/set-up-your-booking-engine
This JavaScript snippet should be included in the tag of your confirmation page. It initializes the Flip.to data layer with guest and booking details, allowing for event tracking and data collection. Ensure dynamic tokens from your booking engine are correctly substituted.
```javascript
```
--------------------------------
### POST /v1/collaborative/report/lodging/lookahead
Source: https://docs.flip.to/api/reference/collaborative-api
Retrieves collaborative members' occupancy, ADR, and revenue data for a specified date range. Useful for forecasting future stay dates. Requires start and end dates, and optionally accepts property type, grouping, and start weekday.
```APIDOC
POST https://api.flip.to/v1/collaborative/report/lodging/lookahead
Query Parameters:
- startdate (Date, Required): The inclusive date range in ISO 8601 format yyyy-MM-dd.
- enddate (Date, Required): The inclusive date range in ISO 8601 format yyyy-MM-dd.
- type (String, Optional): Accommodation property type. Valid values: FullServiceHotel, SelectServiceHotel, Condotel, VacationRental, RVResort.
- grouping (String, Optional): Defines how data is grouped. Default: Week. Valid values: Month, Week, Day.
- startWeekDay (String, Optional): Defines the start day of the week. Default: Sunday. Valid values: Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday.
Example Response:
{
"totalProperties": 32,
"totalRooms": 9660,
"data": [
{
"startDate": "2021-01-01",
"endDate": "2021-01-31",
"occupancy": {
"availableBookNights": 289800,
"bookedNights": 4008
},
"dailyRate": {
"minDailyRate": 25.81,
"maxDailyRate": 521.54,
"avgDailyRate": 47.57
},
"stayLength": {
"minStayNights": 1,
"maxStayNights": 74,
"avgStayNights": 2
},
"revenue": {
"totalTransactions": 1719,
"totalTransactionNights": 4585,
"minTransactionRevenue": 48,
"maxTransactionRevenue": 3132.03,
"totalTransactionRevenue": 459003.23,
"avgTransactionRevenue": 267.02
}
}
]
}
```
--------------------------------
### Preview Discovery Feature URL Parameters
Source: https://docs.flip.to/platform/discovery/launchpad
These URL parameters allow users to preview the 'Discovery' feature or the 'Control' (standard website) experience. Append these to your website's URL to switch between variations.
```URL
http://www.yourwebsite.com?ftvariation=flipto
```
```URL
http://www.yourwebsite.com?ftvariation=client
```
--------------------------------
### Add Custom Domain to Flip.to Account
Source: https://docs.flip.to/platform/mission-control/custom-domains
After configuring the DNS CNAME record, add your custom domain within your Flip.to account settings to activate it for Flip.to experiences.
```APIDOC
Flip.to Account Domain Setup:
Action: Add Domain
- Location: Navigate to 'Platform' -> 'Domains' within your Flip.to account.
- Input:
- Custom Domain Name: Enter the exact custom domain name configured in your CNAME record (e.g., `stories.yourwebsite.com`).
- Process:
- The platform verifies that the custom domain correctly points to Flip.to's servers.
- If the configuration is correct, the custom domain will be enabled and ready for use.
- Error Handling:
- If the domain is not pointing correctly, it will be saved but remain switched off.
- Re-check your registrar's DNS configuration and allow for propagation time (up to 24 hours).
```
--------------------------------
### Flip.to Confirmation Snippet Parameters (APIDOC)
Source: https://docs.flip.to/integrations/booking-engines/set-up-your-booking-engine
This section details the parameters required for the Flip.to confirmation page snippet. Each parameter corresponds to a piece of guest or booking information that should be passed to track the reservation accurately. Dynamic tokens from your booking engine should be used to populate these fields.
```APIDOC
Flip.to Confirmation Snippet Parameters:
Parameters for the data object passed to `fliptoDataLayer`:
- bookingEngine: The Flip.to string to define the booking engine used. Contact Customer Success for the correct name.
- companyCode: Your company's unique code.
- code: The property code.
- confirmation: Guest’s confirmation number.
- loyalty: Guest's loyalty program number, if any.
- first: Guest’s first name.
- last: Guest’s last name.
- email: Guest’s email address.
- phone: Guest’s phone number.
- startDate: Guest’s check-in date. Format: 'yyyy-MM-dd' or as defined by `dateFormat`.
- endDate: Guest’s check-out date. Format: 'yyyy-MM-dd' or as defined by `dateFormat`.
- guests: The total number of guests.
- adults: The total number of adult guests.
- children: The total number of children guests.
- type: The guest’s room type, if available. Use the booking engine internal code.
- rateCode: The guest’s rate code, if available; otherwise blank.
- groupCode: The guest’s group code (or block code), if available; otherwise blank.
- promoCode: The guest’s promo code, if available; otherwise blank.
- language: The ISO 639-1 language code used for the reservation (e.g., 'en', 'fr'). Can also use culture names like 'en-US'.
- currency: The 3-character ISO 4217 currency code (e.g., 'USD').
- amount: The total pre-tax amount for the room purchase, as a number.
- flightAmount: Optional. The total pre-tax amount for the flight portion of the purchase, as a number. Omit or set to null if not applicable.
- addonAmount: Optional. The total amount for any add-on products and/or services, as a number.
- dateFormat: Specify a custom date format for `startDate` and `endDate` (e.g., 'M/d/yyyy'). Defaults to 'yyyy-M-d'.
```
--------------------------------
### Advocacy Stories API Endpoint
Source: https://docs.flip.to/api/reference/platform-api
Retrieves advocacy stories submitted within a specified date range, limited to submissions that include a photo. Requires start and end dates for filtering.
```APIDOC
POST https://api.flip.to/v1/company/data/advocacy/stories
Description:
Provides data for Advocacy stories that were submitted within a specified date range. Results limited to stories that include a photo submission.
Query Parameters:
- startdate (String, required): The inclusive date range in ISO 8601 format `yyyy-MM-dd` (e.g. 2022-09-18).
- enddate (String, required): The inclusive date range in ISO 8601 format `yyyy-MM-dd` (e.g. 2022-10-18).
- page (String, optional): The page number of the data to consume. Defaults to 1 if not specified.
- pagesize (String, optional): The total number of records to send for each page. Page size cannot exceed 500 records, and defaults to 100 if not specified.
Request Body:
- properties[] (String, optional): An array of property IDs to limit results to. If no properties are specified, all properties the key has access to will be returned.
- isIncludeRestricted (Boolean, optional): Indicates whether to include restricted (GDPR) data.
- isIncludeOptout (Boolean, optional): Indicate whether to include leads who have chosen to opt-out.
Example Response Structure:
{
"total": 5679,
"page": 1,
"stories": [
{
"propertyId": "1234DF43-C41C-442F-804C-1234A7952738",
"propertySlug": "overlook-hotel",
"email": "james@flip.to",
"first": "James",
"last": "Smith",
"phone": "1234567890",
"phoneConsentMode": "Checkbox",
"category": "guest",
"startDate": "2021-12-25",
"endDate": "2021-12-29",
"languageCode": "en",
"isOptout": false,
"isPrivacyRestricted": false,
"submissionDate": "2022-01-02T06:32:00",
"photo": {
"id": "C123600-2B05-47E3-8FBE-3EAB9E8A5Q11",
"contestName": "Myrtle Beach Vacation Memories Giveaway!",
"finalistDate": "2022-01-06T19:25:00",
"internalRating": "2022-01-06T19:25:00",
"score": 13,
"caption": "I awoke this particular morning to look at the sunrise and was surprised to see the moon still out as well! The view was breathtaking along with the beautiful waves gently hitting the shore!",
"captionInternalRating": 3,
"url": "https:\/\/cdn.flip.to\/public\/c123600-2b05-47e3-8fbe-3eab9e8a5q11.jpg"
},
"review": {
"rating": 5,
"quote": "Waking up to the beautiful sun rises in the morning was very relaxing so much so part of the family did not want to leave.",
"internalRating": 2
}
}
]
}
```
--------------------------------
### Preview Flip.to Features via URL
Source: https://docs.flip.to/integrations/websites/feature-previews
Use the `flipto-preview` URL parameter to enable feature previews on your website. This allows you to see new features before they are officially launched. You can preview all available features or a specific one by appending its ID.
```APIDOC
Flip.to Preview URL Parameters:
To see all features available for preview, visit your website with the `?flipto-preview` parameter added to your URL.
Example:
`https://yourwebsite.com?flipto-preview`
To go to a specific feature, add the feature ID to the `flipto-preview` parameter.
Example:
`https://yourwebsite.com?flipto-preview=planner-headcount`
Available Feature IDs:
- `discovery`: Preview the Discovery flow.
- `planner-headcount`: Headcount adds extra steps to Discovery.
- `planner-flight`: Flight path adds extra steps to Discovery.
- `planner-experiences`: Experiences displays upcoming experiences.
- `planner-special-codes`: Special codes adds support for promo, group, and other special codes in Discovery.
Note: Placeholders for text, images, or data are only visible to you during preview if feature settings are not fully configured.
```
--------------------------------
### API Key Authorization
Source: https://docs.flip.to/api/introduction
All requests to the Flip.to API must be authorized with an API Key. The key should be sent using basic authentication as the username with no password. The example shows the required Authorization header format.
```APIDOC
Authorization: Basic bmV2ZXJnb2luZ3RvZ2l2ZXlvdXVwOg==
```
--------------------------------
### Flip.to Dynamic Configuration Script
Source: https://docs.flip.to/integrations/booking-engines/set-up-your-booking-engine
This snippet shows how to dynamically configure Flip.to settings using a JavaScript object. It includes parameters for persistent URL access and Adobe Analytics cross-domain tracking.
```javascript
window.ftParams = {
"_ga-ft": ".................",
"enableAdobeCrossDomain": true
}
```
--------------------------------
### Discovery Planners API Endpoint
Source: https://docs.flip.to/api/reference/platform-api
Retrieves data for planners who started planning within a specified date range. Supports filtering by discovery IDs, reservations, restricted data, guests, and opt-out status.
```APIDOC
POST https://api.flip.to/v1/company/data/discovery/planners
Description:
Provides data for planners who started planning within a specified date range.
Query Parameters:
- startdate (String, required): The inclusive date range in ISO 8601 format `yyyy-MM-dd` (e.g. 2022-09-18).
- enddate (String, required): The inclusive date range in ISO 8601 format `yyyy-MM-dd` (e.g. 2022-10-18).
- page (String, optional): The page number of the data to consume. Defaults to 1 if not specified.
- pagesize (String, optional): The total number of records to send for each page. Cannot exceed 500 records. Defaults to 100.
Request Body:
- discoveries[] (Array of Strings, optional): An array of discovery IDs to limit results to. If not specified, all discoveries the key has access to will be returned.
- isIncludeReservations (Boolean, optional): Indicates whether to include the plan's associated reservations.
- isIncludeRestricted (Boolean, optional): Indicates whether to include restricted (GDPR) data.
- isIncludeGuests (Boolean, optional): Indicates whether to include guests planners.
- isIncludeOptout (Boolean, optional): Indicates whether to include planners who have chosen to opt-out.
Example Response:
```json
{
"total": 1669,
"page": 1,
"planners": [
{
"discoveryName": "www.overlookhotel.com",
"plannerId": "1D5892B3-48A9-3102-BED1-32BC97AAF577",
"createDate": "2022-01-01T17:36:58.4478437",
"email": "james@gmail.com",
"first": "James",
"languageCode": "en",
"isBooked": true,
"isUninterested": false,
"isPrivacyRestricted": false,
"isOptout": false,
"activePlan": {
"propertyId": "1234DF43-C41C-442F-804C-1234A7952738",
"propertySlug": "overlook-hotel",
"adults": 2,
"children": 0,
"beds": null,
"rooms": 1,
"arrival": "2022-01-01",
"departure": "2022-01-02",
"promo": null
},
"reservations": [
{
"propertyId": "1234DF43-C41C-442F-804C-1234A7952738",
"propertySlug": "overlook-hotel",
"createDate": "2022-01-02T04:14:00",
"pmsNumber": "161000",
"crsNumber": "10622SC40",
"email": "james@flip.to",
"first": "James",
"last": "Smith",
"phone": "1234567890",
"phoneConsentMode": "Checkbox",
"arrival": "2022-01-01",
"departure": "2022-01-02",
"currency": "USD",
"amount": 365.11
}
]
}
]
}
```
```
--------------------------------
### POST /v1/company/data/advocacy/signups
Source: https://docs.flip.to/api/reference/platform-api
Retrieves advocacy sign-up data for leads within a specified date range. Supports filtering by properties and inclusion of opt-out or restricted data. The response includes pagination details and a list of opt-out records.
```APIDOC
POST https://api.flip.to/v1/company/data/advocacy/signups
Query Parameters:
startdate (String, required): The inclusive date range in ISO 8601 format yyyy-MM-dd (e.g. 2022-09-18).
enddate (String, required): The inclusive date range in ISO 8601 format yyyy-MM-dd (e.g. 2022-10-18).
page (String, optional): The page number of the data to consume. If a page isn't specified, page should be set to 1.
pagesize (String, optional): The total number of records to send for each page. Page size cannot exceed 500 records at a time, and if not specified, the default value would be set to 100.
Request Body:
properties[] (String, optional): An array of property IDs to limit results to. If no properties are specified, all properties the key has access to will be returned.
isIncludeRestricted (Boolean, optional): Indicates whether to include restricted (GDPR) data.
isIncludeOptout (Boolean, optional): Indicate whether to include leads who have chosen to opt-out.
Returns:
JSON object containing total records, current page, and an array of opt-out data.
```
```JSON
{
"total": 150,
"page": 1,
"optouts": [
{
"discoveryName": "www.overlookhotel.com",
"email": "james@gmail.com",
"optoutDate": "2022-05-04T18:21:58.1272137"
}
]
}
```