App

TripWorks integrations

Connect TripWorks to any other app, or use it from your AI client over MCP. TripWorks is a booking platform for tour operators, built from the ground up to help you market, promote, grow, manage, and operate your business successfully.

Connects with an API keytripworks.com

What the catalog holds today. Ask for anything missing and your agent reads the API documentation and adds it.

Build solutions, not workarounds.

What do you want to automate with TripWorks?

Ask the assistant

You'll sign in before anything runs. What you typed comes with you.

Connect your AI client

Give your AI client this address.

https://mcp.apiant.ai

One connection does both: ask your client to act in an app once, or have it build an automation that keeps running. Any client that takes a remote MCP server. Nothing to install. Create your free account, then sign in once in your browser.

Set it up in your client
Claude Code

Run this in the directory you want to work in.

claude mcp add --transport http -s project apiant-ai https://mcp.apiant.ai

Start Claude Code there, approve the server, and sign in in the browser page it opens.

Claude Code guide (opens in a new tab)
Claude, web and desktop

Open Customize, then Connectors, then Add custom connector, and paste the address. On Team and Enterprise an owner adds it first.

Setup guide (opens in a new tab)
Cursor

Add the address to your MCP configuration as a server URL. Cursor signs you in in your browser.

Setup guide (opens in a new tab)
Zed

Open Settings, then AI, then MCP Servers, then Add Server, then Add Remote Server.

Setup guide (opens in a new tab)
Codex and the ChatGPT desktop app

Open Settings, then MCP servers, then Add server, and choose Streamable HTTP. From the terminal, Codex takes the address with its own add command and then signs you in.

Setup guide (opens in a new tab)
Grok

Open grok.com/connectors, choose New Connector, then Custom, and paste the address. Grok signs you in in your browser.

Setup guide (opens in a new tab)
Any other MCP client

Paste the address where the client asks for a remote MCP server URL, and name the server apiant-ai where it lets you. APIANT's skills reach the client over the same connection.

Setup guide (opens in a new tab)

Pair it

Connect TripWorks with another app

What your agent can do with TripWorks

Triggers and actions 7 triggers · 164 actions

  • Trigger
    Customer Created

    Triggers when a new customer is added in TripWorks.

  • Trigger
    Customer Updated

    Triggers when a customer is added or any of the customer's details change.

  • Trigger
    Payment Created

    Triggers when a payment is recorded on a trip.

  • Trigger
    Trip Created

    Triggers when a new trip is booked.

  • Trigger
    Trip Reserved

    Triggers when a trip reaches the reserved status.

  • Trigger
    Trip Updated

    Triggers when a trip is booked or any of its details change.

  • Trigger
    Waiver Signed

    Triggers when a guest signs a waiver.

  • Action
    Activate Gift Card

    Makes a gift card active and sets its expiry from your account's gift card expiration policy: a date that many years ahead, or no expiry if the account does not expire gift cards. The balance is not changed, and the activation is recorded in the card's transaction history.

  • Action
    Add Experience Waiver Config

    Attaches a waiver type to this experience as its next waiver, after the ones already there. Send `waiver_type_id`, the waiver type's internal numeric id. Returns 201 with the new waiver config. An experience can have at most 3 waiver configs and each waiver type can appear once.

  • Action
    Assign Custom Field to Experience

    Asks a custom field on this experience, at the end of its order. Assigning a field that is already assigned changes nothing.

  • Action
    Cancel Experience Timeslots

    Cancels timeslots and the trip orders booked on them. Choose what to cancel with exactly one of:

  • Action
    Clear Callbot Schedule Override

    Ends the schedule override in force, if any, so the schedule decides again. Clearing when none is in force succeeds and changes nothing. Returns the callbot.

  • Action
    Clear Resource Blackout Window

    Makes the resources available again for a window: blackouts inside it are deleted, one that spans it is split in two, and one that overlaps an edge is trimmed. Send `resource_ids` (at most 100, else 422 `too_many_resource_ids`), `start_time` and `end_time`; `note` is optional and recorded as the rea

  • Action
    Clone Widget

    Creates a copy of a widget, the same way the Clone button in the widget builder does. The copy has the same type, selection, experiences, defaults and configuration (including custom CSS), its name is the original's name followed by " (Copy)", and it gets its own widget id; usage figures and past wi

  • Action
    Create Experience Timeslot Config

    Creates a schedule and queues the generation of its timeslots for every activity in `experience_ids`. Replies 202 with `config_id`, `queued_experience_cnt`, `request_id` and `timeslot_cnt` (how many timeslots will be created in total), and a `Location` header pointing at the schedule.

  • Action
    Delete Booking

    Removes the booking from its trip order, exactly as removing a guest in the back office does. Send no body. Removing the last booking on a trip order cancels the trip order (`trip_order_cancelled` true), except on an e-commerce cart that is still a draft, where the whole trip order is deleted instea

  • Action
    Delete Callbot

    Permanently deletes a callbot, releases its phone number and removes it from the voice provider. Returns 424 `agent_teardown_failed` and keeps the callbot when the provider could not be cleaned up.

  • Action
    Delete Callbot Pronunciation

    Removes a word from the list and updates every callbot with the voice provider in the background.

  • Action
    Delete Customer

    Permanently deletes a customer. Blocked with 409 `in_use`, which includes the counts of what still references the customer, while the customer has bookings, trips, waivers, credit cards or CRM messages. To combine duplicate customers, use Merge instead of deleting.

  • Action
    Delete Custom Field

    Permanently deletes a custom field. Blocked (409) while it has answers on any trip or booking, or is assigned to an experience; the response says how many. Fields that depended on it become always shown.

  • Action
    Delete Custom Field Value

    Permanently deletes an answer. The custom field and the trip or booking are untouched.

  • Action
    Delete Experience

    Permanently deletes an experience. Blocked (409) if it still has bookings, so cancel or move those bookings first.

  • Action
    Delete Experience Customer Type

    Permanently deletes a customer type and its channel mappings. Blocked with 409 `default_type_not_removable` while it is the default, and 409 `type_has_bookings` once any booking uses it; hide it with `is_visible: false` instead.

  • Action
    Delete Experience Timeslot

    Permanently deletes a timeslot. Blocked with 409 `delete_blocked_has_bookings` while it has bookings: cancel it instead.

  • Action
    Delete Experience Waiver Config

    Removes a waiver config from this experience. Removing the last one turns off the experience's waiver requirement; see the warning on this resource.

  • Action
    Delete Gift Card

    Permanently deletes a gift card. Refused while the card's trip is locked.

  • Action
    Delete Knowledge Base

    Permanently deletes a knowledge base, its stored content, and its copy at the voice/chat provider.

  • Action
    Delete Location

    Permanently deletes a location. Blocked with 409 `last_location` if this is the account's only location, or 409 `in_use` if an experience, trip, trip order, card reader or shipment still uses it; the error's `dependencies` object gives those counts. Set `is_live` to false to archive a location inste

  • Action
    Delete Multiple Experience Timeslots

    Permanently deletes many timeslots, chosen with `ids` or `filters` exactly as for updating many. A timeslot that has bookings is skipped and counted in `blocked_cnt`; cancel it instead. `dry_run: true` returns `would_apply_cnt` and `blocked_cnt` and deletes nothing. More than 1,000 timeslots is refu

  • Action
    Delete Promo Code

    Permanently deletes a promo code. Blocked with 409 `redeemed`, where `uses` is the number of redemptions, if the code has already been redeemed on an order. To stop such a code being used, set its `promo_code_status_id` to inactive instead.

  • Action
    Delete Reseller

    Permanently deletes a reseller. Blocked (409 `in_use`, with the trip and invoice counts) while any trip or invoice still references the reseller; notes and cards on file are not counted.

  • Action
    Delete Resource

    Permanently deletes a resource along with its blackouts, past and future. Blocked (409) while a real booking is assigned to it. `blackout_removed_cnt` says how many blackouts went with it.

  • Action
    Delete Resource Usage

    Removes a usage: the guest is no longer assigned to the resource.

  • Action
    Delete Restriction

    Permanently deletes a restriction. Every experience requires a restriction, so one that experiences still use is refused with 409 `requires_merge` unless you also send `merge_target_id`; the error's `uses` gives the number of experiences affected. Send `merge_target_id` in the request body, the id o

  • Action
    Delete Review

    Permanently deletes a review. This cannot be undone and the review is not archived; any booking it was linked to is left unchanged.

  • Action
    Delete Trip Note

    Permanently deletes a trip note.

  • Action
    Delete Trip Source

    Permanently deletes a trip source. A built-in source cannot be deleted (409 `read_only`). If trips still use the source, the request is blocked (409 `requires_merge`, with the number of trips in `uses`) unless the body includes `merge_target_id`, the public id of another trip source: those trips are

  • Action
    Delete Waiver Type

    Permanently deletes a waiver type. Blocked (409 `in_use_delete`) if it has been signed, is used by an activity or is required on a booking; archive it instead. The error includes `dependencies` with the signed, activity and booking counts.

  • Action
    Delete Widget

    Deletes a widget. The widget disappears from the list and stops loading on your website (its embed code returns not found); its past widget events are kept and still report the widget's name. This cannot be undone through the API, so to switch a widget off temporarily set `is_active` to `false` inst

  • Action
    Get Audit Log

    Returns one audit log entry by id, with every field change or event detail it contains.

  • Action
    Get Availability Insights

    Returns how each timeslot is selling, with a summary over the selection. The overview above explains every field. Requires the `availability.read` scope; add `reports.read` for the revenue fields.

  • Action
    Get Booking

    Returns a single booking by id, including `booking_status_id`, the price breakdown (see Money), `customer_id`, `trip_order_id`, `resources` (each assignment with resource name and type, start and end time, duration and note), `custom_fields` and `a

  • Action
    Get Booking Check-in QR Code

    The QR code to print on, or show with, this guest's ticket, as a PNG data URI you can put in an `img` tag, plus the address it encodes (`check_in_url`). Scanning it opens that address, which needs a signed-in user of this account; the address identifies the guest by this id, never by name, so it wor

  • Action
    Get Callbot

    Returns a single callbot by id with its weekly hours, its knowledge base and team member ids, and any schedule override in force.

  • Action
    Get Callbot Pronunciation

    Returns a single pronunciation by id.

  • Action
    Get Country

    Returns a single country by its `id` — the same public id other resources return as `country_id`.

  • Action
    Get Country by Code

    Returns a single country by its two-letter ISO 3166-1 alpha-2 code (case-insensitive). Responds 404 when the code is not supported.

  • Action
    Get Customer

    Returns a single customer by id.

  • Action
    Get Custom Field

    Returns a single custom field by id, with its dropdown `options`, the `experience_ids` it is asked on and any dependency on another field.

  • Action
    Get Custom Field Value

    Returns a single custom field answer by id.

  • Action
    Get Experience

    Returns a single experience by id, with its ticket types and images.

  • Action
    Get Experience Customer Type

    Returns one customer type of this experience. Returns 404 `mismatched_experience` when it belongs to a different experience.

  • Action
    Get Experience Timeslot

    Returns one timeslot by id, including the ids of its assigned guides and its ticket types with their booked, held and availability counts (`customer_types`, the same name the activity uses for its ticket types; not part of the list). An id that matches no timeslot returns 404.

  • Action
    Get Experience Timeslot Config

    Returns one schedule by id, with `generation`: for each activity, `state` (`idle`, `running` or `failed`) and `failed_at`. An id that matches no schedule returns 404.

  • Action
    Get Gift Card

    Returns a single gift card by id, with its balance, status and recipient.

  • Action
    Get Knowledge Base

    Returns a single knowledge base by id, including its text content for a `text` knowledge base.

  • Action
    Get Knowledge Base Citation

    Returns a single knowledge base lookup by id.

  • Action
    Get Location

    Returns one location by id. An id that matches no location returns 404.

  • Action
    Get Manifest

    Returns the guest roster for a day or a range of up to 31 days, in departure order. The overview above explains how an entry is organised, the filters and how to check guests in. Requires both the `manifest.read` and `bookings.read` scopes.

  • Action
    Get Payment Detail Report

    One row per successful payment in the date range, with the trip it was taken against. Amounts are integers in cents.

  • Action
    Get Payout Detail Report

    One row per transaction inside each payout in the date range, with the payout it was paid out in and the trip's confirmation code. Columns starting `payout.` are the payout's own figures, repeated on every row of that payout, so do not add them up across rows; use Payouts for payout totals. Amounts

  • Action
    Get Payouts Report

    One row per payout, the deposits made to your bank account. `gross_amount` is Charges and `net_amount` is the Deposit Amount. Amounts are integers in the smallest currency unit (cents for USD), and `currency` names it; refunds and fees are negative. Use Payout Detail for the transactions inside each

  • Action
    Get Phone Call

    Returns a single phone call by id, with its transcript and tags.

  • Action
    Get Phone Call Tag

    Returns a single phone call tag by id.

  • Action
    Get Promo Code

    Returns a promo code, including the experiences, ticket types and date windows it applies to.

  • Action
    Get Report Run

    Returns one report run.

  • Action
    Get Reseller

    Returns a single reseller by id.

  • Action
    Get Resource

    Returns a single resource by id.

  • Action
    Get Resource Blackout

    Returns a single blackout by id.

  • Action
    Get Resource Usage

    Returns a single resource usage by id.

  • Action
    Get Restriction

    Returns one restriction by id. An id that matches no restriction returns 404.

  • Action
    Get Review

    Returns a single review by its id, including its derived sentiment fields. Responds 404 for an id that does not exist in your account.

  • Action
    Get Sales Detail Report

    One row per trip in the date range. Amounts are integers in cents.

  • Action
    Get Team Member

    Returns one team member by id, including the permission groups they belong to. An id that matches no visible team member returns 404.

  • Action
    Get Trip

    Returns a single trip by id with its full tree: `trip_orders` (every activity on the trip, including cancelled ones) and each order's `bookings`, fully detailed. Each booking lists its `addons`. A deleted trip (removed by staff, not a cancellation) is still returned; its `trip_status` is `deleted`.

  • Action
    Get Trip Note

    Returns a single trip note by id.

  • Action
    Get Trip Order Detail Report

    One row per booked trip order on a reserved trip in the date range, with its experience and trip. Amounts are integers in cents.

  • Action
    Get Trip Payment

    Returns a single payment or refund by id.

  • Action
    Get Trip Source

    Returns a single trip source by id.

  • Action
    Get Waiver

    Returns a single signed waiver by id, with the same fields as the list.

  • Action
    Get Waiver Document Link

    Returns a link to the signed PDF of this waiver, valid for five minutes. Each call issues a new link and writes an audit log entry naming the key that asked.

  • Action
    Get Waiver Type

    Returns a single waiver type by id, including its waiver text and every signer requirement.

  • Action
    Get Widget

    Returns a single widget by the widget id from its embed code. Responds 404 for an id that does not exist in your account, or belongs to a deleted widget.

  • Action
    Get Widget Funnel

    A conversion funnel over the widget events: how many visitor sessions reached each stage, with the percent of the first stage and of the previous stage. Each stage counts the distinct sessions that fired that event in the period, in any order, so a visitor counts once per stage however many times th

  • Action
    List Audit Log

    Returns audit log entries, newest first, optionally filtered and sorted. The overview above explains what is recorded, how to read an entry and how to filter by record, team member, entry type and date.

  • Action
    List Blackouts of Resource

    Returns the blackouts on one resource: the times it is unavailable, earliest first.

  • Action
    List Booking Products

    Returns the products (extras sold with the ticket, such as a photo package or a rental) on this booking, oldest first. It is a full breakdown of the booking's `products_total`: the `total` of every line adds up to `products_total`, and `total_gross` adds up to `products_total_gross`. Amounts are int

  • Action
    List Booking Resource Usages

    Returns the resource usages on a booking: the resources (boats, vehicles, guides and so on) this guest is assigned to, earliest first.

  • Action
    List Bookings

    Returns a paginated list of bookings, newest first (highest `id` first; ids only ever increase, so this is creation order). Filter by `trip_order_id`, `customer_id`, `booking_status_id`, `experience_customer_type_id` and `booking_waiver_status` (a slug). Only these indexed fields can be filtered, an

  • Action
    List Booking Statuses

    Returns the account's booking statuses in display order. Use an `id` from this list as `booking_status_id` when setting a booking's status or adding a booking. Custom statuses share the slug `user`, so always identify a status by `id`, never by `slug` or `name`.

  • Action
    List Booking Waivers

    Returns the booking's waiver requirements: exactly the entries of the booking's `waivers`, `{waiver_type_id, name, status, has_signed_waiver, waiver_id}`, one for every waiver requirement of its experience, signed or not. `status` is `signed` or `unsigned` (a requirement with no record is `unsigned`

  • Action
    List Callbot Pronunciations

    Returns the account's pronunciation list ordered by word, paginated. Filter by `word` or `say`; `?sort=word` and `?sort=-word` change the order.

  • Action
    List Callbots

    Returns a paginated list of callbots ordered by name, one flat row each without the weekly hours, the knowledge base and team member ids or the schedule override details. Filter by `name`, `is_active`, `voice_id`, `phone_number`, `twilio_number`, `notification_mode`, `hours_mode`, the `can_*` flags,

  • Action
    List Callbot Voices

    Returns the voices a callbot can use: the `id` is the value to send as `voice_id` when creating or updating a callbot. This is a short list returned whole, without pagination or a `meta` block.

  • Action
    List Customers

    Returns customers.

  • Action
    List Custom Fields

    Returns a paginated list of custom fields in the account-wide order. Filter by `custom_field_map` (`trip` or `booking`), `custom_field_type` slug, `visibility`, `is_required`, `internal_name`, `title`, `parent_custom_field_id`, or by ranges on `sort_order`, `min_value`, `max_value` and `created_at`.

  • Action
    List Custom Field Values

    Returns a paginated list of custom field answers, newest first. Filter by `booking_id` for one guest's answers, `trip_id` for one reservation's, or `custom_field_id` for every answer to one field.

  • Action
    List Experience Custom Fields

    Returns the custom fields asked on this experience, in the order guests and staff see them. Guests answer trip fields once per reservation and booking fields once per guest.

  • Action
    List Experiences

    Returns a paginated list of experiences, ordered by name unless you pass `sort`. Filter by name, location, status, capacity type and the other settings listed below.

  • Action
    List Experience Timeslot Configs

    Returns a paginated list of schedules in id order unless you pass `sort`. Filter by `id`, `name`, `start_date` and `end_date`. Generation status is only on a single schedule.

  • Action
    List Experience Timeslots

    Returns a paginated list of timeslots in id order (creation order), optionally filtered and sorted. Each timeslot carries its `guide_ids`. Filter by `id`, `experience_id`, `status`, `start_time`, `is_anytime`, `schedule_id` and the three visibility flags.

  • Action
    List Experience Waiver Configs

    Returns every waiver config attached to this experience in display order, lowest `sort_order` first. The list is not paginated. A config's `waiver_option_overrides` is left out when it has no value.

  • Action
    List Gift Cards

    Returns a paginated list of gift cards, newest first unless you pass `sort`. Filter by status, balance, expiry date, trip, code or style.

  • Action
    List Gift Card Styles

    Returns the gift card styles available to choose from: the value to use for `gift_card_style_id` when creating or updating a gift card. Styles are read-only here; they are managed in the back office.

  • Action
    List Knowledge Base Citations

    Returns a paginated list of knowledge base lookups, optionally filtered and sorted.

  • Action
    List Knowledge Bases

    Returns a paginated list of knowledge bases, optionally filtered and sorted. Text content is only returned when fetching one knowledge base.

  • Action
    List Locations

    Returns a paginated list of locations, ordered by name unless you pass `sort`, optionally filtered and sorted. Filter by `id`, `name`, `is_live` or `country_id`.

  • Action
    List Phone Calls

    Returns phone calls, newest first unless you pass `sort`, optionally filtered and sorted. The overview above explains where calls come from, how to read one and how to filter.

  • Action
    List Phone Call Tags

    Returns phone call tags, optionally filtered. The overview above explains the tag types and how to filter.

  • Action
    List Promo Codes

    Returns a page of promo codes, up to 25, ordered by code unless you pass `sort`. Rows leave out `experiences`, `customerTypes` and `promo_code_dates`; Get one includes them. See Finding promo codes above for filter and sort examples.

  • Action
    List Report Runs

    Returns a paginated list of report runs across all reports, newest first. Filter with `?report_type=sales_detail.1`, `?report_run_status=succeeded|pending|failed` or `?created_at[gte]=`. Sort with `?sort=created_at`.

  • Action
    List Report Types

    Returns every report you can run, with the parameters each one takes and every column it can return.

  • Action
    List Resellers

    Returns a page of resellers, up to 25, ordered by id unless you sort. See Finding resellers above for filter and sort examples.

  • Action
    List Resource Blackouts

    Returns a paginated list of blackouts, earliest first by default. Filter by `resource_id` for one resource, or by `start_time`/`end_time` with `[gte]` and `[lte]`. To find blackouts overlapping a window send `end_time[gte]=<window start>&start_time[lte]=<window end>`. Time filters take any RFC 3339

  • Action
    List Resource Groups

    Returns the resource groups available to choose from: the value to use for `resource_type_id` when creating or updating a resource.

  • Action
    List Resource Icons

    Returns the icons available to choose from: the value to use for `resource_icon` when creating or updating a resource.

  • Action
    List Resources

    Returns a paginated list of resources, ordered by name by default. Filter by `name`, by `resource_type_id` for one group, by `resource_icon` slug, by `pax` range, or by `color`.

  • Action
    List Resource Usages

    Returns a paginated list of resource usages, earliest first by default. Filter by `booking_id` for one guest, by `resource_id` for one resource, or by `start_time`/`end_time` with `[gte]` and `[lte]`. To find usages overlapping a window send `end_time[gte]=<window start>&start_time[lte]=<window end>

  • Action
    List Restrictions

    Returns a paginated list of restrictions, optionally filtered and sorted. The default order applies when `sort` is omitted. Every field can be filtered; the `*_min`, `*_max`, hours and days fields accept `gte` and `lte`, and the names accept `contains` and `begins_with`.

  • Action
    List Reviews

    Returns a paginated list of reviews, newest first by default. Filter by `id` (also `[gte]`/`[lte]`), `rating`, `sentiment_positive`, `sentiment_negative` or `sentiment_neutral` (each also `[gte]`/`[lte]`), `is_approved`, `name` or `location` (also `[contains]`/`[begins_with]`), `overall_comment` or

  • Action
    List Team Members

    Returns a paginated list of team members in the order they were added unless you pass `sort`, optionally filtered and sorted. TripWorks-managed accounts and accounts linked to a reseller or affiliate are never included. The list leaves out `groups`; get one team member to see their permission groups

  • Action
    List Trip Custom Fields

    Returns the trip's own custom fields: `{id, slug, name, type, value, required}` (plus `unit`, `lbs` or `kg`, on Weight fields) for every trip-level custom field asked on any of its activities, in back-office order, answered or not (`value` is null when unanswered). Guest-level fields are on each boo

  • Action
    List Trip Notes

    Returns a paginated list of trip notes, newest first by default. Filter by `trip_id` to get every note on one trip, by `user_avatar_id` for one author, or by `created_at[gte]`/`created_at[lte]` for a time range.

  • Action
    List Trip Payments

    Returns a paginated list of payments and refunds, newest first by default, including those on draft and deleted trips. Filter by `trip_id` to get every payment on one trip, by `payment_status`, `payment_type_id` or `payment_direction_id`, by `created_at[gte]`/`created_at[lte]` for a time range, or b

  • Action
    List Trips

    Returns a paginated list of trips ordered by activity date with the latest first (upcoming trips before past ones), then newest created, one flat row per trip with no `trip_orders` or `bookings`. Filter by `confirmation_code`, `trip_status`, `trip_type`, `customer_id`, `trip_source_id`, `reseller_id

  • Action
    List Trip Sources

    Returns a page of trip sources, up to 25. See Finding trip sources above for filter and sort examples.

  • Action
    List Usages of Resource

    Returns the resource usages on one resource: the guests assigned to it, earliest first.

  • Action
    List Waivers

    Returns a paginated list of signed waivers, newest signed first, one row per signature. Filter by `waiver_type_id`, `customer_id`, `trip_order_id`, `is_waiver_adult`, a date range on `created_at` (`created_at[gte]`, `created_at[lte]`), a date of birth or range on `dob`, text on `first_name`, `last_n

  • Action
    List Waiver Types

    Returns a paginated list of waiver types, ordered by name, optionally filtered and sorted. Every field can be filtered: `name` and `title` with `eq`, `contains` or `begins_with`; `body` and `body_minor` with `contains`; the age limits with `eq`, `gte` or `lte`; the flags and `waiver_type_status` (a

  • Action
    List Widget Logs

    Returns a paginated list of widget events, newest first by default. With no lower bound on `created_at` the list covers the 30 days up to now, or up to `created_at[lte]` when only that is given; pass `created_at[gte]` to look further back. Filter by `id` (an exact match), `created_at` (also `[gte]`/

  • Action
    List Widgets

    Returns a paginated list of widgets, ordered by name. Deleted widgets are never included. Filter by `name` (also `[contains]`/`[begins_with]`), `widget_type`, `selection_type`, `default_view`, `default_language`, `embed_type`, `is_active`, `clicks` or `embeds` (each also `[gte]`/`[lte]`), or `create

  • Action
    Mark Booking Waivers Signed

    Marks every waiver the booking's experience requires as signed, using the same per-requirement step as `.

  • Action
    Mark One Booking Waiver Signed

    Marks a single one of the booking's waiver requirements as signed. The requirement is identified by its `waiver_type_id` from the booking's `waivers`. Send no body. This is a staff override: it records that requirement as signed without a signed waiver document

  • Action
    Merge Customers

    Merges two or more customers into one and permanently deletes the duplicates. Send at least two customer ids in `ids`. TripWorks chooses the destination: the customer with the most complete name, phone and email, and the oldest record if they tie. Blank phone, country, street address, city, state, p

  • Action
    Reload Gift Card

    Adds `amount`, a positive whole number of cents, to both the original and the current balance, and sets the card to `pending` until the paying trip settles. Refused for a deleted or expired card.

  • Action
    Reorder Custom Field

    Moves the field to a position in the account-wide order (0 is first) and shifts the fields in between. A position past the end puts it last. Returns the field with its new `sort_order`.

  • Action
    Reorder Experience Custom Fields

    Sets the order the experience's custom fields are asked in. `custom_field_ids` lists assigned field ids in the order you want; fields you leave out keep their relative order after the listed ones.

  • Action
    Run Analytics Query

    Aggregates over your data: counts, sums, averages, minimums and maximums, optionally over a date range with an automatic comparison to the preceding period, and grouped by a dimension or by time. It also returns the headline business metrics.

  • Action
    Set Booking Status

    Sets the booking's status to any of the account's booking statuses, the same choice the back office offers (for example checked in, no-show, or back to not checked in).

  • Action
    Set Callbot Schedule Override

    Starts a schedule override that beats the schedule, replacing any already in force. `mode` is `answer` (answer every call) or `transfer` (send every call to a person). `duration` is `next_schedule` (until the schedule next changes), `custom` (until `until`, a date and time in the account's timezone,

  • Action
    Set Status for Multiple Bookings

    Sets the status of up to 50 bookings in one call, for example to check in a whole party. Identify the target status by `booking_status_id` or by `status`, the shorthand for a built-in status. Pass `dry_run: true` to see what wo

  • Action
    Sync Callbot

    Queues another attempt at setting the callbot up with the voice provider, for one whose last sync failed or is stuck. Returns immediately with the status the sync is now in (`sync_status`).

  • Action
    Sync Callbot Prompt from Template

    Brings the callbot up to date with the latest TripWorks callbot template at the voice provider. Returns 409 `template_sync_failed` with a plain-language message when the provider rejects it, and `notice` names any knowledge base documents that were dropped to let it through.

  • Action
    Sync Knowledge Base

    Queues a re-sync of the knowledge base to the voice/chat provider. Returns immediately; poll `sync_status` for progress. Blocked (409) for a type that cannot be synced.

  • Action
    Unassign Custom Field from Experience

    Stops asking a custom field on this experience. Answers already given are kept. Returns 404 if the field is not assigned to the experience.

  • Action
    Update Callbot

    Updates a callbot and queues re-syncing it with the voice provider. Only the fields you include are changed; omitted fields are left as they are. The `schedule_override_*` fields cannot be written here: use the set and clear schedule override actions.

  • Action
    Update Callbot Pronunciation

    Changes a word or its respelling and updates every callbot with the voice provider in the background. Only the fields you include are changed.

  • Action
    Update Customer

    Updates a customer and returns it. Only the fields you include are changed; omitted fields are left as they are. Write `sms_paused: false` to let texts go to the customer's number again after the carrier reported it cannot receive them; it is refused (422) for a customer who opted out, which only th

  • Action
    Update Custom Field

    Updates a custom field. Only the fields you include are changed. `custom_field_type` and `custom_field_map` cannot be changed: sending the value the field already has is accepted, anything else is rejected with 422. When you send `options` or `experience_ids` the list you send replaces the current o

  • Action
    Update Custom Field Value

    Changes the answer. `value` is the only field that can be changed; the custom field and the trip or booking are fixed. Send `null` to empty the answer.

  • Action
    Update Experience

    Updates an experience. Only the fields you include are changed; omitted fields are left as they are. The status, ticket types and images cannot be changed here; ticket types are managed at `/rest/experiences/{id}/customer-types`, except which one is the default: set `default_customer_type_id` here.

  • Action
    Update Experience Customer Type

    Changes a customer type. Only the fields you include are changed. `is_default` cannot be written here: set `default_customer_type_id` on the experience to change the default. `null` clears `description`, `pax_fixed`, `pax_min`, `pax_max`, `deposit_amount` and `deposit_percent`. `capacity` is only ac

  • Action
    Update Experience Timeslot

    Updates a timeslot. Only the fields you include are changed, and the change is all or nothing: if any field is refused, none is applied.

  • Action
    Update Experience Waiver Config

    Changes which waiver type a config uses with `waiver_type_id`, who signs it for each ticket type with `waiver_option_overrides`, or both. Only the fields you include are changed. Send `waiver_option_overrides` as `null` to clear the overrides. Each override value must be 1 (Adult), 2 (Minor) or 3 (C

  • Action
    Update Gift Card

    Updates a gift card. Only the fields you include are changed; omitted fields are left as they are. `trip_id` cannot be changed after creation, and the balance and status cannot be written.

  • Action
    Update Knowledge Base

    Updates a knowledge base and queues a re-sync. Only the fields you include are changed — omitted fields are left as-is. The type cannot be changed (409).

  • Action
    Update Location

    Updates a location. Only the fields you include are changed — omitted fields are left as-is.

  • Action
    Update Multiple Experience Timeslots

    Makes the same change to many timeslots: the same fields and the same decisions as updating one. Choose them with `ids`, or with `filters`. Add `dry_run: true` to see what would happe

  • Action
    Update Promo Code

    Updates a promo code and returns it. Only the fields you include are changed; omitted fields are left as they are. The experiences and ticket types of a code cannot be changed: `experience_ids` and `customer_type_ids` are accepted on Create only, and sending them here is rejected with 422 `unknown_f

  • Action
    Update Reseller

    Updates a reseller. Only the fields you include are changed — omitted fields are left as-is. The reseller type is set at creation and cannot be changed: sending `reseller_type_id` is rejected with 422 `unknown_fields`, as is any other field that is not writable (including `collect_type` and `commiss

  • Action
    Update Resource

    Updates a resource. Only the fields you include are changed; omitted fields are left as they are. `resource_type_id` can be null to remove the resource from its group.

  • Action
    Update Resource Blackout

    Changes the note of a blackout; `note` is the only field that can be changed, and null clears it. To change the times, clear the window and create a new blackout.

  • Action
    Update Resource Usage

    Changes a usage in one atomic write. Only the fields you include are changed. `resource_id` moves the guest to another resource, `start_time` and `end_time` or `duration` change the window (without `end_time` or `duration` the length is kept), and `internal_note` sets or clears the staff note. The b

  • Action
    Update Restriction

    Updates a restriction. Only the fields you include are changed; omitted fields are left as they are. The change applies to every experience that uses the restriction.

  • Action
    Update Review

    Partially updates a review. Only the fields you include are changed — omitted fields are left as-is, and an explicit `null` clears nullable fields such as `location` and `experience_id` (comments are cleared and then omitted from responses; `name`, `rating` and `review_type` cannot be cleared). Chan

  • Action
    Update Team Member

    Updates a team member's profile. Only the fields you include are changed. `email` and `cell_phone` are read only, and login passwords and permission-group assignment cannot be changed through the API. A failed validation returns 422 with an `errors` object keyed by field.

  • Action
    Update Trip Note

    Changes the text of a note and marks it as edited. `text` is the only field that can be changed after creation; the trip and author are fixed.

  • Action
    Update Trip Payment

    Changes the note and the details of the payment's own type: `notes` for any payment, `check_number` and `check_date` together for a check, `wire_date` for a wire, `voucher_number` for a voucher. Send `notes` on its own, not with a detail field (refused even as `null` or an empty string); alone, `nul

  • Action
    Update Trip Source

    Updates a trip source and returns it. Only the fields you include are changed; omitted fields are left as they are. On a built-in source, a new `name` is ignored. `is_read_only` and `category_slug` cannot be set: sending either is rejected with 422 `unknown_fields`.

  • Action
    Update Waiver Type

    Updates a waiver type. Only the fields you include are changed; omitted fields are left as-is. Setting `waiver_type_status` to `archived` is refused with 409 `in_use_archive` while an activity uses the waiver type. Sending `waiver_type_status: null` is rejected with 422; the status cannot be cleared

  • Action
    Update Widget

    Partially updates a widget: only the fields you include are changed. Writable fields are `name`, `widget_type`, `selection_type`, `experience_ids` (the full list, as ids from `/rest/experiences`; it replaces the existing list), `default_view`, `default_language`, `embed_type`, `is_active` and `custo

Reviews

What our customers say

Questions

TripWorks, answered

Is there a TripWorks MCP server?

APIANT's MCP server at https://mcp.apiant.ai works with TripWorks. Add that address to any AI client that takes a remote MCP server and sign in once in your browser. Your client can then run TripWorks actions on demand, or have APIANT build, test and run automations that use TripWorks. Nothing to install.

What can start an automation from TripWorks?

Any of TripWorks's 7 triggers in the catalog, including Customer Created, Customer Updated, Payment Created and Trip Created. Describe the moment in plain language and your agent picks the right one.

What can your agent do in TripWorks?

Any of TripWorks's 164 actions, including Create Experience Timeslot Config, Update Callbot, Update Callbot Pronunciation and Update Customer. Your agent maps the data both ways and tests every scenario before it ships.

Can I use TripWorks directly from Claude, ChatGPT or Cursor?

Yes. Connect your AI client to APIANT once and it works with TripWorks two ways. Ask it to do something in TripWorks once and it runs that action on the spot. Ask for an automation and your agent builds it, tests every scenario and keeps it running on its own. A one-off action uses your plan's tasks the same way an automation step does.

Do I need to write code against the TripWorks API?

No. APIANT connects to the TripWorks API for you, with your TripWorks API key. Describe what you want in plain language and your agent builds it on the TripWorks triggers and actions in the catalog. If you need an endpoint that is not there yet, your agent reads the TripWorks API documentation and adds it.

Which apps can TripWorks connect to?

Any app in the catalog; the list on this page pairs TripWorks with each of them. If the other app is missing, point your agent at its API documentation and it builds the connector.

What happens when something fails?

Your agent works that out for you. It plans the failure paths along with the happy path, then tests every scenario before it ships.

Is there a free plan?

Yes. Every plan includes the agent, including free, and building from your own AI client spends no assistant credits.