Use cases

WhatsApp community API for developers

HelloHop gives developers a REST API to create WhatsApp communities and manage their linked groups. Use your linked channel to create a community, add a subgroup, link or unlink an existing group, read participants and fetch an invite link. Requests use your channel token, and the responses identify groups by JID.

Facts (as of October 2026, API v1)

  • Creating a community returns a group object with is_community: true.
  • A community subject is 1 to 25 characters; subgroup creation accepts up to 50 participants.
  • A new community includes an announcement subgroup created by WhatsApp.
  • The sandbox allows 5 group adds a day; community and subgroup operations consume that allowance.

Build around communities and subgroups

Create a community

curl
API=https://api.hellohop.app/v1
BASE="$API/sessions/$CHANNEL_ID"
AUTH="Authorization: Bearer $CHANNEL_TOKEN"

curl -s -X POST "$BASE/communities" \
  -H "$AUTH" \
  -H "Content-Type: application/json" \
  -d '{"subject":"My community"}'
Node.js
const API = 'https://api.hellohop.app/v1';
const { CHANNEL_ID, CHANNEL_TOKEN } = process.env;
const BASE = `${API}/sessions/${CHANNEL_ID}`;
const headers = {
  Authorization: `Bearer ${CHANNEL_TOKEN}`,
  'Content-Type': 'application/json',
};

async function call(method, path, body) {
  const res = await fetch(`${BASE}${path}`, {
    method,
    headers,
    body: body === undefined ? undefined : JSON.stringify(body),
  });
  const data = await res.json();
  if (!res.ok) throw new Error(`${res.status} ${data.code}: ${data.error}`);
  return data;
}

const community = await call('POST', `/communities`, {"subject":"My community"});
console.log(community);

Community routes

MethodPathWhat it does
POST/v1/sessions/{channel}/communitiesCreate a community
GET/v1/sessions/{channel}/communities/{community}Get a community
GET/v1/sessions/{channel}/communities/{community}/invite-linkGet a community's invite link
POST/v1/sessions/{channel}/communities/{community}/linksLink a group to a community
DELETE/v1/sessions/{channel}/communities/{community}/links/{group}Unlink a group from a community
GET/v1/sessions/{channel}/communities/{community}/participantsList a community's participants
GET/v1/sessions/{channel}/communities/{community}/subgroupsList a community's subgroups
POST/v1/sessions/{channel}/communities/{community}/subgroupsCreate a subgroup in a community

Limits and caveats

Create costs one group add. Linking an existing group costs one add. A subgroup costs one for creation, one for its link and one per supplied participant. These counts apply to sandbox allowances and to optional warming, when it is enabled. A create or link can fail; do not assume that a timed-out write did nothing.

A successful hidden subgroup create does not prove its phone-visible hidden status. WhatsApp exposes no readable signal for that guarantee. If hidden creation returns verification_failed, the subgroup already exists: use its group_jid to repair the link instead of creating it again.

Questions

How does a community differ from a group?
The community is a parent group with is_community: true and linked subgroups. Ordinary group operations have their own routes.
Can I attach an existing group?
Yes. POST to the community links route with group_jid. DELETE the link route with the group JID to unlink it.
Does a new community start empty?
WhatsApp creates its announcement subgroup as part of community creation. List subgroups before deciding what else to create.
Can I use the sandbox?
Yes, within its group-add allowance. Creating a community, creating a subgroup and linking groups consume group adds.

Free sandbox, forever. Add a real number when you're ready.

Start in the free sandbox

HelloHop is an independent WhatsApp API for developers: send and receive messages, automate groups and communities, and get signed webhooks with a free sandbox. Not affiliated with WhatsApp or Meta. You link your own number.

WhatsApp Community API for Developers | HelloHop