Conversations can be filtered by all their fields, and they support powerful combinations that allow you to
- list conversations on specific GitHub repos, or
- find published conversations that have high engagement or recent activity,
amongst many other excellent use cases.
This page will guide you through everything you need to know to construct creative filters to get great insights from your community.
Fields and types for filtering and sorting
The following table shows all the possible fields for which conversations can be filtered and sorted. The filter type defines which type-specific operators can be used. All fields can be used with general operators and composition.
Sortable fields can always be sent as {fieldName}_{ASC | DESC}
Field | Filter type | Example | Sortable |
---|---|---|---|
title | String | {"title": {"textContains": "developer communities"}} | ✔️ |
platform | String | {"platform": "discord"} | ✔️ |
channel | String | {"channel": "support"} | ✔️ |
activityCount | Number | {"activityCount": {"gte": 10}} | ✔️ |
lastActive | Date | {"lastActive": {"lt": "2022-10-10}} | ✔️ |
published | Bool | {"published": true | ✘ |
slug | String | {"slug": {"title": "developer-communities"}} | ✔️ |
createdAt | Date | {"createdAt": {"gte": "2022-01-01"}} | ✔️ |
Examples
GitHub conversations on specific repos
platform
is github, andchannel
is in crowd.dev or awesome-oss-investors
Sorted by activityCount
{
"filter": {
"platform": "github",
"channel": {
"in": [
"crowd.dev",
"awesome-oss-investores"
]
}
},
"orderBy": "activityCount_DESC",
"limit": 20,
"offset": 0
}
Published conversations with high engagement or recently active
- published is
true
, and - either:
lastActive
is less than 1 week, oractivityCount
is at least 10
{
"filter": {
"published": true,
"or": [
{
"lastActive": {
"gte": "2022-10-10"
}
},
{
"activityCount": {
"gte": 10
}
}
]
},
"orderBy": "activityCount_DESC",
"limit": 20,
"offset": 0
}