Query conversations

Conversations can be filtered by all their fields, and they support powerful combinations that allow you to

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}

FieldFilter typeExampleSortable
titleString{"title": {"textContains": "developer communities"}}✔️
platformString{"platform": "discord"}✔️
channelString{"channel": "support"}✔️
activityCountNumber{"activityCount": {"gte": 10}}✔️
lastActiveDate{"lastActive": {"lt": "2022-10-10}}✔️
publishedBool{"published": true
slugString{"slug": {"title": "developer-communities"}}✔️
createdAtDate{"createdAt": {"gte": "2022-01-01"}}✔️

Examples

GitHub conversations on specific repos

  • platform is github, and
  • channel 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, or
    • activityCount is at least 10
{
    "filter": {
        "published": true,
        "or": [
            {
                "lastActive": {
                    "gte": "2022-10-10"
                }
            },
            {
                "activityCount": {
                    "gte": 10
                }
            }
        ]
    },
    "orderBy": "activityCount_DESC",
    "limit": 20,
    "offset": 0
}