Text Format Validator for Bubble.io

How it works

  1. Drag the Validator element onto your page and hide it.
  2. In your workflow: Element Actions → Text format validator → Validate.
  3. Fill in text to validate and format.
  4. The optional advanced fields Extra option 1, Extra option 2 and Compare value, depend on the chosen format, check the guide below.
  5. Catch validation actions with the following events: Format validation complete, Format validation passed, Format validation failed.
  6. Read the result from the element states: is valid, error message, validated text, validated format.

Bubble.io plugin page: text-format-validator


Formats advanced options reference

Web / Network

Type Extra option 1 Extra option 2 Compare value
isEmail JSON: {"allow_display_name":true} — —
isURL JSON: {"protocols":["https"],"require_protocol":true} — —
isIP 4 or 6 (empty = both) — —
isMACAddress JSON: {"no_separators":true} — —

Numbers

Type Extra option 1 Extra option 2 Compare value
isInt min: 0 max: 100 —
isFloat min: 0.0 max: 99.9 —
isNumeric JSON: {"no_symbols":true} — —
isCurrency JSON: {"symbol":"€","require_symbol":true} — —

Text

Type Extra option 1 Extra option 2 Compare value
isEmpty JSON: {"ignore_whitespace":true} — —
isLength min: 3 max: 50 —
isAlpha locale: it-IT — —
isAlphanumeric locale: it-IT — —

isEmpty: inverted logic — is_valid = true means the field has a value (is not empty).

Finance

Type Extra option 1 Extra option 2 Compare value
isCreditCard — — —
isIBAN — — —
isBIC — — —

Dates

Type Extra option 1 Extra option 2 Compare value
isDate JSON: {"format":"DD/MM/YYYY","strictMode":true} — —
isISO8601 JSON: {"strict":true} — —
isBefore — — limit date: 2025-12-31
isAfter — — limit date: 2020-01-01

isBefore/isAfter: if Compare value is empty, compares against today’s date.

Identity / Security

Type Extra option 1 Extra option 2 Compare value
isUUID version: 3, 4, 5 or all — —
isJWT — — —
isStrongPassword JSON: {"minLength":10,"minSymbols":2} — —

isStrongPassword defaults: min 8 chars, 1 uppercase, 1 lowercase, 1 number, 1 symbol.

Formats

Type Extra option 1 Extra option 2 Compare value
isJSON — — —
isBase64 JSON: {"urlSafe":true} — —
isMimeType — — —
isHexColor — — —

Geo / Locale

Type Extra option 1 Extra option 2 Compare value
isPostalCode country: IT, US, any — —
isMobilePhone locale: it-IT, any JSON: {"strictMode":true} —
isPassportNumber country: IT — —
isVAT country: IT (required) — —

IMPORTANT NOTES