<article class="mx-auto w-full max-w-[800px] space-y-6 rounded-2xl border border-slate-200 bg-white p-6 shadow-panel dark:border-slate-800 dark:bg-slate-950"><header class="space-y-3 border-b border-slate-200 pb-4 dark:border-slate-800"><nav aria-label="Breadcrumb" class="text-xs text-slate-500 dark:text-slate-400"><ol class="flex flex-wrap items-center gap-2"><li><a href="/" class="hover:underline">API documentation</a></li><li aria-hidden="true">/</li><li><a href="/#get-started" class="hover:underline">Get Started</a></li><li aria-hidden="true">/</li><li aria-current="page">Send Test Message</li></ol></nav><div class="flex items-center gap-3"><span class="inline-flex min-w-14 items-center justify-center rounded-md px-2 py-1 text-[10px] font-bold tracking-wider bg-emerald-600/15 text-emerald-700 dark:bg-emerald-400/20 dark:text-emerald-300">POST</span><h1 class="text-2xl font-bold text-slate-900 dark:text-slate-50">Send Test Message</h1></div><p class="font-mono text-sm text-slate-600 dark:text-slate-300">/v1/messages</p></header><section class="prose prose-slate max-w-none text-sm dark:prose-invert"><p>To send a text message, make a <strong>POST</strong> call to <strong><code>/{{{Phone-Number-ID}}/messages</code></strong> and attach a message object with <code>type = &quot;text&quot;</code>. Then, add a <code>text object</code>.</p> <p>For more information about the <code>Text Object</code> structure, see <a href="#fa59d67b-dc6f-446a-a0fd-f97537afbd2e">Text object</a>.</p> <h2>Response</h2> <p>A successful response includes an object with an identifier prefixed with <strong><code>wamid</code></strong>. Use the ID listed after <strong><code>wamid</code></strong> to track your message status.</p></section><section class="space-y-5"><h2 class="text-base font-semibold text-slate-900 dark:text-slate-100">Parameters</h2><section class="space-y-2"><h3 class="text-sm font-semibold uppercase tracking-[0.14em] text-slate-500">Header Parameters</h3><div class="overflow-x-auto rounded-xl border border-slate-200 dark:border-slate-800"><table class="w-full min-w-[520px] border-collapse text-left text-sm"><thead class="bg-slate-50 dark:bg-slate-900/70"><tr><th class="px-3 py-2 font-semibold text-slate-700 dark:text-slate-300">Name</th><th class="px-3 py-2 font-semibold text-slate-700 dark:text-slate-300">Required</th><th class="px-3 py-2 font-semibold text-slate-700 dark:text-slate-300">Type</th><th class="px-3 py-2 font-semibold text-slate-700 dark:text-slate-300">Description</th></tr></thead><tbody><tr class="border-t border-slate-200 dark:border-slate-800"><td class="px-3 py-2 font-mono text-xs text-slate-800 dark:text-slate-200">Content-Type</td><td class="px-3 py-2 text-xs text-slate-700 dark:text-slate-300">No</td><td class="px-3 py-2 text-xs text-slate-700 dark:text-slate-300">string</td><td class="px-3 py-2 text-xs text-slate-700 dark:text-slate-300">-</td></tr></tbody></table></div></section></section><section class="space-y-3"><details class="group rounded-xl border border-slate-200 p-3 dark:border-slate-800" open=""><summary class="cursor-pointer list-none text-base font-semibold text-slate-900 dark:text-slate-100">Request Body Schema</summary><div class="mt-3"><div class="rounded-xl border border-slate-200 bg-slate-50/70 p-3 dark:border-slate-700 dark:bg-slate-900/60"><h4 class="mb-2 text-sm font-semibold text-slate-800 dark:text-slate-100">application/json</h4><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><button type="button" class="h-5 w-5 rounded border border-slate-300 text-[10px] leading-none text-slate-500 hover:bg-slate-100 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800" aria-label="Collapse schema node">-</button><span class="font-semibold text-slate-900 dark:text-slate-50">root</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">object</span></div><div class="ml-6 border-l border-slate-200 pl-3 dark:border-slate-700"><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><span class="inline-block h-5 w-5" aria-hidden="true"></span><span class="font-semibold text-slate-900 dark:text-slate-50">messaging_product</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">string</span></div></div><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><span class="inline-block h-5 w-5" aria-hidden="true"></span><span class="font-semibold text-slate-900 dark:text-slate-50">recipient_type</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">string</span></div></div><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><span class="inline-block h-5 w-5" aria-hidden="true"></span><span class="font-semibold text-slate-900 dark:text-slate-50">to</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">string</span></div></div><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><span class="inline-block h-5 w-5" aria-hidden="true"></span><span class="font-semibold text-slate-900 dark:text-slate-50">type</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">string</span></div></div><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><button type="button" class="h-5 w-5 rounded border border-slate-300 text-[10px] leading-none text-slate-500 hover:bg-slate-100 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800" aria-label="Expand schema node">+</button><span class="font-semibold text-slate-900 dark:text-slate-50">text</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">object</span></div></div><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><button type="button" class="h-5 w-5 rounded border border-slate-300 text-[10px] leading-none text-slate-500 hover:bg-slate-100 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800" aria-label="Expand schema node">+</button><span class="font-semibold text-slate-900 dark:text-slate-50">context</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">object</span></div></div><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><button type="button" class="h-5 w-5 rounded border border-slate-300 text-[10px] leading-none text-slate-500 hover:bg-slate-100 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800" aria-label="Expand schema node">+</button><span class="font-semibold text-slate-900 dark:text-slate-50">reaction</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">object</span></div></div><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><button type="button" class="h-5 w-5 rounded border border-slate-300 text-[10px] leading-none text-slate-500 hover:bg-slate-100 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800" aria-label="Expand schema node">+</button><span class="font-semibold text-slate-900 dark:text-slate-50">image</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">object</span></div></div><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><button type="button" class="h-5 w-5 rounded border border-slate-300 text-[10px] leading-none text-slate-500 hover:bg-slate-100 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800" aria-label="Expand schema node">+</button><span class="font-semibold text-slate-900 dark:text-slate-50">audio</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">object</span></div></div><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><button type="button" class="h-5 w-5 rounded border border-slate-300 text-[10px] leading-none text-slate-500 hover:bg-slate-100 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800" aria-label="Expand schema node">+</button><span class="font-semibold text-slate-900 dark:text-slate-50">document</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">object</span></div></div><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><button type="button" class="h-5 w-5 rounded border border-slate-300 text-[10px] leading-none text-slate-500 hover:bg-slate-100 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800" aria-label="Expand schema node">+</button><span class="font-semibold text-slate-900 dark:text-slate-50">sticker</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">object</span></div></div><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><button type="button" class="h-5 w-5 rounded border border-slate-300 text-[10px] leading-none text-slate-500 hover:bg-slate-100 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800" aria-label="Expand schema node">+</button><span class="font-semibold text-slate-900 dark:text-slate-50">video</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">object</span></div></div><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><button type="button" class="h-5 w-5 rounded border border-slate-300 text-[10px] leading-none text-slate-500 hover:bg-slate-100 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800" aria-label="Expand schema node">+</button><span class="font-semibold text-slate-900 dark:text-slate-50">contacts</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">array&lt;object&gt;</span></div></div><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><button type="button" class="h-5 w-5 rounded border border-slate-300 text-[10px] leading-none text-slate-500 hover:bg-slate-100 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800" aria-label="Expand schema node">+</button><span class="font-semibold text-slate-900 dark:text-slate-50">location</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">object</span></div></div><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><button type="button" class="h-5 w-5 rounded border border-slate-300 text-[10px] leading-none text-slate-500 hover:bg-slate-100 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800" aria-label="Expand schema node">+</button><span class="font-semibold text-slate-900 dark:text-slate-50">template</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">object</span></div></div><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><button type="button" class="h-5 w-5 rounded border border-slate-300 text-[10px] leading-none text-slate-500 hover:bg-slate-100 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800" aria-label="Expand schema node">+</button><span class="font-semibold text-slate-900 dark:text-slate-50">interactive</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">object</span></div></div><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><span class="inline-block h-5 w-5" aria-hidden="true"></span><span class="font-semibold text-slate-900 dark:text-slate-50">status</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">string</span></div></div><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><span class="inline-block h-5 w-5" aria-hidden="true"></span><span class="font-semibold text-slate-900 dark:text-slate-50">message_id</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">string</span></div></div><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><button type="button" class="h-5 w-5 rounded border border-slate-300 text-[10px] leading-none text-slate-500 hover:bg-slate-100 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800" aria-label="Expand schema node">+</button><span class="font-semibold text-slate-900 dark:text-slate-50">typing_indicator</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">object</span></div></div></div></div></div></div></details></section><section class="space-y-3"><h2 class="text-base font-semibold text-slate-900 dark:text-slate-100">Responses</h2><details class="rounded-xl border border-slate-200 p-3 dark:border-slate-800" open=""><summary class="cursor-pointer list-none"><div class="flex items-center gap-3"><span class="rounded-md bg-slate-900 px-2 py-1 font-mono text-xs font-semibold text-white dark:bg-slate-100 dark:text-slate-900">200</span><p class="text-sm text-slate-700 dark:text-slate-300">Send Test Message</p></div></summary><div class="mt-3"><div class="rounded-xl border border-slate-200 bg-slate-50/70 p-3 dark:border-slate-700 dark:bg-slate-900/60"><h4 class="mb-2 text-sm font-semibold text-slate-800 dark:text-slate-100">application/json</h4><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><button type="button" class="h-5 w-5 rounded border border-slate-300 text-[10px] leading-none text-slate-500 hover:bg-slate-100 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800" aria-label="Collapse schema node">-</button><span class="font-semibold text-slate-900 dark:text-slate-50">root</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">object</span></div><div class="ml-6 border-l border-slate-200 pl-3 dark:border-slate-700"><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><span class="inline-block h-5 w-5" aria-hidden="true"></span><span class="font-semibold text-slate-900 dark:text-slate-50">messaging_product</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">string</span></div></div><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><button type="button" class="h-5 w-5 rounded border border-slate-300 text-[10px] leading-none text-slate-500 hover:bg-slate-100 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800" aria-label="Expand schema node">+</button><span class="font-semibold text-slate-900 dark:text-slate-50">contacts</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">array&lt;object&gt;</span></div></div><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><button type="button" class="h-5 w-5 rounded border border-slate-300 text-[10px] leading-none text-slate-500 hover:bg-slate-100 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800" aria-label="Expand schema node">+</button><span class="font-semibold text-slate-900 dark:text-slate-50">messages</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">array&lt;object&gt;</span></div></div></div></div></div></div></details><details class="rounded-xl border border-slate-200 p-3 dark:border-slate-800"><summary class="cursor-pointer list-none"><div class="flex items-center gap-3"><span class="rounded-md bg-slate-900 px-2 py-1 font-mono text-xs font-semibold text-white dark:bg-slate-100 dark:text-slate-900">example-1</span><p class="text-sm text-slate-700 dark:text-slate-300">Send Text Message with Preview URL</p></div></summary><div class="mt-3"><div class="rounded-xl border border-slate-200 bg-slate-50/70 p-3 dark:border-slate-700 dark:bg-slate-900/60"><h4 class="mb-2 text-sm font-semibold text-slate-800 dark:text-slate-100">application/json</h4><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><button type="button" class="h-5 w-5 rounded border border-slate-300 text-[10px] leading-none text-slate-500 hover:bg-slate-100 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800" aria-label="Collapse schema node">-</button><span class="font-semibold text-slate-900 dark:text-slate-50">root</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">object</span></div><div class="ml-6 border-l border-slate-200 pl-3 dark:border-slate-700"><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><span class="inline-block h-5 w-5" aria-hidden="true"></span><span class="font-semibold text-slate-900 dark:text-slate-50">messaging_product</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">string</span></div></div><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><button type="button" class="h-5 w-5 rounded border border-slate-300 text-[10px] leading-none text-slate-500 hover:bg-slate-100 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800" aria-label="Expand schema node">+</button><span class="font-semibold text-slate-900 dark:text-slate-50">contacts</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">array&lt;object&gt;</span></div></div><div class="font-mono text-xs text-slate-700 dark:text-slate-200"><div class="flex items-center gap-2 py-1"><button type="button" class="h-5 w-5 rounded border border-slate-300 text-[10px] leading-none text-slate-500 hover:bg-slate-100 dark:border-slate-700 dark:text-slate-300 dark:hover:bg-slate-800" aria-label="Expand schema node">+</button><span class="font-semibold text-slate-900 dark:text-slate-50">messages</span><span class="rounded bg-slate-100 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-600 dark:bg-slate-800 dark:text-slate-300">array&lt;object&gt;</span></div></div></div></div></div></div></details></section><nav aria-label="Related API endpoints" class="border-t border-slate-200 pt-4 dark:border-slate-800"><h2 class="mb-2 text-sm font-semibold text-slate-900 dark:text-slate-100">Related API endpoints</h2><a href="/" class="text-sm text-cyan-700 hover:underline dark:text-cyan-400">Browse all WhatsApp Business API endpoints</a></nav></article>