---
title: "Create group"
method: POST
path: "/groups"
tags: ["Groups"]
---

# Create group

`POST /groups`

Creates a new user group with the current user as the owner.

## Request body

- GroupCreate
  - `name` string, required
  - `description` string, nullable
  - `type` 'domain' | 'list', required
  - `domain` string, hostname — Required if type is 'domain'.
  - `users` string[] — Array of user IDs. Only applicable if type is 'list'.

## Response `201`

Group created successfully.

- Group
  - `id` string, ulid, required
  - `owner` string, ulid, required
  - `name` string, required
  - `description` string, nullable
  - `type` 'domain' | 'list', required

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `409` — Conflict
- `422` — Unprocessable Entity

## Changes

- **2025-07-13** `0d7f3c750979` — 1 breaking, 3 warning, 2 info
  - the `domain` request property format changed from `fqdn` to `hostname`
  - removed the request property `members`
  - removed the optional property `domain` from the response with the `201` status
  - removed the optional property `members` from the response with the `201` status
  - …2 more

[Change history](https://skmtc.dev/osdg-iiith/apis/forms-portal-api/changes/groups/post.md)

---

[API](https://skmtc.dev/osdg-iiith/apis/forms-portal-api.md) · [All operations](https://skmtc.dev/osdg-iiith/apis/forms-portal-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/osdg-iiith/forms-portal-api/revisions/799e5a4fd31a/schema)
