---
title: "POST /api/v3/accounts/{account_id}/group-permissions/{group_id}/"
method: POST
path: "/api/v3/accounts/{account_id}/group-permissions/{group_id}/"
tags: ["Groups"]
---

# POST /api/v3/accounts/{account_id}/group-permissions/{group_id}/

`POST /api/v3/accounts/{account_id}/group-permissions/{group_id}/`

## Request

- Base URL: `https://cloud.getdbt.com`
- URL: `https://cloud.getdbt.com/api/v3/accounts/{account_id}/group-permissions/{group_id}/`
- Auth: HTTP bearer

## Path parameters

- `account_id` integer, required
- `group_id` integer, required

## Request body

- GroupPermissionListRequest
  - GroupPermissionRequest[], required
    - `account_id` integer, required
    - `group_id` integer, required
    - `project_id` integer
    - `all_projects` boolean, required
    - `permission_set` 'account_admin' | 'account_viewer' | 'admin' | 'analyst' | 'analyst_read' | 'billing_admin' | 'cost_insights_admin' | 'cost_insights_viewer' | 'cost_management_admin' | 'cost_management_viewer' | 'database_admin' | 'developer' | 'fusion_admin' | 'git_admin' | 'job_admin' | 'job_creator' | 'job_runner' | 'job_viewer' | 'manage_marketplace_apps' | 'member' | 'metadata_only' | 'notification_manager' | 'owner' | 'project_creator' | 'readonly' | 'scim_only' | 'security_admin' | 'semantic_layer_only' | 'stakeholder' | 'team_admin' | 'webhooks_only', required: * `account_admin` - ACCOUNT_ADMIN * `account_viewer` - ACCOUNT_VIEWER * `admin` - ADMIN * `analyst` - ANALYST * `analyst_read` - ANALYST_READ * `billing_admin` - BILLING_ADMIN * `cost_insights_admin` - COST_INSIGHTS_ADMIN * `cost_insights_viewer` - COST_INSIGHTS_VIEWER * `cost_management_admin` - COST_MANAGEMENT_ADMIN * `cost_management_viewer` - COST_MANAGEMENT_VIEWER * `database_admin` - DATABASE_ADMIN * `developer` - DEVELOPER * `fusion_admin` - V2_MIGRATION_ADMIN * `git_admin` - GIT_ADMIN * `job_admin` - JOB_ADMIN * `job_creator` - JOB_CREATOR * `job_runner` - JOB_RUNNER * `job_viewer` - JOB_VIEWER * `manage_marketplace_apps` - MANAGE_MARKETPLACE_APPS * `member` - MEMBER * `metadata_only` - METADATA_ONLY * `notification_manager` - NOTIFICATION_MANAGER * `owner` - OWNER * `project_creator` - PROJECT_CREATOR * `readonly` - READONLY * `scim_only` - SCIM_ONLY * `security_admin` - SECURITY_ADMIN * `semantic_layer_only` - SEMANTIC_LAYER_ONLY * `stakeholder` - STAKEHOLDER * `team_admin` - TEAM_ADMIN * `webhooks_only` - WEBHOOKS_ONLY
    - `permission_level` integer
    - `state` integer: A value of 1 means this entity is active and a value of 2 means this entity is deleted
    - `writable_environment_categories` string[], required: Environment types the permission set can write to. Allowed values: development, other, staging, production, all. `other` is shown as General in the dbt UI.

## Response `200`

- GroupPermissionListEnveloped
  - `data` GroupPermissionResponse[], required
    - `id` integer, required
    - `account_id` integer
    - `group_id` integer
    - `project_id` integer
    - `all_projects` boolean
    - `permission_set` 'account_admin' | 'account_viewer' | 'admin' | 'analyst' | 'analyst_read' | 'billing_admin' | 'cost_insights_admin' | 'cost_insights_viewer' | 'cost_management_admin' | 'cost_management_viewer' | 'database_admin' | 'developer' | 'fusion_admin' | 'git_admin' | 'job_admin' | 'job_creator' | 'job_runner' | 'job_viewer' | 'manage_marketplace_apps' | 'member' | 'metadata_only' | 'notification_manager' | 'owner' | 'project_creator' | 'readonly' | 'scim_only' | 'security_admin' | 'semantic_layer_only' | 'stakeholder' | 'team_admin' | 'webhooks_only': * `account_admin` - ACCOUNT_ADMIN * `account_viewer` - ACCOUNT_VIEWER * `admin` - ADMIN * `analyst` - ANALYST * `analyst_read` - ANALYST_READ * `billing_admin` - BILLING_ADMIN * `cost_insights_admin` - COST_INSIGHTS_ADMIN * `cost_insights_viewer` - COST_INSIGHTS_VIEWER * `cost_management_admin` - COST_MANAGEMENT_ADMIN * `cost_management_viewer` - COST_MANAGEMENT_VIEWER * `database_admin` - DATABASE_ADMIN * `developer` - DEVELOPER * `fusion_admin` - V2_MIGRATION_ADMIN * `git_admin` - GIT_ADMIN * `job_admin` - JOB_ADMIN * `job_creator` - JOB_CREATOR * `job_runner` - JOB_RUNNER * `job_viewer` - JOB_VIEWER * `manage_marketplace_apps` - MANAGE_MARKETPLACE_APPS * `member` - MEMBER * `metadata_only` - METADATA_ONLY * `notification_manager` - NOTIFICATION_MANAGER * `owner` - OWNER * `project_creator` - PROJECT_CREATOR * `readonly` - READONLY * `scim_only` - SCIM_ONLY * `security_admin` - SECURITY_ADMIN * `semantic_layer_only` - SEMANTIC_LAYER_ONLY * `stakeholder` - STAKEHOLDER * `team_admin` - TEAM_ADMIN * `webhooks_only` - WEBHOOKS_ONLY
    - `permission_level` integer
    - `state` integer: A value of 1 means this entity is active and a value of 2 means this entity is deleted
    - `writable_environment_categories` string[]: Environment types the permission set can write to. Allowed values: development, other, staging, production, all. `other` is shown as General in the dbt UI.
    - `created_at` string, date-time, required
    - `updated_at` string, date-time, required
  - `extra` Extra, required
    - `filters` object, required: Filters applied to the request
    - `order_by` string, required: Ordering applied to the request
    - `pagination` CustomPagination, required
      - `count` integer, required: Number of items in the current page
      - `total_count` integer, required: Total number of items
  - `status` ResponseStatus, required
    - `code` integer: HTTP status code
    - `is_success` boolean, required: Whether the request was successful or not
    - `user_message` string, required: End-user friendly success or error message
    - `developer_message` string, required: Developer friendly success or error message

## Changes

- **2026-10-06** (v3) `7d5c1b4c8d8a`: 2 breaking
  - for the `path` request parameter `account_id`, the format changed from no format to `int64`
  - for the `path` request parameter `group_id`, the format changed from no format to `int64`
- **2026-05-18** (v3) `9ef47de9797a`: 1 warning, 3 info
  - added the new `notification_manager` enum value to the `data/items/permission_set` response property for the response status `200`
  - added the new `notification_manager` enum value to the request property `items/permission_set` (media type: application/json)
  - added the new `notification_manager` enum value to the request property `items/permission_set` (media type: application/x-www-form-urlencoded)
  - added the new `notification_manager` enum value to the request property `items/permission_set` (media type: multipart/form-data)
- **2026-05-08** (v3) `82678d3ae600`: 1 warning, 3 info
  - added the new `analyst_read` enum value to the `data/items/permission_set` response property for the response status `200`
  - added the new `analyst_read` enum value to the request property `items/permission_set` (media type: application/json)
  - added the new `analyst_read` enum value to the request property `items/permission_set` (media type: application/x-www-form-urlencoded)
  - added the new `analyst_read` enum value to the request property `items/permission_set` (media type: multipart/form-data)
- …earlier changes not shown

[Operation history](https://skmtc.dev/getdbt/apis/dbt-cloud-api-v2/changes/api/v3/accounts/:account_id/group-permissions/:group_id/post.md)

---

[API](https://skmtc.dev/getdbt/apis/dbt-cloud-api-v2.md) - [All operations](https://skmtc.dev/getdbt/apis/dbt-cloud-api-v2/llms.txt) - [OpenAPI document](https://skmtc.dev/getdbt/apis/dbt-cloud-api-v2/revisions/2448b375ac2f?raw)
