Update a contact form widget
PATCH /api/widgets/contact/{widgetId}
Updates an existing contact form widget. Only the fields you include in the request body are changed.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”The unique identifier of the widget to update.
Request Body
Section titled “Request Body ”object
Updated display name.
Updated form type.
Updated field definitions.
object
Updated visual style.
Updated primary color.
Updated custom CSS.
Updated colour theme.
Updated success message.
Updated redirect URL.
Enable or disable the widget.
Responses
Section titled “ Responses ”The widget was updated.
A contact form widget that can be embedded on external websites. Submissions are routed into oHallo as new conversations on the linked channel.
object
Unique identifier for the widget.
Example
wgt_aabbccdd-eeff-0011-2233-445566778899The workspace this widget belongs to.
Example
w1a2b3c4-5678-9abc-def0-1234567890abDisplay name for the widget.
Example
Website Contact FormChannel that form submissions are routed to.
Example
d4e5f6a7-b8c9-0123-4567-890abcdef012Freeform label for the type of form.
Example
general_inquiryForm field definitions.
object
Unique identifier for the field within the form.
Field type: text, email, phone, textarea, number, select, checkbox, date, time, file, or captcha.
Label displayed above the field.
Placeholder text inside the field.
Whether the field must be filled before submission.
Layout width: full or half.
Available choices for select fields.
Maps the field value to a CRM property.
Visual style: outlined, filled, or minimal.
Example
outlinedCSS colour value for the primary accent.
Example
#0166A3Additional CSS injected into the widget iframe.
Colour theme for the widget.
Example
lightMessage displayed after successful submission.
Example
Thank you for reaching out. We will get back to you within one business day.URL to redirect to after submission instead of showing the success message.
Whether the widget is currently active.
Example
truePublic key used to authenticate the widget.
Example
pk_wgt_f1e2d3c4b5a6Timestamp when the widget was created.
Example
2026-02-20T12:00:00.000ZTimestamp when the widget was last updated.
Example
2026-03-05T09:15:00.000ZNo widget exists with the given ID in the authenticated tenant.
Standard error response returned by all endpoints on failure.
object
A human-readable error message describing what went wrong.
Example
Conversation not found