Skip to Content
Get StartedNotifications

Notifications

UpServe AI employees finish work through automatic runs (scheduled runs, webhooks, self check-ins), even when you’re not looking at the screen. To make sure you don’t miss the results, UpServe routes each kind of update to one of three places:

  • Mobile push notifications (iOS and Android): Things you should know right now, like an employee’s reply or an approval or question waiting on you, go straight to your phone.
  • Inbox “To do”: Requests you need to act on yourself, like pending approvals and answers or access and connection requests, collect here. Once you handle one, it disappears from the list. On the web, this is the Inbox on the Home screen; in the mobile app, it’s the Inbox tab.
  • Notification Center (bell icon): Warnings, reports, suggestions, and records collect here. Employee replies don’t pile up in the Notification Center: you read them in the chat and the Inbox, and on the web, in the speech bubble next to the employee’s avatar in the sidebar.

A few notices tied directly to billing or your contract (like the outcome of a bug report) also arrive by email.

When do notifications arrive

  • When an employee has a reply for you: When a scheduled run wakes an employee up and it finishes its work, or when an employee answers a message you sent, you get a push on your phone. Replies aren’t added to the Notification Center list; you read them in the chat and the Inbox. If you’re already viewing your one-on-one chat with that employee, no push is sent. The message just appears in the conversation.
  • When an employee has been stuck waiting for your approval or answer: When an employee asks for approval before a potentially risky action, or asks you a question, that request shows up under To do in your Inbox and disappears once you respond. If you don’t respond for a while, you’ll get a push nudge so you don’t miss it (at most once per request). Quick approvals ping you within about 2 to 5 minutes; requests that are meant to wait longer, like a skill install, wait up to 30 minutes. The chat screen also shows a “Waiting for your approval” indicator with a countdown pinned above the message box, so you can catch it there even if you miss the notification.
  • When other requests need your action: Delegated access requests, connection requests, permission requests and visitor questions on your public versions, improvement proposals on your skills, team tasks that need your confirmation, and goal start confirmations also go under To do in your Inbox and disappear once handled. You still get push notifications for them.
  • When work you handed off finishes: When multi-step work you gave an employee produces a result (whether it wrapped up successfully or hit a wall it needs to tell you about), you get a push. Tapping it takes you to the conversation where the result was posted (your one-on-one chat or a team thread), and you can also find it in the Inbox’s results list.
  • When your SU (AI usage unit) changes: Low balance, grants, deductions, and expirations are surfaced as notifications.
  • When an employee is paused: If an automatic run is interrupted, for example by an empty SU balance or because there’s been no contact with the employee for a while (7 days by default), you’ll be told which employee stopped and why. One day before an employee is paused for inactivity, you’ll get a single heads-up notification.
  • When an employee reaches its automatic run AI usage limit: Work an employee does on its own, like scheduled runs and self check-ins, has a cap on the AI usage (SU) it can spend in any 24-hour window. Once the limit is reached, you get a single notification, and the employee screen shows an “Automatic runs paused” badge. No new automatic run starts, runs already in progress finish, and runs start again as earlier usage drops out of the 24-hour window. You won’t get this notification twice for the same employee within that window. Messages you send directly are still handled, but child runs started while handling them can be held by the limit.
  • When an employee’s AI work computer runs out of storage: If the storage on the AI work computer an employee uses to create or download files fills up, you’re notified. Upgrading the computer specs won’t help here: storage capacity doesn’t change with the computer size. Instead, the employee needs to clean up unneeded files or scale down what it’s working on. You’ll only get this once per day for the same employee.
  • When an employee’s AI work computer has to be rebuilt: In rare cases, a temporary fault in an employee’s AI work computer forces the system to rebuild it from scratch to recover. Memory and files are usually restored, but things like a signed-in session may be lost. A card in the chat lays out exactly what came back and what didn’t. Open the chat to check.
  • When a managed organization database is about to lose access: If your organization uses a separately contracted managed database, you’re warned before access is cut off once the contract expires. Even after the cutoff, your data is kept for a while, and renewing the contract restores access without interruption. Sent only to the organization’s owner.
  • When your subscription changes: Subscription start and cancel events are announced.
  • When a bug report you filed is resolved: If you used the bug icon’s Report an issue to file a problem and the team confirms a fix (a redo, free support, a fee waiver, or a refund), you’re notified both in-app and by email. Because this ties directly to your contract and billing, it can’t be turned off, and it’s sent regardless of your email unsubscribe settings.
  • When a question you posted in the community gets auto-resolved: If someone else replies to your question and then 7 days pass with no new conversation, the server automatically marks it resolved and lets you know. If it’s not actually solved yet, you can undo this anytime by tapping “Still unresolved” on the post.
  • Daily work report: Every morning at 9 AM in your time zone, UpServe tallies what your employees did the previous day. A notification only arrives on days that need your attention. See “Daily work report” below for details.
  • Weekly work report: When your organization’s weekly work report is ready, it arrives in the organization owner’s Notification Center under the Reports tab. No phone push is sent for it.
  • Goal cycle report: When a goal you gave a team completes a cycle, its report arrives in the Notification Center under the Reports tab.
  • Do Not Disturb catch-up: When your Do Not Disturb window ends, UpServe sends a short summary of any employee activity that happened while you were away. This only applies if you have Do Not Disturb enabled.

Daily work report

  • Every morning, UpServe tallies what your employees actually did yesterday: completed work, questions or approvals that expired unanswered, failed automatic runs, deliverables created, and things newly learned.
  • A notification only arrives on days that need your attention: when something expired unanswered, or an automatic run failed. On days with only completed work, or quiet days with nothing at all, no notification is sent. Tapping the notification takes you straight to the conversation with the employee who handled it. This notification sits under the Notification Center’s Reports tab and doesn’t add to the bell badge.
  • You’ll see the full picture every day on a dedicated screen instead of in the notification: on web, the work report card in the Inbox on the Home screen; on mobile, the work report card in the Inbox tab. Quiet days with nothing to report still show “No recorded work for this day,” so they’re distinguishable from days that simply haven’t been tallied yet.

Notification categories

These are the notification categories shown in settings:

  • Employee response push (including replies from work you handed off): Turns only the phone push on or off. The replies themselves stay in the chat and the Inbox.
  • SU low / granted / deducted / expired
  • Subscription started / canceled
  • Employee paused
  • Approval notifications (waiting reminder push & rule suggestions): Pushes you once more when an employee has been paused for a while waiting for you to approve an action or answer a question, and you still haven’t responded. The pending request itself stays under To do in your Inbox regardless of this setting. The same setting also turns on or off suggestions to turn approvals you grant often into rules.
  • Automatic runs paused: Arrives once when an employee reaches its automatic run AI usage limit (last 24 hours) and no new automatic run (scheduled runs, self check-ins, and so on) starts. This is a different situation from running out of SU, and runs start again as earlier usage drops out of the 24-hour window.
  • Upgrade Suggestions
  • Feedback on my skills (push): Pushes you when a defect report on one of your skills becomes an improvement proposal. The proposal goes under To do in your Inbox, and you can Mark as reviewed or dismiss it from My Library → Proposals. Marking it as reviewed does not change the skill itself.
  • Library cleanup available: Arrives when a periodic scan finds installed skills that may need cleanup. Sent at most once every 7 days per user. Tapping the notification takes you to Skills → My Library, where a cleanup banner lets you handle each item on your own terms.
  • Skill deprecated: Arrives when a skill you’re using is no longer supported. You can look in Official skills in the Skills tab for a replacement or copy and edit the skill to keep using it.
  • Weekly skill score report: A weekly summary of skill scores and success rates across your installed skills, sent once per week.
  • Published item comments: Arrives when someone comments on a template post of yours (skills can’t be published, so they don’t apply).
  • Community comments: Arrives when someone comments on a post you wrote in the community.
  • Community question auto-resolved: Arrives when a question you posted in the community gets a reply and then goes 7 days with no new conversation. The notification includes how to undo it. There’s no separate toggle. It shares its setting with Community comments.
  • Condition watch alert: Arrives when a change is detected in something you’ve registered to watch. Each check runs without an AI model call, but it does draw a small amount of SU (AI work computer upkeep cost) per check.
  • Skill auto-created: Arrives when an employee creates a new skill on its own, based on experience from a completed task. The skill is private to that employee and is never made public.
  • Skill auto-improved: Arrives when an employee refines one of its existing skills on its own. The notification includes a note that you can roll back to the previous version if the change doesn’t help.
  • Skill auto-archived: Arrives when an employee automatically archives one of its self-created skills that hasn’t been used in a while. You can restore it anytime from the Skills page.
  • Skill version security revocation: Arrives when a specific version of a skill you’ve installed is revoked for a security issue. Update to the latest safe version, or uninstall it if you no longer need it.
  • External tool connection expired: Arrives when authentication for an external tool (MCP) connected to your employee expires and the employee can no longer use that tool. Reconnect it from Settings.
  • Low storage alert: Arrives when an employee’s AI work computer runs out of storage.
  • AI work computer rebuilt: Arrives when a fault in an employee’s AI work computer forces the system to rebuild it. Shares its setting with the low storage alert.
  • Bug report resolution: Arrives when a report you filed is resolved with a redo, free support, a fee waiver, or a refund. Also sent by email, regardless of your mail unsubscribe settings.
  • Managed database access ending soon: Arrives when your organization’s managed database contract has expired and access is scheduled to be cut off. This ties directly to your contract and billing, so it can’t be turned off, and it’s sent only to the organization’s owner.

Employee response push, SU and subscription notifications, Employee paused, Approval notifications, Upgrade Suggestions, skill-related notifications (feedback on my skills push, library cleanup available, deprecated, weekly skill score report), Published item comments, Community comments, and Condition watch alert each have their own toggle so you can keep only the ones you care about. The daily work report, Do Not Disturb catch-up, Automatic runs paused, Skill auto-created, Skill auto-improved, Skill auto-archived, Skill version security revocation, External tool connection expired, Low storage alert (including the AI work computer rebuilt notice), Bug report resolution, and Managed database access ending soon notifications have no toggle: they can’t be turned off individually and are always sent. The weekly work report and goal cycle report also have no toggle in the settings screen at the moment.

Where to configure them

On the web, open Settings → Notifications (/settings/notifications). Everything is managed from this one screen:

  1. Master push toggle: The large toggle at the top. When it’s off, no notifications are pushed to your phone (the Notification Center and Inbox still fill up).
  2. Per-category toggles: Turn each category from the list above on or off. For most toggles, turning one off prevents both the push and the Notification Center entry from being created. The exceptions are Employee response push, Feedback on my skills (push), and Approval notifications (waiting reminder push): these turn off push only. The settings screen marks them “Sent as push only,” and replies stay in the chat while requests stay in your Inbox.
  3. Notification hours (Do Not Disturb): Choose between Receive all day and Only during set hours. If you restrict it to set hours, pushes are silenced outside that window, and the ones that piled up are delivered together at the next allowed time. The employee keeps working outside those hours too. Only the notifications are deferred. It uses your current time zone, and overnight windows (e.g. 22:00 to 08:00) work as expected.
  4. Mute specific employees: All employees registered to your account are listed. Toggle any employee to silence its notifications and reply pushes.

Notification hours settings: Receive all day / Only during set hours. The employee keeps working outside those hours and notifications are batched for later

Receiving push notifications on mobile

UpServe push notifications are delivered through the mobile apps (iOS and Android). Web browser push is not supported.

  1. From Settings → Notifications, tap Download iOS app or Download Android app, or search “UpServe” in the App Store or Google Play. Install the app.
  2. Sign in. On first launch, the system asks for notification permission. Tap Allow. From that moment on, the device can receive push notifications.
  3. Once permission is granted, the app automatically links the device to your UpServe account. No extra setup is needed.

If you declined permission earlier, re-enable it from Settings → Notifications → UpServe on iOS, or Settings → Apps → UpServe → Notifications on Android. The app won’t ask again on its own.

Setup steps and platform differences are covered in Getting Started on Mobile.

Following progress while an employee works

You can watch an employee’s progress from your phone while it works. How it’s displayed depends on the platform.

iOS: Live Activities (Lock Screen / Dynamic Island)

  • After you send a message and navigate away, a Live Activity starts automatically.
  • The Dynamic Island updates as the employee switches between states, for example when it calls a tool or waits for your approval.
  • When the work is done, a brief summary of the final response remains on the lock screen for a few minutes before disappearing.
  • Requires iOS 16.2 or later, with Live Activities allowed in your device settings.
  • On iOS 17.2 or later, the server can start a Live Activity remotely without the app being open first, so automatic run results can update your lock screen even when you haven’t launched the app.

Android: ongoing notification

  • Android has no Live Activity or Dynamic Island. Instead, an “in progress” notification sits in the notification shade while the employee works and clears itself when the run ends.
  • The ongoing notification is suppressed while you have the app open in the foreground.
  • When the employee needs your approval or answer, you get a notification. Tap it to jump straight into that conversation and respond there.

What about the web?

On the website, clicking the bell icon in the header opens the Notification Center. The number on the bell is the count of unread warnings, and it updates in real time as new notifications arrive. The browser’s own notification permission is not used. Every alert is shown inside the UpServe interface.

New employee replies show up not in the Notification Center but as a speech bubble next to the employee’s avatar in the sidebar, in the chat, and in the Inbox on the Home screen. Requests to handle collect under To do in that same Inbox.

If you want push notifications on your phone, follow the mobile app instructions above.

Notification Center tabs and the badge

The Notification Center is split into four kinds (reports, suggestions, warnings, and records), and you pick which to see with the tabs at the top of the list. The tabs are the same on web, iOS, and Android: All · Warnings · Reports · Suggestions · History (records appear under History).

  • All: Everything from the four kinds combined. This tab is selected by default when you open the Notification Center.
  • Warnings: Notifications that cost you if you ignore them: an employee that stopped or a run that failed, something that needs reconnecting or signing in again, billing and capacity risks like a failed payment, low SU, or storage limits, and important notices like fee waivers or price changes.
  • Reports: Recurring reports: the daily work report, the weekly work report (organization owners), goal cycle reports, the weekly skill score report, and the Do Not Disturb catch-up.
  • Suggestions: Things worth trying: skill recommendations and cleanup suggestions, suggestions to adjust an employee’s AI performance tier or computer specs, approval rule suggestions, and upgrade suggestions.
  • Records: A log of things that already happened: SU grants, deductions, and expirations; subscriptions starting or canceling; automatic actions like skills being auto-created, improved, or archived; comments; condition watch alerts; and leads arriving through your public versions.

The badge counts unread warnings only. Both the web bell count and the app icon badge on iOS and Android count warnings only. Reports, suggestions, and records stay in the list but don’t add to the badge.

Old notifications clean up automatically

So your notification list doesn’t grow without limit, the server automatically removes old notifications.

  • Read notifications are deleted 30 days after you read them.
  • Unread notifications are deleted 90 days after they were created.
  • The exception: mandatory notices tied to contracts or billing (like a remediation, a fee waiver, or a price change) are excluded from this cleanup and stay in your list either way (if you tap Delete all notifications yourself, those are removed too, since this exception only stops the server from deleting them on its own).

This cleanup runs automatically, so there’s nothing to configure. To make sure you don’t miss anything important, use the tabs above and check Warnings first.

How employee replies are delivered

When an employee posts a reply, UpServe applies these rules, the same way no matter what woke the employee up (a message you sent, a scheduled run, a webhook, or a self check-in).

  • While you’re viewing your one-on-one chat with that employee, no push is sent. The reply just appears inline in the conversation.
  • While you’re on a different screen or have the app closed, you get a phone push.
  • Replies don’t pile up in the Notification Center list. On the web, check new replies through the speech bubble next to the avatar in the sidebar and the Inbox panel; on mobile, through the Inbox tab.
  • Tapping the push takes you to the conversation where the reply was posted: a one-on-one reply opens the one-on-one chat, and a team thread reply opens that thread.

Email settings

Manage the emails UpServe sends you under Settings → Notifications → Email (the same layout on web, iOS, and Android). Emails that your employees (agents) send on your behalf aren’t covered by these settings.

  • Pause all but essential emails: The switch at the top. When on, all the optional emails below stop and only essential emails are sent. Your promotional email consent is also withdrawn, and you get one confirmation email about it. Turning the switch off again does not restore your consent, so turn promotional email consent back on yourself if you want promotional emails again. While the switch is on, the toggles below are locked and show a “not sent” note.
  • Promotional email consent: Controls getting-started tips, upgrade offers, results that arrived while you were away, and reminders to rerun a saved job. Without consent, promotional emails are not sent. You can choose during sign-up and change it any time.
  • Results that arrived while you were away, Rerun a saved job: Sent only if promotional email consent is on. When consent is off, a note under each item says so.
  • Automation stopped: We email you once when scheduled work stops because SU ran out, or when a team reaches its monthly budget.
  • Work failure alerts: We email you right away when scheduled or automatic work fails. Turning this off stops only the email. Push notifications and alerts to recipients your organization has set stay as they are. In environments where the service doesn’t use this alert, the item isn’t shown.
  • Welcome email, Employee email sending limit: No individual toggle. They can only be stopped with “Pause all but essential emails”.

Essential emails

These are needed to use the service and can’t be turned off. They keep coming even with “Pause all but essential emails” on.

  • Billing: failed payments and card issues
  • Legal notices: price changes, fee waivers, and promotional consent confirmations
  • Contracts: copies of your agreement
  • Account security: access and connection requests
  • Verification: email verification codes
  • Account and organization: sign-up approval and invitations

If you belong to an organization that uses the portal, portal intake and result emails follow your portal notification settings, separate from these.


Advanced

You don’t need this section for normal use. Read it only if you’re troubleshooting missing notifications or want to understand the system in more detail.

Internal categories

The toggles you see in settings map to these underlying categories. The labels in the UI take priority, but the category names may appear in search and metadata views.

  • AGENT_RESPONSE: employee reply. No new Notification Center row is created; it’s delivered only by push and a web arrival signal. The settings key agent_response turns off push only.
  • AGENT_PAUSED: employee paused (out of SU, or no contact for a while). Settings key: agent_paused
  • AGENT_BUDGET_PAUSED: sent once, the first time an employee reaches its automatic run AI usage limit (last 24 hours) and no new automatic run starts. At most once per employee within the same 24-hour window. Not in the opt-out mapping, so it cannot be disabled individually.
  • AGENT_INACTIVITY_WARNING: a heads-up sent one day before an inactive employee is paused. Not in the opt-out mapping, so it cannot be disabled individually.
  • AGENT_DISK_FULL: sent when the employee’s AI work computer disk saturates (ENOSPC). Debounced to once per 24 hours per (user, employee) pair. A settings key agent_disk_full exists on the server (default on), but as of this writing no screen on web, iOS, or Android exposes a dedicated toggle for it. The master push toggle, Do Not Disturb, and muting that specific employee are the only ways to control it. Muting the employee does suppress it (unlike the forced notices below).
  • AGENT_SANDBOX_RECOVERED: sent when the AI work computer could not be confirmed alive after a transient fault and was rebuilt. Shares its setting key (agent_disk_full) with AGENT_DISK_FULL, since both fall under the same “employee operating status” axis. The chat carries a card with reproducible detail (what was restored, what wasn’t); the notification text itself is capped at two lines.
  • ORG_DATABASE_ENTITLEMENT_GRACE: sent once to the organization’s owner (resent if the contract expires again) when a managed service organization’s contract has expired and shared database access is scheduled to be blocked after a grace period. The grace period is timed from the notification itself; if sending fails, access is not cut off and the system retries at the next check. A different type from the quota-warning notice (org_database_quota_warning): the cause here is contract expiry, so the fix is renewing the contract, not cleaning up data. No individual toggle (required by the terms of service as advance notice).
  • Pending approvals or questions can send a push reminder. Tap it to open the conversation containing the card, including a team conversation.
  • CREDIT_LOW / CREDIT_GRANTED / CREDIT_DEDUCTED / CREDIT_EXPIRED: SU-related events
  • SUBSCRIPTION_STARTED / SUBSCRIPTION_CANCELED: subscription events
  • UPSELL_CREDIT / UPSELL_FEATURE: recommendations and upsell hints
  • DAILY_WORK_ATTENTION: the daily work report notification. Processed during the user’s local 9 AM window and sent only on days that need attention. Not in the opt-out mapping, so it cannot be disabled individually. The old DAILY_SUMMARY type is no longer sent; only its past rows remain.
  • WEEKLY_WORK_REPORT: a weekly work report has arrived. Recipients are organization OWNERs, no push (skip_push), link /report#weekly. Settings key work_report (default on, no toggle in the settings screen on any of the three platforms).
  • TEAM_OBJECTIVE_REPORT: a goal cycle report. Shares the work_report settings key with WEEKLY_WORK_REPORT.
  • DND_SUMMARY: sent shortly after the Do Not Disturb window closes. Not in the opt-out mapping, so it cannot be disabled individually. Suppressed if the number of notifications plus employee chat messages during the DND window is zero.
  • SKILL_PROPOSAL_RECEIVED: proposal received on one of your skills. No Notification Center row; push only (the proposal is an Inbox request). Settings key: skill_proposal_received (push only)
  • SKILL_LIBRARY_CLEANUP_AVAILABLE: Personal Curator found cleanup candidates. Settings key: skill_library_cleanup_available
  • SKILL_DEPRECATED: a skill you use has been deprecated by its author. Settings key: skill_deprecated
  • SKILL_HEALTH_REPORT_WEEKLY: weekly skill score report. Settings key: skill_health_report_weekly
  • MARKETPLACE_COMMENT: a comment on your template post (skill publishing and comments are retired). Settings key: marketplace_comment
  • COMMUNITY_COMMENT: a comment on a post you wrote in the community. Settings key: community_comment
  • QUESTION_AUTO_RESOLVED: sent when a QUESTION post you wrote gets a reply and then goes 7 days with no new comments, transitioning it to auto-resolved (auto_resolved_at). No dedicated settings key: it shares community_comment (turning that off also disables this). The body includes how to undo it (the post’s “Still unresolved” button).
  • SENSOR_EVENT: a change was detected in something registered for condition watch. No LLM call is involved, but each check deducts a small amount of SU under “Tools & computer usage” (AI work computer upkeep cost), only on a successful round trip; failed checks are not charged. Settings key: sensor_event
  • SKILL_CLUSTER_ALERT / SKILL_FORK_INSPIRATION / SKILL_SUGGESTION / SKILL_PROMOTION_SUGGESTED / SKILL_DERIVATIVE_PUBLISHED: skill curation notifications. Not in the opt-out mapping, so they cannot be disabled individually.
  • SKILL_AUTO_CREATED: sent when an employee autonomously creates a new skill from this task’s experience. Not in the opt-out mapping, so it cannot be disabled individually.
  • SKILL_AUTO_PATCHED: sent when an employee autonomously improves an existing skill. The notification body includes a pointer to the version history for one-click rollback. Not in the opt-out mapping, so it cannot be disabled individually.
  • SKILL_AUTO_ARCHIVED: sent when a long-unused, autonomously created skill is automatically archived. Not in the opt-out mapping, so it cannot be disabled individually.
  • SKILL_VERSION_REVOKED: sent when the pinned version of a skill you installed is revoked for a security issue. Not in the opt-out mapping, so it cannot be disabled individually.
  • MCP_REAUTH_REQUIRED: sent when an external MCP server’s authorization expires and needs to be renewed (since the tool disappears silently otherwise, this notification is the only way to notice). Not in the opt-out mapping, so it cannot be disabled individually.
  • REMEDIATION_STAGE_CHANGED: notice that a bug report was resolved with a redo, free support, or a refund (the specific stage is carried in the notification metadata). FEE_WAIVER_GRANTED: notice that a fee waiver was confirmed (includes the waived amount; when a report resolves as a fee waiver, only this type is sent, and REMEDIATION_STAGE_CHANGED is deliberately skipped to avoid announcing the same fact twice). Neither is in the opt-out mapping, so neither can be disabled individually, and creating the in-app notification forcibly bypasses employee muting. The email is also attempted and bypasses marketing-unsubscribe settings, because this is a transactional notice that billing was adjusted, not that SU were granted.

The Notification Center axis: REPORT / SUGGESTION / WARNING / RECORD

  • Excluded from the Notification Center: AGENT_RESPONSE, INTERRUPT_WAITING_REMINDER, DESKTOP_HANDOFF_WAITING, DELEGATED_ACCESS_REQUEST, SNAPSHOT_GRANT_REQUESTED, SNAPSHOT_RELAY_QUESTION, SKILL_PROPOSAL_RECEIVED. No new rows are created (delivery is by push, Inbox, or WS signal only), and past rows are always filtered out of list and count queries. For CONNECTION_REQUEST, the request direction creates no row; only the completion notice survives as a RECORD row.
  • Each serialized row carries a group field. The list filter is GET /api/notifications?group=<one of the four>; omitting it returns everything (excluded types are always left out).
  • The badge count (the unread_count field from GET /api/notifications/unread-count, and the same field on the list endpoint) counts only unread WARNING notifications. The device badge on offline employee reply pushes uses the same value. group_unread_counts carries the unread count per group, and informational_unread_count carries the unread count outside WARNING.
  • Older app compatibility: the category field and the category= query parameter keep working with the old two values: WARNING → ACTIONABLE, everything else → INFORMATIONAL.
  • The daily work report, DAILY_WORK_ATTENTION, is a REPORT even though its title reads “N things need your attention,” so it doesn’t add to the badge.

Inbox “To do” sources

Requests that need action are surfaced by the Inbox request list (GET /api/inbox/requests), not the Notification Center. Once the underlying state is resolved, the request drops off the list regardless of read status.

  • Existing sources: AGENT_INTERRUPT (pending approvals and questions), TEAM_WORK_ITEM (team tasks needing the user’s confirmation).
  • Six newer sources: TEAM_OBJECTIVE_START (a goal start card not yet signed off) · DELEGATED_ACCESS (a pending, unexpired delegated access request) · CONNECTION_REQUEST (a pending connection request) · SNAPSHOT_GRANT (a permission request on a public version) · SNAPSHOT_RELAY (a visitor question on a public version) · SKILL_PROPOSAL (pending proposals on your skill, one row per skill).
  • The newer sources are only returned to clients that send include=v2_sources (older app builds receive those requests by push only). The web Inbox on the Home screen and the current mobile Inbox send this parameter.

Daily work report decisions

  • The send decision is whether that day’s tally has at least one expired interrupt or failed automatic run (needs_attention). Days with only completed work, deliverables, or newly learned skills don’t produce a notification, only a ledger row. Whether the ledger row is saved and whether a notification is sent are separate axes.
  • The reporting window is the previous day (midnight to midnight) in the user’s time zone, processed during the user’s local 9 AM window.
  • The population covers every employee the user can see (personally owned + employees owned by organizations they belong to).
  • Even on days with no notification, that day’s data is still recorded. That’s how the surface distinguishes “no recorded work for this day” from “not tallied yet.”
  • The Do Not Disturb catch-up summary’s own stats (DND_SUMMARY) exclude both DAILY_SUMMARY and DAILY_WORK_ATTENTION to avoid double-counting.

Notification retention policy (automatic deletion)

The notifications table has a daily cleanup job that hard-deletes old rows (not recoverable).

  • Read branch: deleted 30 days after read_at.
  • Unread branch: deleted 90 days after created_at.
  • Exception: REMEDIATION_STAGE_CHANGED / FEE_WAIVER_GRANTED / PRICE_CHANGE_NOTICE / CONTRACT_RENEGOTIATION_NOTICE / SERVICE_LIMIT_NOTICE (the 5 mandatory notices) are excluded from this cleanup regardless of read status. That said, if you run DELETE /api/notifications/all (delete all notifications) yourself, those 5 types are removed too, since this exception only stops the server from deleting them on its own; it doesn’t take away your own delete option.

Employee reply push suppression

  • The decision to skip a push is made on the server, per recipient. It’s suppressed only while that person has their one-on-one chat with the employee open; replies posted in team chats or threads aren’t suppressed. If the mobile app happens to be in the foreground but the server doesn’t detect an active session, a push may still be delivered. The message will already be visible on screen, so it’s a visual duplicate rather than a missed notification, and the app does not filter it out at the client level.
  • Replies you’ve already read and replies from muted employees aren’t pushed (muting also stops the web speech-bubble signal). The agent_response toggle and Do Not Disturb are checked per recipient right before the push is sent.
  • Replies to turns that were delivered through Slack don’t trigger a mobile push.
  • Instead of a row, the web receives new replies through the WS event agent_message_arrived to show the speech bubble and toast, and recovers anything that arrived while disconnected through GET /api/agents/arrivals (the latest one per lane).

Troubleshooting checklist

  1. Is the master push toggle on? With it off, no notifications reach your phone for any category.
  2. Is the matching category toggle on? For example, if Employee response push is off, you won’t get reply pushes (the replies still stay in the chat).
  3. Are you inside Do Not Disturb hours? Double-check the start and end time and make sure your phone’s time zone is correct.
  4. Is the employee muted? In the Muted employees section, turn the toggle off to start receiving notifications from that employee again.
  5. Is notification permission granted on your device? Open Settings → Notifications → UpServe on iOS, or Settings → Apps → UpServe → Notifications on Android, and make sure notifications are allowed.
  6. Is the right account signed in on the device? Logging in with another account moves push delivery to the new account. Signing out disables push on that device for the previous account.
  7. Are you already viewing your one-on-one chat with that employee? Reply pushes are intentionally suppressed while you’re on that screen.
  8. Are you looking for a reply or a request in the Notification Center? Employee replies are in the chat and the Inbox, and requests to handle are under To do in the Inbox. The Notification Center only holds warnings, reports, suggestions, and records.

Device registration behavior

  • On first launch, the mobile app asks for notification permission and, once granted, registers the device with your UpServe account automatically. No manual step is required. (On Android 12 and older there is no permission prompt; the device registers directly.)
  • Signing in with a different account on the same device re-links the device to the new account.
  • Signing out deactivates the device for that account, so push delivery stops.
  • Push is supported on iOS and Android. Web browser push is not supported: the web uses only the Notification Center and the Inbox panel. If you sign in on multiple devices, all of them receive push.