Syncro
Works with: Syncro (all plans that include the REST API). What SafeHanded does in Syncro: private comments on every step · a customer-visible comment for link delivery · close-to-purge · request from a ticket (deep link).
Before you start
Section titled “Before you start”- A Syncro admin who can create an API token, and a SafeHanded Owner/Admin on the Team plan or above.
- About ten minutes.
1. Connect
Section titled “1. Connect”- In Syncro, open the user menu → Profile/Password → API Tokens → New Token. On the Custom Permissions tab enable Tickets – List/Search, Tickets – View Details and Tickets – Edit (Edit is what lets the token post ticket comments), plus Customers – List/Search and Customers – View Detail. Copy the token. (Syncro API)
- In SafeHanded: Settings → Integrations, choose Connect and pick
Syncro. Give the connection a name, enter your Syncro URL (e.g.
https://yourcompany.syncromsp.com) and paste the token as the API key, then click Connect and test.
2. Close detection
Section titled “2. Close detection”Nothing to set up. SafeHanded polls Syncro for status changes, so resolving or closing a ticket purges its credential on the next poll. SafeHanded re-reads the ticket via the API before anything is purged — see how ticketing works.
3. Request from a ticket (deep link)
Section titled “3. Request from a ticket (deep link)”Syncro won’t put the ticket number into a link to another site, so a request can’t open already linked to a Syncro ticket. Use a browser bookmark instead; SafeHanded’s ticket picker then finds the Syncro ticket.
- In your browser, bookmark the link below, for example as New SafeHanded request.
- On a Syncro ticket, click the bookmark, then search for the ticket in the New request window’s ticket picker and pick it.
https://safehanded.com/app/requests/newTo copy this link, open Settings → Integrations, select your Syncro integration and go to its Activity tab.
Alternatively, add a ticket custom field of type URL that points at the same link. The technician who opens it is the requester (when they are a SafeHanded member with a key).
Choosing a preset (optional). A preset is a saved request — the reason, how long the credential is kept, who receives it and how the link is sent. To start from one, add ?preset= and the preset’s slug to the end of the link, for example ?preset=password-reset. Each preset’s slug is shown, with a copy button, under Settings → Request presets. With no preset in the link, SafeHanded uses the client’s default preset, then the organisation default (Settings → Policy → Default preset for new requests), and otherwise the policy defaults.
Syncro automations can’t send an outbound web request, so Syncro can’t create a request without someone clicking the link.
4. Status mapping
Section titled “4. Status mapping”The default map covers Syncro’s stock statuses — New / In Progress / Customer Reply / Scheduled → open; Waiting on Customer / Waiting for Parts → pending; Resolved and Invoiced → resolved. Syncro has no stock Closed status, but it’s a common custom one, so a status named Closed maps to closed. Other custom statuses show as unknown (never purge) until mapped under Status mapping on the integration’s Configuration tab. With the default resolved or closed trigger, a Resolved or Invoiced ticket purges its credential.
5. What technicians see
Section titled “5. What technicians see”- Private comments (hidden from the customer, email suppressed): created · submitted · (optionally) revealed · destroyed · expired · revoked · rotation recommended.
- Public comment (if the preset delivers in-ticket): the secure link and a one-line explanation — never the challenge code.
Troubleshooting
Section titled “Troubleshooting”| Symptom | Cause / fix |
|---|---|
| Test connection fails | Check the Syncro URL (no trailing path) and that the token has Tickets permission. |
| Mine filter shows everyone’s tickets | Syncro’s API can’t filter tickets by the acting technician through a shared token — search by ticket number or subject instead. |
| “Unknown status” on the card | Map the status; note Invoiced is a stock terminal status (purges); Closed is not stock but is already mapped. |