Skip to content

Field types

Set type on a field in powsoo_show_card to control what input widget is rendered. Omitting type defaults to "text".

text

Plain text input. Use for names, order IDs, or any freeform string.

{ "label": "Full name", "value": "Truc Lam", "type": "text" }

email

Email input with format validation. Mobile keyboards show @ in quick-access.

{ "label": "Email", "value": "truc@example.com", "type": "email" }

phone

Phone number input with formatting. Validates against E.164 format on confirmation.

{ "label": "Phone", "value": "+1 555 000 1234", "type": "phone" }

address

Multi-line address input.

{ "label": "Service address", "value": "12 Oak St, Austin TX 78701", "type": "address" }

date

Native date picker. Pass value as an ISO 8601 date string (YYYY-MM-DD).

{ "label": "Appointment date", "value": "2026-05-07", "type": "date" }

select

Single-choice list. Requires options. The selected option’s id is returned as the field value.

{
"label": "Preferred time",
"type": "select",
"options": [
{ "id": "morning", "label": "Morning (8am–12pm)" },
{ "id": "afternoon", "label": "Afternoon (12–5pm)" },
{ "id": "evening", "label": "Evening (5–8pm)" }
]
}

multiselect

Multi-choice list. Returns a comma-separated string of selected option id values.

{
"label": "Issues reported",
"type": "multiselect",
"options": [
{ "id": "leak", "label": "Water leak" },
{ "id": "noise", "label": "Strange noise" },
{ "id": "heat", "label": "No heat" }
]
}

Checkbox the user must tick. Returns "true" or "false". Use for TCPA consent, terms acceptance, or any explicit agreement.

{
"label": "I agree to receive appointment reminders via SMS",
"type": "consent",
"editable": true
}

Set editable: false to show a read-only statement without a checkbox (display-only).