AmazonS3
tcp/443
The following URL (usually /.git/config) is publicly accessible and is leaking source code and repository configuration.
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a6522115649e6
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzX1VxeG1iaWFlN0Z5a291bnp3em9tWHZidWtzVHNyVDFlTEhtUg== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a6522d48756e2
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzX0VaWjh1V3pSNkhYd04zODY3ek1aYnF1cmc4b0VBUDNnODJSSA== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a6522637cf959
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzXzVlUHp4MU53RjRpY1F3dW5rYXBLQzJiUWI0Wnk0TzFsSGJKNw== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a65225388aa38
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzX1QxcTVNR243bzk2VkpUdml2cXhEYnNFQ0MwMTJqbDBsTkpIRg== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a652253373838
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzX2hpMGh2TmRFTXVIVzQ0dlFoWFo0OGNubVh2OWxTaTJpQlVuUg== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a65220e43310c
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzX2xEOENMWkZNa1NlU0Q2bEtpZEdaZTRUR2NEVnBodjE3S2xIUg== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a6522f27f9478
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzXzJ2cGtYNERHdGd1U3FhZXplNUtFS3M5NGYzVVlJazRPbFdxSA== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a652276cf15e1
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzX0JhQThmejEzdWNNQWlQeHFWMDJRZmJqcURjTkJJcDRIYU5sbw== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a652210e642f7
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzX0RzSm56ZjN0NW43ZnNWT2JnRnFIY0s1MkRUa2NoYTBhOTdORg== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a652221026b29
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzX0g5M0lwbThQNU5wd2txUFRlaEt1TXZBV2NaVUpRUzJQUUlhdA== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a652296f81a95
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzX2loS0hGcXN5MFRuRVVWeEEwWVpQbWllYkJXN05RWTJ2d1VpTQ== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a6522b0590c9f
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzXzVOTWtqVG4zbkVoMGRPMVp2V0tnbFU3eDNoaHhaTjN0N0ZSdg== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a6522c2cba41b
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzX3BpcnFKNW9pdkV6SEdXSmppVFcwVWc2b3NHS3dzNDFwVnlYYw== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a652297fc3cfc
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzX0R2RTk4cko0R3FYV2RyN1p2aGxNV0ExNkxtV1A0aTNvZ3k0dg== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a652268c7da8c
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzX29XMnlUMThSYVRTaTVBRWIxcFp5Yk52bjBpODM2ZzNNMlJVVQ== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a652289cf5a7b
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzX0p0dDJVR0lvMnJXb3I3NE95V0VsZGwyZGhUdGJQejM0Y3lVYQ== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a65223276f564
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzX2dNRUhwUElSV0VVUGRlelRQbU9YdGFXSnJlS0xXMDNRTkdWcQ== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a6522f7d32643
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzXzlpVnFuMWpZd0h3aU4xTjl0eXBxZmlXa1BzY0l3QTFESUlmcw== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a6522fbeca0af
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzX1phUkVWUHdOS3pqSk11UDhmU2RxbjRWOURZOHh1NDJJNWxnbg== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a6522fae8ea49
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzX1FFV2xSOEhTYnVDMGVxMExTdTRhUWlXUndnMWJyTDI3MmNiRQ== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a6522dc8b7523
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzX1hlT3JueThob2dKNHZhY2w0MHhZMDhSUUhxUXBaUDFQQmpHMg== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a6522eb6d5948
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzX09rcHFvWFVxdldNWUFTbEprMkMxS3llVmFoWFh2QzE5SDAwaA== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a6522ab7bb86d
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzX25VaHZCREpaVjRobXJNY21PMFoyMzk3anFWaFR5ZTFlQW1PMg== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a6522e0a5c421
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzX2Z0bHRpVHloWE9qdGkwZDN4aFdEcGNUbFd2TkF2djRnUDdWRg== [branch "main"] remote = origin merge = refs/heads/main
Severity: medium
Fingerprint: 2580fa947178c88602b1737db148c044b81b03713d63bb82370a652222301fa4
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/buildwithline/marketing fetch = +refs/heads/*:refs/remotes/origin/* [gc] auto = 0 [http "https://github.com/"] extraheader = AUTHORIZATION: basic eC1hY2Nlc3MtdG9rZW46Z2hzXzhqc2NiQU5Mek1abUxXakNzWk04MWJ2OUJkVjQ5aTFMS2dFUg== [branch "main"] remote = origin merge = refs/heads/main
.DS_Store” is an abbreviation for “Desktop Services Store”. These files are created automatically by Apples “Finder” software (which is part of their OS).
They store information about the files within a folder, including display options of folders, such as icon positions and view settings.
It may happen that .DS_Store files inadvertently leak filenames such as database backups or private administration panels.
Severity: low
Fingerprint: 5f32cf5d6962f09c63442d9d63442d9db7f4c636b7f4c636b7f4c636b7f4c636
Found 1 files trough .DS_Store spidering: /images
Open service 18.66.192.20:443 · withline.io
2026-01-09 16:46
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 31143
Connection: close
Last-Modified: Sat, 13 Dec 2025 18:44:21 GMT
Server: AmazonS3
Date: Fri, 09 Jan 2026 16:46:07 GMT
ETag: "aab9b51a9e8b8f89041c15c0d1e35de9"
X-Cache: Hit from cloudfront
Via: 1.1 6ef87569c26a159f552948d3c30a2be0.cloudfront.net (CloudFront)
X-Amz-Cf-Pop: MUC50-P1
X-Amz-Cf-Id: AuIY120A95BWt_ZU16W4gYFRdSy78S5oFzCgl1FtK1eDsp5wENOYSA==
Age: 2
Page title: Line — AI Reservations & Group Sales for Hotels & Venues
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- Title & SEO -->
<title>Line — AI Reservations & Group Sales for Hotels & Venues</title>
<meta name="description" content="Line builds AI agents for hotels and venues to capture direct reservations, qualify group leads, and assist guests — trained on your property's knowledge and deployable anywhere.">
<link rel="canonical" href="https://withline.io/">
<meta name="robots" content="index,follow,max-snippet:-1,max-image-preview:large,max-video-preview:-1">
<!-- Open Graph -->
<meta property="og:type" content="website">
<meta property="og:site_name" content="Line">
<meta property="og:locale" content="en_US">
<meta property="og:url" content="https://withline.io/">
<meta property="og:title" content="AI Reservations & Group Sales for Hospitality — Line">
<meta property="og:description" content="AI agents that sell and serve on your behalf — direct reservations, group sales, and guest assistance powered by your property's knowledge.">
<meta property="og:image" content="https://withline.io/images/line-logo.png">
<meta property="og:image:width" content="512">
<meta property="og:image:height" content="512">
<!-- Twitter -->
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="AI Reservations & Group Sales for Hospitality — Line">
<meta name="twitter:description" content="AI agents that sell and serve on your behalf — direct reservations, group sales, and guest assistance powered by your property's knowledge.">
<meta name="twitter:image" content="https://withline.io/images/line-logo.png">
<meta name="twitter:image:alt" content="Line - AI Reservations & Group Sales for Hotels & Venues">
<!-- Favicons (deduped) -->
<link rel="icon" href="images/favicon/favicon.ico">
<link rel="icon" type="image/png" sizes="32x32" href="images/favicon/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="images/favicon/favicon-16x16.png">
<link rel="apple-touch-icon" sizes="180x180" href="images/favicon/apple-icon-180x180.png">
<link rel="manifest" href="images/favicon/manifest.json">
<meta name="msapplication-TileColor" content="#ffffff">
<meta name="theme-color" content="#ffffff">
<!-- Fonts & CSS -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="style.css">
<!-- Prevent browser hash scroll when coming from blog.html -->
<!-- Uses sessionStorage set by blog.html to scroll instantly without animation -->
<script>
(function() {
const fromBlog = sessionStorage.getItem('fromBlog');
const scrollToHash = sessionStorage.getItem('scrollToHash');
if (fromBlog === 'true' && scrollToHash) {
// Clean up sessionStorage
sessionStorage.removeItem('fromBlog');
sessionStorage.removeItem('scrollToHash');
// Disable CSS smooth scrolling for instant jump
document.documentElement.style.scrollBehavior = 'auto';
// Scroll to target section instantly
function doScroll() {
const target = document.getElementById(scrollToHash);
if (target) {
const headerHeight = 90;
const padding = 20;
window.scrollTo(0, target.offsetTop - headerHeight - padding);
// Restore hash in URL after scroll
history.replaceState(null, null, '#' + scrollToHash);
}
}
// Execute scroll as soon as DOM is ready
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', doScroll, { once: true });
} else {
doScroll();
}
}
})();
</script>
<!-- JSON-LD: Organization -->
<script type="application/ld+js
Open service 18.66.192.20:443 · withline.io
2026-01-02 23:53
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 31143
Connection: close
Date: Fri, 02 Jan 2026 00:27:29 GMT
Last-Modified: Sat, 13 Dec 2025 18:44:21 GMT
ETag: "aab9b51a9e8b8f89041c15c0d1e35de9"
Server: AmazonS3
X-Cache: Hit from cloudfront
Via: 1.1 8ebebe66cc8de626ee8e15b2ee72d826.cloudfront.net (CloudFront)
X-Amz-Cf-Pop: MUC50-P1
X-Amz-Cf-Id: 9ewTgwMZEiDgW_esuaG4MuqUO6mJWQd8A9g_7zC9bGzX6-7qMlc7CA==
Age: 84384
Page title: Line — AI Reservations & Group Sales for Hotels & Venues
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- Title & SEO -->
<title>Line — AI Reservations & Group Sales for Hotels & Venues</title>
<meta name="description" content="Line builds AI agents for hotels and venues to capture direct reservations, qualify group leads, and assist guests — trained on your property's knowledge and deployable anywhere.">
<link rel="canonical" href="https://withline.io/">
<meta name="robots" content="index,follow,max-snippet:-1,max-image-preview:large,max-video-preview:-1">
<!-- Open Graph -->
<meta property="og:type" content="website">
<meta property="og:site_name" content="Line">
<meta property="og:locale" content="en_US">
<meta property="og:url" content="https://withline.io/">
<meta property="og:title" content="AI Reservations & Group Sales for Hospitality — Line">
<meta property="og:description" content="AI agents that sell and serve on your behalf — direct reservations, group sales, and guest assistance powered by your property's knowledge.">
<meta property="og:image" content="https://withline.io/images/line-logo.png">
<meta property="og:image:width" content="512">
<meta property="og:image:height" content="512">
<!-- Twitter -->
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="AI Reservations & Group Sales for Hospitality — Line">
<meta name="twitter:description" content="AI agents that sell and serve on your behalf — direct reservations, group sales, and guest assistance powered by your property's knowledge.">
<meta name="twitter:image" content="https://withline.io/images/line-logo.png">
<meta name="twitter:image:alt" content="Line - AI Reservations & Group Sales for Hotels & Venues">
<!-- Favicons (deduped) -->
<link rel="icon" href="images/favicon/favicon.ico">
<link rel="icon" type="image/png" sizes="32x32" href="images/favicon/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="images/favicon/favicon-16x16.png">
<link rel="apple-touch-icon" sizes="180x180" href="images/favicon/apple-icon-180x180.png">
<link rel="manifest" href="images/favicon/manifest.json">
<meta name="msapplication-TileColor" content="#ffffff">
<meta name="theme-color" content="#ffffff">
<!-- Fonts & CSS -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="style.css">
<!-- Prevent browser hash scroll when coming from blog.html -->
<!-- Uses sessionStorage set by blog.html to scroll instantly without animation -->
<script>
(function() {
const fromBlog = sessionStorage.getItem('fromBlog');
const scrollToHash = sessionStorage.getItem('scrollToHash');
if (fromBlog === 'true' && scrollToHash) {
// Clean up sessionStorage
sessionStorage.removeItem('fromBlog');
sessionStorage.removeItem('scrollToHash');
// Disable CSS smooth scrolling for instant jump
document.documentElement.style.scrollBehavior = 'auto';
// Scroll to target section instantly
function doScroll() {
const target = document.getElementById(scrollToHash);
if (target) {
const headerHeight = 90;
const padding = 20;
window.scrollTo(0, target.offsetTop - headerHeight - padding);
// Restore hash in URL after scroll
history.replaceState(null, null, '#' + scrollToHash);
}
}
// Execute scroll as soon as DOM is ready
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', doScroll, { once: true });
} else {
doScroll();
}
}
})();
</script>
<!-- JSON-LD: Organization -->
<script type="application/ld+js
Open service 18.66.192.20:443 · withline.io
2026-01-01 20:50
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 31143
Connection: close
Last-Modified: Sat, 13 Dec 2025 18:44:21 GMT
Server: AmazonS3
Date: Thu, 01 Jan 2026 20:49:56 GMT
ETag: "aab9b51a9e8b8f89041c15c0d1e35de9"
X-Cache: Hit from cloudfront
Via: 1.1 6ef87569c26a159f552948d3c30a2be0.cloudfront.net (CloudFront)
X-Amz-Cf-Pop: MUC50-P1
X-Amz-Cf-Id: iRbkMPSyJ9lb-7uFmXIJe9PBpHmwtJqlZiLkR4-7KBLjS3sQ5jQ2NA==
Age: 408
Page title: Line — AI Reservations & Group Sales for Hotels & Venues
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- Title & SEO -->
<title>Line — AI Reservations & Group Sales for Hotels & Venues</title>
<meta name="description" content="Line builds AI agents for hotels and venues to capture direct reservations, qualify group leads, and assist guests — trained on your property's knowledge and deployable anywhere.">
<link rel="canonical" href="https://withline.io/">
<meta name="robots" content="index,follow,max-snippet:-1,max-image-preview:large,max-video-preview:-1">
<!-- Open Graph -->
<meta property="og:type" content="website">
<meta property="og:site_name" content="Line">
<meta property="og:locale" content="en_US">
<meta property="og:url" content="https://withline.io/">
<meta property="og:title" content="AI Reservations & Group Sales for Hospitality — Line">
<meta property="og:description" content="AI agents that sell and serve on your behalf — direct reservations, group sales, and guest assistance powered by your property's knowledge.">
<meta property="og:image" content="https://withline.io/images/line-logo.png">
<meta property="og:image:width" content="512">
<meta property="og:image:height" content="512">
<!-- Twitter -->
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="AI Reservations & Group Sales for Hospitality — Line">
<meta name="twitter:description" content="AI agents that sell and serve on your behalf — direct reservations, group sales, and guest assistance powered by your property's knowledge.">
<meta name="twitter:image" content="https://withline.io/images/line-logo.png">
<meta name="twitter:image:alt" content="Line - AI Reservations & Group Sales for Hotels & Venues">
<!-- Favicons (deduped) -->
<link rel="icon" href="images/favicon/favicon.ico">
<link rel="icon" type="image/png" sizes="32x32" href="images/favicon/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="images/favicon/favicon-16x16.png">
<link rel="apple-touch-icon" sizes="180x180" href="images/favicon/apple-icon-180x180.png">
<link rel="manifest" href="images/favicon/manifest.json">
<meta name="msapplication-TileColor" content="#ffffff">
<meta name="theme-color" content="#ffffff">
<!-- Fonts & CSS -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="style.css">
<!-- Prevent browser hash scroll when coming from blog.html -->
<!-- Uses sessionStorage set by blog.html to scroll instantly without animation -->
<script>
(function() {
const fromBlog = sessionStorage.getItem('fromBlog');
const scrollToHash = sessionStorage.getItem('scrollToHash');
if (fromBlog === 'true' && scrollToHash) {
// Clean up sessionStorage
sessionStorage.removeItem('fromBlog');
sessionStorage.removeItem('scrollToHash');
// Disable CSS smooth scrolling for instant jump
document.documentElement.style.scrollBehavior = 'auto';
// Scroll to target section instantly
function doScroll() {
const target = document.getElementById(scrollToHash);
if (target) {
const headerHeight = 90;
const padding = 20;
window.scrollTo(0, target.offsetTop - headerHeight - padding);
// Restore hash in URL after scroll
history.replaceState(null, null, '#' + scrollToHash);
}
}
// Execute scroll as soon as DOM is ready
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', doScroll, { once: true });
} else {
doScroll();
}
}
})();
</script>
<!-- JSON-LD: Organization -->
<script type="application/ld+js
Open service 18.66.192.20:443 · withline.io
2025-12-30 05:10
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 31143
Connection: close
Last-Modified: Sat, 13 Dec 2025 18:44:21 GMT
Server: AmazonS3
Date: Tue, 30 Dec 2025 05:09:45 GMT
ETag: "aab9b51a9e8b8f89041c15c0d1e35de9"
X-Cache: Hit from cloudfront
Via: 1.1 fb542039f97bb702c0e68d2142c449aa.cloudfront.net (CloudFront)
X-Amz-Cf-Pop: MUC50-P1
X-Amz-Cf-Id: bVKUpZDDqC7hVqaTMs_Cv4mwYXNIDGkqoBI2m-wx73W3j5tp2j-IPQ==
Age: 13262
Page title: Line — AI Reservations & Group Sales for Hotels & Venues
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- Title & SEO -->
<title>Line — AI Reservations & Group Sales for Hotels & Venues</title>
<meta name="description" content="Line builds AI agents for hotels and venues to capture direct reservations, qualify group leads, and assist guests — trained on your property's knowledge and deployable anywhere.">
<link rel="canonical" href="https://withline.io/">
<meta name="robots" content="index,follow,max-snippet:-1,max-image-preview:large,max-video-preview:-1">
<!-- Open Graph -->
<meta property="og:type" content="website">
<meta property="og:site_name" content="Line">
<meta property="og:locale" content="en_US">
<meta property="og:url" content="https://withline.io/">
<meta property="og:title" content="AI Reservations & Group Sales for Hospitality — Line">
<meta property="og:description" content="AI agents that sell and serve on your behalf — direct reservations, group sales, and guest assistance powered by your property's knowledge.">
<meta property="og:image" content="https://withline.io/images/line-logo.png">
<meta property="og:image:width" content="512">
<meta property="og:image:height" content="512">
<!-- Twitter -->
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="AI Reservations & Group Sales for Hospitality — Line">
<meta name="twitter:description" content="AI agents that sell and serve on your behalf — direct reservations, group sales, and guest assistance powered by your property's knowledge.">
<meta name="twitter:image" content="https://withline.io/images/line-logo.png">
<meta name="twitter:image:alt" content="Line - AI Reservations & Group Sales for Hotels & Venues">
<!-- Favicons (deduped) -->
<link rel="icon" href="images/favicon/favicon.ico">
<link rel="icon" type="image/png" sizes="32x32" href="images/favicon/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="images/favicon/favicon-16x16.png">
<link rel="apple-touch-icon" sizes="180x180" href="images/favicon/apple-icon-180x180.png">
<link rel="manifest" href="images/favicon/manifest.json">
<meta name="msapplication-TileColor" content="#ffffff">
<meta name="theme-color" content="#ffffff">
<!-- Fonts & CSS -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="style.css">
<!-- Prevent browser hash scroll when coming from blog.html -->
<!-- Uses sessionStorage set by blog.html to scroll instantly without animation -->
<script>
(function() {
const fromBlog = sessionStorage.getItem('fromBlog');
const scrollToHash = sessionStorage.getItem('scrollToHash');
if (fromBlog === 'true' && scrollToHash) {
// Clean up sessionStorage
sessionStorage.removeItem('fromBlog');
sessionStorage.removeItem('scrollToHash');
// Disable CSS smooth scrolling for instant jump
document.documentElement.style.scrollBehavior = 'auto';
// Scroll to target section instantly
function doScroll() {
const target = document.getElementById(scrollToHash);
if (target) {
const headerHeight = 90;
const padding = 20;
window.scrollTo(0, target.offsetTop - headerHeight - padding);
// Restore hash in URL after scroll
history.replaceState(null, null, '#' + scrollToHash);
}
}
// Execute scroll as soon as DOM is ready
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', doScroll, { once: true });
} else {
doScroll();
}
}
})();
</script>
<!-- JSON-LD: Organization -->
<script type="application/ld+js
Open service 18.66.192.20:443 · withline.io
2025-12-22 20:08
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 31143
Connection: close
Date: Mon, 22 Dec 2025 09:34:41 GMT
Last-Modified: Sat, 13 Dec 2025 18:44:21 GMT
ETag: "aab9b51a9e8b8f89041c15c0d1e35de9"
Server: AmazonS3
X-Cache: Hit from cloudfront
Via: 1.1 89efe3a7854e47cf7f1fe47e28e39348.cloudfront.net (CloudFront)
X-Amz-Cf-Pop: MUC50-P1
X-Amz-Cf-Id: c6iic62LtxjvsuOEtEqtvDAjIfa0X-9V-ulgv2UXhb3U4Y4NiGgbWQ==
Age: 38002
Page title: Line — AI Reservations & Group Sales for Hotels & Venues
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- Title & SEO -->
<title>Line — AI Reservations & Group Sales for Hotels & Venues</title>
<meta name="description" content="Line builds AI agents for hotels and venues to capture direct reservations, qualify group leads, and assist guests — trained on your property's knowledge and deployable anywhere.">
<link rel="canonical" href="https://withline.io/">
<meta name="robots" content="index,follow,max-snippet:-1,max-image-preview:large,max-video-preview:-1">
<!-- Open Graph -->
<meta property="og:type" content="website">
<meta property="og:site_name" content="Line">
<meta property="og:locale" content="en_US">
<meta property="og:url" content="https://withline.io/">
<meta property="og:title" content="AI Reservations & Group Sales for Hospitality — Line">
<meta property="og:description" content="AI agents that sell and serve on your behalf — direct reservations, group sales, and guest assistance powered by your property's knowledge.">
<meta property="og:image" content="https://withline.io/images/line-logo.png">
<meta property="og:image:width" content="512">
<meta property="og:image:height" content="512">
<!-- Twitter -->
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="AI Reservations & Group Sales for Hospitality — Line">
<meta name="twitter:description" content="AI agents that sell and serve on your behalf — direct reservations, group sales, and guest assistance powered by your property's knowledge.">
<meta name="twitter:image" content="https://withline.io/images/line-logo.png">
<meta name="twitter:image:alt" content="Line - AI Reservations & Group Sales for Hotels & Venues">
<!-- Favicons (deduped) -->
<link rel="icon" href="images/favicon/favicon.ico">
<link rel="icon" type="image/png" sizes="32x32" href="images/favicon/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="images/favicon/favicon-16x16.png">
<link rel="apple-touch-icon" sizes="180x180" href="images/favicon/apple-icon-180x180.png">
<link rel="manifest" href="images/favicon/manifest.json">
<meta name="msapplication-TileColor" content="#ffffff">
<meta name="theme-color" content="#ffffff">
<!-- Fonts & CSS -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="style.css">
<!-- Prevent browser hash scroll when coming from blog.html -->
<!-- Uses sessionStorage set by blog.html to scroll instantly without animation -->
<script>
(function() {
const fromBlog = sessionStorage.getItem('fromBlog');
const scrollToHash = sessionStorage.getItem('scrollToHash');
if (fromBlog === 'true' && scrollToHash) {
// Clean up sessionStorage
sessionStorage.removeItem('fromBlog');
sessionStorage.removeItem('scrollToHash');
// Disable CSS smooth scrolling for instant jump
document.documentElement.style.scrollBehavior = 'auto';
// Scroll to target section instantly
function doScroll() {
const target = document.getElementById(scrollToHash);
if (target) {
const headerHeight = 90;
const padding = 20;
window.scrollTo(0, target.offsetTop - headerHeight - padding);
// Restore hash in URL after scroll
history.replaceState(null, null, '#' + scrollToHash);
}
}
// Execute scroll as soon as DOM is ready
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', doScroll, { once: true });
} else {
doScroll();
}
}
})();
</script>
<!-- JSON-LD: Organization -->
<script type="application/ld+js
Open service 18.66.192.20:443 · withline.io
2025-12-22 06:08
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 31143
Connection: close
Last-Modified: Sat, 13 Dec 2025 18:44:21 GMT
Server: AmazonS3
Date: Mon, 22 Dec 2025 06:06:49 GMT
ETag: "aab9b51a9e8b8f89041c15c0d1e35de9"
X-Cache: Hit from cloudfront
Via: 1.1 eec5ede1fdb15ceb2352a4ebfb155362.cloudfront.net (CloudFront)
X-Amz-Cf-Pop: MUC50-P1
X-Amz-Cf-Id: ZLcurmxnKpAoKtNWX2Qwd-SXrmf7bR_QJmTEdapoButjZE6cXYS0ZA==
Age: 34593
Page title: Line — AI Reservations & Group Sales for Hotels & Venues
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- Title & SEO -->
<title>Line — AI Reservations & Group Sales for Hotels & Venues</title>
<meta name="description" content="Line builds AI agents for hotels and venues to capture direct reservations, qualify group leads, and assist guests — trained on your property's knowledge and deployable anywhere.">
<link rel="canonical" href="https://withline.io/">
<meta name="robots" content="index,follow,max-snippet:-1,max-image-preview:large,max-video-preview:-1">
<!-- Open Graph -->
<meta property="og:type" content="website">
<meta property="og:site_name" content="Line">
<meta property="og:locale" content="en_US">
<meta property="og:url" content="https://withline.io/">
<meta property="og:title" content="AI Reservations & Group Sales for Hospitality — Line">
<meta property="og:description" content="AI agents that sell and serve on your behalf — direct reservations, group sales, and guest assistance powered by your property's knowledge.">
<meta property="og:image" content="https://withline.io/images/line-logo.png">
<meta property="og:image:width" content="512">
<meta property="og:image:height" content="512">
<!-- Twitter -->
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="AI Reservations & Group Sales for Hospitality — Line">
<meta name="twitter:description" content="AI agents that sell and serve on your behalf — direct reservations, group sales, and guest assistance powered by your property's knowledge.">
<meta name="twitter:image" content="https://withline.io/images/line-logo.png">
<meta name="twitter:image:alt" content="Line - AI Reservations & Group Sales for Hotels & Venues">
<!-- Favicons (deduped) -->
<link rel="icon" href="images/favicon/favicon.ico">
<link rel="icon" type="image/png" sizes="32x32" href="images/favicon/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="images/favicon/favicon-16x16.png">
<link rel="apple-touch-icon" sizes="180x180" href="images/favicon/apple-icon-180x180.png">
<link rel="manifest" href="images/favicon/manifest.json">
<meta name="msapplication-TileColor" content="#ffffff">
<meta name="theme-color" content="#ffffff">
<!-- Fonts & CSS -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="style.css">
<!-- Prevent browser hash scroll when coming from blog.html -->
<!-- Uses sessionStorage set by blog.html to scroll instantly without animation -->
<script>
(function() {
const fromBlog = sessionStorage.getItem('fromBlog');
const scrollToHash = sessionStorage.getItem('scrollToHash');
if (fromBlog === 'true' && scrollToHash) {
// Clean up sessionStorage
sessionStorage.removeItem('fromBlog');
sessionStorage.removeItem('scrollToHash');
// Disable CSS smooth scrolling for instant jump
document.documentElement.style.scrollBehavior = 'auto';
// Scroll to target section instantly
function doScroll() {
const target = document.getElementById(scrollToHash);
if (target) {
const headerHeight = 90;
const padding = 20;
window.scrollTo(0, target.offsetTop - headerHeight - padding);
// Restore hash in URL after scroll
history.replaceState(null, null, '#' + scrollToHash);
}
}
// Execute scroll as soon as DOM is ready
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', doScroll, { once: true });
} else {
doScroll();
}
}
})();
</script>
<!-- JSON-LD: Organization -->
<script type="application/ld+js
Open service 18.66.192.20:443 · withline.io
2025-12-21 00:32
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 31143
Connection: close
Date: Sat, 20 Dec 2025 06:38:40 GMT
Last-Modified: Sat, 13 Dec 2025 18:44:21 GMT
ETag: "aab9b51a9e8b8f89041c15c0d1e35de9"
Server: AmazonS3
X-Cache: Hit from cloudfront
Via: 1.1 2551fa016e0e39646c40c584001d7b4e.cloudfront.net (CloudFront)
X-Amz-Cf-Pop: MUC50-P1
X-Amz-Cf-Id: YOYOhf6ETiDGla-egGKzeZH4mwUDRzX_U2UZMlyMS6a3YdJdfR2BiA==
Age: 64436
Page title: Line — AI Reservations & Group Sales for Hotels & Venues
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- Title & SEO -->
<title>Line — AI Reservations & Group Sales for Hotels & Venues</title>
<meta name="description" content="Line builds AI agents for hotels and venues to capture direct reservations, qualify group leads, and assist guests — trained on your property's knowledge and deployable anywhere.">
<link rel="canonical" href="https://withline.io/">
<meta name="robots" content="index,follow,max-snippet:-1,max-image-preview:large,max-video-preview:-1">
<!-- Open Graph -->
<meta property="og:type" content="website">
<meta property="og:site_name" content="Line">
<meta property="og:locale" content="en_US">
<meta property="og:url" content="https://withline.io/">
<meta property="og:title" content="AI Reservations & Group Sales for Hospitality — Line">
<meta property="og:description" content="AI agents that sell and serve on your behalf — direct reservations, group sales, and guest assistance powered by your property's knowledge.">
<meta property="og:image" content="https://withline.io/images/line-logo.png">
<meta property="og:image:width" content="512">
<meta property="og:image:height" content="512">
<!-- Twitter -->
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="AI Reservations & Group Sales for Hospitality — Line">
<meta name="twitter:description" content="AI agents that sell and serve on your behalf — direct reservations, group sales, and guest assistance powered by your property's knowledge.">
<meta name="twitter:image" content="https://withline.io/images/line-logo.png">
<meta name="twitter:image:alt" content="Line - AI Reservations & Group Sales for Hotels & Venues">
<!-- Favicons (deduped) -->
<link rel="icon" href="images/favicon/favicon.ico">
<link rel="icon" type="image/png" sizes="32x32" href="images/favicon/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="images/favicon/favicon-16x16.png">
<link rel="apple-touch-icon" sizes="180x180" href="images/favicon/apple-icon-180x180.png">
<link rel="manifest" href="images/favicon/manifest.json">
<meta name="msapplication-TileColor" content="#ffffff">
<meta name="theme-color" content="#ffffff">
<!-- Fonts & CSS -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="style.css">
<!-- Prevent browser hash scroll when coming from blog.html -->
<!-- Uses sessionStorage set by blog.html to scroll instantly without animation -->
<script>
(function() {
const fromBlog = sessionStorage.getItem('fromBlog');
const scrollToHash = sessionStorage.getItem('scrollToHash');
if (fromBlog === 'true' && scrollToHash) {
// Clean up sessionStorage
sessionStorage.removeItem('fromBlog');
sessionStorage.removeItem('scrollToHash');
// Disable CSS smooth scrolling for instant jump
document.documentElement.style.scrollBehavior = 'auto';
// Scroll to target section instantly
function doScroll() {
const target = document.getElementById(scrollToHash);
if (target) {
const headerHeight = 90;
const padding = 20;
window.scrollTo(0, target.offsetTop - headerHeight - padding);
// Restore hash in URL after scroll
history.replaceState(null, null, '#' + scrollToHash);
}
}
// Execute scroll as soon as DOM is ready
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', doScroll, { once: true });
} else {
doScroll();
}
}
})();
</script>
<!-- JSON-LD: Organization -->
<script type="application/ld+js
Open service 18.66.192.20:443 · withline.io
2025-12-20 06:40
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 31143
Connection: close
Date: Sat, 20 Dec 2025 06:38:40 GMT
Last-Modified: Sat, 13 Dec 2025 18:44:21 GMT
ETag: "aab9b51a9e8b8f89041c15c0d1e35de9"
Server: AmazonS3
X-Cache: Hit from cloudfront
Via: 1.1 ae6c2eb8d653982f5df6a91a4b14b518.cloudfront.net (CloudFront)
X-Amz-Cf-Pop: MUC50-P1
X-Amz-Cf-Id: 5f08GgsEWGx-F4i_-upmObjOzX1B2ZDOAf9dp1J5jAupCz6gLOAH5Q==
Age: 120
Page title: Line — AI Reservations & Group Sales for Hotels & Venues
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- Title & SEO -->
<title>Line — AI Reservations & Group Sales for Hotels & Venues</title>
<meta name="description" content="Line builds AI agents for hotels and venues to capture direct reservations, qualify group leads, and assist guests — trained on your property's knowledge and deployable anywhere.">
<link rel="canonical" href="https://withline.io/">
<meta name="robots" content="index,follow,max-snippet:-1,max-image-preview:large,max-video-preview:-1">
<!-- Open Graph -->
<meta property="og:type" content="website">
<meta property="og:site_name" content="Line">
<meta property="og:locale" content="en_US">
<meta property="og:url" content="https://withline.io/">
<meta property="og:title" content="AI Reservations & Group Sales for Hospitality — Line">
<meta property="og:description" content="AI agents that sell and serve on your behalf — direct reservations, group sales, and guest assistance powered by your property's knowledge.">
<meta property="og:image" content="https://withline.io/images/line-logo.png">
<meta property="og:image:width" content="512">
<meta property="og:image:height" content="512">
<!-- Twitter -->
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="AI Reservations & Group Sales for Hospitality — Line">
<meta name="twitter:description" content="AI agents that sell and serve on your behalf — direct reservations, group sales, and guest assistance powered by your property's knowledge.">
<meta name="twitter:image" content="https://withline.io/images/line-logo.png">
<meta name="twitter:image:alt" content="Line - AI Reservations & Group Sales for Hotels & Venues">
<!-- Favicons (deduped) -->
<link rel="icon" href="images/favicon/favicon.ico">
<link rel="icon" type="image/png" sizes="32x32" href="images/favicon/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="images/favicon/favicon-16x16.png">
<link rel="apple-touch-icon" sizes="180x180" href="images/favicon/apple-icon-180x180.png">
<link rel="manifest" href="images/favicon/manifest.json">
<meta name="msapplication-TileColor" content="#ffffff">
<meta name="theme-color" content="#ffffff">
<!-- Fonts & CSS -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="style.css">
<!-- Prevent browser hash scroll when coming from blog.html -->
<!-- Uses sessionStorage set by blog.html to scroll instantly without animation -->
<script>
(function() {
const fromBlog = sessionStorage.getItem('fromBlog');
const scrollToHash = sessionStorage.getItem('scrollToHash');
if (fromBlog === 'true' && scrollToHash) {
// Clean up sessionStorage
sessionStorage.removeItem('fromBlog');
sessionStorage.removeItem('scrollToHash');
// Disable CSS smooth scrolling for instant jump
document.documentElement.style.scrollBehavior = 'auto';
// Scroll to target section instantly
function doScroll() {
const target = document.getElementById(scrollToHash);
if (target) {
const headerHeight = 90;
const padding = 20;
window.scrollTo(0, target.offsetTop - headerHeight - padding);
// Restore hash in URL after scroll
history.replaceState(null, null, '#' + scrollToHash);
}
}
// Execute scroll as soon as DOM is ready
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', doScroll, { once: true });
} else {
doScroll();
}
}
})();
</script>
<!-- JSON-LD: Organization -->
<script type="application/ld+js