---
title: "Creates a conversation"
method: POST
path: "/conversations"
tags: ["Conversations"]
---

# Creates a conversation

`POST /conversations`

You can create a conversation that has been initiated by a contact (ie. user or lead).
The conversation can be an in-app message only.

{% admonition type="info" name="Sending for visitors" %}
You can also send a message from a visitor by specifying their `user_id` or `id` value in the `from` field, along with a `type` field value of `contact`.
This visitor will be automatically converted to a contact with a lead role once the conversation is created.
{% /admonition %}

This will return the Message model that has been created.

## Headers

- `Intercom-Version` '1.0' | '1.1' | '1.2' | '1.3' | '1.4' | '2.0' | '2.1' | '2.2' | '2.3' | '2.4' | '2.5' | '2.6' | '2.7' | '2.8' | '2.9' | '2.10' | '2.11' | '2.12' | '2.13' | '2.14' — Intercom API version.</br>By default, it's equal to the version set in the app package.

## Request body

- CreateConversationRequest — Conversations are how you can communicate with users in Intercom. They are created when a contact replies to an outbound message, or when one admin directly sends a message to a single contact.
  - `from` object, required
    - `type` 'lead' | 'user' | 'contact', required — The role associated to the contact - user or lead.
    - `id` string, uuid, required — The identifier for the contact which is given by Intercom.
  - `body` string, required — The content of the message. HTML is not supported.
  - `subject` string — The title of the email. Only applicable if the message type is email.
  - `attachment_urls` string[] — A list of image URLs that will be added as attachments. You can include up to 10 URLs.
  - `created_at` integer — The time the conversation was created as a UTC Unix timestamp. If not provided, the current time will be used. This field is only recommneded for migrating past conversations from another source into Intercom.

## Response `200`

conversation created

- Message — Message are how you reach out to contacts in Intercom. They are created when an admin sends an outbound message to a contact.
  - `type` string, required — The type of the message
  - `id` string, required — The id representing the message.
  - `created_at` integer, required — The time the conversation was created.
  - `subject` string — The subject of the message. Only present if message_type: email.
  - `body` string, required — The message body, which may contain HTML.
  - `message_type` 'email' | 'inapp' | 'facebook' | 'twitter', required — The type of message that was sent. Can be email, inapp, facebook or twitter.
  - `conversation_id` string — The associated conversation_id

## Other responses

- `401` — Unauthorized
- `403` — API plan restricted
- `404` — Contact Not Found

---

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