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

# Create Group

> Create a new WhatsApp group with specified participants.

## Overview

You can create a new WhatsApp group with a subject (name) and add initial participants. Optionally, you can set a description and automatically promote specific participants to admin status.

<Info>
  All phone numbers should be in international format without the '+' sign (e.g., 5511999999999).
</Info>

## Authentication

This endpoint requires authentication via the `apikey` header.

<ParamField path="header.apikey" type="string" required>
  Your Evolution API key for authentication.
</ParamField>

## Path Parameters

<ParamField path="path.instanceName" type="string" required>
  The name of your WhatsApp instance.
</ParamField>

## Request Body

<ParamField body="subject" type="string" required>
  The name of the group (maximum 25 characters).
</ParamField>

<ParamField body="participants" type="string[]" required>
  Array of participant phone numbers in international format (e.g., \["5511999999999", "5511888888888"]).
</ParamField>

<ParamField body="description" type="string">
  Optional group description.
</ParamField>

<ParamField body="promoteParticipants" type="boolean" default="false">
  If true, all participants will be promoted to admin status upon group creation.
</ParamField>

## Response

<ResponseField name="groupJid" type="string">
  The WhatsApp JID of the newly created group (format: `120363123456789@g.us`).
</ResponseField>

<ResponseField name="subject" type="string">
  The group name.
</ResponseField>

<ResponseField name="participants" type="array">
  Array of participant objects.

  <Expandable title="properties">
    <ResponseField name="id" type="string">
      Participant's WhatsApp JID.
    </ResponseField>

    <ResponseField name="isAdmin" type="boolean">
      Whether the participant is an admin.
    </ResponseField>

    <ResponseField name="isSuperAdmin" type="boolean">
      Whether the participant is a super admin.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="createdAt" type="number">
  Unix timestamp of when the group was created.
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl --request POST \
    --url https://api.example.com/group/create/my-instance \
    --header 'apikey: YOUR_API_KEY' \
    --header 'Content-Type: application/json' \
    --data '{
      "subject": "Project Team",
      "participants": [
        "5511999999999",
        "5511888888888",
        "5511777777777"
      ],
      "description": "Team collaboration group",
      "promoteParticipants": false
    }'
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch(
    'https://api.example.com/group/create/my-instance',
    {
      method: 'POST',
      headers: {
        'apikey': 'YOUR_API_KEY',
        'Content-Type': 'application/json'
      },
      body: JSON.stringify({
        subject: 'Project Team',
        participants: [
          '5511999999999',
          '5511888888888',
          '5511777777777'
        ],
        description: 'Team collaboration group',
        promoteParticipants: false
      })
    }
  );

  const data = await response.json();
  ```

  ```python Python theme={null}
  import requests

  response = requests.post(
      'https://api.example.com/group/create/my-instance',
      headers={
          'apikey': 'YOUR_API_KEY',
          'Content-Type': 'application/json'
      },
      json={
          'subject': 'Project Team',
          'participants': [
              '5511999999999',
              '5511888888888',
              '5511777777777'
          ],
          'description': 'Team collaboration group',
          'promoteParticipants': False
      }
  )

  data = response.json()
  ```
</RequestExample>

<ResponseExample>
  ```json 201 Success theme={null}
  {
    "groupJid": "120363123456789@g.us",
    "subject": "Project Team",
    "participants": [
      {
        "id": "5511999999999@s.whatsapp.net",
        "isAdmin": false,
        "isSuperAdmin": false
      },
      {
        "id": "5511888888888@s.whatsapp.net",
        "isAdmin": false,
        "isSuperAdmin": false
      },
      {
        "id": "5511777777777@s.whatsapp.net",
        "isAdmin": false,
        "isSuperAdmin": false
      }
    ],
    "createdAt": 1709553600
  }
  ```

  ```json 400 Bad Request theme={null}
  {
    "error": "Invalid request",
    "message": "Subject is required and must not exceed 25 characters"
  }
  ```

  ```json 401 Unauthorized theme={null}
  {
    "error": "Unauthorized",
    "message": "Invalid API key"
  }
  ```

  ```json 404 Not Found theme={null}
  {
    "error": "Instance not found",
    "message": "The instance 'my-instance' does not exist"
  }
  ```
</ResponseExample>

## Usage Notes

<Tip>
  WhatsApp requires at least one participant (besides the creator) to create a group.
</Tip>

<Warning>
  Invalid phone numbers or numbers not registered on WhatsApp will be silently skipped during group creation.
</Warning>

<Note>
  The instance owner is automatically added as the group creator and super admin.
</Note>
