# How do I get the raw body of a Serverless Function?

**Author:** Lee Robinson

---

You can use Vercel Serverless Functions to receive webhooks from third-party services like Stripe. Certain providers require access to the raw body inside the function to validate the signature from the request.

## Accessing the raw body from the request

`export async function POST(request: Request) { const rawBody = await request.text() return Response.json({ rawBody }) }`

## Testing your function locally

You can verify your function can accept and parse raw bodies locally:

1. Start your local development server with `vercel dev` (or `next dev`).
   
2. In another terminal window, run the `cURL` command below.
   

`curl -X POST -H "Content-Type: text/plain" --data "This is raw data" http://localhost:3000/api/test`

You should see a response like `{"rawBody": "This is raw data"}`.

---

[View full KB sitemap](/kb/sitemap.md)
