---
title: "Send email (SendGrid format)"
method: POST
path: "/v1s/ssend"
tags: ["Engine — Send"]
---

# Send email (SendGrid format)

`POST /v1s/ssend`

Send an email using **SendGrid v3** payload format. The engine authenticates the request,
evaluates rules, selects a route via weighted distribution, optionally transforms the
payload if the target provider uses a different format, and forwards to the provider API.

## Request body

- SendGridPayload
  - `personalizations` SendGridPersonalization[], required
    - `to` EmailAddress[], required
      - `email` string, email, required
      - `name` string
    - `cc` EmailAddress[]
      - `email` string, email, required
      - `name` string
    - `bcc` EmailAddress[]
      - `email` string, email, required
      - `name` string
    - `subject` string — Overrides top-level subject for this personalization.
  - `from` EmailAddress, required
    - `email` string, email, required
    - `name` string
  - `subject` string
  - `content` SendGridContent[]
    - `type` 'text/plain' | 'text/html', required
    - `value` string, required
  - `attachments` SendGridAttachment[]
    - `content` string, required — Base64-encoded file content.
    - `type` string — MIME type.
    - `filename` string, required
    - `disposition` 'attachment' | 'inline'
  - `reply_to` EmailAddress
    - `email` string, email, required
    - `name` string
  - `categories` string[]

## Response `200`

Email relayed successfully.

- EngineSuccessResponse
  - `success` string
  - `req_id` string — Unique request ID: `{rand6}-{clusterID}-{providerID}-{timestamp}-{sequence}-{clientID}-{routeID}`.
  - `message` string

## Other responses

- `400` — Invalid request (empty body, invalid JSON, payload validation failure, transform error).
- `401` — Authentication failed — API key missing or invalid.
- `403` — IP or domain restriction violation.
- `413` — Payload exceeds `max_request_body_size_mb`.
- `500` — Internal server error (rule evaluation, route lookup, etc.).
- `502` — Provider returned an error.
- `504` — Provider did not respond within the timeout.

---

[API](https://skmtc.dev/netcorecloud/apis/email-api-v6.md) · [All operations](https://skmtc.dev/netcorecloud/apis/email-api-v6/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/netcorecloud/email-api-v6/revisions/73f83bc2eff8/schema)
