---
title: "Change the settings for members' agents"
method: PUT
path: "/v1/org/workbot-settings/proactive"
tags: ["Organizations"]
---

# Change the settings for members' agents

`PUT /v1/org/workbot-settings/proactive`

## Request

- Base URL: `https://api.openworklabs.com`
- URL: `https://api.openworklabs.com/v1/org/workbot-settings/proactive`
- Auth: one of:
  - API key in header `x-api-key`
  - HTTP bearer

Changes any subset of how members' agents work. Policy fields (on/off, working hours, daily limit, members' starting choice, default destination: a Workbot DM or nowhere, never a channel) apply from the next pass; members' own choices (muted, snoozed, turned off, their own destination) are kept. `sources` sets what agents may read: `calendar`, `email`, `chat` and `connections` by connection id, each `everyone` (on for everyone), `members` (members choose; null also means this) or `off` (not allowed). `sources.coreConnections.{calendar,email,chat}` picks which of the organization's connections serve that source (ids from `sourceConnections`; null goes back to every connection that serves it), so a member's other accounts on the same service are never read or asked for. Members can never read a source the admin didn't allow or turn off one that is on for everyone. A change to responsibilities or instructions saves a new version of the organization's "Your agent" template. Agents only read and never send, edit or delete anything for members. Requires the workbotProactive feature, Workbot on this deployment and Manage OpenWork Models.

## Request body

- WorkbotProactiveSettingsInput
  - `enabled` boolean
  - `leadMinutes` integer
  - `workingDays` 'weekdays' | 'everyday'
  - `startHour` integer
  - `endHour` integer
  - `dailyCap` integer
  - `membersStart` 'opted_in' | 'opted_out'
  - `destination` 'workbot_dm', nullable
  - `sources` object
    - `calendar` 'everyone' | 'members' | 'off'
    - `email` 'everyone' | 'members' | 'off'
    - `chat` 'everyone' | 'members' | 'off'
    - `coreConnections` object
      - `calendar` string[], nullable
      - `email` string[], nullable
      - `chat` string[], nullable
    - `connections` object
  - `responsibilities` object
    - `morning_brief` boolean
    - `meeting_prep` boolean
    - `calendar_changes` boolean
    - `waiting_on_you` boolean
  - `instructions` string

## Response `200`

Agent settings saved.

- WorkbotProactiveSettings
  - `settings` object, required
    - `enabled` boolean, required
    - `leadMinutes` integer, required
    - `workingDays` 'weekdays' | 'everyday', required
    - `startHour` integer, required
    - `endHour` integer, required
    - `dailyCap` integer, required
    - `membersStart` 'opted_in' | 'opted_out', required
    - `destination` 'workbot_dm', nullable, required
    - `sources` object, required
      - `calendar` 'everyone' | 'members' | 'off', required
      - `email` 'everyone' | 'members' | 'off', required
      - `chat` 'everyone' | 'members' | 'off', required
      - `coreConnections` object
        - `calendar` string[]
        - `email` string[]
        - `chat` string[]
      - `connections` object, required
  - `template` object, required
    - `responsibilities` object, required
      - `morning_brief` boolean, required
      - `meeting_prep` boolean, required
      - `calendar_changes` boolean, required
      - `waiting_on_you` boolean, required
    - `instructions` string, required
    - `versionId` string, nullable, required
    - `version` integer, required
  - `slackReady` boolean, required
  - `runnerReady` boolean, required
  - `sourceConnections` object, nullable, required
    - `calendar` object[], required
      - `id` string, required
      - `name` string, required
      - `url` string, required
    - `email` object[], required
      - `id` string, required
      - `name` string, required
      - `url` string, required
    - `chat` object[], required
      - `id` string, required
      - `name` string, required
      - `url` string, required
    - `other` object[], required
      - `id` string, required
      - `name` string, required
      - `url` string, required

## Other responses

- `400`: The request was invalid, or the workday would end before it starts.
- `401`: Authentication required.
- `403`: The caller lacks the Manage OpenWork Models permission.
- `404`: The organization was not found, or Workbot is off.

## Changes

- **2026-10-29** `93c386b4754d`: 2 info
  - added the new optional request property `sources/coreConnections`
  - added the optional property `settings/sources/coreConnections` to the response with the `200` status
- **2026-10-28** `1f502c82a6e0`: 5 breaking, 1 info
  - the `sourceConnections` response's property type changed from `object` to no type for status `200`
  - removed the required property `sourceConnections/calendar` from the response with the `200` status
  - removed the required property `sourceConnections/chat` from the response with the `200` status
  - removed the required property `sourceConnections/email` from the response with the `200` status
  - …2 more
- **2026-10-28** `317b4b346804`: 3 info
  - added the new optional request property `sources`
  - added the required property `settings/sources` to the response with the `200` status
  - added the required property `sourceConnections` to the response with the `200` status
- **2026-10-27** `2badfe0bc939`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/openworklabs/apis/den-api/changes/v1/org/workbot-settings/proactive/put.md)

---

[API](https://skmtc.dev/openworklabs/apis/den-api.md) - [All operations](https://skmtc.dev/openworklabs/apis/den-api/llms.txt) - [OpenAPI document](https://skmtc.dev/openworklabs/apis/den-api/revisions/93c386b4754d?raw)
