> ## Documentation Index
> Fetch the complete documentation index at: https://docs.haloagents.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Redirects

> Send old help center URLs to their new articles with real 301s: imported Intercom links, renamed articles, and your own rules.

## What redirects do

A redirect sends a visitor (and a search engine) who opens an old address to where the content lives now, with a real `301 Moved Permanently` (or a `302`). Use them to keep links working after you move to Halo, rename an article, or retire a page.

Manage them at **Help Center > Settings > Redirects**.

Redirects apply wherever your help center is served: every verified custom domain and the default `/hc/{slug}` address. They start working once the help center is **live**. A new or changed redirect can take up to a minute to apply.

## Where redirects come from

| Source | How it's created |
| - | - |
| **Import** | Each imported article and collection remembers the page it came from. Halo redirects that old path to the article or collection here. New imports add these automatically; for an earlier import, click **Generate from import**. (An Intercom API import that ran before redirects existed kept its articles' URLs but not its collections': run that import again to add the collection redirects.) |
| **Renamed article** | Changing the slug (or language) of an article that has been published adds a redirect from its old address. |
| **Added by hand** | Fill in **Old path**, **Goes to** and the type, then **Add redirect**. |
| **CSV** | **Import CSV** adds many at once. |

A redirect that points at an article or collection follows it: rename the article again and the old address still lands on it. Deleting the article or collection removes its redirects. A redirect to an article that isn't published is paused (shown as **Not published**) until you publish it, so visitors are never sent to a page that doesn't exist. A redirect to a company-specific article is paused too (shown as **Company-specific**): that article's address is shown only to visitors who can open it, and a redirect would show it to anyone who has the old link. Redirects to public and sign-in-required articles work as usual.

## Old Intercom URLs

After an Intercom import, links such as `/en/articles/10340439-install-the-pixel` redirect to the article's Halo address. Halo matches Intercom links by the article id, so the same article in another language (`/fr/articles/10340439-...`) or with an older title in the URL redirects too. Collection links (`/en/collections/...`) work the same way.

This covers links on a domain that points at Halo, such as your own `help.yourcompany.com`. Links on `intercom.help/your-workspace/...` are served by Intercom, so Halo never sees them. For those, use **Export CSV** and load the list wherever that host's redirects are managed, or update the links at their source.

## Adding a redirect

* **Old path**: the path on your help center, for example `/en/articles/123-old-title`. You can paste a full URL; only its path is kept. Matching ignores letter case, a trailing slash and the query string.
* **Goes to**: a path on this help center (`/articles/new-title`, `/billing`) or a full `https://` URL. When the path is an existing article or collection, the redirect is tied to it and follows later renames.
* **Type**: `301 Permanent` for content that moved for good, `302 Temporary` otherwise.

Halo refuses a redirect that can't work: a path that points at itself, two paths that point at each other, a **Goes to** path with `.` or `..` segments, and an old path that ends in a static-file extension (`.png`, `.jpg`, `.svg`, `.gif`, `.webp`, `.js`, `.css`), because those are served as files and never reach the redirect.

Adding a redirect for a path that already has one replaces it. The help center's own pages (`/search`, `/sitemap.xml`, `/robots.txt`, `/auth/...`) and its home page can't be redirected. A visitor's query string (for example campaign parameters) is carried over to the new address.

A redirect you add always wins for its exact path, even if a published article lives there. A redirect Halo created from a rename steps aside if you later publish a different article at that old address.

## Importing a CSV

One redirect per row: old path, new path or URL, and optionally `301` or `302` (default `301`). A header row is optional.

```csv theme={null}
from,to,status
/en/articles/123-old-title,/articles/new-title,301
/pricing-faq,https://example.com/pricing,302
```

Rows that can't be used are listed with their row number and the reason; the rest are imported. A file holds up to 5,000 rows, and a help center keeps up to 10,000 redirects.

## Exporting

**Export CSV** downloads every redirect with five columns: `from`, `to`, `status` (the import format, so the file can be imported again), plus `old_url` (the full original URL, when the redirect came from an import) and `new_url` (the full address it resolves to today, on your custom domain when you have one). Use `old_url` and `new_url` to recreate the redirects on a host Halo doesn't serve.

## Hits

Each row shows how many times the redirect has been served. Browsers remember a redirect for a few minutes, so repeat visits from the same browser aren't all counted.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.