[{"data":1,"prerenderedAt":191},["ShallowReactive",2],{"pseo:features:group-invite-link":3,"highlight:pillar:group-invite-link":182},{"availability":4,"ban_risk":5,"ban_risk_note":6,"category":7,"cloud_api_status":11,"contrast":12,"endpoints":20,"faqs":53,"gotchas":66,"name":69,"published":70,"related":71,"search_terms":126,"seo":131,"slug":146,"step_summary":147,"steps":148,"summary":162,"tier":163,"updated":14,"url":141,"use_cases":164,"webhook_events":174},"ga","low","Reading and rotating the invite link of a group you administer is unremarkable. What draws attention is joining large numbers of unfamiliar groups by code, which looks like harvesting - so resolve a code first, join deliberately, and keep the number out of groups it has no reason to be in.",{"name":8,"slug":9,"url":10},"Groups","groups","\u002Fwhatsapp-api\u002Fgroups\u002F","forbidden",{"demand":13,"meta_checked":14,"meta_doc_url":15,"meta_quote":16,"official_workaround":17,"short_verdict":18,"verdict":19},"high","2026-09-15","https:\u002F\u002Fdevelopers.facebook.com\u002Fdocs\u002Fwhatsapp\u002Fcloud-api\u002Freference","Paraphrase (not a verbatim quote), checked against the Cloud API reference index: no endpoint for reading, generating or revoking a group invite link appears in the reference.","The nearest official thing is a click-to-chat link, which opens a one-to-one conversation with a business rather than joining a group. It solves a different problem: reaching you, not joining a shared thread.","No. Invite links are not part of the official API.","With no group endpoints in the Cloud API there is no invite link to read or revoke. The link people paste in bios and on landing pages is generated in the app, and only a client that speaks the protocol can read or rotate it programmatically.",[21,30,37,44],{"availability":4,"ban_risk":5,"curl":22,"method":25,"operationId":26,"path":27,"summary":28,"tag":9,"url":29},{"code":23,"lang":24},"curl --request GET \\\n  --url https:\u002F\u002Fapi.wapito.com\u002Fv1\u002Fgroups\u002F120363041234567890@g.us\u002Finvite \\\n  --header 'Authorization: Bearer wpt_YOUR_TOKEN'","bash","GET","getGroupInvite","\u002Fgroups\u002F{id}\u002Finvite","Get the group invite link","\u002Fdocs\u002Fapi\u002Fgroups\u002Fget-group-invite\u002F",{"availability":4,"ban_risk":5,"curl":31,"method":33,"operationId":34,"path":27,"summary":35,"tag":9,"url":36},{"code":32,"lang":24},"curl --request DELETE \\\n  --url https:\u002F\u002Fapi.wapito.com\u002Fv1\u002Fgroups\u002F120363041234567890@g.us\u002Finvite \\\n  --header 'Authorization: Bearer wpt_YOUR_TOKEN'","DELETE","revokeGroupInvite","Revoke and rotate the invite link","\u002Fdocs\u002Fapi\u002Fgroups\u002Frevoke-group-invite\u002F",{"availability":4,"ban_risk":5,"curl":38,"method":25,"operationId":40,"path":41,"summary":42,"tag":9,"url":43},{"code":39,"lang":24},"curl --request GET \\\n  --url https:\u002F\u002Fapi.wapito.com\u002Fv1\u002Fgroups\u002Finvite\u002FHkQ2ZpL9vRtAeYm1 \\\n  --header 'Authorization: Bearer wpt_YOUR_TOKEN'","getGroupInviteInfo","\u002Fgroups\u002Finvite\u002F{code}","Preview a group behind an invite code","\u002Fdocs\u002Fapi\u002Fgroups\u002Fget-group-invite-info\u002F",{"availability":4,"ban_risk":45,"curl":46,"method":48,"operationId":49,"path":50,"summary":51,"tag":9,"url":52},"medium",{"code":47,"lang":24},"curl --request POST \\\n  --url https:\u002F\u002Fapi.wapito.com\u002Fv1\u002Fgroups\u002Finvite\u002Faccept \\\n  --header 'Authorization: Bearer wpt_YOUR_TOKEN' \\\n  --header 'Content-Type: application\u002Fjson' \\\n  --data '{\"invite_code\":\"https:\u002F\u002Fchat.whatsapp.com\u002FHkQ2ZpL9vRtAeYm1\"}'","POST","acceptGroupInvite","\u002Fgroups\u002Finvite\u002Faccept","Join a group by invite link","\u002Fdocs\u002Fapi\u002Fgroups\u002Faccept-group-invite\u002F",[54,57,60,63],{"a":55,"q":56},"It depends on where it lives. A link on a private confirmation page can sit for months; a link on a public social profile is worth rotating weekly, because that is where scrapers find them. Rotating behind your own redirect costs nothing to your users, so err on the frequent side.","How often should I rotate the invite link?",{"a":58,"q":59},"Not directly - WhatsApp reports that someone joined, not which link they used. If you need attribution, use a distinct group per source, or put your own redirect in front of each published link and correlate the click with the join event that follows it.","Can I see who joined through a particular link?",{"a":61,"q":62},"No. Anyone joining by link arrives as an ordinary member, including an automation. If the bot needs to moderate, an existing admin has to promote it after it joins, which is worth building into the onboarding rather than discovering when the first write fails.","Does joining by link make my number an admin?",{"a":64,"q":65},"The practical limit is the group's own member ceiling; once the group is full, the link stops admitting people. Plan for that if you publish a link widely, either by creating a second group in advance or by watching the member count and rotating to a fresh group before it fills.","Is there a limit on how many people can use one link?",[67,68],"Revoking is immediate and total: every printed poster, QR code and forwarded message carrying the old link stops working at once, so publish through a redirect you control rather than the raw link.","Reading or revoking the link requires the linked number to be an admin of that group, and the group settings can additionally restrict link management to admins only.","Group Invite Link",true,{"endpoints":72,"errors":81,"glossary":82,"hub":10,"integrations":92,"siblings":96,"tutorials":115,"vs_cloud_api":125},[73,75,77,79],{"title":74,"url":29},"GET \u002Fgroups\u002F{id}\u002Finvite",{"title":76,"url":36},"DELETE \u002Fgroups\u002F{id}\u002Finvite",{"title":78,"url":43},"GET \u002Fgroups\u002Finvite\u002F{code}",{"title":80,"url":52},"POST \u002Fgroups\u002Finvite\u002Faccept",[],[83,86,89],{"title":84,"url":85},"Invite code","\u002Fglossary\u002Finvite-code\u002F",{"title":87,"url":88},"Group admin","\u002Fglossary\u002Fgroup-admin\u002F",{"title":90,"url":91},"JID","\u002Fglossary\u002Fjid\u002F",[93],{"title":94,"url":95},"Activepieces","\u002Fintegrations\u002Factivepieces\u002F",[97,100,103,106,109,112],{"title":98,"url":99},"Create Group","\u002Fwhatsapp-api\u002Fcreate-group\u002F",{"title":101,"url":102},"Group Participants","\u002Fwhatsapp-api\u002Fgroup-participants\u002F",{"title":104,"url":105},"Group Join Requests","\u002Fwhatsapp-api\u002Fgroup-join-requests\u002F",{"title":107,"url":108},"Group Settings","\u002Fwhatsapp-api\u002Fgroup-settings\u002F",{"title":110,"url":111},"Group Admins","\u002Fwhatsapp-api\u002Fgroup-admins\u002F",{"title":113,"url":114},"Group Info","\u002Fwhatsapp-api\u002Fgroup-info\u002F",[116,119,122],{"title":117,"url":118},"Python","\u002Fwhatsapp-api\u002Fgroup-invite-link\u002Fpython\u002F",{"title":120,"url":121},"Node.js","\u002Fwhatsapp-api\u002Fgroup-invite-link\u002Fnodejs\u002F",{"title":123,"url":124},"PHP","\u002Fwhatsapp-api\u002Fgroup-invite-link\u002Fphp\u002F","\u002Fvs-cloud-api\u002Fgroup-invite-link\u002F",[127,128,129,130],"whatsapp group invite link api","revoke whatsapp invite link","whatsapp group link generator api","join whatsapp group by code api",{"breadcrumb":132,"canonical":142,"description":143,"h1":144,"lastmod":14,"title":145},[133,136,139,140],{"name":134,"url":135},"Home","\u002F",{"name":137,"url":138},"WhatsApp API","\u002Fwhatsapp-api\u002F",{"name":8,"url":10},{"name":69,"url":141},"\u002Fwhatsapp-api\u002Fgroup-invite-link\u002F","https:\u002F\u002Fwapito.com\u002Fwhatsapp-api\u002Fgroup-invite-link\u002F","Read, revoke and resolve group invite links. No templates, no Meta approval, any number. 4 endpoints, code in Python, Node.js and PHP.","WhatsApp Group Invite Links via API","WhatsApp Group Invite Link API | Wapito","group-invite-link","Read the code, rotate it on a schedule, resolve unknown codes before accepting, and join by code when you mean to.",[149,153,156,159],{"body":150,"operationId":26,"operation_url":29,"title":151,"webhook":152},"The code is the tail of a chat.whatsapp.com link. Treat it as a credential rather than as a URL: anyone who holds it can join, so it belongs behind your own redirect rather than pasted into a public page you cannot update.","Read the current invite code",null,{"body":154,"operationId":34,"operation_url":36,"title":155,"webhook":152},"Revoking generates a fresh code and invalidates every copy of the old link instantly. A nightly rotation means a link that leaks into a forum stops working within a day, without anyone having to notice that it leaked.","Rotate it on a schedule",{"body":157,"operationId":40,"operation_url":43,"title":158,"webhook":152},"Given a code somebody sent you, read the group's name, size and owner before deciding. This is how a bot avoids joining a group it has no business being in.","Resolve a code before joining",{"body":160,"operationId":49,"operation_url":52,"title":161,"webhook":152},"Joining by code puts the linked number in the group as an ordinary member. Expect no admin rights, and expect the group's existing members to see the join as a system message.","Accept the invitation","Read, revoke and resolve group invite links.","t1b",[165,168,171],{"body":166,"title":167},"A sports club publishes one short link per team. Behind it, an automation reads the current invite code each time and redirects, so the club can rotate codes weekly without ever republishing the page or losing the printed posters.","A self-service join page",{"body":169,"title":170},"A course provider revokes the invite link the day enrolment closes, so a link forwarded to a friend after the deadline simply stops working instead of quietly filling the group with people who never paid.","Rotate after every intake",{"body":172,"title":173},"A monitoring bot resolves any invite code it is given and checks the group's name and size against an allow-list before accepting. Codes that do not match are logged and ignored rather than joined and then left.","Vet a group before a bot joins",[175,178],{"event":9,"receiver":176,"summary":177},"onGroups","Group joined, left or updated",{"event":179,"receiver":180,"summary":181},"groups.participants","onGroupsParticipants","Group membership or role changed",[183,185,187,189],{"label":74,"id":26,"lang":24,"code":23,"html":184},"\u003Cpre class=\"shiki shiki-themes github-light-default github-dark-default\" style=\"background-color:#ffffff;--shiki-dark-bg:#0d1117;color:#1f2328;--shiki-dark:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\">\u003Cspan style=\"color:#953800;--shiki-dark:#FFA657\">curl\u003C\u002Fspan>\u003Cspan style=\"color:#0550AE;--shiki-dark:#79C0FF\"> --request\u003C\u002Fspan>\u003Cspan style=\"color:#0A3069;--shiki-dark:#A5D6FF\"> GET\u003C\u002Fspan>\u003Cspan style=\"color:#CF222E;--shiki-dark:#FF7B72\"> \\\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#0550AE;--shiki-dark:#79C0FF\">  --url\u003C\u002Fspan>\u003Cspan style=\"color:#0A3069;--shiki-dark:#A5D6FF\"> https:\u002F\u002Fapi.wapito.com\u002Fv1\u002Fgroups\u002F120363041234567890@g.us\u002Finvite\u003C\u002Fspan>\u003Cspan style=\"color:#CF222E;--shiki-dark:#FF7B72\"> \\\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#0550AE;--shiki-dark:#79C0FF\">  --header\u003C\u002Fspan>\u003Cspan style=\"color:#0A3069;--shiki-dark:#A5D6FF\"> 'Authorization: Bearer wpt_YOUR_TOKEN'\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>",{"label":76,"id":34,"lang":24,"code":32,"html":186},"\u003Cpre class=\"shiki shiki-themes github-light-default github-dark-default\" style=\"background-color:#ffffff;--shiki-dark-bg:#0d1117;color:#1f2328;--shiki-dark:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\">\u003Cspan style=\"color:#953800;--shiki-dark:#FFA657\">curl\u003C\u002Fspan>\u003Cspan style=\"color:#0550AE;--shiki-dark:#79C0FF\"> --request\u003C\u002Fspan>\u003Cspan style=\"color:#0A3069;--shiki-dark:#A5D6FF\"> DELETE\u003C\u002Fspan>\u003Cspan style=\"color:#CF222E;--shiki-dark:#FF7B72\"> \\\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#0550AE;--shiki-dark:#79C0FF\">  --url\u003C\u002Fspan>\u003Cspan style=\"color:#0A3069;--shiki-dark:#A5D6FF\"> https:\u002F\u002Fapi.wapito.com\u002Fv1\u002Fgroups\u002F120363041234567890@g.us\u002Finvite\u003C\u002Fspan>\u003Cspan style=\"color:#CF222E;--shiki-dark:#FF7B72\"> \\\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#0550AE;--shiki-dark:#79C0FF\">  --header\u003C\u002Fspan>\u003Cspan style=\"color:#0A3069;--shiki-dark:#A5D6FF\"> 'Authorization: Bearer wpt_YOUR_TOKEN'\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>",{"label":78,"id":40,"lang":24,"code":39,"html":188},"\u003Cpre class=\"shiki shiki-themes github-light-default github-dark-default\" style=\"background-color:#ffffff;--shiki-dark-bg:#0d1117;color:#1f2328;--shiki-dark:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\">\u003Cspan style=\"color:#953800;--shiki-dark:#FFA657\">curl\u003C\u002Fspan>\u003Cspan style=\"color:#0550AE;--shiki-dark:#79C0FF\"> --request\u003C\u002Fspan>\u003Cspan style=\"color:#0A3069;--shiki-dark:#A5D6FF\"> GET\u003C\u002Fspan>\u003Cspan style=\"color:#CF222E;--shiki-dark:#FF7B72\"> \\\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#0550AE;--shiki-dark:#79C0FF\">  --url\u003C\u002Fspan>\u003Cspan style=\"color:#0A3069;--shiki-dark:#A5D6FF\"> https:\u002F\u002Fapi.wapito.com\u002Fv1\u002Fgroups\u002Finvite\u002FHkQ2ZpL9vRtAeYm1\u003C\u002Fspan>\u003Cspan style=\"color:#CF222E;--shiki-dark:#FF7B72\"> \\\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#0550AE;--shiki-dark:#79C0FF\">  --header\u003C\u002Fspan>\u003Cspan style=\"color:#0A3069;--shiki-dark:#A5D6FF\"> 'Authorization: Bearer wpt_YOUR_TOKEN'\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>",{"label":80,"id":49,"lang":24,"code":47,"html":190},"\u003Cpre class=\"shiki shiki-themes github-light-default github-dark-default\" style=\"background-color:#ffffff;--shiki-dark-bg:#0d1117;color:#1f2328;--shiki-dark:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\">\u003Cspan style=\"color:#953800;--shiki-dark:#FFA657\">curl\u003C\u002Fspan>\u003Cspan style=\"color:#0550AE;--shiki-dark:#79C0FF\"> --request\u003C\u002Fspan>\u003Cspan style=\"color:#0A3069;--shiki-dark:#A5D6FF\"> POST\u003C\u002Fspan>\u003Cspan style=\"color:#CF222E;--shiki-dark:#FF7B72\"> \\\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#0550AE;--shiki-dark:#79C0FF\">  --url\u003C\u002Fspan>\u003Cspan style=\"color:#0A3069;--shiki-dark:#A5D6FF\"> https:\u002F\u002Fapi.wapito.com\u002Fv1\u002Fgroups\u002Finvite\u002Faccept\u003C\u002Fspan>\u003Cspan style=\"color:#CF222E;--shiki-dark:#FF7B72\"> \\\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#0550AE;--shiki-dark:#79C0FF\">  --header\u003C\u002Fspan>\u003Cspan style=\"color:#0A3069;--shiki-dark:#A5D6FF\"> 'Authorization: Bearer wpt_YOUR_TOKEN'\u003C\u002Fspan>\u003Cspan style=\"color:#CF222E;--shiki-dark:#FF7B72\"> \\\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#0550AE;--shiki-dark:#79C0FF\">  --header\u003C\u002Fspan>\u003Cspan style=\"color:#0A3069;--shiki-dark:#A5D6FF\"> 'Content-Type: application\u002Fjson'\u003C\u002Fspan>\u003Cspan style=\"color:#CF222E;--shiki-dark:#FF7B72\"> \\\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#0550AE;--shiki-dark:#79C0FF\">  --data\u003C\u002Fspan>\u003Cspan style=\"color:#0A3069;--shiki-dark:#A5D6FF\"> '{\"invite_code\":\"https:\u002F\u002Fchat.whatsapp.com\u002FHkQ2ZpL9vRtAeYm1\"}'\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>",1790464898990]