---
title: "Import Message"
method: POST
path: "/v1/messages"
---

# Import Message

`POST /v1/messages`

Import a message into Sybill.

Requires the **Import** permission (`ingest` scope). A `201 Created` response
confirms acceptance for asynchronous processing; derived fields may not be
available immediately.

## Request body

- MessageRequest
  - `version` integer
  - `id` string, required
  - `sourceId` string, uuid, required
  - `createdAt` union, required
    - string
    - integer
    - number
  - `updatedAt` union
    - string
    - integer
    - number
  - `public` boolean
  - `ownerEmails` string[]
  - `displayName` string
  - `body` string, required
  - `sender` Person, required
    - `version` integer
    - `id` string, nullable
    - `name` string, nullable
    - `email` string, nullable
  - `recipients` Person[], required
    - `version` integer
    - `id` string, nullable
    - `name` string, nullable
    - `email` string, nullable
  - `attachments` Attachment[]
    - `version` integer
    - `name` string, required
    - `url` string, required
    - `mimeType` string, nullable
    - `sizeBytes` integer, nullable
  - `threadId` string, nullable

## Response `201`

Successful Response

- RecordResponse
  - `status` 'created' | 'updated', required
  - `recordId` string, required
  - `id` string, required
  - `sourceId` string, required

## Other responses

- `422` — Validation Error

---

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