How to implement Q-share?
01 — What you receive from QUINTA
Before starting, QUINTA will provide three items. Do not begin until all three are confirmed.
- License key — a unique string for the
data-licenseattribute. Bound to this property only, formatXXXXX-XXXX. - Script URL — the
srcvalue for the Q-Share script tag. - Language code(s) — the
data-langvalue(s) matching the locale(s) of the website.
Important: The license key is unique per property. Never reuse it across different hotels or domains.
02 — How Q-Share works
Q-Share is a lightweight JavaScript library. When loaded on a page, it scans the DOM for elements carrying a data-point attribute, fetches the corresponding values from the hotel's Q-Data repository, and injects them as text content.
Updates made in the QUINTA platform propagate to the website within minutes — no re-deployment or CMS republication required.
03 — Script installation
Place the script tag immediately before the closing </body> tag on every page where content injection should occur.
<script src="https://q-share.quicktext.im/script.min.js" data-license="XXXXX-XXXX" data-lang="en" ></script> </body> </html>
Replace XXXXX-XXXX with the license key provided by QUINTA. Set data-lang to the page language code.
Attributes
| Attribute | Required | Value |
|---|---|---|
src |
Yes | Script URL provided by QUINTA |
data-license |
Yes | License key provided by QUINTA |
data-lang |
Yes | Language code for injected content |
Supported language codes: en · fr · de · es · it · pt · nl · ru · ar · zh · ja
For multilingual websites, include one script tag per language version — each with the corresponding data-lang value on its respective page or template.
Framework compatibility: Q-Share works with standard HTML, React, Vue, Angular, and server-side rendered stacks (WordPress, Drupal, custom CMS). The script must execute against the real DOM.
04 — Data-point tags
Add a data-point attribute to any HTML element where live content should appear. Q-Share replaces the element's inner text with the corresponding value from Q-Data at page load.
Basic usage
<!-- Hotel name --> <h1 data-point="10-20"></h1> <!-- Check-in time --> <span data-point="13-03"></span> <!-- Pet policy --> <p data-point="19-32"></p>
Multi-entry dialogs — array notation
Some dialogs hold multiple entries (room types, restaurants, F&B outlets). Use zero-based array notation to target individual entries.
<!-- First restaurant name --> <span data-point="17-11[0]"></span> <!-- Second restaurant name --> <span data-point="17-11[1]"></span>
Compatible HTML elements: <span>, <p>, <h1>–<h6>, <li>, <a>, <td>, and any block or inline element.
Recommended CSS rule:
[data-point]:empty { display: none; }
Practical example — restaurant page
<section class="restaurant"> <h2 data-point="17-11[0]"></h2> <!-- Name --> <p data-point="17-15[0]"></p> <!-- Cuisine --> <p data-point="17-20[0]"></p> <!-- Opening hours --> <p data-point="17-32[0]"></p> <!-- Dress code --> <p data-point="17-39[0]"></p> <!-- Reservation policy --> </section>
05 — Data-point catalogue
| FID | Category | Content | Multi-entry |
|---|---|---|---|
10-20 |
Hotel | Hotel name | No |
10-25 |
Hotel | Hotel description | No |
10-42 |
Hotel | Star rating | No |
10-55 |
Hotel | Number of rooms | No |
11-02 |
Location | Address | No |
11-12 |
Location | City | No |
13-03 |
Check-in / Check-out | Check-in time | No |
13-04 |
Check-in / Check-out | Check-out time | No |
13-07 |
Check-in / Check-out | Early check-in policy | No |
14-01 |
Rooms | Room types | Yes |
17-11 |
Restaurant | Restaurant name | Yes |
17-15 |
Restaurant | Cuisine type | Yes |
17-20 |
Restaurant | Opening hours | Yes |
17-32 |
Restaurant | Dress code | Yes |
17-39 |
Restaurant | Reservation policy | Yes |
18-02 |
Spa | Spa name | No |
18-03 |
Spa | Spa description | No |
18-04 |
Spa | Spa opening hours | No |
19-32 |
Policies | Pet policy | No |
19-42 |
Policies | Cancellation policy | No |
20-22 |
Parking | Parking availability | No |
20-23 |
Parking | Parking price | No |
Full data point catalogue
06 — Go-live checklist
- License key and script URL received from QUINTA
- Script tag placed immediately before
</body>on all target pages data-langmatches the correct locale(s) of the site- At least 10
data-pointtags placed on priority pages (home, rooms, restaurant) - CSS rule
[data-point]:empty { display: none; }added to the stylesheet - Injected values visible in the browser