---
title: "Add what happened next in her chat, typed by hand"
method: POST
path: "/api/v1/contacts/{id}/dating/messages"
---

# Add what happened next in her chat, typed by hand

`POST /api/v1/contacts/{id}/dating/messages`

## Request

- Base URL: `https://memchats.com`
- URL: `https://memchats.com/api/v1/contacts/{id}/dating/messages`
- Auth: HTTP bearer

"Ella dijo" / "Yo dije": 1 to 20 messages, in order, appended to this contact's conversation. Without `sentAt` a message goes at "now", after the last one stored, and is flagged as a time not seen (`timeKnown: false`); with it, at that time (not in the future). No model call and no proposal spent: ask for one with POST /api/v1/contacts/{id}/suggest-message (intent `reply`). New screenshots go through POST /api/v1/imports/people with `contactId`. Counts against the plan's monthly messages; the demo may add a few per session.

## Path parameters

- `id` integer, required

## Request body

- object
  - `messages` object[], required
    - `from` 'me' | 'her', required: `me` the user, `her` the contact.
    - `text` string, required
    - `sentAt` string, date-time: Optional. When it was said; defaults to now, flagged as not seen.

## Response `201`

Stored

- object
  - `inserted` integer: Messages stored (one identical to a stored one at the same instant is not stored twice).
  - `messages` DatingThreadMessage[]
    - `id` integer
    - `from` 'me' | 'her'
    - `text` string
    - `sentAt` string, date-time
    - `timeKnown` boolean: false: the time was not seen (screenshot without times, or typed without one) and sentAt only keeps the order.
    - `typedByHand` boolean: true: typed by hand without a time (show no time label). With timeKnown false and typedByHand false, the time was unreadable in the screenshots.
    - `language` string, nullable

## Other responses

- `400`: Invalid body (`invalid_body`, `empty_text`, `text_too_long`, `too_many_messages`, `invalid_time`)
- `402`: Monthly messages of the plan (`tier_limit_exceeded`, with `limit`)
- `404`: Not one of the account's dating contacts (`contact_not_found`)
- `429`: Too many in a minute (`rate_limited`), or the demo's ceiling (`demo_limit`)

---

[API](https://skmtc.dev/memchats/apis/memchats-api.md) · [All operations](https://skmtc.dev/memchats/apis/memchats-api/llms.txt) · [OpenAPI document](https://skmtc.dev/memchats/apis/memchats-api/revisions/e62bca06f785?raw)
