Creating pre-filled personal message links

:bookmark: This guide describes how to create a link to start a new personal message with pre-filled information, including best practices.

:person_raising_hand: Required user level: All users

Discourse allows you to compose a new personal message with pre-filled information via URL parameters. This can save time and ensure consistency for common messages.

Structure of the URL

To create a new pre-filled message, format your URL like this:

https://discourse.example.com/new-message?username=techapj&title=message%20title&body=message%20body

When broken down, the URL parameters include:

  • Base URL: https://discourse.example.com/new-message
  • Username: username=techapj
  • Title: title=message%20title
  • Body: body=message%20body
  • The ? URL operator to add the different options

You can try this on try.discourse.org:

https://try.discourse.org/new-message?username=rudy&title=message%20title&body=message%20body

You can also compose a pre-filled message for a group via URL:

https://meta.discourse.org/new-message?groupname=team&title=topic%20title&body=topic%20body`

Notice the groupname param in above URL, this means that you want to create a new pre-filled message for a group (as opposed to username for composing a message for user).

Best practices

  • You can send message to multiple users by comma separating the usernames. For example

    https://meta.discourse.org/new-message?username=foo,bar
    
  • You don’t need to fill in all of the params. For example any of these would work:

    https://meta.discourse.org/new-message
    https://meta.discourse.org/new-message?username=
    https://meta.discourse.org/new-message?title=foo&body=bar
    https://meta.discourse.org/new-message?groupname=
    
  • You can add line spaces using the %0A and %0A%0D codes to give some structure to the body of the message:

    https://yoursite.discourse.org/new-message?username=test_user&title=Bug%20Report&body=Please%20include%20all%20relevant%20details.%0A%0DCPU:%0AMemory:%0A%0DDescribe%20Issue:
    
  • If you have SSO, you can link to example.com/session/sso and then set the return path to create the personal message. If the user is already logged in they will be redirected automatically to the url supplied by the return path. If they aren’t logged in they will be taken to the sso login page and then redirected to the return path url. The return path will need to be url encoded.

    href="http://localhost:3000/session/sso?return_path=http%3A%2F%2Flocalhost%3A3000%2Fnew-message%3Fusername%3Dscossar%26title%3DInformation+requested+about+gentle+yoga+classes">
    

Currently not supported

  • Use the pre-filled URL to compose a message to multiple groups.
  • Use the pre-filled URL to open the composer in a user’s summary page.
  • Using email instead of the username to pre-fill a personal message.

Additional resources

Last edited by @hugh 2024-06-28T02:53:33Z

Check documentPerform check on document:
「いいね!」 56

タグもこれで割り当てられますか? ここからタグの実装を模倣しようとしましたが、うまくいきませんでした。

コードは同じだと思います。どのURLを試しましたか?必要であれば、ホスト名をmeta.discourse.orgに置き換えても構いません(ただし、実際にトピックを作成しないでください!)。

tags=email,plannedのようなものを使い、タグが存在し、リンクを使用しようとしたユーザーが適用できることを確認しましたか?

「いいね!」 1

URLはこちらです。

https://developer.sailpoint.com/discuss/new-message?groupname=community_managers&title=Livestream%20Presentation%20Submission&tags=livestream&body=I%20would%20like%20to%20present%20a%20livestream%21%20Here%20is%20an%20overview%20of%20my%20presentation%3A%0A%0ATopic%3A%20%5B%5Binsert%20topic%20here%5D%5D%0ADescription%3A%20%5B%5Binsert%20description%20here%5D%5D

タグの権限に関するご指摘はもっともです。PMはタグを非表示にして作成できますか?

ユーザーはUX経由で希望のタグを通常どおり付けてプライベートメッセージを作成できますか?(ヒント:あなたが設定している方法ではありません。)URLは、ユーザーがUXで行う可能性のあることをシードするためだけのものです。魔法の力はありません。

サイト設定でPMのタグが有効になります。いいえ、ユーザーは表示する権限のないタグを作成することはできません。

「いいね!」 1

確認したこと:

:frowning:

ユーザーが現在いるURLを(PM本文に)含めることは可能でしょうか?特定のトピックを参照して、クローズドグループのユーザーがスタッフにメッセージを送信できるように、トピックにいくつかのPMリンクを追加したいと考えています。

「いいね!」 1