Create or paste your Blogs API key, configure OAuth scopes, and grant Discourse the permissions it needs to read and post blog data within the Blogs API.
Install the Discourse app integration, provide the API key, and verify the connection with a test request to ensure secure, authenticated access.
– GET emails/builder: Retrieve email templates for notification flows\n- GET emails/schedule and GET blogs/categories: fetch schedules and blog categories used in your workflows\n- POST /blogs/posts and PUT /blogs/posts/:postId: create and update blog posts from Discourse content\n- GET /blogs/posts/url-slug-exists: check slug availability before publishing\n- GET /blogs/authors and GET /blogs/categories: map authors and categories into posts\n- POST /emails/builder and POST /emails/builder/data: manage email templates used in notifications\n- DELETE /emails/builder/:locationId/:templateId: remove templates when cleaning up connections
Trigger: New Topic Created in Discourse
Actions: Create Blog Post in Blogs API; map title, content, slug and categories to the blog post fields.
POST /blogs/posts
Key fields: title, content, slug, categories
Trigger: New Comment on a Discourse Topic
Actions: Update existing blog post or create a new one using blogs/post-update.write; ensure comments map to post sections
PUT /blogs/posts/:postId
Key fields: postId, comments, author
Trigger: Weekly Digest or Scheduled Topic Summary
Actions: Publish a batch of blog posts via Blogs API using scheduled triggers; leverage blogs/schedule.readonly for timing
POST /blogs/posts
Key fields: scheduleDate, titleList
No-code automation lets a non-developer connect Discourse topics to Blogs API posts using a visual workflow builder.
Publish from discussions to a blog with a single click, eliminating manual copy/paste.
Centralized content governance: manage posts, updates, and schedules from one interface.
A quick glossary of terms and how they map between Discourse and Blogs API workflows.
An application programming interface that lets Discourse talk to Blogs API to perform actions like create, read, update, or delete posts and metadata.
A secure authorization standard that lets Discourse access the Blogs API without sharing credentials directly.
A URL-friendly version of a post title used in the blog URL and slug field.
A specific API route, such as /blogs/posts, that performs a defined action.
Turn active discussions into draft blog posts in Blogs API with a single click, then review and publish.
Automatically create and link a series of posts based on a Discourse topic thread.
Sync popular comments to update existing blog posts or create new ones.
Generate or obtain your Blogs API key and configure OAuth scopes for the Discourse app.
In your integration builder, connect Discourse as the trigger app and map fields like title, content, slug, and categories to Blogs API endpoints.
Run test requests to ensure posts publish correctly and set up error handling and retries.
Answer: You authenticate by creating a secure API key for the Blogs API and configuring OAuth scopes in the Discourse app. Then, connect the Discourse trigger to the Blogs API action to enable authorized requests. The setup includes validating a test request to confirm access rights.\nNext, ensure your credentials are stored securely and rotated regularly, and enable logging to monitor activity.
Answer: For publishing posts from Discourse, use the blogs/posts endpoints (POST /blogs/posts) to create new blog posts and PUT /blogs/posts/:postId to update existing ones. Map title, content, slug, and categories from Discourse to the corresponding fields in Blogs API.\nIf you need to check slug availability before publishing, call GET /blogs/posts/url-slug-exists.
Answer: Rate limits depend on your plan; plan for bursts during peak publishing windows. Implement exponential backoff retries and handle 429 responses gracefully. Enable built-in retry logic in your automation builder and log any throttling to optimize future calls.\nContact support if you consistently hit limits.
Answer: Map Discourse fields such as title, content, author, categories, and slug to the corresponding Blogs API post fields. Use your builder’s field-mapping feature to ensure data types match (string vs. rich text) and handle category IDs or names as needed.\nInclude fallbacks for missing fields to avoid failed posts.
Answer: Yes. You can schedule posts by adding a scheduling step in the workflow and using the Blogs API’s scheduling or publish-at date fields. Define a cadence (e.g., daily or weekly) and leverage Discourse triggers to batch topics for publication.\nTest the schedule to confirm posts go live at the intended times.
Answer: The most common errors are authentication failures, missing required fields, and slug conflicts. Use robust error handling, retry with backoff, and log error responses for debugging. If a request fails, present a friendly error with remediation steps in the UI.
Answer: Yes. Use a dry-run or sandbox mode to simulate posts without publishing. Validate field mappings, test endpoints, and review responses before going live. This helps catch issues without affecting public content.
Due to high volume, we will be upgrading our server soon!
Complete Operations Catalog - 126 Actions & Triggers