All guides
User

Web Push Sites

Configure or review notifications and their intended recipients.

Step-by-step guide

Before you start

Use the account and workspace that own the records. This page does not include administrator configuration forms.

Open this feature

Open /portal/web-push/sites on your application domain, or use the matching item in the application menu.

Steps

Save settings

  1. Open /portal/web-push/sites on your own application domain.
  2. Complete these fields in that form: Website name, Website URL, Integration script URL, UTM source, UTM medium, UTM name, Status, Short name, Name, Start URL, Background color, Theme color, Popup background, Popup text color, HomeScreen popup text, Website Push ID, .p12 certificate, Allowed sub-domains, Position, Left (px), Right (px), Bottom (px). Their choices and limits are listed below.
  3. Select Save settings. The exact label can change between creating and editing a record.
  4. If validation fails, correct the named field and submit again. After success, reopen the same record and compare the saved values.
Field shown in the formWhat to enterExample / note
Website nameRequired. No more than 255 characters.Test record (use a unique value where required).
Website URLOptional, unless this form asks for it. Enter a complete URL, including https:// where appropriate. No more than 2048 characters.https://example.test/demo (replace with your own test destination).
Integration script URLOptional, unless this form asks for it. Enter a complete URL, including https:// where appropriate. No more than 2048 characters.https://example.test/demo (replace with your own test destination).
UTM sourceOptional, unless this form asks for it. No more than 120 characters.Use the value required by the task; no example is assumed.
UTM mediumOptional, unless this form asks for it. No more than 120 characters.Use the value required by the task; no example is assumed.
UTM nameOptional, unless this form asks for it. No more than 120 characters.Test record (use a unique value where required).
StatusRequired. Choose Enable, Disable.Choose a displayed option; the available labels are listed above.
Short nameOptional, unless this form asks for it. No more than 12 characters.Test record (use a unique value where required).
NameOptional, unless this form asks for it. No more than 45 characters.Test record (use a unique value where required).
Start URLOptional, unless this form asks for it. Enter a complete URL, including https:// where appropriate. No more than 2048 characters.https://example.test/demo (replace with your own test destination).
Background colorOptional, unless this form asks for it.Use the value required by the task; no example is assumed.
Theme colorOptional, unless this form asks for it.Use the value required by the task; no example is assumed.
Popup backgroundOptional, unless this form asks for it.Use the value required by the task; no example is assumed.
Popup text colorOptional, unless this form asks for it.Use the value required by the task; no example is assumed.
HomeScreen popup textOptional, unless this form asks for it. Supports {app_name}, {share_icon}, and {add_icon} placeholders. No more than 1000 characters.Use the value required by the task; no example is assumed.
Website Push IDOptional, unless this form asks for it. No more than 255 characters.Use the value required by the task; no example is assumed.
.p12 certificateOptional, unless this form asks for it. No more than 2048 characters.Use the value required by the task; no example is assumed.
Allowed sub-domainsOptional, unless this form asks for it. Comma separated, without the main domain. No more than 1000 characters.Use the value required by the task; no example is assumed.
PositionRequired. Choose Right, Left.Choose a displayed option; the available labels are listed above.
Left (px)Required. Enter a whole number. At least 0. No more than 500.Use the value required by the task; no example is assumed.
Right (px)Required. Enter a whole number. At least 0. No more than 500.Use the value required by the task; no example is assumed.
Bottom (px)Required. Enter a whole number. At least 0. No more than 500.Use the value required by the task; no example is assumed.

Fields shown in the interface

Only fields traced to this role’s handler and its own view are listed. The application can show separate create/edit forms; do not fill every row on one screen.

Form 1 — fields shown in the interface
FieldWhat to enter or choose
Website nameRequired. No more than 255 characters.
Website URLOptional, unless this form asks for it. Enter a complete URL, including https:// where appropriate. No more than 2048 characters.
Integration script URLOptional, unless this form asks for it. Enter a complete URL, including https:// where appropriate. No more than 2048 characters.
UTM sourceOptional, unless this form asks for it. No more than 120 characters.
UTM mediumOptional, unless this form asks for it. No more than 120 characters.
UTM nameOptional, unless this form asks for it. No more than 120 characters.
StatusRequired. Choose Enable, Disable.
Short nameOptional, unless this form asks for it. No more than 12 characters.
NameOptional, unless this form asks for it. No more than 45 characters.
Start URLOptional, unless this form asks for it. Enter a complete URL, including https:// where appropriate. No more than 2048 characters.
Background colorOptional, unless this form asks for it.
Theme colorOptional, unless this form asks for it.
Popup backgroundOptional, unless this form asks for it.
Popup text colorOptional, unless this form asks for it.
HomeScreen popup textOptional, unless this form asks for it. Supports {app_name}, {share_icon}, and {add_icon} placeholders. No more than 1000 characters.
Website Push IDOptional, unless this form asks for it. No more than 255 characters.
.p12 certificateOptional, unless this form asks for it. No more than 2048 characters.
Website nameOptional, unless this form asks for it. No more than 255 characters.
Allowed sub-domainsOptional, unless this form asks for it. Comma separated, without the main domain. No more than 1000 characters.
PositionRequired. Choose Right, Left.
Left (px)Required. Enter a whole number. At least 0. No more than 500.
Right (px)Required. Enter a whole number. At least 0. No more than 500.
Bottom (px)Required. Enter a whole number. At least 0. No more than 500.

Check the result

After a source-checked procedure, verify the same record in the same workspace. Check saved values, visible state and access with the intended test account. An external payment/message/provider action needs its own result check.

Problems and validation

ProblemNext step
A field rejects the valueCheck its named error, the form’s visible choices and the relevant limit. Do not substitute internal numeric codes for the displayed options.
The control is missingCheck role, plan, enabled app and current record state. Do not grant administrator access merely to complete a User task.
The saved result is unexpectedReopen the same record and verify its owner/workspace before repeating the action.

Technical reference

Role-scoped source references

Pinned commit: 68a5655db1bbe17c74fb211f0fe0ee4e63c8be88

Source-only route information
MethodSource-default route
GET/portal/web-push/sites
GET/portal/web-push/sites/create
GET/portal/web-push/sites/{site}/edit
GET/portal/web-push/sites/{site}/service-worker
GET/web-push/sites/{site}/install
POST/web-push/sites/{site}/subscriptions
POST/web-push/sites/{site}/identity
POST/web-push/sites/{site}/prompt-events
POST/web-push/sites/{site}/events
POST/web-push/sites/{site}/in-app-messages
GET/web-push/preferences/{token}
PATCH/web-push/preferences/{token}
Unmapped fields — not user instructions

These fields belong to this role’s source handler, but their screen labels were not confirmed.

Source keyHandler
settingsForm.service_worker_urlmodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
settingsForm.default_iconmodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
settingsForm.badge_iconmodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
settingsForm.ios_iconmodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
settingsForm.safari_website_iconmodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
settingsForm.widget_iconmodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
settingsForm.prompt_statusmodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
settingsForm.prompt_titlemodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
settingsForm.prompt_messagemodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
settingsForm.prompt_buttonmodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
settingsForm.prompt_delaymodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
settingsForm.prompt_frequency_daysmodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
settingsForm.prompt_positionmodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
settingsForm.prompt_bgmodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
settingsForm.prompt_textmodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
settingsForm.prompt_templatemodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
settingsForm.prompt_accentmodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
settingsForm.prompt_ab_statusmodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
settingsForm.prompt_b_titlemodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
settingsForm.prompt_b_messagemodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
settingsForm.prompt_b_buttonmodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
settingsForm.prompt_b_weightmodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
createForm.domainmodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
createForm.iconmodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
createForm.badgemodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
createForm.utm_sourcemodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
createForm.utm_mediummodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
createForm.utm_namemodules/WebPush/WebPushSites/Livewire/WebPushSitesWorkspace.php
topicsmodules/WebPush/WebPushSites/Http/Controllers/WebPushPreferenceController.php
pausemodules/WebPush/WebPushSites/Http/Controllers/WebPushPreferenceController.php
unsubscribemodules/WebPush/WebPushSites/Http/Controllers/WebPushPreferenceController.php
subscription.endpointmodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
subscription.keys.p256dhmodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
subscription.keys.authmodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
attributesmodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
attributes.languagemodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
attributes.timezonemodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
attributes.browsermodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
attributes.devicemodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
attributes.osmodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
attributes.utm_sourcemodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
attributes.utm_mediummodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
attributes.utm_campaignmodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
attributes.country_codemodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
attributes.region_codemodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
external_idmodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
eventmodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
variantmodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
languagemodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
devicemodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
eventmodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
campaign_idmodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
welcome_stepmodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
subscription_idmodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
languagemodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
devicemodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
urlmodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
order_idmodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
revenue_amountmodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php
currencymodules/WebPush/WebPushSites/Http/Controllers/WebPushSiteSubscriptionController.php