# Documentation

**URL:** https://meta.discourse.org/c/documentation/10.md?page=9

[Latest](https://meta.discourse.org/latest.md) · [Categories](https://meta.discourse.org/categories.md) · [Tags](https://meta.discourse.org/tags.md)

**Page:** 10

---

## [Setup Cross-Origin Resource Sharing (CORS)](https://meta.discourse.org/t/setup-cross-origin-resource-sharing-cors/270819)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 8\
**Last updated:** [January 13, 2026, 9:56pm UTC](https://meta.discourse.org/t/setup-cross-origin-resource-sharing-cors/270819 "2026-01-13T21:56:29Z")

</div>

:notebook\_with\_decorative\_cover: This is a how-to guide that will guide you through the process of setting up Cross-Origin Resource Sharing (CORS) in Discourse. CORS is a mechanism that allows many resources (e.g., fo…

---

## [Enable hidden setting to include S3 uploads in the backups](https://meta.discourse.org/t/enable-hidden-setting-to-include-s3-uploads-in-the-backups/276535)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 10\
**Last updated:** [January 12, 2026, 10:18am UTC](https://meta.discourse.org/t/enable-hidden-setting-to-include-s3-uploads-in-the-backups/276535 "2026-01-12T10:18:53Z")

</div>

:bookmark: This guide explains how to enable a hidden setting in Discourse to include Amazon S3 (Simple Storage Service) uploads in your backups. Discourse has the ability to store media uploads on Amazon S3 for scala…

---

## [Linking user titles to groups](https://meta.discourse.org/t/linking-user-titles-to-groups/19169)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 5\
**Last updated:** [April 22, 2025, 7:37am UTC](https://meta.discourse.org/t/linking-user-titles-to-groups/19169 "2025-04-22T07:37:44Z")

</div>

:bookmark: This guide explains how to link a user’s title to a group in Discourse, allowing users to click on the title to view the associated group page. :person\_raising\_hand: Required user level: Administrator This…

---

## [House Ad Templates](https://meta.discourse.org/t/house-ad-templates/122004)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 31\
**Last updated:** [January 8, 2026, 3:16am UTC](https://meta.discourse.org/t/house-ad-templates/122004 "2026-01-08T03:16:53Z")

</div>

House Ad Templates This guide provides templates for creating house ads using the Official Discourse Ad Plugin. :warning: Important: Disable ad blockers (including those built in to browsers, e.g. Brave) before workin…

---

## [Customizing the Discourse outer email template](https://meta.discourse.org/t/customizing-the-discourse-outer-email-template/153637)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 13\
**Last updated:** [May 19, 2022, 1:52pm UTC](https://meta.discourse.org/t/customizing-the-discourse-outer-email-template/153637 "2022-05-19T13:52:45Z")

</div>

:bookmark: This guide explains how to customize and style the outer HTML template for all emails sent from your Discourse site. :person\_raising\_hand: Required user level: Administrator All emails sent from your site …

---

## [Making custom CSS changes on your site](https://meta.discourse.org/t/making-custom-css-changes-on-your-site/168101)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 3\
**Last updated:** [December 30, 2025, 5:52am UTC](https://meta.discourse.org/t/making-custom-css-changes-on-your-site/168101 "2025-12-30T05:52:32Z")

</div>

:bookmark: This guide explains how to make CSS changes on your Discourse site, including an introduction to CSS, where to add CSS in Discourse, and how to find the right selectors using browser inspection tools. …

---

## [Understanding groups and category permissions](https://meta.discourse.org/t/understanding-groups-and-category-permissions/87678)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 0\
**Last updated:** [May 16, 2018, 8:33pm UTC](https://meta.discourse.org/t/understanding-groups-and-category-permissions/87678 "2018-05-16T20:33:10Z")

</div>

:bookmark: This guide explains how to manage category visibility and user permissions using groups in Discourse. :person\_raising\_hand: Required user level: Administrator Groups and category permissions are crucial fo…

---

## [Configure sign up and log in with Auth0 using the OAuth2 Basic Plugin](https://meta.discourse.org/t/configure-sign-up-and-log-in-with-auth0-using-the-oauth2-basic-plugin/64633)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 73\
**Last updated:** [December 16, 2025, 9:31am UTC](https://meta.discourse.org/t/configure-sign-up-and-log-in-with-auth0-using-the-oauth2-basic-plugin/64633 "2025-12-16T09:31:17Z")

</div>

If you are using Auth0 as your identity provider this guide will show you how to setup authentication using the Discourse OAuth2 Basic Plugin. Initial Steps Create an Auth0 account if you don’t already have one The Di…

---

## [Printing a topic as a PDF](https://meta.discourse.org/t/printing-a-topic-as-a-pdf/160061)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 25\
**Last updated:** [December 16, 2025, 5:41am UTC](https://meta.discourse.org/t/printing-a-topic-as-a-pdf/160061 "2025-12-16T05:41:21Z")

</div>

:bookmark: This guide explains how to print/download any Discourse topic to PDF. :person\_raising\_hand: Required user level: All users Discourse allows you to generate a PDF of a topic by using the Print topic keyboar…

---

## [Contributing to Discourse](https://meta.discourse.org/t/contributing-to-discourse/53797)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 0\
**Last updated:** [December 5, 2016, 3:07pm UTC](https://meta.discourse.org/t/contributing-to-discourse/53797 "2016-12-05T15:07:38Z")

</div>

:bookmark: This is a guide on how to contribute to the Discourse open-source project in various ways including advocacy, design, translation, code contributions, bug reporting, and financial support. …

---

## [Understanding PII storage in Discourse](https://meta.discourse.org/t/understanding-pii-storage-in-discourse/390407)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 0\
**Last updated:** [December 4, 2025, 12:25pm UTC](https://meta.discourse.org/t/understanding-pii-storage-in-discourse/390407 "2025-12-04T12:25:37Z")

</div>

:bookmark: This guide explains what personally identifiable information (PII) Discourse stores by default, where it’s stored, who can access it, and how you can minimize PII collection using DiscourseConnect. …

---

## [Where in Discourse can users publicly share PII?](https://meta.discourse.org/t/where-in-discourse-can-users-publicly-share-pii/391021)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 0\
**Last updated:** [December 11, 2025, 11:43am UTC](https://meta.discourse.org/t/where-in-discourse-can-users-publicly-share-pii/391021 "2025-12-11T11:43:09Z")

</div>

:bookmark: This guide identifies all the places where users might publicly or inadvertently share personally identifiable information (PII) through their own actions in Discourse, and how administrators can restrict or …

---

## [Using PDF and attachment support with AI bots](https://meta.discourse.org/t/using-pdf-and-attachment-support-with-ai-bots/391005)

<div class="topic-metadata">

**Author:** [@sam](https://meta.discourse.org/u/sam)\
**Replies:** 0\
**Last updated:** [December 11, 2025, 5:32am UTC](https://meta.discourse.org/t/using-pdf-and-attachment-support-with-ai-bots/391005 "2025-12-11T05:32:55Z")

</div>

:bookmark: This guide explains how to enable and use native PDF and document attachment support when interacting with AI bots in Discourse. Users can upload PDFs and other documents directly in conversations with AI age…

---

## [Google Tag Manager and Discourse CSP (Content Security Policy)](https://meta.discourse.org/t/google-tag-manager-and-discourse-csp-content-security-policy/188296)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 0\
**Last updated:** [April 27, 2021, 7:03pm UTC](https://meta.discourse.org/t/google-tag-manager-and-discourse-csp-content-security-policy/188296 "2021-04-27T19:03:01Z")

</div>

Discourse uses a ‘strict-dynamic’ Content Security Policy, and attaches a nonce to the root GTM script. That means that, in the vast majority of cases, no extra configuration is required. strict-dynamic will automatical…

---

## [Where does Discourse store and show logs?](https://meta.discourse.org/t/where-does-discourse-store-and-show-logs/58022)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 8\
**Last updated:** [December 10, 2025, 8:12pm UTC](https://meta.discourse.org/t/where-does-discourse-store-and-show-logs/58022 "2025-12-10T20:12:59Z")

</div>

When troubleshooting issues or errors with Discourse it is important you look at your logs. Here’s a listing of where they are and what’s in there. Your site domain Administration logs shown in the UI The Discours…

---

## [Replace a string in all posts](https://meta.discourse.org/t/replace-a-string-in-all-posts/48729)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 26\
**Last updated:** [December 9, 2025, 11:55am UTC](https://meta.discourse.org/t/replace-a-string-in-all-posts/48729 "2025-12-09T11:55:29Z")

</div>

:bookmark: This guide explains how to replace a string in all posts within a Discourse instance. :person\_raising\_hand: Required user level: System Administrator :warning: Console Access Required Want to replace a st…

---

## [Create and configure an API key](https://meta.discourse.org/t/create-and-configure-an-api-key/230124)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 6\
**Last updated:** [May 10, 2024, 6:46pm UTC](https://meta.discourse.org/t/create-and-configure-an-api-key/230124 "2024-05-10T18:46:41Z")

</div>

API keys are generated from the Admin / API page. Go to Admin-Advanced-API Keys: After clicking the “Add API key” button, you will be taken to a page to configure the key: Every API key needs a description, a …

---

## [PDF support in Discourse AI (RAG)](https://meta.discourse.org/t/pdf-support-in-discourse-ai-rag/352829)

<div class="topic-metadata">

**Author:** [@sam](https://meta.discourse.org/u/sam)\
**Replies:** 20\
**Last updated:** [December 5, 2025, 6:55am UTC](https://meta.discourse.org/t/pdf-support-in-discourse-ai-rag/352829 "2025-12-05T06:55:29Z")

</div>

:bookmark: This guide explains how to implement and use PDF processing capabilities within discourse-ai, including both basic text extraction and enhanced processing with LLM assistance. :person\_raising\_hand: Required …

---

## [Reordering categories and setting fixed category positions](https://meta.discourse.org/t/reordering-categories-and-setting-fixed-category-positions/153627)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 4\
**Last updated:** [September 15, 2024, 12:33pm UTC](https://meta.discourse.org/t/reordering-categories-and-setting-fixed-category-positions/153627 "2024-09-15T12:33:13Z")

</div>

:bookmark: This guide explains how to set fixed positions for categories in Discourse, allowing you to manually order categories on your site. :person\_raising\_hand: Required user level: Administrator Discourse typica…

---

## [Create a category in Discourse](https://meta.discourse.org/t/create-a-category-in-discourse/197224)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 1\
**Last updated:** [December 3, 2025, 1:52pm UTC](https://meta.discourse.org/t/create-a-category-in-discourse/197224 "2025-12-03T13:52:32Z")

</div>

:bookmark: This guide describes how to create a category in Discourse. :person\_raising\_hand: Required user level: Administrator (or moderator if the moderators manage categories setting is enabled) Categories are mea…

---

## [Tips for Preventing Spam](https://meta.discourse.org/t/tips-for-preventing-spam/264020)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 14\
**Last updated:** [December 1, 2025, 11:32pm UTC](https://meta.discourse.org/t/tips-for-preventing-spam/264020 "2025-12-01T23:32:06Z")

</div>

:bookmark: This documentation provides a comprehensive guide on preventing spam in Discourse forums, and includes information about various settings and tools designed to help maintain a spam-free community environment. …

---

## [Add users to groups through custom field automation](https://meta.discourse.org/t/add-users-to-groups-through-custom-field-automation/275873)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 19\
**Last updated:** [December 1, 2025, 10:37am UTC](https://meta.discourse.org/t/add-users-to-groups-through-custom-field-automation/275873 "2025-12-01T10:37:12Z")

</div>

:bookmark: This guide explains how to automatically add users to groups based on their selection of a custom user field during signup or profile update. :person\_raising\_hand: Required user level: Administrator Summa…

---

## [Running Out of AI credits? Available Options and Next Steps](https://meta.discourse.org/t/running-out-of-ai-credits-available-options-and-next-steps/389109)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 0\
**Last updated:** [November 28, 2025, 6:28pm UTC](https://meta.discourse.org/t/running-out-of-ai-credits-available-options-and-next-steps/389109 "2025-11-28T18:28:19Z")

</div>

If you’re using our CDCK Hosted LLM and you’ve run out of AI credits, don’t worry, you still have a few options to keep your AI features running smoothly. Why this happens Each Discourse site comes pre-configured with…

---

## [Linking to a heading within a post or topic](https://meta.discourse.org/t/linking-to-a-heading-within-a-post-or-topic/47552)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 7\
**Last updated:** [November 23, 2025, 2:55am UTC](https://meta.discourse.org/t/linking-to-a-heading-within-a-post-or-topic/47552 "2025-11-23T02:55:04Z")

</div>

:bookmark: This guide explains how to link directly to a heading within a Discourse post or topic, enabling users to navigate long posts efficiently. :person\_raising\_hand: Required user level: All users Adding headin…

---

## [How to integrate Discourse Gamification with an external system (redeem and award points)](https://meta.discourse.org/t/how-to-integrate-discourse-gamification-with-an-external-system-redeem-and-award-points/262968)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 34\
**Last updated:** [November 21, 2025, 2:18pm UTC](https://meta.discourse.org/t/how-to-integrate-discourse-gamification-with-an-external-system-redeem-and-award-points/262968 "2025-11-21T14:18:00Z")

</div>

Since we launched Discourse Gamification a year ago, one of the most requested features from our roadmap has been the ability to make it possible to integrate Discourse Gamification with external gamification system . Ex…

---

## [Editing and creating wiki posts](https://meta.discourse.org/t/editing-and-creating-wiki-posts/30801)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 11\
**Last updated:** [November 21, 2025, 12:02am UTC](https://meta.discourse.org/t/editing-and-creating-wiki-posts/30801 "2025-11-21T00:02:54Z")

</div>

:bookmark: This guide explains how to create and edit wiki posts, including their purpose, permissions, and best practices. :person\_raising\_hand: Required user level: All users (with specific permissions based on group…

---

## [Email delivery configuration checklist](https://meta.discourse.org/t/email-delivery-configuration-checklist/209839)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 4\
**Last updated:** [November 23, 2021, 5:53pm UTC](https://meta.discourse.org/t/email-delivery-configuration-checklist/209839 "2021-11-23T17:53:59Z")

</div>

Email deliverability is complicated. Here are a few important things you should check first: Be sure to set the DISCOURSE\_NOTIFICATION\_EMAIL: correctly in your app.yml file. The domain specified in the “from” address …

---

## [Setting up automated admin notice alerts](https://meta.discourse.org/t/setting-up-automated-admin-notice-alerts/388453)

<div class="topic-metadata">

**Author:** [@meghna](https://meta.discourse.org/u/meghna)\
**Replies:** 0\
**Last updated:** [November 17, 2025, 7:22am UTC](https://meta.discourse.org/t/setting-up-automated-admin-notice-alerts/388453 "2025-11-17T07:22:28Z")

</div>

:bookmark: This guide shows you how to set up an automated monitoring system that sends private messages to your admin group when new admin notices are detected on your Discourse site. :person\_raising\_hand: Required us…

---

## [Update themes and plugins to support automatic dark mode](https://meta.discourse.org/t/update-themes-and-plugins-to-support-automatic-dark-mode/161595)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 10\
**Last updated:** [November 14, 2025, 10:45am UTC](https://meta.discourse.org/t/update-themes-and-plugins-to-support-automatic-dark-mode/161595 "2025-11-14T10:45:01Z")

</div>

Previously, all colors in Discourse were stored as SCSS variables. To support automatic dark mode color scheme switching, we have converted these colors in core to custom CSS properties. You can easily see the full list …

---

## [Accessing a user’s admin page](https://meta.discourse.org/t/accessing-a-user-s-admin-page/311859)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 12\
**Last updated:** [April 8, 2025, 5:43pm UTC](https://meta.discourse.org/t/accessing-a-user-s-admin-page/311859 "2025-04-08T17:43:33Z")

</div>

:bookmark: This guide details the steps to access a user’s admin page as an admin or moderator on a Discourse forum. :person\_raising\_hand: Required user level: Administrator or Moderator As an admin or moderator on a…

[Previous page](https://meta.discourse.org/c/documentation/10.md?page=8)

[Next page](https://meta.discourse.org/c/documentation/10.md?page=10)
