Create groups

Creates a group on the org's WhatsApp number and returns its invite link.

POST /v1/provider/whatsapp/groups

Addresshttps://api.hanzo.ai/v1/provider/whatsapp/groups
MethodPOST
Operationpost_provider_whatsapp_groups
AuthAuthorization: Bearer $HANZO_API_KEY

Creates a group on the org's WhatsApp number and returns its invite link.

Org admin, because the group speaks as the org's number and the invite link admits anyone who holds it.

Request

2 fields, body application/json (required).

FieldInTypeRequiredDescription
descriptionbodystring—Description is the group's description.
subjectbodystring—Subject is the group's name, shown to its members.

Response

StatusBodyMeaning
201provider.whatsappGroupOutcreated
defaultproblem-detailsrefused

201 body — 2 fields.

FieldInTypeAlwaysDescription
idbodystring—ID is the group id.
invite_linkbodystring—InviteLink is the link a person opens to join.

Failure carries the platform error shape — see Errors.

Examples

hanzo provider whatsapp groups create
import { Configuration, ProviderApi } from 'hanzoai';

const api = new ProviderApi(new Configuration({ accessToken: process.env.HANZO_API_KEY }));
const { data } = await api.postProviderWhatsappGroups({ description: "<description>", subject: "<subject>" });
from hanzoai.cloud import ApiClient, Configuration
from hanzoai.cloud.api import ProviderApi

client = ApiClient(Configuration(access_token=os.environ["HANZO_API_KEY"]))
result = ProviderApi(client).post_provider_whatsapp_groups(description="<description>", subject="<subject>")
cfg := hanzoai.NewConfiguration()
cfg.AddDefaultHeader("Authorization", "Bearer "+os.Getenv("HANZO_API_KEY"))
client := hanzoai.NewAPIClient(cfg)

resp, _, err := client.ProviderAPI.PostProviderWhatsappGroups(context.Background()).Execute()
if err != nil {
	return err
}
use hanzo_client::apis::{configuration::Configuration, provider_api};

let mut cfg = Configuration::new();
cfg.bearer_access_token = std::env::var("HANZO_API_KEY").ok();

let result = provider_api::post_provider_whatsapp_groups(&cfg, Default::default()).await?;
import ai.hanzo.cloud.ApiClient;
import ai.hanzo.cloud.api.ProviderApi;

ApiClient client = new ApiClient();
client.setBearerToken(System.getenv("HANZO_API_KEY"));

var result = new ProviderApi(client).postProviderWhatsappGroups();

The method above is the one at the current release of the document. [email protected] (npm) and [email protected] (PyPI) were generated from an earlier release, where this operation carried a different id, so it spells the method differently — regenerating the clients is what makes the two agree. SDKs →

curl -X POST https://api.hanzo.ai/v1/provider/whatsapp/groups \
  -H "Authorization: Bearer $HANZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
       "description": "<description>",
       "subject": "<subject>"
     }'

MCP reaches provider through the provider tool, which names its 41 operations with its own verbs — this one among them, under a name only MCP declares. describe explains any of them:

curl -X POST https://api.hanzo.ai/v1/mcp \
  -H "Content-Type: application/json" \
  -d '{
       "jsonrpc": "2.0",
       "id": 1,
       "method": "tools/call",
       "params": {
         "name": "describe",
         "arguments": {
           "op": "list_connections"
         }
       }
     }'

Provider API · All Hanzo APIs · Interactive reference

Was this page useful?
Broken link or missing step? Drop it in #docs on Discord or open a PR.