Migrating from Intercom
Import your entire Intercom Help Center — collections, sections, articles, and images — into Ticket0 with a few clicks.
The Intercom importer copies your Help Center into Ticket0's own help center structure. It is designed for one-time setup and for re-syncing after you have made changes in Intercom.
What gets imported
The importer maps Intercom's structure to Ticket0's three-level help center:
- Collections — top-level categories from Intercom.
- Sections — subsections inside a collection.
- Articles — only published articles are imported. Drafts are skipped.
- Images — article images are downloaded and re-hosted on Ticket0's infrastructure.
What does not get imported
- Draft articles.
- Translations and multi-language content (only the article's default locale is imported).
- View stats, chat conversations, and Intercom custom blocks.
- Author attribution — imported articles have no owner. Set attribution in the collection editor after import.
Before you start
You need an Intercom Personal Access Token with read access to your Help Center:
- In Intercom, go to Settings → Developers → Developer Hub.
- Create a New app or use an existing one.
- Generate a Personal Access Token.
- Make sure the token has scopes to read Help Center content.
Run the import
- In Ticket0, open Settings → Help Center.
- Switch to the Import tab.
- Paste your Intercom token and click Preview migration.
- Review the counts: collections, sections, published articles, estimated images, and expected duration.
- Click Start migration.
The importer shows live progress and polls until the job finishes. You can leave the page and return — it resumes the same run.
Re-running the import
The importer is idempotent: every collection, section, and article is keyed by its Intercom ID. Re-running the import updates existing Ticket0 content in place instead of creating duplicates.
- Existing slugs and publish state are preserved.
- If any imported articles have been edited in Ticket0 since the last run, you must confirm that you want to overwrite them.
Image handling
Images are downloaded from Intercom article HTML, validated, and uploaded to Ticket0's file store. Identical images are deduplicated by content hash, so two articles sharing the same image only create one stored object.
Images larger than 5 MB or with an unknown content type are skipped with a warning; the article still imports and keeps its original image URL.
Internal links
Links between imported Intercom articles are rewritten to Ticket0 slugs (/help/a/<slug>) in a second pass after all articles exist. Links to articles that were not imported — for example, drafts or articles in another workspace — are left as-is and recorded as unresolved-link warnings.
Common failures and recovery
| Symptom | Cause | Recovery |
|---|---|---|
| "Intercom rejected the token" | Token is invalid or missing Help Center read access. | Create a new token with the correct scopes and retry. |
| Individual article failures | Bad HTML, missing image, or transient network error. | Fix the article in Intercom and re-run the import. |
| Unresolved internal links | Linked article was a draft or was skipped. | Publish the article in Intercom and re-run. |
| Images missing | Image download failed or file too large. | Re-host the image elsewhere and update the article, or fix the URL in Intercom and re-run. |
Limitations
- Imported articles land unpublished. Use Publish all imported articles when you are ready to make them public.
- Basic HTML tables are preserved for display fidelity, but the built-in editor's StarterKit has no table node — editing such an article may flatten the table.
- Only the default locale title and body are imported; translated content is ignored.
Security
Your Intercom token is encrypted before it leaves the browser, stored encrypted in the job queue, and scrubbed from the job the instant the run ends (success, failure, or cancel). The job result is retained for 24 hours so the UI can show status, then removed automatically.