Discourse

The Discourse modules enable you to monitor, create, update, retrieve, or delete posts and topics in your Discourse account.

Getting Started With Discourse

Prerequisites

Note

The module dialog fields that are displayed in bold (in the Make scenario, not in this documentation article) are mandatory!

Connecting Discourse to Make

To connect your Discourse account to Make, you'll need to obtain the API Key, and insert it into the Make Create a connection dialog.

  1. Log in to your Discourse account.

  2. Open the menu in the top-right corner (61f26b4be5777.png).

  3. Navigate to Admin > API.

    61f26b4d0c287.gif
  4. Click the New API Key (61f26b4fd2eb1.png) button.

  5. Set the API Key configuration as follows:

    Description

    Enter the name for the API Key.

    User Level

    Select the Single User option to restrict the access via API to the user specified in the User field below.

    User

    Select the user you want to grant API access to your Discourse account. User names you can select from will display as you type.

    Global Key (allows all actions)

    Enable this option to allow all actions. Otherwise, define the particular scopes you want to enable for the API access.

  6. Click the Save button, and copy the provided API Key.

    61f26b50bdbab.png
  7. Go to Make, and open the Discourse module's Create a connection dialog. Fill in the following fields:

    Connection name

    Enter the name of the connection to your Discourse account.

    Host URL

    Select the URL of your Discourse domain name (including HTTPS), e.g., https://<yourCompanyName>.trydiscourse.com

    API Key

    Enter the API Key you have copied in step 6 above.

    API User Name

    Enter the user name of the user assigned to the API Key.

  8. Click the Continue button to establish the connection.

The connection has been established. You can proceed with setting up the module.

Posts

Retrieves post details when a new post is created.

Connection

Establish a connection to your Discourse account.

Limit

Set the maximum number of posts Make will return during one execution cycle.

Retrieves a list of the latest posts across topics.

Connection

Establish a connection to your Discourse account.

Limit

Set the maximum number of posts Make will return during one execution cycle.

Retrieves post details.

Connection

Establish a connection to your Discourse account.

Post ID

Enter (map) the ID of the post, or select the post you want to retrieve details for.

Updates an existing post.

Connection

Establish a connection to your Discourse account.

Post ID

Enter (map) the ID of the post or select the post you want to update.

Body

Enter the post content. HTML formatting is supported.

Old Body

Enter the old content of the post.

Edit Reason

Enter the reason for the post edit.

Cooked

Enter the cooked post data.

Deletes an existing post.

Connection

Establish a connection to your Discourse account.

Post ID

Enter (map) the ID of the post or select the post you want to delete.

Topics

Retrieves topic details when a new topic is created.

Connection

Establish a connection to your Discourse account.

Limit

Set the maximum number of topics Make will return during one execution cycle.

Retrieves a list of topics.

Connection

Establish a connection to your Discourse account.

Order By

Select the parameter you want to sort returned topics by.

Order

Select whether to order returned topics in descending or ascending direction.

Limit

Set the maximum number of topics Make will return during one execution cycle.

Retrieves topic details.

Connection

Establish a connection to your Discourse account.

Topic ID

Enter (map) the ID of the topic or select the topic you want to retrieve details for.

Print

Enable to return up to 1000 posts in a topic.

Allows you to update an existing topic's title or/and category.

Connection

Establish a connection to your Discourse account.

Topic ID

Enter (map) the ID of the topic, or select the topic you want to retrieve details for.

Title

Enable the new title for the topic.

Category

Select the category or map the category ID.

Deletes an existing topic.

Connection

Establish a connection to your Discourse account.

Topic ID

Enter (map) the ID of the topic, or select the topic you want to delete.

Private Messages

Retrieves message details when a new private message is received.

Connection

Establish a connection to your Discourse account.

Limit

Set the maximum number of private messages Make will return during one execution cycle.

Retrieves private messages in your account.

Connection

Establish a connection to your Discourse account.

Limit

Set the maximum number of private messages Make will return during one execution cycle.

Other

Creates a post, topic, or private message.

Connection

Establish a connection to your Discourse account.

Type of Content

Select whether you want to create a post, topic, or private message.

Post

Topic ID

Select the topic, or map the ID of the topic where you want to create the post.

Body

Enter the post content. HTML formatting is supported.

Topic

Title

Enter the name for the topic.

Body

Enter the topic body content.

Category ID

Select the category for the topic.

Private Message

Title

Enter the message title.

Body

Enter the private message content.

Target Recipients

Add desired recipients of the private message.

Allows you to perform a custom API call.

Connection

Establish a connection to your Discourse account.

URL

Enter a path relative to https://integrodocs.trydiscourse.com.For example: /posts.

Note

For the list of available endpoints, refer to the Discourse API Documentation.

Method

Select the HTTP method you want to use:

GET

to retrieve information for an entry.

POST

to create a new entry.

PUT

to update/replace an existing entry.

PATCH

to make a partial entry update.

DELETE

to delete an entry.

Headers

Enter the desired request headers. You don't need to add authorization headers; we've already added those for you.

Query String

Enter the request query string.

Body

Enter the body content for your API call.

The following API call returns all posts in your Discourse account:

URL:

/v1/posts

Method:

GET

61f26b51d1ce9.png

The result can be found in the module's Output under Bundle > Body > latest posts.

In our example, 15 posts were returned:

61f26b52f3522.png