Sign inGet started

Approve WhatsApp group join requests

POST
/v1/whatsapp/groups/{group_id}/join-requests/batch-approve
const result = await bird.whatsapp.groups.joinRequests.approve(
  "wag_01krdgeqcxet5s7t44vh8rt9mg",
  { join_request_ids: ["wgj_01krdgeqcxet5s7t44vh8rt9mg"] },
);
console.log(result.decided.length, result.failed.length);
Respons202
{
  "decided": [
    "wgj_01krdgeqcxet5s7t44vh8rt9mg"
  ],
  "failed": [
    {
      "join_request_id": "wgj_01krdgeqcxet5s7t44vh8rt9mg",
      "error": {
        "description": "Group subject contains content that cannot be used.",
        "meta_error_code": "2388024"
      }
    }
  ]
}
Approves the named join requests, up to 50 in one call.
WhatsApp decides each request on its own, so the batch can be part-applied: the response lists the ones it accepted in decided and the rest in failed with the reason each was refused. A refusal is usually a person who has not accepted WhatsApp's current terms, which no retry fixes.
Each person approved can enter the group through its invite link. Re-read the group to see who has arrived.
A group holds 8 participants besides your business. Approving more than the group has room for does not refuse the call: the requests that fit are decided and the rest come back in failed, each saying the approval would take the group past its participant limit. A group that is not active does refuse the whole call, with a 409 WhatsAppGroupNotActive.
Parameter
group_id
string
ID of the group whose join requests are being decided.
Payload Permintaan
join_request_ids
array of string
wajib
The join requests to act on, as returned by GET /v1/whatsapp/groups/{group_id}/join-requests. Each is decided on its own, so one can fail while the rest succeed. An ID that names no waiting request returns a 422 WhatsAppGroupJoinRequestNotFound. The 50 is Bird's own request bound, not a WhatsApp one: how many people the group can hold does not limit how many can queue at its link, so a rejection sweep is not held to the size of the group it is refusing entry to.
Payload Respons
decided
array of string
wajib
The join requests WhatsApp accepted the decision for. A person approved here can enter the group; a person rejected here sees the join button again.
failed
array of object
wajib
The join requests WhatsApp refused, each with its reason. Empty when the whole batch was applied.
Tampilkan atribut turunan
failed.join_request_id
string
wajib
The join request that was not decided.
failed.error
object
wajib
Why WhatsApp refused. The common one is a person who has not accepted WhatsApp's current terms, which no retry fixes.
Tampilkan atribut turunan
failed.error.description
string
wajib
WhatsApp's own explanation of the refusal, passed through. Show it to the person who asked for the change; never match on its text. Carries Bird's own words instead when the failure was Bird's verdict, such as a confirmation that never arrived.
failed.error.meta_error_code
nullable string
WhatsApp's most specific code for the refusal: its error subcode where it sent one, otherwise its top-level code. Treat it as an opaque string. Null when the failure was Bird's own verdict rather than a WhatsApp refusal.

Sumber daya terkait

Lanjutkan dengan dokumentasi, panduan, dan contoh untuk topik ini. Sumber daya tersedia dalam bahasa Inggris.

Dapatkan ringkasan implementasi