name and
attributions.
attributions is the plan’s whole membership, not an addition to it:
whoever the list leaves out is taken off the plan, which needs the delete
permission on plans. Read the plan with
get_plan first and send back every
membership to keep. Omitting the argument leaves the membership untouched, so
a rename alone is safe; passing an empty list clears the plan. Re-sending the
current membership changes nothing, so the same call can be sent twice. An
archived plan can be renamed but takes no attribution change. Every row is
checked before anything is written.
Only what actually changed comes back in attribution_changes, each row
saying whether it was created, moved, or removed.
On the live environment, a membership change refreshes the statements of every
user it affects in the background. A call that changes nothing, or a call on a
sandbox plan, triggers no refresh.
Every write to the live environment is recorded in the audit trail as the Qobra MCP agent; writes to a sandbox are not audited.
Parameters
Body
Body
string
required
Id of the plan, as list_plans returns it. The plan decides the environment,
so there is no sandbox_id.
string
New display name; a blank name is refused.
object[]
The plan’s complete membership: one row per continuous stretch for each user
or group on it, rows of one user or group not overlapping. It replaces the
current membership: whoever is left out is removed. Omit it to leave the
membership alone; an empty list clears it.