Customizing Smart Invites

To provide better user experience Smart Invite content, order of invite channels in Smart Invites View and Invite Link domain can be customized. This guide shows the ways how it is possible to do.

Prerequisite

Content Customizations

Unfortunately not all invite channels allow the same level of customization, for instance, Twitter allow only custom message text and image, but not subject. Check the complete list of supported customizations.

Via Dashboard

GetSocial Dashboard provide an easy way to customize and localize Smart Invites content, check the full list of supported languages in Localization guide.

  1. Login to GetSocial Dashboard.
  2. Go to “Invites” section.
  3. Update content: provide localized subject, localized message text and image:

    GetSocial Dashboard - Customize Smart Invites

  4. By default Smart Invite link will be automatically appended at the end of the message text. To customize location of the link you can use placeholder [APP_INVITE_URL], e.g. “Check this game [APP_INVITE_URL]. It’s amazing!”.

  5. Optionally you can provide customized content for each Invite Channel:

    GetSocial Dashboard - Customize Smart Invites

  6. Press “Save”.

  7. On the client side changes will be visible after application restart.

Recommended Invite Image Size

Recommended image resolution is 1200x1080px. Bigger images will be downscaled.

No Image Option

If you set “No Image” option, it disables image for this Smart Invite Channel even if you’ve passed a custom image on the client side.
It could be useful to avoid charges for sending MMS instead of SMS.

On the Client Side

To enable dynamic Smart Invite content generation GetSocial provide client side API for content customization.

  1. The first step is to create InviteContent object:

    1
    2
    3
    4
    5
    6
    InviteContent inviteContent = InviteContent
        .CreateBuilder()
        .WithSubject("Hey mate, look what I've found")
        .WithText("Check this game [APP_INVITE_URL]. It’s amazing!")
        .WithImageUrl("https://api.adorable.io/avatars/250/documentation_app.png")
        .Build();
    
  2. Note, that you can use placeholder [APP_INVITE_URL] to customize position of the invite url in WithText(...) method. All available placeholders are defined in InviteTextPlaceholders class.

  3. Next, send customized invitation via GetSocial Data API:

    1
    2
    3
    4
    5
    GetSocial.SendInvite(InviteChannelIds.Email, inviteContent,
        onComplete: () => Debug.Log("Customized invitation via EMAIL was sent"),
        onCancel: () => Debug.Log("Customized invitation via EMAIL was cancelled"),
        onFailure: (error) => Debug.LogError("Customized invitation via EMAIL failed, error: " + error.Message)
    );
    

    Or via GetSocial UI:

    1
    2
    3
    GetSocialUi.CreateInvitesView()
        .SetCustomInviteContent(inviteContent)
        .Show();
    

If you want to attach Texture2D to the invitation on client side, you can use WithImage() method instead of WithImageUrl() method. Recommended resolution is 1200x1080px. Bigger images will be automatically downscaled on the backend:

1
2
3
4
5
6
7
Texture2D inviteImage = ...;// get your image here
InviteContent inviteContent = InviteContent
    .CreateBuilder()
    .WithSubject("Hey mate, look what I've found")
    .WithText("Check this game [APP_INVITE_URL]. It’s amazing!")
    .WithImage(inviteImage)
    .Build();

Invite Channels Order Customization

To improve organic user acquisition we recommend to adjust the order of Invite Channels according to your audience, e.g. if your app is mostly used in Asia, it make sense to put Kik and Kakao on the top; on the other hand if your app is popular in US - WhatsApp and Facebook Messenger provide better results.

GetSocial allows to customize the order of Invite Channels via Dashboard:

  1. Login to the GetSocial Dashboard.
  2. Go to the “Invites” section.
  3. Drag and drop Invite Channels to order them:

    GetSocial Dashboard - Customize Smart Invites

  4. If you’re using GetSocial UI, after the app restart order of Invite Channels will be updated accordingly:

    Ordered Channels in Smart Invites View

  5. If you’re building your own UI for Smart Invites, order property is available on InviteChannel object:

    1
    2
    3
    4
    5
    6
    7
    8
    var inviteChannels = GetSocial.InviteChannels;
    
    foreach(var inviteChannel in inviteChannels) {
        var channelId = inviteChannel.Id;
        var displayOrder = inviteChannel.DisplayOrder;
    
        Debug.Log("Channel " + channelId + " has display order: " + displayOrder);
    }
    

To customize the Smart Link added to the invites follow this guide.

Smart Link Customization

Next Steps

Give us your feedback! Was this article helpful?

πŸ˜€ πŸ™