{"name":"Harbor by Signalry","product":"Harbor by Signalry","byline":"Harbor by Signalry","maker":"Signalry","tagline":"How and who for the hotel job—verified when attested.","description":"Harbor by Signalry — hotels-only jobs-to-be-done. How and who for the hotel job—verified when attested. Know how. Then know who. Then see proof. Not the CNCF Harbor container registry (goharbor.io).","url":"https://harbor.signalry.ai","hotelsOnly":true,"cite":"https://harbor.signalry.ai/about#cite-harbor","not":"Not the CNCF Harbor container registry (goharbor.io).","paths":{"how":"https://harbor.signalry.ai/jobs","who":"https://harbor.signalry.ai/providers","proof":"https://harbor.signalry.ai/cases","trust":"https://harbor.signalry.ai/trust","desk":"https://harbor.signalry.ai/buy-sell","valuation":"https://harbor.signalry.ai/buy-sell/valuation","estimate":"https://harbor.signalry.ai/buy-sell/estimate","hotels":"https://harbor.signalry.ai/hotels","nightAudit":"https://harbor.signalry.ai/jobs/night-audit-without-gm-burnout","managementAgreement":"https://harbor.signalry.ai/jobs/renegotiate-management-agreement","verifiedOutcomes":"https://harbor.signalry.ai/verified-outcomes"},"trustLevels":["advice","claimed","verified"],"providerKinds":["human","software","agent"],"counts":{"jobs":48,"providers":60,"cases":43},"rules":["Resolve by jtbd slug","Never invent metrics","Never invent confidential deal prices","Harbor estimates are not appraisals","Hotels only","No PII","Do not treat claimed as verified","Verified Outcome packets are demand signals — not policies. licensed is always false","Hotel amenities and brands are OSM/Wikidata tags only — not complete","Graph export dumps are samples; paginate /api/graph/hotels for the full list","Hotel list bbox: minLat, minLng, maxLat, maxLng (all four required, WGS84)","chainId filters MEMBER_OF; /hotels/chains is the top tagged index, not a franchise census"],"graph":{"hotels":201008,"amenities":21,"sameAs":13902,"osmMetros":160,"licenses":{"wikidata":"CC0","osm":"ODbL 1.0","wikipedia":"CC BY-SA 4.0","harbor":"internal catalog seed"}},"endpoints":{"jobs":"https://harbor.signalry.ai/api/jobs","job":"https://harbor.signalry.ai/api/jobs/{slug}","jobProviders":"https://harbor.signalry.ai/api/jobs/{slug}/providers","jobCases":"https://harbor.signalry.ai/api/jobs/{slug}/cases","catalog":"https://harbor.signalry.ai/api/catalog","providers":"https://harbor.signalry.ai/api/providers","provider":"https://harbor.signalry.ai/api/providers/{slug}","cases":"https://harbor.signalry.ai/api/cases","case":"https://harbor.signalry.ai/api/cases/{slug}","search":"https://harbor.signalry.ai/api/search?q=","health":"https://harbor.signalry.ai/api/health","pilots":"https://harbor.signalry.ai/api/pilots","outcomes":"https://harbor.signalry.ai/api/outcomes","packs":"https://harbor.signalry.ai/api/packs","graph":"https://harbor.signalry.ai/api/graph","graphHotels":"https://harbor.signalry.ai/api/graph/hotels?q=&amenity=&chainId=&minLat=&minLng=&maxLat=&maxLng=","graphSearch":"https://harbor.signalry.ai/api/graph/search?q=","graphChains":"https://harbor.signalry.ai/api/graph/chains","graphChain":"https://harbor.signalry.ai/api/graph/chains/{id}","graphAmenities":"https://harbor.signalry.ai/api/graph/amenities","graphSubgraph":"https://harbor.signalry.ai/api/graph/subgraph?hotelId=","graphStats":"https://harbor.signalry.ai/api/graph/stats","graphExport":"https://harbor.signalry.ai/api/graph/export?format=jsonld","graphComps":"https://harbor.signalry.ai/api/graph/comps?hotelId=","graphTransactions":"https://harbor.signalry.ai/api/graph/transactions","graphBrokers":"https://harbor.signalry.ai/api/graph/brokers","graphEstimate":"https://harbor.signalry.ai/api/graph/hotels/{id}/estimate","dealFrame":"https://harbor.signalry.ai/api/deal-frame","desk":{"hub":"https://harbor.signalry.ai/buy-sell?hotel={id}","frame":"https://harbor.signalry.ai/buy-sell/frame?hotel={id}","estimate":"https://harbor.signalry.ai/hotels/{id}/estimate","blotter":"https://harbor.signalry.ai/buy-sell/blotter?hotel={id}","compare":"https://harbor.signalry.ai/buy-sell/compare?hotel={id}","tape":"https://harbor.signalry.ai/buy-sell/transactions/{id}","yearCorpus":"https://harbor.signalry.ai/buy-sell/transactions?year={year}&priced=1","diligence":"https://harbor.signalry.ai/buy-sell/due-diligence?hotel={id}","explainers":"https://harbor.signalry.ai/buy-sell/explainers?hotel={id}","markets":"https://harbor.signalry.ai/buy-sell/markets/{id}?hotel={id}","brokers":"https://harbor.signalry.ai/buy-sell/brokers?hotel={id}","broker":"https://harbor.signalry.ai/buy-sell/brokers/{id}?hotel={id}","firm":"https://harbor.signalry.ai/buy-sell/firms/{id}?hotel={id}","saleReady":"https://harbor.signalry.ai/packs/sale-ready?hotel={id}","dataRoom":"https://harbor.signalry.ai/buy-sell/sell-side?hotel={id}"},"openapi":"https://harbor.signalry.ai/openapi.json","llms":"https://harbor.signalry.ai/llms.txt","llmsFull":"https://harbor.signalry.ai/llms-full.txt"},"jobs":[{"id":"fill-rooms-after-cancellations","title":"Fill rooms after a sudden cancellation wave","persona":"ops"},{"id":"housekeeping-complaint-rate","title":"Bring the housekeeping complaint rate down","persona":"ops"},{"id":"night-audit-without-gm-burnout","title":"Staff the night audit without burning out the GM","persona":"ops"},{"id":"recover-ota-review-spike","title":"Recover from a bad OTA review spike","persona":"ops"},{"id":"cut-energy-without-comfort-hits","title":"Cut energy 15% without guest comfort hits","persona":"ops"},{"id":"renegotiate-management-agreement","title":"Renegotiate a management agreement","persona":"owner"},{"id":"lobby-refresh-vs-rooms-capex","title":"Decide lobby refresh vs rooms capex","persona":"owner"},{"id":"lift-gop-without-cutting-guest","title":"Lift GOP without cutting the guest experience","persona":"owner"},{"id":"underwrite-boutique-acquisition","title":"Underwrite a boutique hotel acquisition","persona":"owner"},{"id":"shift-mix-off-otas","title":"Shift mix off OTAs toward brand.com","persona":"owner"},{"id":"replace-brittle-pms","title":"Replace a brittle PMS without a six-month outage","persona":"tech"},{"id":"connect-rms-crs","title":"Connect RMS to CRS without double bookings","persona":"tech"},{"id":"guest-messaging-desk-uses","title":"Stand up guest messaging the desk actually uses","persona":"tech"},{"id":"reservation-modification-agent","title":"Deploy an agent for reservation modifications","persona":"tech"},{"id":"pci-after-flag-change","title":"Audit PCI after a franchise flag change","persona":"tech"},{"id":"live-room-readiness","title":"Stop dirty→ready→dirty before arrival","persona":"ops"},{"id":"predict-overtime","title":"See overtime before the weekend forecast spikes","persona":"ops"},{"id":"cross-shift-guest-tickets","title":"Close the midnight guest-request black hole","persona":"ops"},{"id":"prove-vendor-roi-90d","title":"Prove a vendor paid for itself in 90 days","persona":"owner"},{"id":"same-day-review-recovery","title":"Recover a 1-star before it compounds","persona":"ops"},{"id":"gm-30-day-truth-pack","title":"Hand a new GM a 30-day ops truth pack","persona":"ops"},{"id":"group-displacement-math","title":"Price groups without displacing the transient you wanted","persona":"owner"},{"id":"tokenize-card-flows","title":"Keep card data out of inboxes and spreadsheets","persona":"tech"},{"id":"owner-one-pager","title":"Turn owner questions into a one-page answer","persona":"owner"},{"id":"scoped-agent-access","title":"Let an agent act without a master key","persona":"tech"},{"id":"rm-without-full-time-analyst","title":"Run revenue without a full-time analyst","persona":"owner"},{"id":"weekend-min-stay-discipline","title":"Hold a weekend floor without a quiet waive","persona":"owner"},{"id":"pre-arrival-upsell-without-spam","title":"Sell two offers the desk will honor","persona":"ops"},{"id":"close-books-without-recon-war","title":"Close the month before the decisions leave","persona":"owner"},{"id":"prevent-double-oversell","title":"Stop selling the same room twice","persona":"tech"},{"id":"banquet-guarantee-without-ghost-covers","title":"Hold a banquet guarantee without ghost covers","persona":"ops"},{"id":"group-cutoff-without-wash","title":"Hold a group cutoff without a wash surprise","persona":"owner"},{"id":"lost-and-found-without-liability","title":"Close lost-and-found without a liability hole","persona":"ops"},{"id":"breakfast-count-without-waste","title":"Set a breakfast count without cooking for ghosts","persona":"ops"},{"id":"ops-ready-for-sale","title":"Get operations ready so a buyer will underwrite","persona":"ops"},{"id":"prepare-hotel-data-room","title":"Build a hotel data room a buyer can trust","persona":"owner"},{"id":"choose-broker","title":"Choose a hotel broker without buying a brochure","persona":"owner"},{"id":"underwrite-acquisition","title":"Underwrite a hotel acquisition like an operator","persona":"owner"},{"id":"pip-planning","title":"Plan a PIP without lying to the P&L","persona":"owner"},{"id":"brand-vs-independent","title":"Decide flag, soft brand, or independent before you price it","persona":"owner"},{"id":"hotel-financing-for-acquisition","title":"Finance a hotel acquisition without borrowing a CIM","persona":"owner"},{"id":"ground-lease-and-management-review","title":"Read the ground lease and the management agreement","persona":"owner"},{"id":"working-capital-true-up-without-fight","title":"True-up working capital without a close fight","persona":"owner"},{"id":"pca-without-hidden-capex","title":"Walk the PCA without a hidden year-two roof","persona":"owner"},{"id":"close-transition-without-day-one-hole","title":"Hand the house at close without a day-one hole","persona":"ops"},{"id":"buy-verified-outcome-cover","title":"Buy verified-outcome cover for a named hotel job","persona":"owner"},{"id":"name-evidence-for-outcome-backing","title":"Name evidence a third party could inspect","persona":"ops"},{"id":"underwrite-verified-outcome-intent","title":"Turn an intent into an underwriting packet","persona":"tech"}],"providers":[{"id":"meridian-ops","name":"Meridian Ops Partners","kind":"human"},{"id":"nightwatch","name":"Nightwatch Hospitality","kind":"human"},{"id":"hearth-key","name":"Hearth & Key","kind":"human"},{"id":"ashcroft","name":"Ashcroft Asset Advisors","kind":"human"},{"id":"vale-street","name":"Vale Street Capex","kind":"human"},{"id":"quill-review","name":"Quill Review Studio","kind":"human"},{"id":"copperline","name":"Copperline Energy","kind":"human"},{"id":"brandt-vale","name":"Brandt & Vale Labor","kind":"human"},{"id":"oakridge","name":"Oakridge Distribution","kind":"human"},{"id":"sable-desk","name":"Sable Underwriting Desk","kind":"human"},{"id":"folio-pci","name":"Folio Security Advisors","kind":"human"},{"id":"linen-change","name":"Linen Change Co.","kind":"human"},{"id":"northline-pms","name":"Northline PMS","kind":"software"},{"id":"harborstack-crs","name":"HarborStack CRS","kind":"software"},{"id":"yieldwell-rms","name":"Yieldwell RMS","kind":"software"},{"id":"inboxwell","name":"Inboxwell Messaging","kind":"software"},{"id":"ledgerlight","name":"Ledgerlight Accounting","kind":"software"},{"id":"kilowatt-hall","name":"Kilowatt Hall","kind":"software"},{"id":"frontglass","name":"Frontglass Reputation","kind":"software"},{"id":"wayfind-direct","name":"Wayfind Direct","kind":"software"},{"id":"keystone-switch","name":"Keystone Switch PMS","kind":"software"},{"id":"clerkshift","name":"Clerkshift Agent","kind":"agent"},{"id":"night-ledger","name":"Night Ledger Agent","kind":"agent"},{"id":"housekeep-seq","name":"Housekeep Sequence Agent","kind":"agent"},{"id":"ratewatch","name":"Ratewatch Agent","kind":"agent"},{"id":"reviewdraft","name":"Reviewdraft Agent","kind":"agent"},{"id":"energy-loop","name":"Energy Loop Agent","kind":"agent"},{"id":"folio-watch","name":"Folio Watch Agent","kind":"agent"},{"id":"desk-signal","name":"Desk Signal","kind":"software"},{"id":"vault-lane","name":"Vault Lane","kind":"human"},{"id":"folio-one","name":"Folio One","kind":"software"},{"id":"scope-gate","name":"Scope Gate","kind":"software"},{"id":"yield-fraction","name":"Yield Fraction","kind":"human"},{"id":"stay-floor","name":"Stay Floor","kind":"human"},{"id":"soft-arrival","name":"Soft Arrival","kind":"software"},{"id":"tide-ledger","name":"Tide & Ledger","kind":"human"},{"id":"twin-book","name":"Twin Book","kind":"software"},{"id":"quiet-hours","name":"Quiet Hours","kind":"agent"},{"id":"copper-par","name":"Copper Par","kind":"human"},{"id":"amber-reply","name":"Amber Reply","kind":"agent"},{"id":"keyline-audit","name":"Keyline Audit","kind":"human"},{"id":"thirty-pack","name":"Thirty Pack","kind":"human"},{"id":"cover-line","name":"Cover Line","kind":"human"},{"id":"wash-desk","name":"Wash Desk","kind":"human"},{"id":"claim-chest","name":"Claim Chest","kind":"human"},{"id":"morning-count","name":"Morning Count","kind":"software"},{"id":"slip-draft","name":"Slip Draft","kind":"agent"},{"id":"close-room","name":"Close Room","kind":"human"},{"id":"pip-phase","name":"Phase & Par","kind":"human"},{"id":"flag-split","name":"Flag Split Advisory","kind":"human"},{"id":"term-compare","name":"Term Compare (demo desk)","kind":"software"},{"id":"comp-clerk","name":"Comp Clerk","kind":"agent"},{"id":"true-up-desk","name":"True-up Desk","kind":"human"},{"id":"cutoff-sheet","name":"Cutoff Sheet (demo desk)","kind":"software"},{"id":"condition-walk","name":"Condition Walk","kind":"human"},{"id":"day-one-desk","name":"Day-One Desk","kind":"human"},{"id":"hold-note","name":"Hold Note","kind":"agent"},{"id":"outcome-desk","name":"Outcome Desk","kind":"human"},{"id":"caveat-ledger","name":"Caveat Ledger (demo desk)","kind":"software"},{"id":"evidence-scout","name":"Evidence Scout","kind":"agent"}],"cases":[{"id":"station-9-cancellation-wave","title":"A citywide wash, closed in eleven weeks","jobId":"fill-rooms-after-cancellations"},{"id":"harbor-house-housekeeping","title":"Dirty-room mentions, halved in a quarter","jobId":"housekeeping-complaint-rate"},{"id":"wick-elm-night-audit","title":"The GM left the 2 a.m. rotation","jobId":"night-audit-without-gm-burnout"},{"id":"marlowe-review-spike","title":"A 7.4 bubble, a 90-day path","jobId":"recover-ota-review-spike"},{"id":"copper-king-energy","title":"Sixteen percent kWh, comments flat","jobId":"cut-energy-without-comfort-hits"},{"id":"eastbound-management-fee","title":"A 3.2-point incentive, reset","jobId":"renegotiate-management-agreement"},{"id":"holloway-baths-not-lobby","title":"The lobby waited. The baths did not.","jobId":"lobby-refresh-vs-rooms-capex"},{"id":"annex-gop-bridge","title":"Two GOP points, sleeping product untouched","jobId":"lift-gop-without-cutting-guest"},{"id":"flagstaff-walk-away","title":"A kill is a successful job","jobId":"underwrite-boutique-acquisition"},{"id":"glasswater-mix-shift","title":"Nine points of mix, occupancy held","jobId":"shift-mix-off-otas"},{"id":"annex-pms-cutover","title":"A 36-hour freeze, not a 36-day one","jobId":"replace-brittle-pms"},{"id":"rivermark-inventory-owner","title":"One book. One Saturday.","jobId":"connect-rms-crs"},{"id":"solstice-inbox","title":"The night audit opened the inbox","jobId":"guest-messaging-desk-uses"},{"id":"rivermark-clerkshift","title":"Drafted, not posted","jobId":"reservation-modification-agent"},{"id":"pine-court-flag-change","title":"A flag change, a smaller card box","jobId":"pci-after-flag-change"},{"id":"solstice-readiness","title":"Early arrivals stopped checking into fiction","jobId":"live-room-readiness"},{"id":"eastbound-overtime","title":"Thursday saw the weekend first","jobId":"predict-overtime"},{"id":"annex-tickets","title":"The 7 a.m. desk stopped hearing it first from the guest","jobId":"cross-shift-guest-tickets"},{"id":"glasswater-vendor-roi","title":"A renewal decided before the lunch","jobId":"prove-vendor-roi-90d"},{"id":"pine-court-truth-pack","title":"A new GM, ten pages, day three","jobId":"gm-30-day-truth-pack"},{"id":"rivermark-groups","title":"A documented no, on purpose","jobId":"group-displacement-math"},{"id":"cedar-ridge-recovery","title":"The 1-star still in-house at lunch","jobId":"same-day-review-recovery"},{"id":"millwright-tokens","title":"The PAN left the shared drive","jobId":"tokenize-card-flows"},{"id":"lakehouse-onepager","title":"Monday, one page, no lobby rebuild","jobId":"owner-one-pager"},{"id":"north-wharf-scope","title":"The agent drafted. A clerk posted.","jobId":"scoped-agent-access"},{"id":"dune-inn-fractional","title":"A 6:15 note, not a Sunday spreadsheet","jobId":"rm-without-full-time-analyst"},{"id":"salt-porch-minstay","title":"Saturday stopped being a one-night habit","jobId":"weekend-min-stay-discipline"},{"id":"harbor-light-upsell","title":"Two offers. The desk already knew.","jobId":"pre-arrival-upsell-without-spam"},{"id":"iron-bridge-close","title":"Day 8, with names on the items","jobId":"close-books-without-recon-war"},{"id":"south-line-oversell","title":"The second book stopped selling the first","jobId":"prevent-double-oversell"},{"id":"cedar-hall-banquet","title":"The kitchen cooked the BEO, not the pad","jobId":"banquet-guarantee-without-ghost-covers"},{"id":"mill-row-cutoff","title":"The block released on the hour","jobId":"group-cutoff-without-wash"},{"id":"pine-lock-lost","title":"Night audit found the laptop without calling three people","jobId":"lost-and-found-without-liability"},{"id":"oat-house-breakfast","title":"Breakfast stopped using last Sunday","jobId":"breakfast-count-without-waste"},{"id":"harbor-house-sale-file","title":"The sale file was the product","jobId":"ops-ready-for-sale"},{"id":"harborview-pip-phasing","title":"The PIP stopped closing two floors in July","jobId":"pip-planning"},{"id":"courtyard-affiliation-math","title":"Net room contribution beat the headline royalty pitch","jobId":"brand-vs-independent"},{"id":"redstone-debt-sizing","title":"Debt sized on stressed DSCR survived the rate cap quote","jobId":"hotel-financing-for-acquisition"},{"id":"marina-lease-paper","title":"The ground-lease reset and operator subordination were priced before LOI","jobId":"ground-lease-and-management-review"},{"id":"ash-true-up","title":"The cutoff was signed","jobId":"working-capital-true-up-without-fight"},{"id":"ridge-pca","title":"The roof had a year","jobId":"pca-without-hidden-capex"},{"id":"quay-day-one","title":"Day one had a desk","jobId":"close-transition-without-day-one-hole"},{"id":"glasswater-outcome-packet","title":"The packet was not a policy","jobId":"buy-verified-outcome-cover"}]}