Manage redirects
ps_manage_redirects
Sends visitors and Google from an old or broken address to the right page, for example after you found it in the missing pages report.
Free TellMyShop Audit: No. This tool is only in the paid version of TellMyShop. The free TellMyShop Audit has only tools that read your store.
Ask Claude
„People keep landing on the old solar lamps page. Send them to the new Solar lamps category.”
Example preview
New redirect 301: /lampy-solarne-12 -> /garden-lighting/solar-lamps. The old address now returns 404 (38 hits in 30 days). Target page responds 200. No conflicting redirect.
Technical details
Redirects from old or broken addresses of this shop. action=add creates up to 100 redirects per call: source address and target, given as an address or as target_type (product, category, cms page) with target_id; code 301 (permanent, default) or 302 (temporary). action=disable and action=enable switch redirects off or on by redirect_ids. There is no delete: a redirect is undone through the change history (ps_revert_change). The preview accepts only a source that currently returns 404 or 410 and a target that returns 200 on the shop's own domain, and it blocks redirect chains and loops. Then confirm=true with change_token. Typical use: fix addresses from the 404 report (ps_get_404_report). Redirects stay after the module is uninstalled unless the owner unticks "keep". Product redirects on switching a product off stay in ps_set_product_redirect; URL changes in ps_change_url.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| action | enum: add | disable | enable | yes | add | disable | enable. There is no delete: undo through the change history. |
| items | array of object | when: action=add | add: redirects to create, max 100 per call. Fields of each item: source (string, max 1024 characters): old address in this shop; target (string, max 2048 characters): target address, or instead target_type (enum: product | category | cms) with target_id (integer); code (enum: 301 | 302): default 301. |
| redirect_ids | array of integer | when: action=disable or enable | disable / enable: redirect IDs from ps_list_redirects, max 100. |
| confirm | boolean | no | false (default) returns a preview and saves nothing. true executes, only after the user approved the preview, together with change_token. |
| change_token | string | when: confirm=true | Token from the preview. Required with confirm=true. Valid 30 minutes, single use, bound to the previewed arguments and data state. |
Limits
Needs a licence: not in the Audit edition, hidden in read-only mode. Max 100 redirects per add and 100 IDs per disable or enable. Source max 1024 characters, target max 2048. Source must return 404 or 410 and target 200 on the shop's domain; no chains or loops. No delete; undo with ps_revert_change.
What you see before anything is saved
Claude first calls the tool without confirming it. The module returns a preview (current and new values) and a single-use token valid for 30 minutes. Claude shows you the preview and saves the change only after your yes.
Related tools
- List redirects ps_list_redirects
- 404 report ps_get_404_report
- Inspect a store page ps_inspect_page
- Revert change ps_revert_change
Use cases with this tool
- Turn 'page not found' errors into a plan for old addresses
- Send visitors from any old address to the right new page
Last updated: 2026-10-05