Skip to main content
The API endpoint for forms provides the online forms available in the shop and delivers their fields, required entries, and validations. The endpoint can be used to list all forms, retrieve an individual form or field, and submit completed forms.

Supported methods

List of all supported methods.

Error format

All errors are answered with HTTP 400 and the following body:
  • error = invalidParameters for errors in parameters/field types (details in paramErrors, key = parameter name, value {"type": "missing" | "invalidFormat" | "invalidValue" | "unknownField" | …}).
  • error = actionFailed for functional errors. The error codes listed in the following tables then appear in actionErrors[].code.
  • A call with a wrong HTTP method is answered with HTTP 404 (not 405).
  • If the session (x-session) is missing, the response is HTTP 400.

Methods for forms

These methods cover the complete lifecycle of online forms in the shop. They read out all configured forms including the fields, the required marking, the validations, and the email settings. If required, an individual form or an individual field can be loaded specifically by ID. In addition, it is possible to submit completed forms. In doing so, a transaction ID (inquiryId) is provided, which enables later tracking or detail queries.

GET form/list

The following call returns all forms configured in the shop, including field definitions and email settings. It can be used to create forms including required fields and validations.

Parameter overview

The endpoint has no parameters. The response is a JSON array of form objects. The order corresponds to the configuration order. The name field of each object is the formId for form/get, form/getField, and form/send.

Example response

Each field object in fields[] can additionally contain the following fields:

GET form/get

The following call lets you load an individual form by its technical ID (retrievable via “form/getAll”) including field definitions, required entries, validations, and email settings. It can be used to display a specific form. Example call that loads a form with the formId contact:

Parameter overview

Example response

Each field object in fields[] additionally contains value, defaultValue, and visible; see the field table under form/list.

GET form/getField

The following call loads a form field with label, required status, and validations. It can be used to display the field specifically without reloading the entire form. Example call that loads the firstName field from the contact form:

Parameter overview

Example response

The field object additionally contains value, defaultValue, and visible; see the field table under form/list.

GET form/loadInquiry

The following call lets you load an already sent inquiry by its transaction ID. It can be used to display a confirmation page after submitting the form or to view an inquiry again later. Example call that loads the inquiry with the ID 7930f7e9fa7bb07b:

Parameter overview

Example response

POST form/send

The following call sends a form inquiry (e.g. a contact form) to the shop and creates a transaction for it. It can be used to submit a form and to display a confirmation including the transaction number.

Example request

Parameter overview

Example response

InquiryId is the transaction ID of the sent inquiry.

Error codes

Field validation Faulty fields are reported individually as separate errors with the code formCheckFailed. field contains the field name, subCode the reason:
  • formCheck.required: required field without a value
  • dataChecker.<name> (for example dataChecker.maxLength, dataChecker.minLength): the validation configured in the form failed
  • formCheck.defaultMaxLength: no maxLength validation is configured for the field and the value is longer than 200 characters
Fields that are not visible according to the form configuration are not validated.