<!--
{
  "availability" : [
    "iOS: 14.0.0 -",
    "iPadOS: 14.0.0 -",
    "macCatalyst: 14.0.0 -",
    "macOS: 12.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 7.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "SiriKit",
  "identifier" : "/documentation/Intents/INSendMessageIntent/init(recipients:outgoingMessageType:content:speakableGroupName:conversationIdentifier:serviceName:sender:attachments:)",
  "metadataVersion" : "0.1.0",
  "role" : "Initializer",
  "symbol" : {
    "kind" : "Initializer",
    "modules" : [
      "Intents"
    ],
    "preciseIdentifier" : "c:objc(cs)INSendMessageIntent(im)initWithRecipients:outgoingMessageType:content:speakableGroupName:conversationIdentifier:serviceName:sender:attachments:"
  },
  "title" : "init(recipients:outgoingMessageType:content:speakableGroupName:conversationIdentifier:serviceName:sender:attachments:)"
}
-->

# init(recipients:outgoingMessageType:content:speakableGroupName:conversationIdentifier:serviceName:sender:attachments:)

Creates a send message intent object with the specified content and recipients.

```
init(recipients: [INPerson]?, outgoingMessageType: INOutgoingMessageType, content: String?, speakableGroupName: INSpeakableString?, conversationIdentifier: String?, serviceName: String?, sender: INPerson?, attachments: [INSendMessageAttachment]?)
```

## Parameters

`recipients`

The intended recipients of the message.

`outgoingMessageType`

The format of the message.

`content`

The contents of the message.

`speakableGroupName`

The name of the group to receive the message. Specify `nil` if you don’t want to send the message to a group address.

`conversationIdentifier`

The unique identifier for the message conversation. Specify `nil` if your app doesn’t assign identifiers to conversations between users.

`serviceName`

The specific service to use when sending the message. You may specify `nil` if your app has only one way of sending messages.

`sender`

The person who creates the message.

`attachments`

Audio files to include with the message.

## Return Value

An initialized intent or `nil` if the system can’t create the object.

## Discussion

Create an [`INSendMessageIntent`](/documentation/Intents/INSendMessageIntent) and donate it in an [`INInteraction`](/documentation/Intents/INInteraction) when the user sends a message directly in your app. When the user initiates sending a message from outside your app, such as asking Siri or tapping a contact in the Share Sheet, the system creates the intent and provides it to your intent handler.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)