Skip to content

Messages API Reference

Extensions to the Message model for Prism PHP integration.

Methods

toPrismMessage()

Converts a single message to its Prism equivalent based on the message role.

php
public function toPrismMessage(): mixed

Returns: Prism message object based on role:

  • system\Prism\Prism\Messages\SystemMessage
  • user\Prism\Prism\Messages\UserMessage
  • assistant\Prism\Prism\Messages\AssistantMessage
  • tool_call\Prism\Prism\Messages\AssistantMessage (with tool calls)
  • tool_result\Prism\Prism\Messages\ToolResultMessage

Example:

php
$message = $conversation->messages()->first();
$prismMessage = $message->toPrismMessage();

// Returns appropriate Prism message type
if ($message->role === 'user') {
    // $prismMessage is UserMessage instance
}

Message Roles

Converse Prism supports all standard message roles:

php
const ROLES = [
    'system',        // System instructions
    'user',          // User input
    'assistant',     // AI response
    'tool_call',     // Tool invocation
    'tool_result'    // Tool response
];

Inherited Properties

All standard Converse message properties remain available:

  • id - Unique identifier
  • conversation_id - Parent conversation ID
  • role - Message role
  • content - Message content
  • metadata - JSON metadata field
  • created_at - Creation timestamp
  • updated_at - Update timestamp

See the Converse documentation for complete details on inherited properties and methods.

Released under the MIT License.