Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the FareHarbor Integration Center, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Ffareharbor.com%2Ffareharbor" | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Ffareharbor.com%2Ffareharbor" | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with FareHarbor Integration Center API.
List companies and look up a company by shortname
List bookable items and read item details for a company
Read availabilities and per-availability lodging slots
Update check-in status for an availability
List affiliate, agent, and desk records on an account
GET STARTED
Read users and crew members on a company
Inspect cancellation policies, custom fields, and roles configured on the account
Patterns agents use FareHarbor Integration Center API for, with concrete tasks.
★ Tour Operator Catalog Sync
An OTA needs the list of bookable items, their availabilities, and the lodging slots attached to each availability for a FareHarbor-powered operator. The flow chains GET /companies/<shortname>/items/, GET /companies/<shortname>/availabilities/<availability.pk>/, and GET /companies/<shortname>/availabilities/<availability.pk>/lodgings/. Designed to feed a third-party booking front-end with up-to-date inventory.
Call GET /companies/<shortname>/items/, then for each item GET its availabilities and lodgings, and emit the combined inventory payload to the OTA.
Day-Of Check-In Update
A guide app updates check-in status for guests as they arrive for a tour. The PUT /companies/<shortname>/checkin/ endpoint accepts the check-in payload and the GET /companies/<company-shortname>/checkin-statuses/ endpoint exposes the status taxonomy for the account. Suited to mobile companion apps used by tour operators on the day of activity.
Read /companies/<shortname>/checkin-statuses/, then PUT the chosen status for each guest to /companies/<shortname>/checkin/ as they arrive at the meeting point.
Affiliate Operations Reporting
A reseller team reads affiliate, agent, and desk records on a FareHarbor account to produce a weekly commissions report. The /companies/<affiliate-shortname>/agents/ and /desks/ endpoints expose the affiliate configuration, and the broader items and availabilities endpoints provide the bookable inventory those affiliates resell. Built for affiliate managers running periodic reporting jobs.
Call GET /companies/<affiliate-shortname>/agents/ and GET /companies/<affiliate-shortname>/desks/, join the results with the items list, and produce the affiliate commissions report.
AI Agent Reservation Assistant
An AI agent embedded in an operator's back office uses Jentic to look up upcoming availabilities, find lodgings attached to them, and update check-in status. Jentic exposes the 28 FareHarbor operations with their schemas and the company-shortname URL pattern, so the agent can answer 'who is checked in for tomorrow's morning tour' without reading the integration guide.
Call jentic.search with 'list FareHarbor availabilities for tomorrow', execute the matching GET availabilities operation, and return the list with current check-in status counts.
28 endpoints — jentic publishes the only available openapi specification for fareharbor integration center, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/companies/<company-shortname>/
Read a company by shortname
/companies/<shortname>/items/
List bookable items for a company
/companies/<shortname>/availabilities/<availability.pk>/
Read a single availability
/companies/<shortname>/availabilities/<availability.pk>/lodgings/
List lodgings attached to an availability
/companies/<shortname>/checkin/
Update check-in status for an availability
/companies/<shortname>/users/
List users on a company
/companies/<company-shortname>/
Read a company by shortname
/companies/<shortname>/items/
List bookable items for a company
/companies/<shortname>/availabilities/<availability.pk>/
Read a single availability
/companies/<shortname>/availabilities/<availability.pk>/lodgings/
List lodgings attached to an availability
/companies/<shortname>/checkin/
Update check-in status for an availability
/companies/<shortname>/users/
List users on a company
What agents get from Jentic-routed access to this vendor.
Setup
Wiring the FareHarbor Integration Center by hand means passing App and User key headers on every call, threading the company shortname and availability primary key through each URL, and choosing between the production and demo hosts yourself. Through Jentic you install once, import FareHarbor from the API Directory, store the App and User keys once, and your agent calls it.
Permission scoping
FareHarbor puts the company shortname and availability id in the URL path (/companies/{shortname}/availabilities/{availability.pk}/...), so a rule can pin your agent to one company account. You choose the operations it may call, so a write like updating check-in status is not included unless you add it, and read-only item and availability lookups can stand on their own.
Credential isolation
Your FareHarbor App and User key headers are stored once, encrypted, by your own Jentic One instance and injected at execution time. They never enter the agent's prompt, logs, or context.
Intent-based discovery
Agents search Jentic by intent such as 'list FareHarbor items' or 'update a check-in status', and Jentic returns the matching FareHarbor operation with its company-shortname-aware path and input schema so the agent calls the right endpoint without learning the URL pattern.
Alternatives and complements available in the Jentic catalogue.
Stripe
Payment processor that collects against FareHarbor bookings
Use Stripe to settle the customer payment for a booking taken through the FareHarbor inventory and check-in flow.
Specific to using FareHarbor Integration Center API through Jentic.
Why is there no official OpenAPI spec for FareHarbor Integration Center?
FareHarbor does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call FareHarbor Integration Center via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.
What authentication does the FareHarbor API use?
The OpenAPI spec does not declare a security scheme. FareHarbor's external API requires an X-FareHarbor-API-App and X-FareHarbor-API-User header pair issued via FareHarbor's Integration Center - through Jentic these are held in the vault and attached at execution time.
Can I update check-in status with the FareHarbor API?
Yes. PUT to /companies/<shortname>/checkin/ with the availability and guest details. Read /companies/<company-shortname>/checkin-statuses/ first to discover the valid status values configured on the company.
What are the rate limits for the FareHarbor API?
Numeric rate limits are not declared in the spec. FareHarbor's external API enforces per-account throttling and recommends sequential pulls per company shortname, particularly for the availabilities and lodgings endpoints which can return large payloads.
How do I list bookable items through Jentic?
Run pip install jentic, call jentic.search with 'list FareHarbor items', and execute the returned GET /companies/<shortname>/items/ operation with the company's shortname. The auth headers are replayed from the vault.
What is the company shortname in every URL?
Every FareHarbor account is keyed by a shortname that appears in the URL path on every account-scoped endpoint. The shortname is set during onboarding and is used as the routing identifier across companies, items, availabilities, and check-in operations.
Can I limit what my agent is allowed to do with the FareHarbor Integration Center API?
Yes. Because you run Jentic One yourself, your own rules decide which FareHarbor operations and credentials the agent can use. Since every path carries the company shortname and availability id (/companies/{shortname}/availabilities/{availability.pk}/...), you can pin the agent to a single company account, and you choose the operations it may call. That means a write like PUT /companies/{shortname}/checkin/ is not included unless you add it, while read-only lookups such as GET /companies/{shortname}/items/ and the availabilities endpoints can stand on their own.
Know of an official OpenAPI document? Contribute it →
For Agents
Read companies, items, availabilities, and bookings on a FareHarbor reservation account, and run check-in updates against availabilities. Useful for tours and activities operations.
Use for: I need to list bookable items for a tour operator, Get availabilities for an item on a date range, Update check-in status for an availability, Retrieve all users assigned to a company shortname
Not supported: Does not handle payment processing, marketing campaigns, or general e-commerce catalog management - use for tours and activities reservation operations on a FareHarbor account only.
Jentic publishes the only available OpenAPI specification for FareHarbor Integration Center, keeping it validated and agent-ready. FareHarbor is a tours and activities reservation platform, and its external API exposes 28 endpoints for companies, items, availabilities, bookings, lodgings, affiliates, and crew across the company-shortname-scoped URL pattern. The surface is built around the operator's day-to-day reservation workflow rather than a general-purpose e-commerce API.