30 days free. No credit card. Full access from the moment you connect your site.

Start free trial

Update Contact Form

contact-form-7/update-form is the broad edit: title, locale, form template, either mail template, validation messages or additional settings, in any combination. Properties you omit are left exactly as they are.

The trap is inside the properties you do send. This replaces a whole property rather than merging into it — so a mail object carrying only a new subject drops the recipient, the body and everything else that was there.

At a glance

Abilitycontact-form-7/update-form
ToolsetContact Form 7 — toolset/contact-form-7
GroupContact Form 7 › Forms
RequiresContact Form 7, active on the site
Capabilitymanage_options, plus edit_contact_forms
SafetyWrites data
RepeatableIdempotent — running it twice leaves the same result
Ships inAcrossAI Abilities Manager 0.0.34 and later

Read before you write

Run contact-form-7/get-form first and build each property from what comes back. That is not a style preference; it is the difference between changing a subject line and emptying a mail template.

For narrower edits there are better tools. contact-form-7/update-mail merges into a mail template instead of replacing it, and the field abilities change one tag without touching the rest of the markup.

The response names which properties actually changed, and re-runs Contact Form 7’s validator so a newly broken form is visible in the same call.

Input

NameTypeRequiredWhat it is
form_idintegerYesForm post ID, as returned by contact-form-7/list-forms.
titlestringNoNew form title.
localestringNoNew locale.
formstringNoReplacement form template markup.
mailobjectNoReplacement notification mail template — the whole object.
mail_2objectNoReplacement autoresponder template — the whole object.
messagesobjectNoReplacement validation messages.
additional_settingsstringNoReplacement additional-settings block.

What comes back

NameTypeWhat it is
formobjectThe form after the write.
updatedarrayWhich properties actually changed.
config_errorsarrayWhat the validator says about the form now.
successbooleanWhether the call completed.
messagestringA one-line summary of what happened, suitable for showing a human.
error_codestringPresent only on failure — a stable machine-readable reason, such as a missing field, a wrong field type or an unmet confirmation.

Example

Ask your assistant:

Rename form 42 to “Partnership enquiries” and leave everything else alone.

It resolves to one call:

{
  "ability": "contact-form-7/update-form",
  "parameters": {
    "form_id": 42,
    "title": "Partnership enquiries"
  }
}

Worth knowing

  • Idempotent — sending the same properties twice leaves the same form.
  • Whole-property replacement, not merge. This is the single most common way to lose a mail template.
  • For a field-shaped change use contact-form-7/add-form-field, update-form-field or remove-form-field instead.
  • Check config_errors in the response rather than assuming a successful save means a working form.

Related abilities


Get the plugins:
AcrossAI Abilities Manager · AcrossAI MCP Manager

Browse the rest: Every ability, by category


Keep reading