Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Joinways Public API, 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%2Fjoinways.app%2Fjoinways" | 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%2Fjoinways.app%2Fjoinways" | 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 Joinways Public API.
Triage inbound leads by status or source, then convert a lead into an event at a venue, link it to an existing event, or merge it into a duplicate
Move an event through its pipeline with a status or stage_id change, recording a loss_reason or cancellation_reason when it falls through
Build a quote for an event, add and reorder quote items, change its status, duplicate it, and download it as a PDF
Check a venue's availability and booking conflicts for a date range and block dates with a closure
GET STARTED
Fill in an event's banquet event order with setup, catering, and dietary notes and download the BEO as a PDF
Send an email about an event and list the emails already linked to it
Subscribe a webhook target_url to event_types so changes in the workspace reach your own system
Patterns agents use Joinways Public API for, with concrete tasks.
★ Agent Lead Triage and Conversion via Jentic
An AI agent working a venue's inbox lists unread leads, checks the requested dates against venue availability and booking conflicts, and converts the good ones into events with a venue_id, start_date, and end_date. Through Jentic the agent discovers each operation by intent and calls it with the workspace token, so a sales coordinator reviews converted events instead of re-keying inquiries.
List leads with is_read false, check venue availability for each lead's requested date, and convert the first available lead into an event at venue_id with its start_date and end_date
Quote Building for Event Proposals
Once an event exists, the sales team creates a quote tied to its event_id with a title and currency, adds catalog-based quote items with quantity and unit_price, and reorders them for presentation. The quote moves through statuses, can be duplicated for a variant proposal, and downloads as a PDF in the client's locale.
Create a quote for event_id with title 'Spring offsite proposal' in EUR, add a room hire item and a catering item with quantity and unit_price, then download the quote PDF
Event Operations and the BEO
Operations staff keep each confirmed event ready for the day: they assign space slots per day, replace the staff and day-of contact lists, add tasks, and fill in the banquet event order with setup_type, catering_notes, and dietary_notes. The BEO then downloads as a PDF for the floor team.
Update the BEO for event id with setup_type, catering_notes, and dietary_notes, create a task 'Confirm AV setup' due the day before, and download the BEO PDF
Venue Calendar Control
Venue managers set opening hours, block dates for maintenance with a closure that carries startDate, endDate, and a reason, and import public holidays for a country and year. Before confirming a booking, an agent checks the conflicts endpoint for the requested spaces and dates.
Add a closure for venueId from 2026-12-24 to 2026-12-26 with reason 'Holiday closure', then list conflicts for those dates to see which events need moving
93 endpoints — the joinways public api reads and updates the sales and operations data of an event venue workspace: inbound leads, events and their pipeline stages, quotes and quote items, companies, contacts, venues, catalog items, and tasks.
METHOD
PATH
DESCRIPTION
/leads
List leads
/leads/{id}/convert
Convert a lead into an event
/events
Create an event
/events/{id}/status
Change an event status
/quotes
Create a quote
/venues/{venueId}/availability
Get venue availability
/events/{id}/beo
Update event BEO fields
/webhooks
Create a webhook subscription
/leads
List leads
/leads/{id}/convert
Convert a lead into an event
/events
Create an event
/events/{id}/status
Change an event status
/quotes
Create a quote
/venues/{venueId}/availability
Get venue availability
/events/{id}/beo
Update event BEO fields
/webhooks
Create a webhook subscription
What agents get from Jentic-routed access to this vendor.
Setup
Wiring Joinways by hand means choosing between a workspace API key and an OAuth 2.1 PKCE flow with a resource parameter, rotating refresh tokens, and handling its stacked per-IP and per-workspace rate limits. Through Jentic you install once, import Joinways from the API Directory, store the token once, and your agent calls it.
Permission scoping
Joinways puts the record id in the URL path (/events/{id}, /quotes/{id}, /venues/{venueId}), so a rule can pin your agent to one event, quote, or venue and the operations you pick. You choose the operations it may call, so destructive ones like deleting an event or a contact are not included unless you add them.
Credential isolation
Your Joinways token is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
Intent-based discovery
Agents search Jentic by intent such as 'convert a lead into an event' or 'check venue availability', and Jentic returns the matching Joinways operation with its input schema so the agent calls the right endpoint without browsing the reference docs.
Alternatives and complements available in the Jentic catalogue.
Specific to using Joinways Public API through Jentic.
What authentication does the Joinways Public API use?
The Joinways Public API declares two schemes in its OpenAPI spec: an HTTP bearer token, which can be a workspace API key prefixed jw_ created under Settings, Developers, API keys, and OAuth 2.1 authorization code with PKCE, whose access tokens are prefixed jw_oat_ and carry the mcp.read and mcp.write scopes. Either goes in the Authorization: Bearer header and is bound to a single workspace. Through Jentic the token is stored encrypted by your own Jentic One instance and injected at call time.
Is there a Joinways MCP server?
Yes - Joinways offers an official MCP server at mcp.joinways.app. You can also connect the Joinways Public API directly through Jentic: your agent gets the full 93-endpoint surface from the spec without loading another server's tool definitions into its context, your credential is injected at call time by your self-hosted instance instead of living in an MCP config, and your rules decide which operations the agent may call.
Can I limit what my agent is allowed to do with the Joinways Public API?
Yes. For example, write a rule that allows only the lead list, lead read, venue availability read, and lead convert operations, so an intake agent can triage inquiries and turn them into events but cannot delete events, contacts, or quotes. Because the event id sits in the path, you can also hold an operations agent to /events/{id} for one event, and every call it makes is logged.
Can I check venue availability before booking with the Joinways Public API?
Yes. GET /venues/{venueId}/availability takes from, to, and optional space_ids, and GET /venues/{venueId}/conflicts lists booking conflicts for a start_date and end_date. Closures added through the closures endpoint block dates on the venue calendar.
What are the rate limits for the Joinways Public API?
Per the Joinways OpenAPI spec, limits stack: 300 requests per minute per IP before authentication, 600 requests per minute and 100,000 per day per workspace on the Pro plan, 200 per minute and 5,000 per day on the free trial, and 20 per minute per workspace for sending event emails. Responses carry X-RateLimit headers, and a 429 tells you to wait for Retry-After seconds.
How do I convert a lead into an event with the Joinways Public API through Jentic?
Search Jentic for an intent like 'convert a venue inquiry into an event', import Joinways from the API Directory, and store your workspace token once. Your agent then calls POST /leads/{id}/convert with the venue_id, start_date, and end_date, and reads the new event back with GET /events/{id}. To run it on your own infrastructure, install Jentic One from its GitHub repo.
For Agents
Work an event venue's sales pipeline in Joinways: triage and convert leads, move events through stages, build and send quotes, check venue availability, and update the BEO. Includes contacts, companies, tasks, analytics, and webhooks.
Use for: I need to convert this wedding inquiry into an event at our main venue, List all unread leads from this week, Check whether the ballroom is free on the 14th of June, Create a quote for the Acme offsite and add the catering items
Not supported: Does not handle ticket sales, payment collection, or guest registration. Use for running an event venue's leads, events, quotes, and venue calendar only.
The Joinways Public API reads and updates the sales and operations data of an event venue workspace: inbound leads, events and their pipeline stages, quotes and quote items, companies, contacts, venues, catalog items, and tasks. A lead can be converted into an event, linked to an existing one, or merged into a duplicate, and an event carries its days, space slots, staff, day-of contacts, notes, emails, and banquet event order (BEO), which downloads as a PDF. Venue operations cover availability, opening hours, closures, booking conflicts, and public holiday import, and the analytics endpoints report on inquiries, commercial results, accounting, and responsiveness.
This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.
Base layer of spec validity and structural soundness.
Aggregated quality score from linter diagnostics, weighted by severity.
Percentage of `$ref` references that resolve successfully.
Checks whether the API description parses successfully and conforms to its declared specification (e.g., OpenAPI).
Structural correctness score based on schema issues using logarithmic dampening.
Clarity, completeness, and ingestion readiness for developers and tooling.
How richly the API is illustrated with examples.
Percentage of examples that conform to their schemas.
Percentage of operations with complete response definitions (success, client error, server error).
Health of API ingestion, bundling, and resolution within Jentic pipelines.
Semantic breadth, depth, and agent comprehension for AI systems.
Coverage of descriptions across API elements.
Coverage of RFC 9457 Problem Details for error responses.
Coverage, uniqueness, and casing consistency of operationIds for AI inference.
Coverage of summaries across operations/tags/info.
Functional utility, complexity comfort, and AI orchestration readiness.
Agent comfort level based on API operational and structural complexity.
Trust, risk posture, and security compliance.
Average quality of security schemes based on authentication method strength (weakest link for OAuth2).
Findability, semantic richness, and reasoning readiness.
Clarity and depth of descriptions across API elements.
Score it yourself
Every API in the directory is allowlisted, so you can re-score it with no key required.
npx @jentic/api-scorecard-cli score <openapi-url>