Skip to main content
Custom form component schema

Properties

  • receiverEmail (string) - pattern: ^\S+@\S+\.\S+$... - format: email - Email where Form response will be sent
  • expiry (object) - Form expiry date, timezone and text
    • date (string) - Expiry date of the form.
    • timezone (string)
    • text (string) - maxLength: 1000
  • submitButton (object - ref: _base_button)
  • submissionBehaviour (object)

Used in Categories

This component is used in the following categories:

Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "Custom Form Component",
  "description": "Custom form component schema ",
  "allOf": [
    {
      "$ref": "_base_form.json"
    },
    {
      "properties": {
        "receiverEmail": {
          "type": "string",
          "description": "Email where Form response will be sent",
          "format": "email",
          "pattern": "^\\S+@\\S+\\.\\S+$"
        },
        "expiry": {
          "type": "object",
          "additionalProperties": false,
          "description": "Form expiry date, timezone and text",
          "properties": {
            "date": {
              "type": "string",
              "description": "Expiry date of the form."
            },
            "timezone": {
              "type": "string"
            },
            "text": {
              "type": "string",
              "maxLength": 1000
            }
          }
        },
        "submitButton": {
          "$ref": "_base_button.json"
        },
        "submissionBehaviour": {
          "submissionOption": "string",
          "message": {
            "type": "string",
            "required": true
          },
          "url": {
            "type": "string",
            "required": true
          },
          "additionalAction": "boolean",
          "additionalActionConfig": {
            "additionalActionType": "string",
            "manualAction": {
              "buttonData": {
                "$ref": "button.json"
              }
            },
            "automaticAction": {
              "delay": "number",
              "email": {
                "body": {
                  "type": "string",
                  "required": true
                },
                "recipientEmail": {
                  "type": "string",
                  "required": true
                },
                "subject": {
                  "type": "string",
                  "required": true
                }
              },
              "phone": {
                "phoneNumber": {
                  "type": "number",
                  "required": true
                }
              },
              "sms": {
                "message": {
                  "type": "string",
                  "required": true
                },
                "phoneNumber": {
                  "type": "number",
                  "required": true
                }
              }
            }
          }
        }
      }
    }
  ]
}