---
# System prepended metadata

title: Discourse Boost
tags: [Product]

---

---
tags: Product
---

# Discourse Boost

- Member can launch a free discourse boost that creates a new forum category for the dao. 
- If boost is active there will be a checkbox on new proposal forms to create a forum post for the proposal when submitted.
  - or assign an existing post
  - api end point get all posts
- Discourse forum data is displayed in a proposal detail page

#### Forum
https://forum.daohaus.club/


### UI
- Discourse boost/app launcher
- Requires member signature
- Hits boost update endpoint with data for new category

```json=
{
    contractAddress: <dao.address>,
    boostKey: 'discourse',
    metadata: {
        categorySlug: <somethingStandard??>
    },
    network: network.network,
    signature,
}

```

- New proposal form update to expose 'add forum post' checkbox if the dao has the boost
    - Or maybe this should be on proposal detail so anyone can add it later and we don't have to deal with waiting on the tx?
- Makes api post to create a form post, body:
    - title, description, link, ect..
        - all the graph data for the proposal
    - forum category from the boostMetadata
- Make this a member only api call 


- How will we know to display the link to the forum on the proposal detail?


- Where else should we display forum link - settings?
    - add an option/prompt in new proposal scree could be 'add forum' post for discussion before you submit on chain 

- Display forum post data in the proposal detail
    - if possible, link to forum at minimum

### API

- Create category job that will be triggered in the updateBoost endpoint:
    - https://github.com/odyssy-automaton/daohaus-api/blob/forum/functions/create-category.js

- updateBoost endpoint change to call new lambda job when launching boost with 'discourse' boostKey.
- Add category key in boostMetadata record:

```json=
{
    "discourseCategory": <categorySlug>
}
```

- new endpoint to create the forum post:
    - https://github.com/odyssy-automaton/daohaus-api/blob/forum/functions/create-proposal-topic.js


# Proposal Types

```json=
{
    contractAddress: <dao.address>,
    boostKey: 'proposalType',
    metadata: {
        lootGrab: {
            active: true,
            lootRatio: 5
        },
        <typeKey>: {
           active: true
        },
        
    },
    network: network.network,
    signature,
}

metadata.lootGrab?.active

```


```
[
    {"type":"discord",
    "channelId":"805237027841769545",
    "active":true,
    "actions":[
        "votingPeriod",
        "rageQuit",
        "newProposal"
    ]}
]
```