{"id":510,"date":"2026-10-28T16:05:08","date_gmt":"2026-10-28T16:05:08","guid":{"rendered":"https:\/\/vectalk.com.br\/blog\/rate-limit-throughput-api-whatsapp\/"},"modified":"2026-10-28T16:05:17","modified_gmt":"2026-10-28T16:05:17","slug":"rate-limit-throughput-api-whatsapp","status":"publish","type":"post","link":"https:\/\/vectalk.com.br\/blog\/rate-limit-throughput-api-whatsapp\/","title":{"rendered":"Throughput e rate limit na API do WhatsApp: mensagens por segundo e erro 131056"},"content":{"rendered":"\n<p><em>Atualizado em 28\/10\/2026<\/em><\/p>\n\n\n\n<p>A Cloud API do WhatsApp aceita, por padr\u00e3o, at\u00e9 <strong>80 mensagens por segundo (mps) por n\u00famero registrado<\/strong>, somando entrada e sa\u00edda, e pode subir automaticamente para at\u00e9 1.000 mps em n\u00fameros eleg\u00edveis. Quando voc\u00ea passa desse ritmo, a API devolve o erro <code>130429<\/code>. J\u00e1 o erro <code>131056<\/code> \u00e9 outra coisa: \u00e9 o <em>pair rate limit<\/em>, disparado quando voc\u00ea manda mensagens demais do mesmo n\u00famero para o <strong>mesmo destinat\u00e1rio<\/strong> em pouco tempo.<\/p>\n\n\n\n<p>Neste artigo voc\u00ea v\u00ea a diferen\u00e7a entre throughput, pair rate limit, limites de chamadas da API e limite de mensagens por 24 horas, quais c\u00f3digos de erro cada um gera e um exemplo de fila com backoff em Node.js e Python.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Quatro limites que costumam ser confundidos<\/h2>\n\n\n\n<p>Quem integra a API pela primeira vez costuma chamar tudo de &#8220;rate limit&#8221;. Na documenta\u00e7\u00e3o da Meta s\u00e3o limites diferentes, com causas e solu\u00e7\u00f5es diferentes:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Limite<\/th><th>O que mede<\/th><th>Erro<\/th><th>O que fazer<\/th><\/tr><\/thead><tbody><tr><td>Throughput<\/td><td>Mensagens por segundo de um n\u00famero<\/td><td><code>130429<\/code><\/td><td>Reduzir o ritmo e tentar de novo<\/td><\/tr><tr><td>Pair rate limit<\/td><td>Mensagens do seu n\u00famero para o mesmo usu\u00e1rio em pouco tempo<\/td><td><code>131056<\/code><\/td><td>Esperar antes de enviar de novo \u00e0quele usu\u00e1rio<\/td><\/tr><tr><td>Limite de chamadas<\/td><td>Requisi\u00e7\u00f5es do app ou da conta \u00e0 API<\/td><td><code>4<\/code> (app) e <code>80007<\/code> (conta do WhatsApp Business)<\/td><td>Diminuir a frequ\u00eancia de chamadas<\/td><\/tr><tr><td>Limite de mensagens<\/td><td>Destinat\u00e1rios \u00fanicos fora da janela de atendimento em 24 horas, por portf\u00f3lio<\/td><td>Envios recusados acima do limite<\/td><td>Subir de n\u00edvel com qualidade e volume<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>O \u00faltimo n\u00e3o \u00e9 sobre velocidade, e sim sobre alcance di\u00e1rio. Ele \u00e9 explicado em detalhe em <a href=\"https:\/\/vectalk.com.br\/blog\/limite-mensagens-whatsapp-api\/\">limite de mensagens da API do WhatsApp<\/a>. Aqui o foco s\u00e3o os tr\u00eas primeiros.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Throughput: quantas mensagens por segundo<\/h2>\n\n\n\n<p>Pela <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/throughput\" target=\"_blank\" rel=\"noreferrer noopener\">p\u00e1gina de throughput da Meta<\/a>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Cada n\u00famero registrado na Cloud API suporta <strong>at\u00e9 80 mps por padr\u00e3o<\/strong>.<\/li>\n\n\n<li>O throughput conta mensagens <strong>de entrada e de sa\u00edda, de todos os tipos<\/strong>. Um n\u00famero que recebe muitas mensagens tem menos folga para enviar.<\/li>\n\n\n<li>N\u00fameros do <strong>app WhatsApp Business conectados \u00e0 API<\/strong> (coexist\u00eancia) t\u00eam throughput fixo de <strong>20 mps<\/strong>.<\/li>\n\n\n<li>Acima do limite, a API responde com <code>130429<\/code> at\u00e9 o ritmo voltar ao permitido.<\/li>\n\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Upgrade autom\u00e1tico para 1.000 mps<\/h3>\n\n\n\n<p>O n\u00famero sobe sozinho para at\u00e9 1.000 mps, sem custo e sem mudan\u00e7a de pre\u00e7o, quando cumpre as tr\u00eas condi\u00e7\u00f5es:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>O portf\u00f3lio empresarial tem limite de mensagens <strong>ilimitado<\/strong>.<\/li>\n\n\n<li>O n\u00famero enviou mensagens para <strong>100 mil ou mais<\/strong> n\u00fameros \u00fanicos de usu\u00e1rios fora da janela de atendimento em um per\u00edodo m\u00f3vel de 24 horas.<\/li>\n\n\n<li>O <code>quality_score<\/code> do n\u00famero \u00e9 <strong>amarelo (qualidade m\u00e9dia) ou melhor<\/strong>.<\/li>\n\n<\/ol>\n\n\n\n<p>Durante o upgrade, que pode levar at\u00e9 1 minuto, o n\u00famero fica indispon\u00edvel e a API devolve o erro <code>131057<\/code>. Ao terminar, chega um webhook <code>phone_number_quality_update<\/code> com <code>event<\/code> igual a <code>THROUGHPUT_UPGRADE<\/code>. Para conferir o n\u00edvel atual de um n\u00famero:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"language-bash\">curl \"https:\/\/graph.facebook.com\/v26.0\/PHONE_NUMBER_ID?fields=throughput\" \\\n  -H \"Authorization: Bearer $TOKEN\"<\/code><\/pre>\n\n\n\n<p>A mesma p\u00e1gina traz duas recomenda\u00e7\u00f5es pr\u00e1ticas para quem envia em alto volume. Primeiro, seu servidor de webhook precisa aguentar cerca de <strong>3 vezes o tr\u00e1fego de sa\u00edda<\/strong> (cada mensagem gera status de enviado, entregue e lido) <strong>mais 1 vez o tr\u00e1fego de entrada<\/strong>, com lat\u00eancia mediana abaixo de 250 ms e menos de 1% das requisi\u00e7\u00f5es acima de 1 segundo. Segundo, para mensagens com m\u00eddia, use IDs de m\u00eddia enviados antes por upload em vez de links para arquivos no seu servidor, para aproveitar o throughput maior.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Pair rate limit e o erro 131056<\/h2>\n\n\n\n<p>O throughput \u00e9 pensado para campanhas que falam com <strong>muitos usu\u00e1rios diferentes<\/strong>. Se voc\u00ea mandar muitas mensagens para <strong>o mesmo usu\u00e1rio<\/strong>, esbarra em outro limite. A <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/support\/error-codes\" target=\"_blank\" rel=\"noreferrer noopener\">tabela de c\u00f3digos de erro da Meta<\/a> descreve o <code>131056<\/code> assim: mensagens demais enviadas do n\u00famero remetente para o mesmo n\u00famero destinat\u00e1rio em um curto per\u00edodo. A solu\u00e7\u00e3o indicada \u00e9 esperar e tentar de novo, se voc\u00ea realmente pretende enviar mais mensagens \u00e0quele n\u00famero.<\/p>\n\n\n\n<p>A Meta n\u00e3o publica nessa documenta\u00e7\u00e3o um n\u00famero exato para o pair rate limit, ent\u00e3o n\u00e3o programe contra um valor fixo. Os cen\u00e1rios t\u00edpicos que disparam o <code>131056<\/code>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Um bot que quebra uma resposta longa em dez mensagens seguidas.<\/li>\n\n\n<li>Uma integra\u00e7\u00e3o em loop que reenvia a mesma notifica\u00e7\u00e3o v\u00e1rias vezes.<\/li>\n\n\n<li>Testes de carga apontados para um \u00fanico n\u00famero de teste.<\/li>\n\n\n<li>Um disparo com a lista duplicada, mandando o mesmo template duas vezes para cada contato.<\/li>\n\n<\/ul>\n\n\n\n<p>A corre\u00e7\u00e3o quase sempre \u00e9 de desenho, n\u00e3o de infraestrutura: junte o conte\u00fado numa mensagem s\u00f3, deduplique a lista e espace os envios para o mesmo contato. Para testes de carga, distribua os envios entre v\u00e1rios destinat\u00e1rios de teste.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Erros de chamada: 4, 80007 e 131048<\/h2>\n\n\n\n<p>Al\u00e9m dos limites de mensagem, a API tamb\u00e9m limita <strong>chamadas<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>4<\/code>: o app atingiu o limite de chamadas. A Meta indica conferir a se\u00e7\u00e3o de rate limit do app no painel e reduzir a frequ\u00eancia ou a quantidade de consultas.<\/li>\n\n\n<li><code>80007<\/code>: a conta do WhatsApp Business atingiu o limite de chamadas. Mesma solu\u00e7\u00e3o: tentar depois e reduzir a frequ\u00eancia.<\/li>\n\n\n<li><code>131048<\/code>: n\u00e3o \u00e9 de velocidade. Indica restri\u00e7\u00e3o de envio no n\u00famero por causa de qualidade; a orienta\u00e7\u00e3o \u00e9 conferir o status de qualidade no WhatsApp Manager. Insistir com retry s\u00f3 piora. Veja <a href=\"https:\/\/vectalk.com.br\/blog\/qualidade-numero-whatsapp-api\/\">qualidade do n\u00famero na API<\/a>.<\/li>\n\n<\/ul>\n\n\n\n<p>Os erros de consulta (<code>4<\/code> e <code>80007<\/code>) aparecem com frequ\u00eancia em integra\u00e7\u00f5es que fazem <em>polling<\/em>, como consultar o status de templates ou de n\u00fameros a cada poucos segundos. Prefira os webhooks, que avisam quando algo muda.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Fila com backoff: o desenho recomendado<\/h2>\n\n\n\n<p>Para respeitar todos esses limites ao mesmo tempo, o desenho mais simples \u00e9 uma fila com tr\u00eas regras:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Ritmo global por n\u00famero<\/strong>: um limitador que libera no m\u00e1ximo N envios por segundo, com N abaixo do throughput do n\u00famero (por exemplo, 60 para um n\u00famero padr\u00e3o de 80 mps, deixando folga para as mensagens recebidas).<\/li>\n\n\n<li><strong>Retry com backoff exponencial e jitter<\/strong> para <code>130429<\/code>, <code>4<\/code> e <code>80007<\/code>: espera 1 s, 2 s, 4 s, 8 s&#8230; com um pouco de aleatoriedade, at\u00e9 um teto.<\/li>\n\n\n<li><strong>Adiamento por destinat\u00e1rio<\/strong> para <code>131056<\/code>: o envio volta para a fila daquele contato com atraso, sem travar a fila dos outros.<\/li>\n\n<\/ol>\n\n\n\n<p>Erros que n\u00e3o s\u00e3o tempor\u00e1rios, como <code>131048<\/code>, n\u00e3o devem ser repetidos. Pare, registre e investigue.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Exemplo em Node.js<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"language-js\">const GRAPH = 'https:\/\/graph.facebook.com\/v26.0';\nconst RETRY_GLOBAL = new Set([130429, 4, 80007]);\nconst MPS = 60; \/\/ abaixo dos 80 mps padr\u00e3o\n\nconst esperar = (ms) =&gt; new Promise((r) =&gt; setTimeout(r, ms));\n\nasync function enviar(phoneNumberId, token, payload) {\n  const res = await fetch(`${GRAPH}\/${phoneNumberId}\/messages`, {\n    method: 'POST',\n    headers: { Authorization: `Bearer ${token}`, 'Content-Type': 'application\/json' },\n    body: JSON.stringify(payload),\n  });\n  const json = await res.json();\n  if (res.ok) return { ok: true, id: json.messages?.[0]?.id };\n  return { ok: false, code: json.error?.code };\n}\n\nexport async function processarFila(fila, phoneNumberId, token) {\n  const intervalo = 1000 \/ MPS;\n  while (fila.length) {\n    const item = fila.shift();\n    if (item.naoAntesDe &amp;&amp; item.naoAntesDe &gt; Date.now()) {\n      fila.push(item); \/\/ ainda n\u00e3o \u00e9 a vez deste contato\n      await esperar(intervalo);\n      continue;\n    }\n\n    const r = await enviar(phoneNumberId, token, item.payload);\n    if (r.ok) {\n      item.onSucesso?.(r.id);\n    } else if (RETRY_GLOBAL.has(r.code) &amp;&amp; (item.tentativas ?? 0) &lt; 6) {\n      item.tentativas = (item.tentativas || 0) + 1;\n      const espera = Math.min(2 ** item.tentativas * 1000, 60000) + Math.random() * 500;\n      await esperar(espera); \/\/ segura o n\u00famero inteiro\n      fila.unshift(item);\n    } else if (r.code === 131056) {\n      item.naoAntesDe = Date.now() + 30000; \/\/ adia s\u00f3 este destinat\u00e1rio\n      fila.push(item);\n    } else {\n      item.onFalha?.(r.code); \/\/ 131048 e outros: n\u00e3o repetir\n    }\n    await esperar(intervalo);\n  }\n}<\/code><\/pre>\n\n\n\n<p>O atraso de 30 segundos para o <code>131056<\/code> \u00e9 um ponto de partida, n\u00e3o um n\u00famero da Meta: ajuste observando seus pr\u00f3prios logs. Em produ\u00e7\u00e3o, troque o array por uma fila persistente (Redis, SQS, RabbitMQ) para n\u00e3o perder envios se o processo cair.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Exemplo em Python<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"language-python\">import asyncio\nimport random\n\nimport httpx\n\nGRAPH = \"https:\/\/graph.facebook.com\/v26.0\"\nRETRY_GLOBAL = {130429, 4, 80007}\nMPS = 60\n\n\nasync def enviar(client, phone_number_id, payload, tentativas=0):\n    r = await client.post(f\"{GRAPH}\/{phone_number_id}\/messages\", json=payload)\n    if r.status_code == 200:\n        return r.json()[\"messages\"][0][\"id\"]\n\n    code = r.json().get(\"error\", {}).get(\"code\")\n    if code in RETRY_GLOBAL and tentativas &lt; 6:\n        await asyncio.sleep(min(2 ** tentativas, 60) + random.random() \/ 2)\n        return await enviar(client, phone_number_id, payload, tentativas + 1)\n    if code == 131056:\n        await asyncio.sleep(30)  # adia s\u00f3 este destinat\u00e1rio\n        return await enviar(client, phone_number_id, payload, tentativas + 1)\n    raise RuntimeError(f\"falha definitiva: {code}\")\n\n\nasync def disparar(phone_number_id, token, payloads):\n    headers = {\"Authorization\": f\"Bearer {token}\"}\n    async with httpx.AsyncClient(headers=headers, timeout=30) as client:\n        tarefas = []\n        for p in payloads:\n            tarefas.append(asyncio.create_task(enviar(client, phone_number_id, p)))\n            await asyncio.sleep(1 \/ MPS)  # ritmo global\n        return await asyncio.gather(*tarefas, return_exceptions=True)<\/code><\/pre>\n\n\n\n<p>Lembre que a resposta <code>200<\/code> s\u00f3 diz que a mensagem foi aceita. Falhas posteriores chegam no webhook de status com <code>status: \"failed\"<\/code> e o c\u00f3digo em <code>errors<\/code>; trate os mesmos c\u00f3digos nos dois lugares. O artigo <a href=\"https:\/\/vectalk.com.br\/blog\/status-mensagem-webhook-whatsapp\/\">status de mensagem via webhook<\/a> mostra o formato.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Checklist antes de um envio grande<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Saiba o throughput do n\u00famero (<code>?fields=throughput<\/code>) e configure o limitador abaixo dele.<\/li>\n\n\n<li>Se o n\u00famero usa coexist\u00eancia, conte com 20 mps.<\/li>\n\n\n<li>Deduplique a lista para n\u00e3o mandar a mesma mensagem duas vezes ao mesmo contato.<\/li>\n\n\n<li>Confira se o volume cabe no seu limite de mensagens de 24 horas.<\/li>\n\n\n<li>Dimensione o webhook para cerca de 3 vezes o tr\u00e1fego de sa\u00edda.<\/li>\n\n\n<li>Fa\u00e7a upload das m\u00eddias antes e envie por ID.<\/li>\n\n\n<li>Registre os c\u00f3digos de erro para ajustar o ritmo com dados reais.<\/li>\n\n<\/ul>\n\n\n\n<p>Para o planejamento da campanha como um todo, veja <a href=\"https:\/\/vectalk.com.br\/blog\/disparo-em-massa-whatsapp-api-oficial\/\">disparo em massa pela API oficial<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Como fazer isso com a Vectalk<\/h2>\n\n\n\n<p>A Vectalk \u00e9 um proxy da Cloud API oficial da Meta, ent\u00e3o os limites deste artigo s\u00e3o os da pr\u00f3pria Meta: 80 mps por n\u00famero no padr\u00e3o, 20 mps em coexist\u00eancia e os mesmos c\u00f3digos de erro, que chegam no corpo da resposta e nos webhooks no formato da documenta\u00e7\u00e3o oficial. O envio usa <code>POST https:\/\/apis.vectalk.com.br\/api\/messages<\/code> e o n\u00edvel de throughput do n\u00famero aparece no retorno de <code>GET \/phone-numbers<\/code> da <a href=\"https:\/\/docs.vectalk.com.br\/api-reference\/phone-numbers\/get\">API da Vectalk<\/a>. A l\u00f3gica de fila e backoff mostrada aqui vale sem mudan\u00e7as. Crie sua conta em <a href=\"https:\/\/apps.vectalk.com.br\/register\">apps.vectalk.com.br\/register<\/a> ou veja o <a href=\"https:\/\/docs.vectalk.com.br\/quickstart\">guia r\u00e1pido<\/a>.<\/p>\n\n\n\n<p>Se voc\u00ea ainda est\u00e1 montando a base da integra\u00e7\u00e3o, veja tamb\u00e9m como <a href=\"https:\/\/vectalk.com.br\/blog\/assinatura-webhook-whatsapp\/\">validar a assinatura do webhook<\/a> e como <a href=\"https:\/\/vectalk.com.br\/blog\/registrar-numero-cloud-api\/\">registrar o n\u00famero na Cloud API<\/a>. O panorama geral est\u00e1 no guia da <a href=\"https:\/\/vectalk.com.br\/blog\/api-oficial-do-whatsapp\/\">API oficial do WhatsApp<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Perguntas frequentes<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Quantas mensagens por segundo a API do WhatsApp envia?<\/h3>\n\n\n\n<p>At\u00e9 80 por segundo por n\u00famero registrado, por padr\u00e3o, contando entrada e sa\u00edda. N\u00fameros eleg\u00edveis sobem automaticamente para at\u00e9 1.000 mps. N\u00fameros em coexist\u00eancia com o app WhatsApp Business ficam em 20 mps.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Qual a diferen\u00e7a entre o erro 130429 e o 131056?<\/h3>\n\n\n\n<p>O <code>130429<\/code> \u00e9 de throughput: o n\u00famero passou do ritmo total permitido, para qualquer destinat\u00e1rio. O <code>131056<\/code> \u00e9 de pair rate limit: mensagens demais para o mesmo destinat\u00e1rio em pouco tempo. O primeiro pede reduzir o ritmo global; o segundo, espa\u00e7ar envios para aquele contato.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Ter v\u00e1rios n\u00fameros aumenta a velocidade?<\/h3>\n\n\n\n<p>O throughput \u00e9 por n\u00famero, ent\u00e3o v\u00e1rios n\u00fameros somam velocidade. Mas o limite de destinat\u00e1rios \u00fanicos em 24 horas \u00e9 do portf\u00f3lio e \u00e9 compartilhado por todos os n\u00fameros, e a qualidade de cada um continua sendo avaliada. Mais n\u00fameros n\u00e3o resolvem limite de alcance.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Mensagem recusada por rate limit \u00e9 cobrada?<\/h3>\n\n\n\n<p>A Meta cobra mensagens entregues. Uma mensagem recusada por <code>130429<\/code> ou <code>131056<\/code> n\u00e3o chega ao destinat\u00e1rio e n\u00e3o deveria ser cobrada; confira sempre os status no webhook para conciliar.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Como sei se meu n\u00famero j\u00e1 tem 1.000 mps?<\/h3>\n\n\n\n<p>Consulte <code>GET \/PHONE_NUMBER_ID?fields=throughput<\/code>. Quando o upgrade acontece, a Meta tamb\u00e9m envia o webhook <code>phone_number_quality_update<\/code> com o evento <code>THROUGHPUT_UPGRADE<\/code>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p><strong>Fontes oficiais consultadas em 28\/10\/2026:<\/strong> <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/throughput\" target=\"_blank\" rel=\"noreferrer noopener\">Throughput (Meta)<\/a>, <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/support\/error-codes\" target=\"_blank\" rel=\"noreferrer noopener\">C\u00f3digos de erro da Cloud API (Meta)<\/a>, <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/messaging-limits\" target=\"_blank\" rel=\"noreferrer noopener\">Limites de mensagens (Meta)<\/a>, <a href=\"https:\/\/docs.vectalk.com.br\/api-reference\/phone-numbers\/get\">N\u00fameros de telefone na API da Vectalk<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Quantas mensagens por segundo a Cloud API aceita, o que significam os erros 130429 e 131056 e como montar uma fila de envio com backoff que respeita os limites.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[8],"tags":[],"class_list":["post-510","post","type-post","status-publish","format-standard","hentry","category-uncategorized-pt"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Rate limit da API do WhatsApp: throughput e erro 131056<\/title>\n<meta name=\"description\" content=\"Rate limit da API do WhatsApp: 80 mensagens por segundo por n\u00famero, upgrade para 1.000, erros 130429 e 131056 e como montar uma fila com backoff.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vectalk.com.br\/blog\/rate-limit-throughput-api-whatsapp\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Rate limit da API do WhatsApp: throughput e erro 131056\" \/>\n<meta property=\"og:description\" content=\"Rate limit da API do WhatsApp: 80 mensagens por segundo por n\u00famero, upgrade para 1.000, erros 130429 e 131056 e como montar uma fila com backoff.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vectalk.com.br\/blog\/rate-limit-throughput-api-whatsapp\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog Vectalk\" \/>\n<meta property=\"article:published_time\" content=\"2026-10-28T16:05:08+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-28T16:05:17+00:00\" \/>\n<meta name=\"author\" content=\"wanderleyfcunha\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"wanderleyfcunha\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/rate-limit-throughput-api-whatsapp\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/rate-limit-throughput-api-whatsapp\\\/\"},\"author\":{\"name\":\"wanderleyfcunha\",\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/#\\\/schema\\\/person\\\/ff36ecd9d8257856f227f8e5d639db2b\"},\"headline\":\"Throughput e rate limit na API do WhatsApp: mensagens por segundo e erro 131056\",\"datePublished\":\"2026-10-28T16:05:08+00:00\",\"dateModified\":\"2026-10-28T16:05:17+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/rate-limit-throughput-api-whatsapp\\\/\"},\"wordCount\":1657,\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/rate-limit-throughput-api-whatsapp\\\/\",\"url\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/rate-limit-throughput-api-whatsapp\\\/\",\"name\":\"Rate limit da API do WhatsApp: throughput e erro 131056\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/#website\"},\"datePublished\":\"2026-10-28T16:05:08+00:00\",\"dateModified\":\"2026-10-28T16:05:17+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/#\\\/schema\\\/person\\\/ff36ecd9d8257856f227f8e5d639db2b\"},\"description\":\"Rate limit da API do WhatsApp: 80 mensagens por segundo por n\u00famero, upgrade para 1.000, erros 130429 e 131056 e como montar uma fila com backoff.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/rate-limit-throughput-api-whatsapp\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/rate-limit-throughput-api-whatsapp\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/rate-limit-throughput-api-whatsapp\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Throughput e rate limit na API do WhatsApp: mensagens por segundo e erro 131056\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/\",\"name\":\"Blog Vectalk\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/#\\\/schema\\\/person\\\/ff36ecd9d8257856f227f8e5d639db2b\",\"name\":\"wanderleyfcunha\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/21c37077f1731eb558973f27a7b647d55f72fde5200a843ac5f5345b247ea725?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/21c37077f1731eb558973f27a7b647d55f72fde5200a843ac5f5345b247ea725?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/21c37077f1731eb558973f27a7b647d55f72fde5200a843ac5f5345b247ea725?s=96&d=mm&r=g\",\"caption\":\"wanderleyfcunha\"},\"sameAs\":[\"https:\\\/\\\/vectalk.com.br\\\/blog\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Rate limit da API do WhatsApp: throughput e erro 131056","description":"Rate limit da API do WhatsApp: 80 mensagens por segundo por n\u00famero, upgrade para 1.000, erros 130429 e 131056 e como montar uma fila com backoff.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vectalk.com.br\/blog\/rate-limit-throughput-api-whatsapp\/","og_locale":"en_US","og_type":"article","og_title":"Rate limit da API do WhatsApp: throughput e erro 131056","og_description":"Rate limit da API do WhatsApp: 80 mensagens por segundo por n\u00famero, upgrade para 1.000, erros 130429 e 131056 e como montar uma fila com backoff.","og_url":"https:\/\/vectalk.com.br\/blog\/rate-limit-throughput-api-whatsapp\/","og_site_name":"Blog Vectalk","article_published_time":"2026-10-28T16:05:08+00:00","article_modified_time":"2026-10-28T16:05:17+00:00","author":"wanderleyfcunha","twitter_card":"summary_large_image","twitter_misc":{"Written by":"wanderleyfcunha","Est. reading time":"10 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/vectalk.com.br\/blog\/rate-limit-throughput-api-whatsapp\/#article","isPartOf":{"@id":"https:\/\/vectalk.com.br\/blog\/rate-limit-throughput-api-whatsapp\/"},"author":{"name":"wanderleyfcunha","@id":"https:\/\/vectalk.com.br\/blog\/#\/schema\/person\/ff36ecd9d8257856f227f8e5d639db2b"},"headline":"Throughput e rate limit na API do WhatsApp: mensagens por segundo e erro 131056","datePublished":"2026-10-28T16:05:08+00:00","dateModified":"2026-10-28T16:05:17+00:00","mainEntityOfPage":{"@id":"https:\/\/vectalk.com.br\/blog\/rate-limit-throughput-api-whatsapp\/"},"wordCount":1657,"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/vectalk.com.br\/blog\/rate-limit-throughput-api-whatsapp\/","url":"https:\/\/vectalk.com.br\/blog\/rate-limit-throughput-api-whatsapp\/","name":"Rate limit da API do WhatsApp: throughput e erro 131056","isPartOf":{"@id":"https:\/\/vectalk.com.br\/blog\/#website"},"datePublished":"2026-10-28T16:05:08+00:00","dateModified":"2026-10-28T16:05:17+00:00","author":{"@id":"https:\/\/vectalk.com.br\/blog\/#\/schema\/person\/ff36ecd9d8257856f227f8e5d639db2b"},"description":"Rate limit da API do WhatsApp: 80 mensagens por segundo por n\u00famero, upgrade para 1.000, erros 130429 e 131056 e como montar uma fila com backoff.","breadcrumb":{"@id":"https:\/\/vectalk.com.br\/blog\/rate-limit-throughput-api-whatsapp\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vectalk.com.br\/blog\/rate-limit-throughput-api-whatsapp\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/vectalk.com.br\/blog\/rate-limit-throughput-api-whatsapp\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/vectalk.com.br\/blog\/"},{"@type":"ListItem","position":2,"name":"Throughput e rate limit na API do WhatsApp: mensagens por segundo e erro 131056"}]},{"@type":"WebSite","@id":"https:\/\/vectalk.com.br\/blog\/#website","url":"https:\/\/vectalk.com.br\/blog\/","name":"Blog Vectalk","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vectalk.com.br\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/vectalk.com.br\/blog\/#\/schema\/person\/ff36ecd9d8257856f227f8e5d639db2b","name":"wanderleyfcunha","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/21c37077f1731eb558973f27a7b647d55f72fde5200a843ac5f5345b247ea725?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/21c37077f1731eb558973f27a7b647d55f72fde5200a843ac5f5345b247ea725?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/21c37077f1731eb558973f27a7b647d55f72fde5200a843ac5f5345b247ea725?s=96&d=mm&r=g","caption":"wanderleyfcunha"},"sameAs":["https:\/\/vectalk.com.br\/blog"]}]}},"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/posts\/510","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/comments?post=510"}],"version-history":[{"count":1,"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/posts\/510\/revisions"}],"predecessor-version":[{"id":513,"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/posts\/510\/revisions\/513"}],"wp:attachment":[{"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/media?parent=510"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/categories?post=510"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/tags?post=510"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}