---
title: "Get Email Generation Status"
method: GET
path: "/v1/projects/emails/{conversationId}/status"
tags: ["Emails"]
---

# Get Email Generation Status

`GET /v1/projects/emails/{conversationId}/status`

Check email generation status. When completed, returns primary email HTML plus result.emails[] for every generated email, including emailId, subject, HTML, screenshot URL, and series order.

## Path parameters

- `conversationId` string, required

## Response `200`

Email status retrieved

- ApiResponseEmailStatus
  - `success` boolean, required
  - `data` object, nullable
    - `conversationId` string, required
    - `status` 'pending' | 'processing' | 'completed' | 'failed', required
    - `createdAt` string, date-time, required
    - `updatedAt` string, date-time, required
    - `error` string — Error message if status is failed
    - `result` object — Full email content and metadata, present when status is completed. result.html/result.subject identify the primary email; use result.emails[] for per-email IDs, HTML, screenshots, and series order.
      - `subject` string — Email subject line
      - `previewText` string — Email preview text shown in inbox
      - `html` string — Production-ready HTML for the primary email.
      - `screenshotUrl` string, uri — URL to email screenshot preview
      - `screenshotFullUrl` string, uri — URL to full-length email screenshot
      - `stats` object — Email statistics and metadata
        - `imageCount` integer — Number of images in the email
        - `buttonCount` integer — Number of buttons/CTAs in the email
        - `estimatedLength` string — Estimated email length (short, medium, long)
        - `colors` string[] — Colors used in the email
      - `languages` string[] — Languages the email was generated in
      - `emails` GeneratedEmail[] — All active generated emails. Use emailId from this array to fetch, edit, test-send, or send one email from a series.
        - `id` string, nullable, required — Stable generated email ID. Use this to fetch, edit, export, test-send, or send one email.
        - `emailId` string, nullable, required — Stable generated email ID. Same value as id.
        - `conversationId` string, required
        - `messageId` string, nullable, required
        - `slotIdx` integer, required — Zero-based slot index in the generated series.
        - `slot` integer, required — One-based slot number for display.
        - `subject` string, required
        - `preheader` string, required
        - `html` string, required — Production-ready email HTML for this email.
        - `sendOffsetDays` integer — Suggested send offset in days for series emails.
        - `status` 'ready' | 'processing' | 'failed', required
        - `screenshotUrl` string, uri, nullable — Rendered email screenshot URL when available.
        - `thumbnailUrl` string, uri, nullable — Alias of screenshotUrl when available.
      - `seriesPlan` object — Series planning metadata when the generation produced multiple emails.
  - `error` string, nullable

## Other responses

- `401` — Unauthorized
- `404` — Resource not found

---

[API](https://skmtc.net/migma/apis/migma-ai-api-v1.md) · [All operations](https://skmtc.net/migma/apis/migma-ai-api-v1/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/migma/migma-ai-api-v1/revisions/5ed4a5a287b5/schema)
