# Create Message Used during synchronization to push new messages into your helpdesk. These messages may come from either the end-user or Fin. Note that the author of the Fin messages will be the agent selected to represent Fin on initial setup of the integration. Endpoint: POST /create_message Version: 0.0.1 Security: BearerAuth ## Request fields (application/json): - `message_type` (string) Type of message Enum: "comment" - `body` (string,null) Message content in HTML format. Supported HTML tags are: - Paragraphs ` - Heading 1, Heading 2 (note h3 to h6 appears as a h2) - Bold - Italic - Links - Images (can be linked) - Line breaks - Code blocks - Unordered lists - Ordered lists ` Example: "
Hi! I'd like to know more about your pricing plans.
" - `author` (object) The user who authored the message - `author.id` (string) Unique identifier for the user in your system Example: "user_123456" - `author.user_type` (string) Type of user Enum: "end_user", "agent" - `author.name` (string) User's display name Example: "Jane Doe" - `author.email` (string) User's email address Example: "jane.doe@example.com" - `author.photo_url` (string) URL to user's avatar/profile picture (displayed in Fin Messenger) Example: "https://example.com/avatars/jane.jpg" - `visibility` (string) Who can see the message: - public - Visible to end-users (appears in Fin Messenger) - private - Only visible to agents (internal notes) Enum: "public", "private" - `object_id` (string) Unique identifier for the message in our system Example: "123456" - `attachments` (array) Array of attachments (can be empty) - `attachments.url` (string) URL where the attachment can be accessed. Must be HTTPS. Consider using signed URLs with expiration for sensitive files. Example: "https://example.com/files/pricing-guide.pdf" - `attachments.filetype` (string) File type/extension. Example: "pdf" - `attachments.filename` (string) Display name for the file Example: "Pricing Guide 2025" - `conversation_id` (string) ID of the parent conversation Example: "conv_456" ## Response 201 fields (application/json): - `data` (object) A message in a conversation. Either body or attachments (or both) must be provided. A message cannot be empty - it must contain either text content or at least one attachment. - `data.id` (string, required) Unique identifier for the message in your system Example: "msg_001" - `data.conversation_id` (string, required) ID of the parent conversation Example: "conv_456" - `data.message_type` (string, required) Type of message Enum: "comment" - `data.body` (string,null) Message content in HTML format. Supported HTML tags are: - Paragraphs ` - Heading 1, Heading 2 (note h3 to h6 appears as a h2) - Bold - Italic - Links - Images (can be linked) - Line breaks - Code blocks - Unordered lists - Ordered lists ` Example: "Hi! I'd like to know more about your pricing plans.
" - `data.author` (any, required) The user who authored the message. - `data.visibility` (string, required) Who can see the message: - public - Visible to end-users (appears in Fin Messenger) - private - Only visible to agents (internal notes) Enum: "public", "private" - `data.created_at` (string, required) When the message was created (ISO 8601 UTC) Example: "2025-10-27T14:35:00.000Z" - `data.attachments` (array) Files attached to the message - `data.attachments.url` (string) URL where the attachment can be accessed. Must be HTTPS. Consider using signed URLs with expiration for sensitive files. Example: "https://example.com/files/pricing-guide.pdf" - `data.attachments.filetype` (string) File type/extension. Example: "pdf" - `data.attachments.filename` (string) Display name for the file Example: "Pricing Guide 2025" - `error` (object) The error returned by the API. This is an RFC 7807 problem details object: . - `error.type` (string) A URI reference that identifies the problem type. - `error.title` (string) A short, human-readable summary of the problem type. - `error.status` (integer) The HTTP status code generated by the origin server for this occurrence of the problem. - `error.detail` (string) A human-readable explanation specific to this occurrence of the problem. - `error.instance` (string) A URI reference that identifies the specific occurrence of the problem.