PUT
/
threads
curl --request PUT \
  --url https://app.melodi.fyi/api/external/threads \
  --header 'Content-Type: application/json' \
  --header 'api-key: <api-key>' \
  --data '{
  "externalId": "<string>",
  "messages": [
    {
      "externalId": "<string>",
      "role": "<string>",
      "metadata": {},
      "type": "markdown",
      "content": "<string>"
    }
  ],
  "metadata": {},
  "externalUser": {
    "externalId": "<string>",
    "email": "<string>",
    "name": "<string>",
    "username": "<string>",
    "segments": {
      "team": "engineering",
      "role": "developer"
    }
  },
  "projectId": 123
}'
{
  "id": 123,
  "externalId": "<string>",
  "organizationId": 123,
  "project": {
    "id": 123,
    "name": "<string>"
  },
  "messages": [
    {
      "externalId": "<string>",
      "role": "<string>",
      "metadata": {},
      "type": "markdown",
      "content": "<string>"
    }
  ],
  "externalUser": {
    "id": 123,
    "organizationId": 123,
    "externalId": "<string>",
    "name": "<string>",
    "email": "<string>",
    "username": "<string>",
    "segments": [
      {
        "id": 123,
        "organizationId": 123,
        "name": "<string>",
        "userSegmentTypeId": 123,
        "createdAt": "2023-11-07T05:31:56Z",
        "updatedAt": "2023-11-07T05:31:56Z",
        "type": {
          "id": 123,
          "organizationId": 123,
          "name": "<string>",
          "createdAt": "2023-11-07T05:31:56Z",
          "updatedAt": "2023-11-07T05:31:56Z"
        }
      }
    ],
    "createdAt": "2023-11-07T05:31:56Z",
    "updatedAt": "2023-11-07T05:31:56Z"
  },
  "metadata": {},
  "createdAt": "2023-11-07T05:31:56Z",
  "updatedAt": "2023-11-07T05:31:56Z"
}

Authorizations

api-key
string
header
required

Your Melodi API key

Body

application/json
The full thread object
messages
object[]
required
projectId
number
required
externalId
string
metadata
object
externalUser
object

Request object for creating or updating an external user

Response

200
application/json
Thread successfully created or updated
id
number
required

Unique identifier for the thread

organizationId
number
required

ID of the organization to which the thread belongs

project
object
required
messages
object[]
required

Message object that can be either a Markdown or JSON message. For Markdown messages, use the 'content' field. For JSON messages, use the 'jsonContent' field.

metadata
object
required

Metadata associated with the thread

createdAt
string
required

Date when the thread was created

updatedAt
string
required

Date when the thread was last updated

externalId
string | null

External thread ID

externalUser
object

Represents an external user. Note: The combination of organizationId and externalId must be unique.