[Cotlet](https://cotlet.dev/index.md) · [Integrations](https://cotlet.dev/integrations.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Use cases](https://cotlet.dev/use-cases.md) · [Security](https://cotlet.dev/security.md) · [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md) · [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [Contact](https://cotlet.dev/contact.md) · [Pricing](https://cotlet.dev/pricing.md) · [Sign up](https://cotlet.dev/signup)

# Duplicate a 123FormBuilder form and change its fields

> Copy a 123FormBuilder form, add and reword its fields and get the publish link, steps the API v2 cannot do from code.

Source: https://cotlet.dev/integrations/123formbuilder-api-mcp-server/duplicate-form-and-edit-fields

Every season the same signup form goes out again with a new name and one or two new questions. Each time someone duplicates it, opens the editor and rebuilds the changes by hand.

Cotlet does it in your own 123FormBuilder account with list\_forms, duplicate\_form, get\_form, add\_form\_field, update\_form\_field and get\_publish\_links, called by your AI agent, an n8n workflow or a script.

[Sign up free](https://cotlet.dev/app/signup?app=123formbuilder) [All 123FormBuilder tools](https://cotlet.dev/integrations/123formbuilder-api-mcp-server.md)

Hosted · nothing to install or maintain

## Can 123FormBuilder do this on its own?

API v2 can create a form with a name, set its group and active dates, rename it and delete it, and GET /forms/{form\_id}/fields reads its fields (checked 23 Oct 2026). It has no duplicate call and no call to add or change a field, so a copy with new questions is built in the editor.

## How you do it in 123FormBuilder today

1. In My Forms, open the dotted menu of the form and click Duplicate, which copies the form with all its settings.
2. Click Rename in the same menu, then open the copy in the Form Editor.
3. In the Fields section on the left, click a field type to add it. It lands below the field that is currently selected, not at the end.
4. Select a field and write its text in the Instructions box under Quick setup in the right panel.
5. Go to Publish for the link or the JavaScript embed code.

## How to duplicate a 123FormBuilder form and change its fields

Prompt

```
Duplicate the Spring open day form as Autumn open day, add a Work email field and change the instructions of the Phone field to "Include the country code".
```

1. 01  
### Find the source form  
list\_forms with a search on the name returns the form id. If two forms share the name, the agent asks, because the copy inherits every setting of the one it copies.
2. 02  
### Copy and rename  
duplicate\_form copies the form with its settings and renames the copy in one call. Your agent checks the name against list\_forms first so you do not end up with two forms of the same name.
3. 03  
### Read the fields  
get\_form lists the copy's fields in order. The agent uses it to find the field to select, so the new field lands where you asked.
4. 04  
### Add and reword  
add\_form\_field adds each field by the name it has in the Fields panel. update\_form\_field changes the label or the instructions of an existing one. Both ask for your OK by default, because an embedded form changes as soon as it is saved.
5. 05  
### Hand over the link  
get\_publish\_links returns the link to the form and the embed code, so you can drop the copy into the page that replaces last season's form.

### What you get back

Example data

```
Copied "Spring open day" -> "Autumn open day" (form 5130021)
Added Work email below Email
Phone instructions: "Include the country code"
Link: https://form.123formbuilder.com/5130021/autumn-open-day
Still points to the old form: your open-day page embed
```

### Other ways to ask

- Duplicate the Job application form for each of three offices and rename the copies.
- Show me the fields of the Contact us form and flag those without instructions.
- Add a Date field called Preferred visit date to the Autumn open day form, just above the Message field.

## What 123FormBuilder allows, and what to know first

- Duplicating a form counts as creating another form; editing one does not.
- Deactivated forms count toward the form limit of the plan.
- A form embedded with the JavaScript code updates by itself when you edit the form later.
- The Fields panel groups fields as Essentials, Contact details, Media & Structure, Uploads & Consent, Date & Time, Rating scales and E-Commerce & Calculation.
- A field added while another field is selected is placed below the selected one.

add\_form\_field and update\_form\_field ask for your OK by default. To run it on a schedule without you, switch confirmation off for those tools in your dashboard.

Sources: [Help: Get around the My Forms section](https://www.123formbuilder.com/docs/my-forms/) · [Help: How to use the form editor](https://www.123formbuilder.com/docs/formeditor/) · [Help: How to manage your form fields](https://www.123formbuilder.com/docs/how-to-manage-form-fields/) · [API v2 Forms reference](https://www.123formbuilder.com/developer/api-v2-forms/)

## Call add\_form\_field from a script

curl

```
curl -X POST https://cotlet.dev/api/v1/123formbuilder/forms/5130021/field \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"field_type":"Email","label":"Work email","after_field":"Email"}'
```

Example response

```
{
"form_id": 5130021,
"field": {
"label": "Work email",
"type": "Email",
"required": false
},
"position": 3
}
```

MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is 123formbuilder\_write → add\_form\_field. Example data.

[Schedule it in n8n, Make, Zapier or cron](https://cotlet.dev/integrations/123formbuilder-api-mcp-server.md#automations)

## 123FormBuilder tools this automation uses

__Cotlet 123FormBuilder tools used to duplicate a 123FormBuilder form and change its fields__
| Tool | Parameters |
| ------------------- | ------------------------------------------ |
| list\_forms | search, cursor |
| duplicate\_form | form\_id, name |
| get\_form | form\_id |
| add\_form\_field | form\_id, field\_type, label, after\_field |
| update\_form\_field | form\_id, field, label, instructions |
| get\_publish\_links | form\_id |

[All 14 123FormBuilder tools with descriptions](https://cotlet.dev/integrations/123formbuilder-api-mcp-server.md#tools)

## Frequently asked questions

### Is it safe to connect 123FormBuilder to Cotlet?

Yes. You sign in to 123FormBuilder yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get 123FormBuilder once you enable it, every background request is listed, and the browser profile is stored encrypted with AES-256-GCM, the cipher 1Password uses for its vaults. The AI model never sees a login, posts and messages wait for your OK, and Disable for agents cuts access in one click. Independent scanners grade cotlet.dev A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory; live results are on https://cotlet.dev/security.

## More 123FormBuilder automations

- [Correct a 123FormBuilder submission and resend it](https://cotlet.dev/integrations/123formbuilder-api-mcp-server/correct-a-submission-and-resend.md)
- [Change 123FormBuilder notification recipients on many forms](https://cotlet.dev/integrations/123formbuilder-api-mcp-server/change-notification-recipients.md)
- [123FormBuilder API and MCP server: every tool](https://cotlet.dev/integrations/123formbuilder-api-mcp-server.md)
- [All use cases](https://cotlet.dev/use-cases.md)

## Give your agent access to 123FormBuilder.

Free 7-day trial with 2,000 credits, no card needed. Cotlet is independent and not affiliated with 123FormBuilder.

[Sign up free](https://cotlet.dev/app/signup?app=123formbuilder)

---

Give your AI agents your signed-in browser.

**Product:** [Integrations](https://cotlet.dev/integrations.md) · [Use cases](https://cotlet.dev/use-cases.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Pricing](https://cotlet.dev/pricing.md) · [Security](https://cotlet.dev/security.md)

**Resources:** [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [GitHub](https://github.com/cotletdev/cotlet)

**Solutions:** [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md)

**Company:** [About](https://cotlet.dev/about.md) · [AI info: company facts](https://cotlet.dev/ai-info.md) · [Contact](https://cotlet.dev/contact.md)

**Legal:** [Terms of service](https://cotlet.dev/terms) · [Privacy policy](https://cotlet.dev/privacy) · [Refund policy](https://cotlet.dev/refunds) · [Acceptable use](https://cotlet.dev/acceptable-use) · [Cookie policy](https://cotlet.dev/cookies) · [DPA](https://cotlet.dev/dpa) · [Subprocessors](https://cotlet.dev/subprocessors)

**Elsewhere:** [Status page](https://status.cotlet.dev) · [Cotlet on GitHub](https://github.com/cotletdev) · [Cotlet on X](https://x.com/cotletdev) · [Cotlet on LinkedIn](https://www.linkedin.com/company/cotletdev) · [Cotlet on Product Hunt](https://www.producthunt.com/products/cotlet) · [Cotlet on Crunchbase](https://www.crunchbase.com/organization/cotlet) · [Cotlet on SaaSHub](https://www.saashub.com/cotlet)

Cotlet.dev is built by Bart Krawczyk and Jake Slugocki, the founders of Take Group sp. z o.o., ul. Wincentego Janasa 4, 40-855 Katowice, Poland. KRS 0000871398, NIP 6342984273, VAT EU: PL6342984273. [About us](https://cotlet.dev/about.md)

Cotlet is an independent service. It is not affiliated with, endorsed by or sponsored by any of the products listed on this site. Product names are trademarks of their respective owners.
