WAHA 2025.2

February 27, 2025 in Releases by devlikeapro4 minutes

Image for WAHA 2025.2

🎉 We are thrilled to announce the changes we made during the WAHA 2025.2 🎉

🆔 Profile API

Managing your WhatsApp profile has never been easier.

With the new 🆔 Profile API , you can customize your profile details!

Retrieve your profile details

GET /api/{SESSION}/profile

Set Your Profile Name

PUT /api/{session}/profile/name

Set a custom status (“About”)

PUT /api/{session}/profile/status

Update a profile picture

PUT /api/{session}/profile/picture
DELETE /api/{session}/profile/picture

📢🔎 Search Channels API

Available in ➕ WAHA Plus version.

Discovering public channels is now effortless with the 📢 Channels - Search API!

Search channels by view

You can search public (not subscribed yet) channels by view:

POST /api/{session}/channels/search/by-view

Search channels by text

You can search public (not subscribed yet) channels by text:

POST /api/{session}/channels/search/by-text

👥 Update Group Picture API

Added 👥 Set Group Picture API to update the group picture.

Set Group Picture

Available in ➕ WAHA Plus version.

POST /api/{SESSION}/groups/{ID}/picture
  • {SESSION} - session name
  • {ID} - group id. Remember to encode @ symbol - 123123123123%40g.us
Body
{
  "file": {
    "url": "https://github.com/devlikeapro/waha/raw/core/examples/waha.jpg"
  }
}

👥 Groups API - NOWEB, GOWS

NOWEB and GOWS engines now support the 👥 Groups API!

WEBJSNOWEBGOWS
POST /api/{session}/groups✔️✔️✔️
GET /api/{session}/groups✔️✔️✔️
GET /api/{session}/groups/join-info✔️✔️✔️
POST /api/{session}/groups/join✔️✔️✔️
GET /api/{session}/groups/{id}✔️✔️✔️
DELETE /api/{session}/groups/{id}✔️
POST /api/{session}/groups/{id}/leave✔️✔️✔️
GET /api/{session}/groups/{id}/picture✔️✔️✔️
POST /api/{session}/groups/{id}/picture
DELETE /api/{session}/groups/{id}/picture
PUT /api/{session}/groups/{id}/description✔️✔️✔️
PUT /api/{session}/groups/{id}/subject✔️✔️✔️
GET /api/{session}/groups/{id}/invite-code✔️✔️✔️
POST /api/{session}/groups/{id}/invite-code/revoke✔️✔️✔️
GET /api/{session}/groups/{id}/settings/security/info-admin-only✔️✔️✔️
PUT /api/{session}/groups/{id}/settings/security/info-admin-only✔️✔️✔️
GET /api/{session}/groups/{id}/settings/security/messages-admin-only✔️✔️✔️
PUT /api/{session}/groups/{id}/settings/security/messages-admin-only✔️✔️✔️
GET /api/{session}/groups/{id}/participants✔️✔️✔️
POST /api/{session}/groups/{id}/participants/add✔️✔️✔️
POST /api/{session}/groups/{id}/participants/remove✔️✔️✔️
POST /api/{session}/groups/{id}/admin/promote✔️✔️✔️
POST /api/{session}/groups/{id}/admin/demote✔️✔️✔️


🔄 group.v2.* events

We added new group.v2.* events and made payload body the same across of all engines!

Check 🔄 Webhooks or 👥 Groups API for more details.

group.v2.join

group.v2.join happens when you join or are added to a group.

group.v2.join
{
  "event": "group.v2.join",
  "session": "default",
  "payload": {
    "group": {
      "id": "1231231232@g.us",
      "subject": "Work Group",
      "description": "Group description",
      "invite": "https://chat.whatsapp.com/invitecode",
      "membersCanAddNewMember": true,
      "membersCanSendMessages": true,
      "newMembersApprovalRequired": true,
      "participants": [
        {
          "id": "99999@c.us",
          "role": "participant"
        }
      ]
    },
    "timestamp": 789456123,
    "_data": {}
  }
}
  • group - group information
    • id - group ID
    • subject - group name
    • description - group description
    • invite - invite link
    • membersCanAddNewMember - if members can add new members
    • membersCanSendMessages - if members can send messages
    • newMembersApprovalRequired - if new members need approval from admins
    • participants - list of participants (check group.v2.participants for more details)
  • timestamp - event timestamp
  • _data - engine specific data

group.v2.leave

group.v2.leave happens when you leave or are removed from a group.

group.v2.leave
{
  "event": "group.v2.leave",
  "session": "default",
  "payload": {
    "group": {
      "id": "1231231232@g.us"
    },
    "timestamp": 789456123,
    "_data": {}
  }
}
  • group.id - group ID
  • timestamp - event timestamp
  • _data - engine specific data

group.v2.participants

group.v2.participants happens when someone join or leave a group.

ℹ️ It might duplicate group.v2.join and group.v2.leave events for your ID.

group.v2.participants
{
  "event": "group.v2.participants",
  "session": "default",
  "payload": {
    "type": "join",
    "timestamp": 1666943582,
    "group": {
      "id": "123456789@g.us"
    },
    "participants": [
      {
        "id": "123456789@c.us",
        "role": "participant"
      }
    ],
    "_data": {}
  }
}
  • type - event type. Possible values:
    • join - when someone joins the group
    • leave - when someone leaves the group
    • promote - when someone is promoted to admin
    • demote - when someone is demoted to regular participant
  • participants - list of participants (contains only changed participants)
    • id - participant ID
    • role - participant role. Possible values:
      • left - left the group
      • participant - regular participant
      • admin - group admin
      • superadmin - group super admin
  • _data - engine specific data

group.v2.update

group.v2.update happens when the group information is updated.

group.v2.update
{
  "event": "group.v2.update",
  "session": "default",
  "payload": {
    "group": {
      "id": "1231231232@g.us",
      "subject": "New Work Group Name"
    },
    "timestamp": 789456123,
    "_data": {}
  }
}
  • group - group information with updates field (may contain all fields in some engines)
  • timestamp - event timestamp
  • _data - engine specific data

And More!

Check out the full list of changes in the WAHA 2025.2 🎉