Skip to main content
A link can be corrected after it exists — but not everything about it can move, because copies of its address are already out in the world.

From the console

On https://app.utmkit.co/links, Edit opens the editor for one link and Delete withdraws it. Owners, admins and members can do both; viewers cannot.

What can change

  • The destination. A new destination goes through the same safety check as a new link before it is saved.
  • The iOS and Android destinations. Add, change or clear them — see deep links.
  • The UTM parameters. A parameter locked for your seat is offered as a choice of approved values instead of a free text box.
  • The expiry date — see expiry dates.
  • The note and the tags — see tags and saved views.
  • The campaign. Tick one or more links in the list and use the Campaign menu. This changes where the link is grouped and nothing else: its own utm_campaign stays as it is, so clicks already counted under that value stay where they are.

What never changes: the short code and the domain

The editor says it plainly: the short code and the domain stay as they are; everything already shared keeps working. Together they are the address printed on your posters and pasted into your emails, and moving either would break every copy already handed out. There is no disabled field for them, because the answer is not “not now” but “not ever”. For a different address, create a new link.

Every edit is checked again

An edit is validated against the workspace’s convention like a new link, and refused if it would make the link a duplicate — the same destination and the same five UTM values as one the workspace already has; the refusal names that link. The edge copy is then updated on the path a new link takes, and the row reads Not live yet until confirmed. Delete asks you to confirm — it stops resolving for everyone who has it — then removes the link from the edge and from your list, its click totals with it. Anything already printed with that code stops working the moment you confirm, and it cannot be undone: a withdrawn link is created again, not restored. A visitor who opens the old address afterwards is sent nowhere. On the shared domain they see UTMKit’s own page; on your own domain, a plain “Not found”. Destinations that already have links are re-checked daily, as many as each day allows. If one becomes listed as malware or phishing, its link is taken off the edge without waiting for you. It stays in your list with a Withdrawn badge and the reason under it — Withdrawn: that destination is listed as … and cannot be shortened — so you know what happened and which destination to dispute.

From the API and the MCP

PATCH /api/v1/links/{id} edits a link and DELETE /api/v1/links/{id} withdraws it; the MCP tools are update_link and withdraw_link. All four require links:write. A PATCH carries only the fields that change, and a body naming short_code or domain is refused in the console’s own words rather than silently ignored; the iOS and Android destinations are edited through the API operation, not the MCP tool. The reference owns the fields.