> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Group

> Creates a new group.

## Error codes

This operation may return the following PlayFab errors:

| Error | Code |
| --- | --- |
| GroupNameNotAvailable | 1368 |




## OpenAPI

````yaml /services/playfab/api-references/rest/groups/groups.openapi.json post /Group/CreateGroup
openapi: 3.0.0
info:
  version: '260922'
  title: PlayFab Groups API
  description: >-
    The Groups API is designed for any permanent or semi-permanent collections
    of Entities (players, or non-players). If you want to make
    Guilds/Clans/Corporations/etc., then you should use groups. Groups can also
    be used to make chatrooms, parties, or any other persistent collection of
    entities.
  termsOfService: https://playfab.com/terms/
  contact:
    url: https://community.playfab.com/index.html
  license:
    name: Apache 2.0
    url: https://github.com/PlayFab/API_Specs/blob/master/LICENSE
servers:
  - url: https://{titleId}.playfabapi.com
    description: PlayFab title endpoint
    variables:
      titleId:
        default: your_title_id
        description: Your PlayFab title ID (hex).
security: []
tags:
  - name: Groups
    description: Groups Management APIs
paths:
  /Group/CreateGroup:
    post:
      tags:
        - Groups
      summary: Create Group
      description: |
        Creates a new group.

        ## Error codes

        This operation may return the following PlayFab errors:

        | Error | Code |
        | --- | --- |
        | GroupNameNotAvailable | 1368 |
      operationId: CreateGroup
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateGroupRequest'
        description: >-
          Creates a new group, as well as administration and member roles, based
          off of a title's group template. Returns information about the group
          that was created.
      responses:
        '200':
          $ref: '#/components/responses/CreateGroupResponse'
        '400':
          $ref: '#/components/responses/ApiErrorWrapper'
      security:
        - EntityToken: []
components:
  schemas:
    CreateGroupRequest:
      description: >-
        Creates a new group, as well as administration and member roles, based
        off of a title's group template. Returns information about the group
        that was created.
      type: object
      properties:
        CustomTags:
          description: >-
            The optional custom tags associated with the request (e.g. build
            number, external trace identifiers, etc.).
          type: object
        Entity:
          allOf:
            - $ref: '#/components/schemas/EntityKey'
          description: >-
            The optional entity to perform this action on. Defaults to the
            currently logged in entity.
        GroupName:
          description: The name of the group. This is unique at the title level by default.
          type: string
      required:
        - GroupName
      example:
        GroupName: Example Group
    EntityKey:
      description: >-
        Combined entity type and ID structure which uniquely identifies a single
        entity.
      type: object
      properties:
        Id:
          description: Unique ID of the entity.
          type: string
        Type:
          description: >-
            Entity type. See
            https://learn.microsoft.com/gaming/playfab/features/data/entities/available-built-in-entity-types
          type: string
      required:
        - Id
    CreateGroupResponse:
      type: object
      properties:
        AdminRoleId:
          description: The ID of the administrator role for the group.
          type: string
        Created:
          description: The server date and time the group was created.
          type: string
        Group:
          allOf:
            - $ref: '#/components/schemas/EntityKey'
          description: The identifier of the group
        GroupName:
          description: The name of the group.
          type: string
        MemberRoleId:
          description: The ID of the default member role for the group.
          type: string
        ProfileVersion:
          description: >-
            The current version of the profile, can be used for concurrency
            control during updates.
          type: number
          x-actualtype: int32
        Roles:
          description: The list of roles and names that belong to the group.
          type: object
      required:
        - Group
        - Created
        - ProfileVersion
      example:
        GroupName: Example Group
        Group:
          Id: ABC1234ABC
        MemberRoleId: ABC123DEF
        AdminRoleId: ABC123456
        Roles:
          admins: Administrators
          members: Members
          awesomepeople: Some Other Role
        Created: '2017-12-31T11:59:59'
        ProfileVersion: 17
    ApiErrorWrapper:
      description: The basic wrapper around every failed API response
      type: object
      properties:
        code:
          description: Numerical HTTP code
          type: integer
        status:
          description: String HTTP code
          type: string
        error:
          description: Playfab error code
          type: string
        errorCode:
          description: Numerical PlayFab error code
          type: integer
        errorMessage:
          description: Description for the PlayFab errorCode
          type: string
        errorDetails:
          description: Detailed description of individual issues with the request object
          type: object
      required:
        - code
        - errorCode
  responses:
    CreateGroupResponse:
      description: ''
      content:
        application/json:
          schema:
            type: object
            properties:
              code:
                type: integer
                description: >-
                  The Http status code. If X-ReportErrorAsSuccess header is set
                  to true, this will report the actual http error code.
              status:
                type: string
                description: The Http status code as a string.
              data:
                $ref: '#/components/schemas/CreateGroupResponse'
            example:
              code: 200
              status: OK
              data:
                GroupName: Example Group
                Group:
                  Id: ABC1234ABC
                MemberRoleId: ABC123DEF
                AdminRoleId: ABC123456
                Roles:
                  admins: Administrators
                  members: Members
                  awesomepeople: Some Other Role
                Created: '2017-12-31T11:59:59'
                ProfileVersion: 17
    ApiErrorWrapper:
      description: This is the outer wrapper for all responses with errors
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiErrorWrapper'
  securitySchemes:
    EntityToken:
      type: apiKey
      in: header
      name: X-EntityToken
      description: >-
        This API requires an Entity Session Token, available from the Entity
        GetEntityToken method.

````

## Related topics

- [Create Group](/services/playfab/api-references/rest/groups/groups/create-group.md)
- [PFGroupsCreateGroupRequest](/services/playfab/api-references/c/pfgroupstypes/structs/pfgroupscreategrouprequest.md)
- [PFGroupsCreateGroupAsync](/services/playfab/api-references/c/pfgroups/functions/pfgroupscreategroupasync.md)
- [PFGroupsCreateGroupResponse](/services/playfab/api-references/c/pfgroupstypes/structs/pfgroupscreategroupresponse.md)
- [PFGroupsCreateGroupRoleRequest](/services/playfab/api-references/c/pfgroupstypes/structs/pfgroupscreategrouprolerequest.md)
