Skip to main content

Outbound Messaging Controls

Personal Assistants can initiate conversations with contacts across multiple channels using the send_to tool. Administrators control which contacts each PA is allowed to message through Outbound Channel Access settings, and configure organization-wide rate limits to prevent runaway send behavior.

Per-Channel Access Settings

Each PA has an independent access level for every outbound channel. These settings live on the PA's configuration and default to internal for all channels when a PA is provisioned.

ValueWho the PA can message
noneNobody — outbound sends on this channel are blocked entirely
bo_onlyOnly the employee (Business Owner) the PA serves
internalContacts classified as Employee, Colleague, Business Owner, or with a direct relationship to the BO — external and vendor contacts are blocked
anyAll contacts, including external and vendor contacts

Channels with configurable access

ChannelSetting nameDefault
EmailOutbound Email AccessVaries (existing PAs retain their prior setting)
Microsoft TeamsOutbound Teams Accessinternal
SlackOutbound Slack Accessinternal
BoardroomOutbound Boardroom Accessinternal
PA HubOutbound PA Hub Accessinternal
Migration behavior

When the cross-channel messaging feature is enabled, existing PAs inherit their current Outbound Email Access value for all new channels. For example, a PA already permitted to send emails to any contact will also start with any access for Teams, Slack, Boardroom, and PA Hub.

How "internal" is evaluated

A contact is considered internal — and therefore permitted under the internal setting — if any of the following is true:

  • The contact's relationshipToBo is self, internal, or key_contact
  • The contact has at least one classification label of Employee, Colleague, or Business Owner

A contact with no classification labels and no relationship record is treated as external and blocked under internal. This fail-closed behavior prevents newly imported or unclassified contacts from bypassing access controls.

warning

Classification is evaluated at send time against the current contact record. If you reclassify a contact (for example, from External to Employee), the change takes effect immediately — the PA's next send_to call to that contact will use the updated classification.

Configuring access

  1. Navigate to Manage > Team > Users
  2. Open the employee whose PA you want to configure
  3. Select the Personal Assistant tab
  4. Under Outbound Channel Access, set the access level for each channel
  5. Click Save

Rate Limits

Organization-wide rate limits protect against runaway agent behavior. These settings apply to all agents (AICOS and PAs) and are configured at the account level.

SettingDefaultDescription
Max Send-To Per Execution5Maximum number of send_to calls an agent can make in a single execution. Resets with each new inbound message or wake-up trigger.
Max Outbound Per Agent Per Hour50Sliding-window hourly cap on outbound messages per agent, across all channels and tools.
Max Outbound Per Contact Per Hour10Sliding-window hourly cap on outbound messages to any single contact, across all agents.

Rate limits use a sliding window — not a fixed hourly bucket — to prevent bursts at hour boundaries. If a send fails due to a platform error (such as a Teams delivery failure), the per-execution counter is decremented so the agent can retry within the same execution without paying the cap twice.

When a rate limit is reached, the agent receives a rate_limit_exceeded response and will typically report the situation to the Business Owner before stopping the current execution.

Configuring rate limits

  1. Navigate to Manage > Account > Settings
  2. Scroll to the Agent Outbound Rate Limits section
  3. Adjust the values as needed
  4. Click Save
tip

The defaults (5 per execution, 50/hour per agent, 10/hour per contact) are appropriate for most organizations. Increase limits only if your agents are regularly hitting caps on legitimate outreach tasks. Monitor outbound activity in Monitor > Activity > Agent Activity to identify patterns before raising limits.