- CategoryBookings
- AuthRefresh token
Overview
Setmore connects on /integrations in the dashboard. Click the Setmore card and the 'Connect Setmore' modal opens with a single password-type field, Refresh Token, and the placeholder 'Paste your Setmore refresh token'. Setmore does not use a sign-in redirect like Square; instead, you request a refresh token from [email protected] (API access required) and paste it in. On save MessageMind calls /integration/setmore/preview to prove the token and list the services on the account, then opens the services picker so you can choose which services the AI agent is allowed to manage. Later edits reopen the picker through /integration/setmore/settings-preview and persist through /integration/setmore/update-meetings. Only eligible free services with valid duration and staff are offered for selection.
What MessageMind can do with it
- Validate the Setmore refresh token at connect time by calling /integration/setmore/preview, which lists the services on the connected Setmore account.
- Let the AI check availability and book, reschedule, or cancel appointments on the services you selected, from inside a chat.
- Narrow the AI to a chosen subset of Setmore services; non-selected services are not offered.
- Reopen the services picker through /integration/setmore/settings-preview so you can change which services the AI may manage without reconnecting.
- Match an existing Setmore customer by email before creating a new one, so appointment history stays on one card.
Requirements
- A Setmore account with API access and a valid Refresh Token.
- At least one selected service with a valid name, key, positive duration and a numeric cost of zero, plus an available staff member.
How to connect
- Email [email protected] from the address on your Setmore account, state your name and briefly describe your use case, and ask for a refresh token. Setmore replies with the token directly, usually within 1 to 3 business days.
- In the MessageMind dashboard, open /integrations and click the Setmore card. The 'Connect Setmore' modal opens with the description 'Paste your Setmore refresh token to connect. Setmore doesn't use a sign-in redirect like Square, instead, you request a refresh token from [email protected] (API access required). Once connected, you'll choose which services your AI agent can manage.'
- Paste the refresh token into the Refresh Token field (placeholder 'Paste your Setmore refresh token').
- Click to connect. MessageMind calls POST /integration/setmore/preview with the token; it exchanges the refresh token for an access token behind the scenes and returns the services on the account. If none are found the toast reads 'No services found on your Setmore account.' and the flow stops. If the request fails for any other reason the toast reads 'Failed to fetch Setmore services.'
- The services picker opens with the live list. Tick the services the AI should manage and save; MessageMind persists the selection and the refresh token on your tenant.
- To change the selection later, reopen the Setmore card. MessageMind calls /integration/setmore/settings-preview to re-list the services and shows the picker again; saving routes through /integration/setmore/update-meetings.
Authentication and permissions
- Mechanism
- Setmore refresh token issued by Setmore support ([email protected]) and exchanged on the server for a short-lived access token on every session. There is no OAuth redirect: the user pastes the long-lived refresh token directly into the Connect Setmore modal.
- Credentials
- The refresh token, stored on your MessageMind tenant and sent to Setmore to mint access tokens on demand. No bring-your-own client id or secret, and no sign-in redirect.
Available data and actions
Reads
- Available services and staff.
- Live slots for a selected service and staff member.
- Customer lookup by email and the appointment details needed for booking changes.
Writes
- A customer record when no existing email match is found.
- A new appointment for the selected service, staff member, date and time.
- Rescheduling or cancellation of an existing appointment.
AI agent use cases
- Let a customer book a specific Setmore service from a WhatsApp, Instagram or SMS thread, with the AI only offering the services you ticked in the picker.
- Keep internal services out of the AI's reach by leaving them unticked; only ticked services are offered in chat.
- Match an existing Setmore customer by the chat's email before opening a new one, so repeat appointments stay on the same record.
- Reopen the Setmore card to re-list services after you add a new service in Setmore, then tick it to let the AI start booking it.
Configuration
- The services picker keeps only the service ids you explicitly tick. If you later untick a service, the AI stops offering it after the next save.
- The services preview is cached per user after /integration/setmore/settings-preview returns; reopening the card uses the cache until a save or an explicit refresh invalidates it.
- A refresh token that Setmore has revoked (common after a plan change or a support-issued rotation) surfaces as 'Your saved Setmore credentials are no longer valid. Please reconnect.' The card drops back to the Refresh Token field so a fresh token can be pasted.
- Select at least one eligible free service before saving; an empty service selection is rejected.
Example workflows
First-time connect and services selection
- On /integrations, click the Setmore card to open the 'Connect Setmore' modal.
- Paste the refresh token Setmore support sent you into the Refresh Token field and submit.
- MessageMind calls /integration/setmore/preview with the token; it exchanges the token for an access token and returns the services on the account.
- The services picker opens with the live list. Tick the services the AI should manage and save.
- The AI can now check availability on, and book, any of the ticked services. Non-ticked services are not visible to the AI.
AI books a Setmore appointment from chat
- The customer asks for an appointment on a service in the chat thread.
- The AI picks a ticked Setmore service that matches the request.
- MessageMind pulls live availability from Setmore for that service.
- The AI proposes a slot; the customer confirms.
- MessageMind matches the chat email to an existing Setmore customer or creates a new one, writes the appointment to Setmore and confirms it in the same thread.
Change which services the AI may manage
- Reopen the Setmore card on /integrations.
- MessageMind calls /integration/setmore/settings-preview and shows the services picker with the live list and your current ticks.
- Tick or untick services and save; MessageMind calls /integration/setmore/update-meetings to persist the new selection.
- The AI starts honouring the new selection on the next booking attempt.
Limitations
- API access and a valid Refresh Token are required. The current selection supports free services and does not collect payments or deposits.
- Availability may change between the check and the appointment request. A refused booking needs another availability check.
- The connector does not expose a daily catalogue polling setting or a configurable 60-day lookahead. Keep your saved service selection current.
- Appointment requests use the account time zone; do not assume automatic conversion from another time zone.
Troubleshooting
Submitting the refresh token surfaces the toast 'No services found on your Setmore account.' and the flow stops.
The preview call succeeded but Setmore returned an empty service list. Create at least one active service in Setmore, then reopen the card and submit the token again.
Submitting the refresh token surfaces the toast 'Failed to fetch Setmore services.'
/integration/setmore/preview could not complete. The most common cause is a mistyped or truncated token; copy the token straight from the Setmore email and paste it whole. If it still fails, confirm the Setmore account is on Pro and reply to [email protected] to re-issue the token.
Reopening the Setmore card shows the toast 'Your saved Setmore credentials are no longer valid. Please reconnect.'
Setmore revoked the refresh token (common after a plan change or a support-issued rotation). Email [email protected] for a new refresh token and paste it back into the Refresh Token field.
Reopening the Setmore card shows the toast 'Failed to load Setmore settings.'
/integration/setmore/settings-preview was refused for a reason other than an invalid credential. Close the card and retry; if the problem persists, request a fresh refresh token from [email protected] and reconnect.
The AI never offers a service you created in Setmore after connecting.
The services picker is a snapshot taken at the last open. Reopen the Setmore card so /integration/setmore/settings-preview re-lists services, tick the new one, and save; the AI starts offering it on the next booking attempt.
Disconnect and reconnect
- On /integrations, open the Setmore card and choose Disconnect. The stored refresh token and services selection are removed from your tenant, the cached preview is dropped, and the AI immediately stops booking on Setmore.
- Appointments already written in Setmore stay on the business's calendar; disconnecting does not cancel them.
- To reconnect later, request a fresh refresh token from [email protected] if you no longer have the previous one, click the Setmore card again, paste the token into the Refresh Token field, and pick services in the picker. Previous selections are not auto-restored.