Use case

How to undo a Salesforce change

Undoing a change means returning a field, object, flow, rule, or permission to how it read before an edit — on purpose and in full, rather than reconstructing it from memory. That is only possible if the previous state was kept somewhere.

2 min
from sandbox connect to first PR
$99
public pricing · 14-day free trial
100%
metadata stays in your repo
Public
pricing — no quote gate

Yesterday’s change is rejecting today’s records

By mid-morning your Slack is three people deep: sales cannot save opportunities. Records that saved fine yesterday are bouncing on a validation rule, and the rule changed yesterday afternoon, in a small edit that looked correct at the time. The org is actively wrong, and every minute it stays wrong is a rep who cannot do their job.

Edit the rule back by hand, under pressure. You read what it says now and try to reconstruct what it said before, while the messages keep coming. Get the reconstruction slightly wrong and you have made a second change on top of a broken one.

Turn the rule off and deal with it later. Fast, and it stops the bleeding, but the check the rule existed to enforce is now gone, and later tends to become never. You have traded a loud problem for a quiet one.

Neither is a discipline failure. You are being asked to put something back exactly as it was, at speed, and nothing in the org kept exactly as it was.

Undo is a stored state, not a good memory

Undo is only ever as good as the record behind it. The reason "put the rule back" is a reconstruction in a normal org is that no version of yesterday was saved. Once every change stores the state immediately before and after it, going back stops being an excavation.

Keeping that record does not require you to work like a developer. Your metadata is text; it can live in version control exactly as code does, and the tool that made the change is the tool that keeps the history. You do not run anything or remember anything. The before is on file whether or not you ever expected to need it.

Recovery is not faster because a model is clever. It is faster because the answer to "what did this look like before" was written down at the time, in a form you can act on.

Who this is for

Anyone who has ever been asked what the org looked like last week and had to guess.

Alone, the history is your memory: you answer with a comparison instead of a hunch, and you undo your own work instead of rebuilding it from what you can recall. On a small team, it is a shared account of who changed what and why, so the person who broke the rule and the person fixing it are reading the same record. With an engineering team nearby, your metadata sits in the same repository and format as their code, so a bad change to the org is recovered the way a bad commit is.

Worth having before you need it

The value of a stored history is invisible right up until something breaks, and then it is the whole game. You cannot decide to keep yesterday’s state this morning; the record has to already exist. That is the case for putting the org in version control before anything goes wrong — not because you expect this change to be the one that breaks something, but because you will not know which one is until it already has.

See the undo work before you need it

Let your metadata land in your repository, make one small change through FlowSprite, then roll it back.

Start free in 2 minutes