Connect TimeZest
TimeZest is appointment scheduling built for MSPs. Instead of the back-and-forth of "when are you free?", your technician triggers a TimeZest request from a ticket and the customer receives a link…
Written By Christopher Scaminaci
Last updated 6 days ago
TimeZest is appointment scheduling built for MSPs. Instead of the back-and-forth of "when are you free?", your technician triggers a TimeZest request from a ticket and the customer receives a link showing only the times a suitable engineer is genuinely available. The customer picks one, and the appointment lands in the engineer's calendar and back on the ticket. StackJack talks to TimeZest through the TimeZest public API.
Connecting TimeZest to StackJack gives your AI assistant a small, focused family of timezest_ MCP tools — MCP (Model Context Protocol) tools are the standardized commands an AI assistant can call through StackJack. With them, your AI can:
- See who can be scheduled — your TimeZest agents, your teams, and the combined list of everything schedulable
- See what can be booked — the appointment types you have defined, each with its duration and the workflow it runs
- Track bookings in flight — scheduling requests and their status, including whether the customer has been emailed yet, whether they have chosen a time, and which time they chose
- Book an appointment (on Pro plans) — create a scheduling request, optionally tied to the ticket it came from
TimeZest's API is genuinely small: seven operations in total. It is deliberately read-heavy, and the one thing it can change is creating a booking.
How StackJack authenticates to TimeZest
TimeZest uses a single API key. A TimeZest administrator creates it and StackJack sends it on every request as a bearer credential. There is no client ID, no sign-in redirect, and nothing to refresh. TimeZest keys do not expire on their own — they stay valid until someone deletes them in TimeZest.
The one choice that matters is read-only versus read/write. TimeZest offers both kinds of key, and the difference decides whether your AI can actually book anything:
- A read-only key can do everything on the list above except the last item. Your AI can look up agents, teams, appointment types and the status of existing bookings, but attempting to create a booking is refused.
- A read/write key can do all of it, including creating a scheduling request.
If you plan to let your AI book appointments, create a read/write key. This is worth getting right the first time, because TimeZest's refusal message does not mention key type — so a read-only key looks like a broken connection rather than a permissions choice. If booking fails while every other TimeZest tool works, the key is read-only.
TimeZest is a global service with one address (https://api.timezest.com/v1) — there are no regional endpoints, so there is no region to choose.
Before you begin
- In StackJack: you need a role that can manage connectors (tenant Owner, a co-owner, or an Administrator).
- In TimeZest: you need administrator access, which is what TimeZest requires to create an API key.
Step 1 — Create an API key in TimeZest
- Sign in to TimeZest as an administrator.
- Go to Settings → API Keys.
- Create a new key. Give it a name that identifies StackJack.
- Choose read/write if you want your AI to be able to book appointments, or read-only if you want it to look but never contact a customer.
- Copy the key and store it securely — treat it like a password. Anyone holding it can read your TimeZest configuration, and with a read/write key, contact your customers.
Step 2 — Add the connector in StackJack
- In StackJack, open Connectors.
- Find the TimeZest card and select Configure.
- Paste your key into API Key. There is no URL to enter — the TimeZest address is fixed.
- Save, then use Test Connection to confirm StackJack can reach TimeZest.
A successful test means the key is valid. Note that the test does not tell you whether the key is read/write, because it deliberately uses a read that both kinds of key can perform. If it used a booking to test the connection, every test would email one of your customers.
What your AI can do, by plan
Booking an appointment contacts your customer
Creating a scheduling request is the only TimeZest action that changes anything, and it is the one to understand before you turn it on.
It emails the end user. That is the point of the product: TimeZest sends the customer a link to choose a time. Once sent, it cannot be unsent, and the TimeZest API offers no way to cancel or delete a scheduling request — cancelling happens in TimeZest itself or by talking to the customer. For that reason StackJack treats booking as a sensitive action: it requires the Pro tier and is marked destructive. Whether your AI application asks you to confirm before it runs depends on that application's own settings — see Destructive tools and confirmation. Review those settings before you grant the booking tool.
Your AI must also choose explicitly whether to send. When it creates a request it has to state the trigger mode: one mode runs the normal workflow that emails the customer, and the other creates the request without firing that workflow. StackJack never fills this in on your AI's behalf and there is no default, so a customer is never emailed because the setting was left out. The AI still chooses the mode, so say which one you want when you ask for a booking.
Bookings can be tied to the ticket they came from. TimeZest can associate an appointment with a ConnectWise, Autotask, Halo or ServiceNow ticket, company or contact. If you also have one of those PSAs connected to StackJack, your AI can read a ticket through that connector and book against it here, so the appointment lands where your technicians already work.
Reading the results
Every list your AI reads comes back newest-first, twenty at a time, and TimeZest does not offer a way to ask for larger pages. To see more, your AI follows the cursor TimeZest supplies with each page. It can also filter a list — for example, agents whose name matches a string, or scheduling requests for a particular customer email — and if it writes a filter TimeZest cannot understand, TimeZest replies with a message naming the problem so your AI can correct it and try again.
Scheduling request status is the field to watch when you want to know what happened to a booking:
Troubleshooting
"Booking is refused, but everything else works." Your key is read-only. Create a read/write key in TimeZest under Settings → API Keys and re-enter it in StackJack. Nothing else needs changing, and your existing key is not faulty — it simply cannot write.
"Every TimeZest tool has stopped working." The key is wrong or was deleted in TimeZest. TimeZest keys do not expire on their own, so a key that used to work has almost certainly been removed. Create a new one and paste it into the connector.
"TimeZest says we are making too many requests." TimeZest allows 180 requests a minute, counted across your whole TimeZest account rather than per key. Any other integration using the same TimeZest account draws on the same allowance, so this can happen even when StackJack has been quiet. Wait a minute and retry. Creating a second API key will not help, because the limit is not per key.
"A filter was rejected." TimeZest checks filter expressions and replies with a message naming the exact problem. Filters take the form attribute~OPERATOR~value — tildes, not spaces — and the attribute must be prefixed with the kind of thing you are filtering. A valid example is agent.name~LIKE~john, not name LIKE john. The operators are EQ, NOT_EQ, GT, GTE, LT, LTE, LIKE, NOT_LIKE, IN and NOT_IN; LIKE is a case-insensitive substring match.
Full tool list
See the generated TimeZest tool reference for the current inventory, plan assignment, input schemas, and destructive-action labels.
TimeZest tools
timezest_ · 7 tools · Free 6 · Pro 1
Directory
Scheduling
More in Connector guides
Connect Acronis Cyber Protect CloudConnect Action1Connect AddigyConnect AlertOpsStill need help? Ask the team