# Email webhook `POST /api/email/` An inbound-parse provider (SendGrid, Mailgun, Postmark) or a forwarding rule POSTs parsed mail to this endpoint. The employee processes it and replies via outbound email. Distinct from the hosted Personal Mailbox and the Gmail OAuth tool. ## Body parameters | Name | Type | Required | Description | | --- | --- | --- | --- | | `employee_id` | uuid | yes | The employee that should process the email. | | `body` | string | yes | The parsed email body. | | `from` | string | no | Optional. Sender address, used as reply context. | | `subject` | string | no | Optional. Email subject, prepended as context. | ## Request headers | Name | Type | Required | Description | | --- | --- | --- | --- | | `Authorization` | string | yes | Bearer sk-your-api-key — same keys as the API, MCP, and Webhook channels. | ## Error responses | Status | Meaning | | --- | --- | | 400 | Bad request — missing fields, invalid UUID, or malformed JSON | | 401 | Invalid or missing API key | | 403 | Channel not enabled, or email not verified | | 413 | Request body exceeds 64 KB | | 429 | Rate limit exceeded — see Retry-After header | | 502 | Employee unreachable (infrastructure error) | | 504 | Employee timed out (5 minute limit) | ## Request - cURL ``` curl -X POST https://sistava.com/api/email/ \ -H "Authorization: Bearer sk-your-api-key" \ -H "Content-Type: application/json" \ -d '{ "employee_id": "YOUR_EMPLOYEE_UUID", "from": "client@example.com", "subject": "Re: Q1 proposal", "body": "Can you send the updated numbers by Friday?" }' ``` ## Response 202 ```json { "status": "accepted" } ``` Concepts and walkthrough: https://sistava.com/en/guide/channels/email API reference index: https://sistava.com/en/docs