---
title: "Set Company Notification Preference"
method: PUT
path: "/internal/notifications/companies/{company_id}/preferences"
tags: ["internal"]
---

# Set Company Notification Preference

`PUT /internal/notifications/companies/{company_id}/preferences`

## Request

- Base URL: `https://api.kobaltlabs.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.kobaltlabs.com/internal/notifications/companies/{company_id}/preferences`
- Auth: none declared

Set one notification type to the same value for every user at the company.

Users who lack the permission the notification requires are skipped, so a
bulk change never grants a notification a user can't access.

## Path parameters

- `company_id` string, uuid, required

## Request body

- SetCompanyNotificationPreferenceRequest
  - `notification_type` string, required
  - `enabled` boolean, required
  - `scope` 'all' | 'assigned': How widely a user wants to receive a (scope-supporting) notification. ALL means every event of this type at the company; ASSIGNED narrows it to the subset that concerns the user. What "assigned" resolves to is defined by the definition's AssignedScopeSpec.kind.

## Response `200`

Successful Response

- CompanyNotificationsResponse
  - `notification_types` NotificationTypeOption[], required
    - `notification_type` string, required
    - `label` string, required
    - `description` string, required
    - `default_enabled` boolean, required
    - `required_permission` string, nullable, required
    - `supports_assigned_scope` boolean, required
    - `assigned_scope_label` string, nullable, required
    - `default_scope` 'all' | 'assigned', required: How widely a user wants to receive a (scope-supporting) notification. ALL means every event of this type at the company; ASSIGNED narrows it to the subset that concerns the user. What "assigned" resolves to is defined by the definition's AssignedScopeSpec.kind.
  - `users` CompanyUserNotificationPreferences[], required
    - `user_id` string, uuid, required
    - `first_name` string, required
    - `last_name` string, required
    - `email` string, required
    - `enabled` object, required
    - `permitted` object, required
    - `scope` object, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/kobaltlabs/apis/fastapi.md) - [All operations](https://skmtc.dev/kobaltlabs/apis/fastapi/llms.txt) - [OpenAPI document](https://skmtc.dev/kobaltlabs/apis/fastapi/revisions/8587332d5e43?raw)
