Documentation Index
Fetch the complete documentation index at: https://docs.routiq.ai/llms.txt
Use this file to discover all available pages before exploring further.
Why this matters. PracSuite (by Smartsoft) is the practice
management system trusted by larger AU and UK allied-health clinics
with multi-location operations. Routiq’s PracSuite integration is
built directly against the official v1 REST API and uses the
approved partner credentials, so your clinic’s connection is fully
supported by Smartsoft.
What Robyn can do with PracSuite
- Read patients — recognise returning callers by phone, look up history, capture new-patient records
- Read availability — pulled from per-practitioner appointment-type configurations across all your locations
- Book, reschedule, cancel — Robyn writes appointments straight into PracSuite
- Read practitioners and businesses — for routing decisions and per-practitioner escalations
- Read appointment history — server-side filterable for fast lookups (
q[]=...) - Multi-location aware — designed for clinics with multiple businesses under one PracSuite account
How auth works
PracSuite uses a two-key model that’s different from most other PMSes:| Header | What it is | Who provides it |
|---|---|---|
x-api-key | Vendor key — identifies Routiq as an approved Smartsoft integration partner | Routiq (already configured) |
a-api-key | Account key — identifies your clinic and authorises access to your data | You generate this in PracSuite |
Before you start
You’ll need:- Administrator access to your PracSuite account
- The locations and practitioners Robyn should book into
Setup
Generate a PracSuite account API key
- Log into PracSuite as an administrator
- Go to Settings → API (your menu may differ slightly by PracSuite version)
- Click Create API Key
- Name it
Routiq Integration - Copy the key — store it somewhere safe immediately
Connect in Routiq
- In Routiq: Setup → Connect PracSuite (or Settings → Integrations → PracSuite)
- Paste your account API key
- Confirm your practice timezone (used for converting appointment times — PracSuite returns most timestamps in UTC, except
app_timewhich is in tenant-local time) - Click Connect and Sync
Wait for the initial sync
Sync time depends on database size:
PracSuite paginates at 50 records per page (max 200). Sync respects rate limits and uses server-side filtering (
| Practice size | Estimated time |
|---|---|
| < 500 patients | 2–3 minutes |
| 500–2,000 patients | 7–12 minutes |
| 2,000–5,000 patients | 15–25 minutes |
| > 5,000 patients | 25–40 minutes |
q[]) where possible to minimise API calls.Verify the connection
Once sync completes:
- Go to Patients in Routiq — your PracSuite patient list should appear
- Check that locations and practitioners match
- Try a test booking from the Test Robyn screen
PracSuite is connected. Robyn can now book, reschedule, and identify patients across all your PracSuite locations.
What gets synced
Patient data
client_id, name, email, phone, DOB, gender, address, statusAppointment data
Appointment ID,
app_time (clinic timezone), practitioner, business, appointment type, status, durationPractice data
All businesses (locations) under your account, practitioners, appointment types, schedules
Filtering
Server-side
q[] filters — fast lookups by phone, DOB, last-modified, date rangeSync schedule
- Initial sync on connect — full pull of patients, appointments (last 24 months), practitioners, businesses, appointment types
- Incremental sync every 15 minutes — uses
last_modifiedfiltering to fetch only changed records - Daily reconciliation sync at 02:00 in your practice timezone — full re-sync to catch anything incremental missed
Rate limits and quotas
PracSuite enforces both a per-second rate limit and a daily quota, applied per vendor key (Routiq’s). Routiq stays well under both by:- Caching availability lookups for short windows
- Using
last_modifiedfiltering for incremental sync - Using
q[]server-side filtering instead of client-side pagination scans
Troubleshooting
'Invalid API key' or 401 Unauthorized
'Invalid API key' or 401 Unauthorized
403 Forbidden on a specific business or practitioner
403 Forbidden on a specific business or practitioner
Your account API key may not have access to that business. Some PracSuite accounts scope keys per business — check the key’s scope in PracSuite settings.
Appointments showing in the wrong timezone
Appointments showing in the wrong timezone
PracSuite returns most timestamps in UTC, except
app_time which is in your clinic’s tenant-level timezone. Check that the timezone configured in Routiq matches the timezone in your PracSuite account settings.429 Too Many Requests during sync
429 Too Many Requests during sync
Rare — Routiq is rate-limit-aware. If you see this, the daily quota may be temporarily exhausted (e.g. after a bulk import). Wait until the quota resets (next day) or contact us to request a quota increase.
Bookings aren't appearing in PracSuite
Bookings aren't appearing in PracSuite
Verify the practitioner and appointment type exist on the location Robyn is booking into. If you’ve recently added a new business or practitioner, trigger a manual sync (Settings → Integrations → PracSuite → Sync Now) so Robyn picks up the new records.
Managing the integration
Rotating the account key
- Generate a new key in PracSuite
- In Routiq: Settings → Integrations → PracSuite → Update API Key
- Paste, save
- Revoke the old key in PracSuite
Disconnecting
Settings → Integrations → PracSuite → Disconnect. Patient data is retained for 30 days post-disconnect for compliance and recovery, then deleted.Manual resync
Settings → Integrations → PracSuite → Sync Now — useful after a bulk import or reconciling a large data change.Next
Set up the calls channel
Forward your clinic line to Robyn and start handling calls.
Turn on lapsed-patient reactivation
Bring dormant PracSuite patients back with multi-touch sequences.