Create a new form

Creates a new signup, data-collection, or order form within the given subscriber list and
immediately generates its HTML source, so it is publicly accessible via formUrl.

Form method

ValueDescription
subscribeNew-subscriber form — collects and saves a new contact (default)
updateData-update form — lets existing subscribers modify their own data
orderE-commerce order form — lets subscribers purchase products

Subscribe and update forms

Double opt-in

ValueDescription
0No double opt-in (default)
2Double opt-in — a confirmation e-mail is sent before the subscriber is activated

Fields on the form

Use the optional fields array to place list fields on the form at creation time.

Each element references a list field by its technical name (fieldName) and may override
the display label, mandatory flag, validation message, and position.

Subscribe forms (method: "subscribe")

  • The email field is always required on the form.
  • If fields is omitted, the form is created with the email field only.
  • If fields is provided but does not contain "email", the email field is
    automatically prepended with isMandatory: true.
  • All fieldName values must exist on the subscriber list.

Update forms (method: "update")

  • fields is required and must contain at least one element.
  • All fieldName values must exist on the subscriber list.

Field options (radio, select and similar types)

List fields of type radio, horizontalradio, select, or textmulti require an
options array. Each option defines the stored value, the display label, and whether it is
pre-selected by default.

  • options is required for the above field types and must contain at least one element.
  • options is not allowed for other field types (e.g. text, textarea) — providing it
    returns a 400 error.
  • Each option must have a value key (may be an empty string) and a non-empty text.

Order forms (method: "order")

Order forms allow subscribers to purchase one or more products. They require:

  • shippingMethodIds (required): one or more shipping method IDs that must belong to your account.
    Use GET /shipping-method to list available shipping methods.
  • orderType (required): controls the product selection behaviour on the form.
    ValueBehaviour
    1Fixed product — exactly one product, no quantity control
    2Product selector — customer selects from a list
    3Quantity-based — customer enters a quantity per product
    4Subscription / recurring
  • products (required): list of products to offer on the form.
    Each entry must have either a productId (integer) or a sku (string) to identify the product.
    • If sku is given instead of productId, the system resolves it to the matching product in your account.
    • orderType: 1 allows exactly one product.

Order form product fields

FieldTypeRequiredDescription
productIdintegerProduct ID (either productId or sku is required)
skustringProduct SKU (resolved to productId server-side)
labelstringnoLabel shown on the form (defaults to the product name)
defaultCheckedbooleannoPre-select this product (default: false)
defaultQtyintegernoPre-filled quantity (for quantity-based forms)
descriptionstringnoShort description shown next to the product
orderintegernoDisplay position (1-based; defaults to order in the array)

What happens after creation

  1. The form record is inserted in the database.
  2. For subscribe/update forms: the specified fields (and their options) are added to the form.
    For order forms: the selected products are linked to the form.
  3. The form HTML is generated and uploaded to S3 at:
    newsletter/letter/nl{listId}/ns{formId}/subscribe.html
  4. The public formUrl is returned so you can embed or link to it immediately.

You can manage form fields later via the following endpoints:

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
integer
required

Subscriber list (newsletter) ID

Body Params

Common properties shared by all form types.

string
required

Form name (displayed in the admin interface)

string

Heading text displayed at the top of the rendered form.
If omitted, the form is created without a title.

string

Introductory text shown below the form title.
If omitted, the form is created without intro text.

string

Full HTML content for the thank-you page shown after a successful form submission.
If omitted, a default thank-you page is generated automatically.

string

Optional free-text description of the form (visible in the admin interface).

integer

Form template ID to apply during HTML generation.
If omitted or invalid, the first system default template is used.

string
Defaults to Submit

Label text on the submit button. Defaults to "Submit".

string
enum
Defaults to subscribe
  • subscribe — collects a new subscriber (default)
  • update — lets an existing subscriber update their data
Allowed:
integer
enum
Defaults to 0
  • 0 — subscriber added immediately (default)
  • 2 — double opt-in confirmation e-mail sent first
Allowed:
fields
array of objects

List fields to place on the form.

Subscribe (method: "subscribe"): email is auto-prepended if absent.
Update (method: "update"): required, at least one element.

All fieldName values must exist on the subscriber list.
Option-type fields (radio, horizontalradio, select, textmulti) require an options array.

fields
Responses

Language
Credentials
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json