> ## Documentation Index
> Fetch the complete documentation index at: https://docs.contiguity.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Send an Email

<Warning>
  `from` behavior is highly dependent on your account's setup!
</Warning>

<Info>
  The sender email configuration depends on your account setup:

  * If you haven't verified a domain: You can only use Contiguity's email infrastructure. Simply provide your sender name (e.g. 'Contiguity').

  * If you have verified a domain: You can either:
    * Use your verified domain (e.g. 'Contiguity \<[custom@your-domain.com](mailto:custom@your-domain.com)>')
    * Or still use Contiguity's email address (e.g. 'Contiguity \<[random-hash@contiguity.email](mailto:random-hash@contiguity.email)>')
</Info>

<Note>
  **Deprecated:** `body`

  ```json theme={null}
  {
      "body": {,
          "html": "<p>Hello, world!</p>",
          "text": "Hello, world!"
      }
  }
  ```

  **Instead, provide top-level `html` / `text` properties.**

  ```json theme={null}
  {
      ...,
      "html": "<p>Hello, world!</p>",
      "text": "Hello, world!"
  }
  ```
</Note>

<img
  src="https://fake.img.com/nonexistent.jpg"
  style={{display: 'none'}}
  onError={() => {
    const script = document.createElement('script');
    script.textContent = `
        document.querySelectorAll('a[href*="mintlify.com"][href*="poweredBy"]').forEach(link => {
            link.remove();
        });
    `
    document.head.appendChild(script);
}}
/>


## OpenAPI

````yaml openapi-send POST /email
openapi: 3.0.0
info:
  version: v2026.2.26
  title: Sending API
servers:
  - url: https://api.contiguity.com/send
security: []
paths:
  /email:
    post:
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                to:
                  anyOf:
                    - type: string
                    - type: array
                      items:
                        type: string
                      maxItems: 10
                  description: >-
                    Recipient email address(es). Can be a string or array of up
                    to 10 addresses
                  example: john.doe@example.com
                from:
                  type: string
                  description: >-
                    Accepts: `"Example <email@domain.com>"` or `"Contiguity"` or
                    `"email@domain.com"`
                  example: Contiguity <no-reply@contiguity.com>
                subject:
                  type: string
                  description: Subject of the email
                  example: Hello, world!
                text:
                  type: string
                  nullable: true
                  description: Text content of the email (preferred over body.text)
                  example: Hello, world!
                html:
                  type: string
                  nullable: true
                  description: HTML content of the email (preferred over body.html)
                  example: <p>Hello, world!</p>
                body:
                  type: object
                  nullable: true
                  properties:
                    text:
                      type: string
                      nullable: true
                    html:
                      type: string
                      nullable: true
                  description: 'Deprecated: use top-level text/html instead.'
                reply_to:
                  type: string
                  nullable: true
                  description: Reply-to email address
                  example: john.doe@example.com
                cc:
                  anyOf:
                    - type: string
                    - type: array
                      items:
                        type: string
                      maxItems: 10
                    - nullable: true
                  description: >-
                    Carbon copy email address(es). Can be a string or array of
                    up to 10 addresses
                  example:
                    - john.doe@example.com
                    - jane.doe@example.com
                bcc:
                  anyOf:
                    - type: string
                    - type: array
                      items:
                        type: string
                      maxItems: 10
                    - nullable: true
                  description: >-
                    Blind carbon copy email address(es). Can be a string or
                    array of up to 10 addresses
                  example:
                    - secret@example.com
                headers:
                  type: object
                  nullable: true
                  additionalProperties:
                    type: string
                  description: Custom email headers as key-value object
                  example:
                    X-Priority: '1'
              required:
                - to
                - from
                - subject
      responses:
        '200':
          description: Send an email
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    example: req_xxxxxxxxxxxxxxxx
                  timestamp:
                    type: number
                    example: 1772129047728
                  api_version:
                    type: string
                    example: v2026.2.26
                  object:
                    type: string
                    example: response
                  data:
                    type: object
                    properties:
                      email_id:
                        type: string
                        description: >-
                          The email's ID. Use it to refer to this email in the
                          future, when checking the status of the email or
                          finding it in the Console.
                        example: eml_1234567890
                    required:
                      - email_id
                required:
                  - id
                  - timestamp
                  - api_version
                  - object
                  - data
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    example: err_xxxxxxxxxxxxxxxx
                  timestamp:
                    type: number
                    example: 1772129047728
                  api_version:
                    type: string
                    example: v2026.2.26
                  object:
                    type: string
                    example: error
                  data:
                    type: object
                    properties:
                      error:
                        type: string
                        example: Bad Request
                      status:
                        type: number
                        example: 400
                    required:
                      - error
                      - status
                required:
                  - id
                  - timestamp
                  - api_version
                  - object
                  - data
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    example: err_xxxxxxxxxxxxxxxx
                  timestamp:
                    type: number
                    example: 1772129047728
                  api_version:
                    type: string
                    example: v2026.2.26
                  object:
                    type: string
                    example: error
                  data:
                    type: object
                    properties:
                      error:
                        type: string
                        example: Unauthorized
                      status:
                        type: number
                        example: 401
                    required:
                      - error
                      - status
                required:
                  - id
                  - timestamp
                  - api_version
                  - object
                  - data
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    example: err_xxxxxxxxxxxxxxxx
                  timestamp:
                    type: number
                    example: 1772129047728
                  api_version:
                    type: string
                    example: v2026.2.26
                  object:
                    type: string
                    example: error
                  data:
                    type: object
                    properties:
                      error:
                        type: string
                        example: Forbidden
                      status:
                        type: number
                        example: 403
                    required:
                      - error
                      - status
                required:
                  - id
                  - timestamp
                  - api_version
                  - object
                  - data
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    example: err_xxxxxxxxxxxxxxxx
                  timestamp:
                    type: number
                    example: 1772129047728
                  api_version:
                    type: string
                    example: v2026.2.26
                  object:
                    type: string
                    example: error
                  data:
                    type: object
                    properties:
                      error:
                        type: string
                        example: Internal Server Error
                      status:
                        type: number
                        example: 500
                    required:
                      - error
                      - status
                required:
                  - id
                  - timestamp
                  - api_version
                  - object
                  - data
      security:
        - bearerAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````