# Push Notification Configuration for Conversations

Using push notifications with your Conversations implementation drives your customers to re-engage with your app. With Twilio Conversations, you can configure pushes for:

* New Messages
* New Media Messages (new since October 2021)
* Conversations you've joined
* Conversations you've left

Conversations integrates Apple Push Notifications (iOS) and Firebase Cloud Messaging (Android and browsers) using the Push credentials configured on your Twilio account. The content and payload of your push notifications will be different depending on the event that precipitates them.

Conversations Service instances provide some configuration options that allow push notification configuration on a per Service instance basis. These options allow for:

* Selecting which of the eligible Conversations events should trigger push notifications
* Specifying the payload template for each message type (overriding the default template)

**Table of Contents**

* [Push Notification Types](#push-types)
* [Push Notification Templates](#push-templates)
* [Configuring Push Notifications](#push-configuring)

## Push Notification Types \[#push-types]

The following push notifications can be configured for a Conversations Service instance:

| Push Notification Type    | Description                                                                                                                                            |
| :------------------------ | :----------------------------------------------------------------------------------------------------------------------------------------------------- |
| New Message               | This is sent to each chat [participant](/docs/conversations/api/conversation-participant-resource) in a Conversation whenever a new Message is posted. |
| New Media Message         | This is sent to each chat participant in a Conversation whenever a new message is posted with Media (instead of text).                                 |
| Added to Conversation     | This is sent to chat participants that have been added to a Conversation                                                                               |
| Removed from Conversation | This is sent to chat participants that have been removed from a Conversation                                                                           |

> \[!NOTE]
>
> The default `enabled` flag for new Service instances for all push
> notifications is `false`. This means that push notifications will be disabled
> until you explicitly set the flag to `true`.

## Push Notification Templates \[#push-templates]

Each of the push notification types has a default template for the payload (or notification body). Each of these templates can be overridden per Service instance via the push notification configuration. The templating employs markup for a limited set of variables:

### Template Variables

| Template Variable               | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| :------------------------------ | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `${PARTICIPANT}`                | Will be replaced with the `FriendlyName` of the Participant's underlying User who triggered the push notification (if any). The User's `Identity` will be used if no `FriendlyName` has been set. For Proxy Participants engaged via a non-chat channel, the `MessagingBinding.Address` will be used instead. When [group texting](/docs/conversations/group-texting), the `MessagingBinding.Address` will be used, or the `MessagingBinding.ProjectedAddress` if the Participant uses a Twilio phone number and has no underlying User. |
| `${PARTICIPANT_FRIENDLY_NAME}`  | Synonym of `${PARTICIPANT}`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `${PARTICIPANT_IDENTITY}`       | Synonym of `${PARTICIPANT}`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `${PARTICIPANT_SID}`            | Will be replaced with the `Sid` of the Participant who triggered the push notification (if any). The Participant's `Identity` will be used if no `Sid` is available.                                                                                                                                                                                                                                                                                                                                                                     |
| `${CONVERSATION}`               | Will be replaced with the `UniqueName`, `FriendlyName` or `ConversationSid` (if they exist, in that order of priority). These properties are tied to the Conversation related to the push notification.                                                                                                                                                                                                                                                                                                                                  |
| `${CONVERSATION_FRIENDLY_NAME}` | Will be replaced with the `FriendlyName`, `UniqueName` or `ConversationSid` (if they exist, in that order of priority). These properties are tied to the Conversation related to the push notification.                                                                                                                                                                                                                                                                                                                                  |
| `${CONVERSATION_SID}`           | Will be replaced with the `ConversationSid`. This property is tied to the Conversation related to the push notification.                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `${CONVERSATION_UNIQUE_NAME}`   | Will be replaced with the `UniqueName`, or the `FriendlyName`, or `ConversationSid` (in that order) of the conversation to which this push pertains.                                                                                                                                                                                                                                                                                                                                                                                     |
| `${MESSAGE}`                    | Will be replaced with the body of the actual Message. Only used for notifications of type: **New Message**                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `${MEDIA_COUNT}`                | Sent exclusively for **New Media Message** pushes; counts the number of media files included. Presently, this will never be higher than 1; support for multiple media on the same message is coming soon.                                                                                                                                                                                                                                                                                                                                |
| `${MEDIA}`                      | Sent exclusively for **New Media Message** pushes; presents the filename of the first media attached to the message.                                                                                                                                                                                                                                                                                                                                                                                                                     |

> \[!NOTE]
>
> The maximum length of the entire notification payload is **178 characters**.
> This limit is applied after the notification payload is constructed and the
> variable data is applied. Thus, freeform text and the variable data are
> compiled into a string and the first **178 characters** are then used as the
> notification payload.

> \[!NOTE]
>
> Variables can be used multiple times within a template, but each variable will
> contribute to the maximum number of available characters.

### Default Templates

| Push Notification Type    | Default Template                                                                      |
| :------------------------ | :------------------------------------------------------------------------------------ |
| New Message               | `${CONVERSATION}:${PARTICIPANT}: ${MESSAGE}`                                          |
| New Media Message         | `You have a new message in ${CONVERSATION} with ${MEDIA_COUNT} media files: ${MEDIA}` |
| Added to Conversation     | `You have been added to the conversation ${CONVERSATION} by ${PARTICIPANT}`           |
| Removed from Conversation | `${PARTICIPANT} has removed you from the conversation ${CONVERSATION}`                |

## Configure Push Notifications \[#push-configuring]

Each push notification type can be configured for a Service instance. The configuration allows each notification type to be `enabled` or `disabled`. This also handles custom template configuration as per the templating mechanism described above.

The following are the eligible notification `type` names:

* `NewMessage`
* `AddedToConversation`
* `RemovedFromConversation`

The following are the configuration parameters used:

| parameter name                | description                                                                                                                                                                                                                                         |
| :---------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| \[type].Enabled               | Set `true` to send this type of push notification. Default: `false`                                                                                                                                                                                 |
| \[type].Template              | The customer template string for the notification type.                                                                                                                                                                                             |
| \[type].Sound                 | The `sound` push payload parameter that will be set for this notification type, appropriately to the target platform.                                                                                                                               |
| NewMessage.BadgeCountEnabled  | `true` if the `NewMessage` notification type should send a [badge count value](#badge-count) in the push payload. *This parameter is only applicable to the `NewMessage` type.* This is currently only used by the iOS APNS push notification type. |
| NewMessage.WithMedia.Enabled  | Set `true` to send pushes for media messages. Default: `false`.                                                                                                                                                                                     |
| NewMessage.WithMedia.Template | A specific template for new media message pushes, different and independent of `NewMessage.Template`.                                                                                                                                               |

### Badge Count

Badge count refers to a counter on an app's icon that displays how many unread notifications there are for that app. Currently, only APNS push notifications for iOS will use this and include the `badge` property in the payload.

The badge count setting applies only to the `NewMessage` notification type. If enabled, the value of this property will represent the count of one-to-one Conversations the User participates in where there are *unread* Messages for the User.

If `NewMessage.BadgeCountEnabled` is set to `true`, decrements to the count of Conversations with unread messages will be sent to all registered iOS endpoints for that User.

Configure New Message Push Notifications

```js
// Download the helper library from https://www.twilio.com/docs/node/install
const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";

// Find your Account SID and Auth Token at twilio.com/console
// and set the environment variables. See http://twil.io/secure
const accountSid = process.env.TWILIO_ACCOUNT_SID;
const authToken = process.env.TWILIO_AUTH_TOKEN;
const client = twilio(accountSid, authToken);

async function updateServiceNotification() {
  const notification = await client.conversations.v1
    .services("ISXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX")
    .configuration.notifications()
    .update({
      "addedToConversation.enabled": true,
      "addedToConversation.sound": "default",
      "addedToConversation.template":
        "There is a new message in ${CONVERSATION} from ${PARTICIPANT}: ${MESSAGE}",
    });

  console.log(notification.addedToConversation);
}

updateServiceNotification();
```

```python
# Download the helper library from https://www.twilio.com/docs/python/install
import os
from twilio.rest import Client

# Find your Account SID and Auth Token at twilio.com/console
# and set the environment variables. See http://twil.io/secure
account_sid = os.environ["TWILIO_ACCOUNT_SID"]
auth_token = os.environ["TWILIO_AUTH_TOKEN"]
client = Client(account_sid, auth_token)

service_notification = (
    client.conversations.v1.services("ISXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX")
    .configuration.notifications()
    .update(
        added_to_conversation_enabled=True,
        added_to_conversation_sound="default",
        added_to_conversation_template="There is a new message in ${CONVERSATION} from ${PARTICIPANT}: ${MESSAGE}",
    )
)

print(service_notification.added_to_conversation)
```

```csharp
// Install the C# / .NET helper library from twilio.com/docs/csharp/install

using System;
using Twilio;
using Twilio.Rest.Conversations.V1.Service.Configuration;
using System.Threading.Tasks;

class Program {
    public static async Task Main(string[] args) {
        // Find your Account SID and Auth Token at twilio.com/console
        // and set the environment variables. See http://twil.io/secure
        string accountSid = Environment.GetEnvironmentVariable("TWILIO_ACCOUNT_SID");
        string authToken = Environment.GetEnvironmentVariable("TWILIO_AUTH_TOKEN");

        TwilioClient.Init(accountSid, authToken);

        var notification = await NotificationResource.UpdateAsync(
            addedToConversationEnabled: true,
            addedToConversationSound: "default",
            addedToConversationTemplate: "There is a new message in ${CONVERSATION} from ${PARTICIPANT}: ${MESSAGE}",
            pathChatServiceSid: "ISXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX");

        Console.WriteLine(notification.AddedToConversation);
    }
}
```

```java
// Install the Java helper library from twilio.com/docs/java/install

import com.twilio.Twilio;
import com.twilio.rest.conversations.v1.service.configuration.Notification;

public class Example {
    // Find your Account SID and Auth Token at twilio.com/console
    // and set the environment variables. See http://twil.io/secure
    public static final String ACCOUNT_SID = System.getenv("TWILIO_ACCOUNT_SID");
    public static final String AUTH_TOKEN = System.getenv("TWILIO_AUTH_TOKEN");

    public static void main(String[] args) {
        Twilio.init(ACCOUNT_SID, AUTH_TOKEN);
        Notification notification = Notification.updater("ISXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX")
                                        .setAddedToConversationEnabled(true)
                                        .setAddedToConversationSound("default")
                                        .setAddedToConversationTemplate(
                                            "There is a new message in ${CONVERSATION} from ${PARTICIPANT}: ${MESSAGE}")
                                        .update();

        System.out.println(notification.getAddedToConversation());
    }
}
```

```go
// Download the helper library from https://www.twilio.com/docs/go/install
package main

import (
	"fmt"
	"github.com/twilio/twilio-go"
	conversations "github.com/twilio/twilio-go/rest/conversations/v1"
	"os"
)

func main() {
	// Find your Account SID and Auth Token at twilio.com/console
	// and set the environment variables. See http://twil.io/secure
	// Make sure TWILIO_ACCOUNT_SID and TWILIO_AUTH_TOKEN exists in your environment
	client := twilio.NewRestClient()

	params := &conversations.UpdateServiceNotificationParams{}
	params.SetAddedToConversationEnabled(true)
	params.SetAddedToConversationSound("default")
	params.SetAddedToConversationTemplate("There is a new message in ${CONVERSATION} from ${PARTICIPANT}: ${MESSAGE}")

	resp, err := client.ConversationsV1.UpdateServiceNotification("ISXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
		params)
	if err != nil {
		fmt.Println(err.Error())
		os.Exit(1)
	} else {
		if resp.AddedToConversation != nil {
			fmt.Println(*resp.AddedToConversation)
		} else {
			fmt.Println(resp.AddedToConversation)
		}
	}
}
```

```php
<?php

// Update the path below to your autoload.php,
// see https://getcomposer.org/doc/01-basic-usage.md
require_once "/path/to/vendor/autoload.php";

use Twilio\Rest\Client;

// Find your Account SID and Auth Token at twilio.com/console
// and set the environment variables. See http://twil.io/secure
$sid = getenv("TWILIO_ACCOUNT_SID");
$token = getenv("TWILIO_AUTH_TOKEN");
$twilio = new Client($sid, $token);

$service_notification = $twilio->conversations->v1
    ->services("ISXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX")
    ->configuration->notifications()
    ->update([
        "addedToConversationEnabled" => true,
        "addedToConversationSound" => "default",
        "addedToConversationTemplate" => "There is a new message in ${CONVERSATION} from ${PARTICIPANT}: ${MESSAGE}",
    ]);

print $service_notification->addedToConversation;
```

```ruby
# Download the helper library from https://www.twilio.com/docs/ruby/install
require 'twilio-ruby'

# Find your Account SID and Auth Token at twilio.com/console
# and set the environment variables. See http://twil.io/secure
account_sid = ENV['TWILIO_ACCOUNT_SID']
auth_token = ENV['TWILIO_AUTH_TOKEN']
@client = Twilio::REST::Client.new(account_sid, auth_token)

notification = @client
               .conversations
               .v1
               .services('ISXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX')
               .configuration
               .notifications
               .update(
                 added_to_conversation_enabled: true,
                 added_to_conversation_sound: 'default',
                 added_to_conversation_template: 'There is a new message in ${CONVERSATION} from ${PARTICIPANT}: ${MESSAGE}'
               )

puts notification.added_to_conversation
```

```bash
# Install the twilio-cli from https://twil.io/cli

twilio api:conversations:v1:services:configuration:notifications:update \
   --chat-service-sid ISXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX \
   --added-to-conversation.enabled \
   --added-to-conversation.sound default \
   --added-to-conversation.template "There is a new message in ${CONVERSATION} from ${PARTICIPANT}: ${MESSAGE}"
```

```bash
curl -X POST "https://conversations.twilio.com/v1/Services/ISXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Configuration/Notifications" \
--data-urlencode "AddedToConversation.Enabled=true" \
--data-urlencode "AddedToConversation.Sound=default" \
--data-urlencode "AddedToConversation.Template=There is a new message in ${CONVERSATION} from ${PARTICIPANT}: ${MESSAGE}" \
-u $TWILIO_ACCOUNT_SID:$TWILIO_AUTH_TOKEN
```

```json
{
  "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "chat_service_sid": "ISXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
  "log_enabled": true,
  "added_to_conversation": {
    "enabled": false,
    "template": "You have been added to a Conversation: ${CONVERSATION}",
    "sound": "ring"
  },
  "new_message": {
    "enabled": false,
    "template": "You have a new message in ${CONVERSATION} from ${PARTICIPANT}: ${MESSAGE}",
    "badge_count_enabled": true,
    "sound": "ring",
    "with_media": {
      "enabled": false,
      "template": "You have a new message in ${CONVERSATION} with ${MEDIA_COUNT} media files: ${MEDIA}"
    }
  },
  "removed_from_conversation": {
    "enabled": false,
    "template": "You have been removed from a Conversation: ${CONVERSATION}",
    "sound": "ring"
  },
  "url": "https://conversations.twilio.com/v1/Services/ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Configuration/Notifications"
}
```

Enable Media Pushes

```js
// Download the helper library from https://www.twilio.com/docs/node/install
const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";

// Find your Account SID and Auth Token at twilio.com/console
// and set the environment variables. See http://twil.io/secure
const accountSid = process.env.TWILIO_ACCOUNT_SID;
const authToken = process.env.TWILIO_AUTH_TOKEN;
const client = twilio(accountSid, authToken);

async function updateServiceNotification() {
  const notification = await client.conversations.v1
    .services("ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")
    .configuration.notifications()
    .update({
      "newMessage.withMedia.enabled": true,
      "newMessage.withMedia.template":
        "${PARTICIPANT} sent you a file: ${MEDIA}",
    });

  console.log(notification.newMessage);
}

updateServiceNotification();
```

```python
# Download the helper library from https://www.twilio.com/docs/python/install
import os
from twilio.rest import Client

# Find your Account SID and Auth Token at twilio.com/console
# and set the environment variables. See http://twil.io/secure
account_sid = os.environ["TWILIO_ACCOUNT_SID"]
auth_token = os.environ["TWILIO_AUTH_TOKEN"]
client = Client(account_sid, auth_token)

service_notification = (
    client.conversations.v1.services("ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")
    .configuration.notifications()
    .update(
        new_message_with_media_enabled=True,
        new_message_with_media_template="${PARTICIPANT} sent you a file: ${MEDIA}",
    )
)

print(service_notification.new_message)
```

```csharp
// Install the C# / .NET helper library from twilio.com/docs/csharp/install

using System;
using Twilio;
using Twilio.Rest.Conversations.V1.Service.Configuration;
using System.Threading.Tasks;

class Program {
    public static async Task Main(string[] args) {
        // Find your Account SID and Auth Token at twilio.com/console
        // and set the environment variables. See http://twil.io/secure
        string accountSid = Environment.GetEnvironmentVariable("TWILIO_ACCOUNT_SID");
        string authToken = Environment.GetEnvironmentVariable("TWILIO_AUTH_TOKEN");

        TwilioClient.Init(accountSid, authToken);

        var notification = await NotificationResource.UpdateAsync(
            newMessageWithMediaEnabled: true,
            newMessageWithMediaTemplate: "${PARTICIPANT} sent you a file: ${MEDIA}",
            pathChatServiceSid: "ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");

        Console.WriteLine(notification.NewMessage);
    }
}
```

```java
// Install the Java helper library from twilio.com/docs/java/install

import com.twilio.Twilio;
import com.twilio.rest.conversations.v1.service.configuration.Notification;

public class Example {
    // Find your Account SID and Auth Token at twilio.com/console
    // and set the environment variables. See http://twil.io/secure
    public static final String ACCOUNT_SID = System.getenv("TWILIO_ACCOUNT_SID");
    public static final String AUTH_TOKEN = System.getenv("TWILIO_AUTH_TOKEN");

    public static void main(String[] args) {
        Twilio.init(ACCOUNT_SID, AUTH_TOKEN);
        Notification notification = Notification.updater("ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")
                                        .setNewMessageWithMediaEnabled(true)
                                        .setNewMessageWithMediaTemplate("${PARTICIPANT} sent you a file: ${MEDIA}")
                                        .update();

        System.out.println(notification.getNewMessage());
    }
}
```

```go
// Download the helper library from https://www.twilio.com/docs/go/install
package main

import (
	"fmt"
	"github.com/twilio/twilio-go"
	conversations "github.com/twilio/twilio-go/rest/conversations/v1"
	"os"
)

func main() {
	// Find your Account SID and Auth Token at twilio.com/console
	// and set the environment variables. See http://twil.io/secure
	// Make sure TWILIO_ACCOUNT_SID and TWILIO_AUTH_TOKEN exists in your environment
	client := twilio.NewRestClient()

	params := &conversations.UpdateServiceNotificationParams{}
	params.SetNewMessageWithMediaEnabled(true)
	params.SetNewMessageWithMediaTemplate("${PARTICIPANT} sent you a file: ${MEDIA}")

	resp, err := client.ConversationsV1.UpdateServiceNotification("ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
		params)
	if err != nil {
		fmt.Println(err.Error())
		os.Exit(1)
	} else {
		if resp.NewMessage != nil {
			fmt.Println(*resp.NewMessage)
		} else {
			fmt.Println(resp.NewMessage)
		}
	}
}
```

```php
<?php

// Update the path below to your autoload.php,
// see https://getcomposer.org/doc/01-basic-usage.md
require_once "/path/to/vendor/autoload.php";

use Twilio\Rest\Client;

// Find your Account SID and Auth Token at twilio.com/console
// and set the environment variables. See http://twil.io/secure
$sid = getenv("TWILIO_ACCOUNT_SID");
$token = getenv("TWILIO_AUTH_TOKEN");
$twilio = new Client($sid, $token);

$service_notification = $twilio->conversations->v1
    ->services("ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")
    ->configuration->notifications()
    ->update([
        "newMessageWithMediaEnabled" => true,
        "newMessageWithMediaTemplate" => "${PARTICIPANT} sent you a file: ${MEDIA}",
    ]);

print $service_notification->newMessage;
```

```ruby
# Download the helper library from https://www.twilio.com/docs/ruby/install
require 'twilio-ruby'

# Find your Account SID and Auth Token at twilio.com/console
# and set the environment variables. See http://twil.io/secure
account_sid = ENV['TWILIO_ACCOUNT_SID']
auth_token = ENV['TWILIO_AUTH_TOKEN']
@client = Twilio::REST::Client.new(account_sid, auth_token)

notification = @client
               .conversations
               .v1
               .services('ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa')
               .configuration
               .notifications
               .update(
                 new_message_with_media_enabled: true,
                 new_message_with_media_template: '${PARTICIPANT} sent you a file: ${MEDIA}'
               )

puts notification.new_message
```

```bash
# Install the twilio-cli from https://twil.io/cli

twilio api:conversations:v1:services:configuration:notifications:update \
   --chat-service-sid ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa \
   --new-message.with-media.enabled \
   --new-message.with-media.template "${PARTICIPANT} sent you a file: ${MEDIA}"
```

```bash
curl -X POST "https://conversations.twilio.com/v1/Services/ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Configuration/Notifications" \
--data-urlencode "NewMessage.WithMedia.Enabled=true" \
--data-urlencode "NewMessage.WithMedia.Template=${PARTICIPANT} sent you a file: ${MEDIA}" \
-u $TWILIO_ACCOUNT_SID:$TWILIO_AUTH_TOKEN
```

```json
{
  "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "chat_service_sid": "ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "log_enabled": true,
  "added_to_conversation": {
    "enabled": false,
    "template": "You have been added to a Conversation: ${CONVERSATION}",
    "sound": "ring"
  },
  "new_message": {
    "enabled": false,
    "template": "You have a new message in ${CONVERSATION} from ${PARTICIPANT}: ${MESSAGE}",
    "badge_count_enabled": true,
    "sound": "ring",
    "with_media": {
      "enabled": false,
      "template": "You have a new message in ${CONVERSATION} with ${MEDIA_COUNT} media files: ${MEDIA}"
    }
  },
  "removed_from_conversation": {
    "enabled": false,
    "template": "You have been removed from a Conversation: ${CONVERSATION}",
    "sound": "ring"
  },
  "url": "https://conversations.twilio.com/v1/Services/ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Configuration/Notifications"
}
```

Setting additional notification types requires including them in your configuration request. For instance, to include the `AddedToConversation` push notification type, you can add the following 3 rows to your `curl` request.

```bash
'AddedToConversation.Enabled=true'
'AddedToConversation.Template=You are now a participant of ${CONVERSATION}!  Added by ${PARTICIPANT}'
'AddedToConversation.Sound=default'
```
