---
title: "Update group"
method: POST
path: "/api/v1/groups/{id}/update/"
tags: ["Groups"]
---

# Update group

`POST /api/v1/groups/{id}/update/`

Update group settings. The authenticated user must be allowed to manage the group.

## Path parameters

- `id` integer, required

## Response `200`

The request succeeded and returned group details.

- object
  - `success` boolean
  - `data` Group — Group or organization account visible to the current user.
    - `id` integer, required — Numeric group ID.
    - `status` 1 | 2, required — | ID | Name | Description | |---:|:-------|------------:| | 1 | STATUS_ENABLED | Active group | | 2 | STATUS_DISABLED | Disabled group |
    - `name` string, required — Group display name.
    - `contact` string, required — Contact information for the group or organization.
    - `additional_information` string, required — Additional notes or administrative information for the group.
    - `created_at` integer, required — Group creation timestamp in milliseconds.
    - `updated_at` integer, required — Group update timestamp in milliseconds.
    - `group_balance` Account, required — Balance counters for a user or group account.
      - `balance` integer, required — Available balance in pages. One page is 275 words.
      - `bonus` integer, required — Available bonus balance in pages. One page is 275 words.
      - `hold` integer, required — Balance on hold. This field is deprecated.
      - `hold_bonus` integer, required — Bonus balance on hold. This field is deprecated.
      - `ai_balance` integer, required — Available AI-check balance.
    - `current_user_role` 1 | 2 | 3, required — | ID | Name | Description | |:---|:-------|------------:| | 1 | ROLE_OWNER | Owner or administrator of group | | 2 | ROLE_TEACHER | Teacher | | 3 | ROLE_STUDENT | Student |
    - `balance_type` 1 | 2 — | ID | Name | Description | |:---|:-------|------------:| | 1 | BALANCE_TYPE_PER_PAGES | Balance is limited by pages. | | 2 | BALANCE_TYPE_PER_USER | Balance is limited by number of users. |
    - `max_members` integer, nullable — Maximum number of members allowed when the group uses per-user billing.
    - `cur_members` integer — Current number of members when the group uses per-user billing.
    - `custom_author_required` boolean — Whether teachers and owners must provide `custom_author` when submitting checks for this group.
    - `ai_checks_enabled` boolean — Whether AI detection checks are enabled for this group.
    - `limit` integer, nullable — Page limit for the current user in this group. `null` means no explicit member limit.
    - `teachers` integer — Number of teacher members in the group.
    - `students` integer — Number of student members in the group.
    - `owners` integer — Number of owner members in the group.
    - `sale_status` integer, nullable — Internal sale status for the group, when available.
    - `expired_at` integer, nullable — Group expiration timestamp in milliseconds, or `null`.
    - `api_token` string, nullable — Group API token. Returned only when the current user is a group owner.
    - `hide_new_check_for_student` boolean — Whether the new-check action is hidden for students.
    - `hide_citation_generator` boolean — Whether citation generator features are hidden for the group.
    - `show_lti_instructions` boolean — Whether LTI setup instructions are visible for the group.
    - `show_lti_grading` boolean — Whether LTI grading features are visible for the group.
    - `created_by_user` User — User account summary.
      - `id` integer — Numeric user ID.
      - `name` string — User display name.
      - `email` string, email — User email address.
      - `created_at` integer — User creation timestamp in milliseconds.
      - `updated_at` integer — User update timestamp in milliseconds.
      - `is_blocked` boolean — Whether the user account is blocked.
      - `allowed_languages` string[] — Language codes the user can submit for checking.
      - `balance` Account — Balance counters for a user or group account.
        - `balance` integer, required — Available balance in pages. One page is 275 words.
        - `bonus` integer, required — Available bonus balance in pages. One page is 275 words.
        - `hold` integer, required — Balance on hold. This field is deprecated.
        - `hold_bonus` integer, required — Bonus balance on hold. This field is deprecated.
        - `ai_balance` integer, required — Available AI-check balance.
      - `balance_type` integer — User billing/balance type.
      - `avatar` string, nullable — URL of the user avatar image, when available.
      - `sale_role` integer, nullable — Internal sale role for the user, when assigned.
      - `ai_checks_enabled` boolean — Whether AI detection checks are enabled for this user.
      - `is_test` boolean — Whether this is a test account.
      - `is_guest` boolean — Whether this account is a guest account.
      - `is_change_password_needed` boolean — Whether the user must change an autogenerated password.
      - `is_email_verification_needed` boolean — Whether this user should complete email verification.
      - `orders` integer — Number of paid orders for the user.
      - `not_ai_orders` integer — Number of paid non-AI orders for the user.
      - `last_ai_order_paid_days_ago` integer, nullable — Days since the user's most recent paid AI order, or `null`.

## Other responses

- `400` — The request is invalid. Check required fields, field formats, and resource ownership.
- `403` — Authentication or authorization failed because the token is missing, invalid, blocked, or not allowed to access the resource.
- `404` — The requested resource was not found.

---

[API](https://skmtc.net/plagiarismcheck/apis/plagiarismcheck-org-api.md) · [All operations](https://skmtc.net/plagiarismcheck/apis/plagiarismcheck-org-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/plagiarismcheck/plagiarismcheck-org-api/versions/034b4999350e/schema)
