Skip to content

Hashtags

The following mostly illustrates how the name of a hashtag gets transformed by the applications. The input has the form

"tag": {"type": "Hashtag", "name": "${tag}"}

The last two examples illustrate more technical behavior. For particularities in parsing see Hashtags and JSON-LD.

Examples

Example 1

activity
{
  "@context": [
    "https://www.w3.org/ns/activitystreams",
    {
      "Hashtag": "as:Hashtag",
      "sensitive": "as:sensitive"
    }
  ],
  "type": "Create",
  "actor": "http://pasture-one-actor/actor",
  "to": [
    "https://www.w3.org/ns/activitystreams#Public",
    "http://pyfedi.local/c/pie"
  ],
  "id": "http://pasture-one-actor/activity/5VND9omq13g",
  "published": "2025-09-09T12:34:14Z",
  "object": {
    "type": "Note",
    "attributedTo": "http://pasture-one-actor/actor",
    "to": [
      "https://www.w3.org/ns/activitystreams#Public",
      "http://pyfedi.local/c/pie"
    ],
    "id": "http://pasture-one-actor/object/8RqSQCUdhgA",
    "published": "2025-09-09T12:34:14Z",
    "content": "text",
    "tag": [
      {
        "type": "Hashtag",
        "name": "#test"
      },
      {
        "type": "Mention",
        "href": "http://pyfedi.local/c/pie"
      }
    ]
  }
}
pyfedi
{
  "id": 234,
  "user_id": 2,
  "community_id": 1,
  "title": "(content in post body)",
  "deleted": false,
  "nsfw": false,
  "sticky": false,
  "published": "2025-09-09T12:34:14.364752Z",
  "ap_id": "http://pasture-one-actor/object/8RqSQCUdhgA",
  "local": false,
  "language_id": 2,
  "removed": false,
  "locked": false,
  "body": "text"
}

Example 2

activity
{
  "@context": [
    "https://www.w3.org/ns/activitystreams",
    {
      "Hashtag": "as:Hashtag",
      "sensitive": "as:sensitive"
    }
  ],
  "type": "Create",
  "actor": "http://pasture-one-actor/actor",
  "to": [
    "https://www.w3.org/ns/activitystreams#Public",
    "http://pyfedi.local/c/pie"
  ],
  "id": "http://pasture-one-actor/activity/Jk1mecHDKXs",
  "published": "2025-09-09T12:34:14Z",
  "object": {
    "type": "Note",
    "attributedTo": "http://pasture-one-actor/actor",
    "to": [
      "https://www.w3.org/ns/activitystreams#Public",
      "http://pyfedi.local/c/pie"
    ],
    "id": "http://pasture-one-actor/object/51F4vZdblds",
    "published": "2025-09-09T12:34:14Z",
    "content": "text",
    "tag": [
      {
        "type": "Hashtag",
        "name": "nohash"
      },
      {
        "type": "Mention",
        "href": "http://pyfedi.local/c/pie"
      }
    ]
  }
}
pyfedi
{
  "id": 235,
  "user_id": 2,
  "community_id": 1,
  "title": "(content in post body)",
  "deleted": false,
  "nsfw": false,
  "sticky": false,
  "published": "2025-09-09T12:34:15.191788Z",
  "ap_id": "http://pasture-one-actor/object/51F4vZdblds",
  "local": false,
  "language_id": 2,
  "removed": false,
  "locked": false,
  "body": "text"
}

Example 3

activity
{
  "@context": [
    "https://www.w3.org/ns/activitystreams",
    {
      "Hashtag": "as:Hashtag",
      "sensitive": "as:sensitive"
    }
  ],
  "type": "Create",
  "actor": "http://pasture-one-actor/actor",
  "to": [
    "https://www.w3.org/ns/activitystreams#Public",
    "http://pyfedi.local/c/pie"
  ],
  "id": "http://pasture-one-actor/activity/MMaiXwmsR8k",
  "published": "2025-09-09T12:34:15Z",
  "object": {
    "type": "Note",
    "attributedTo": "http://pasture-one-actor/actor",
    "to": [
      "https://www.w3.org/ns/activitystreams#Public",
      "http://pyfedi.local/c/pie"
    ],
    "id": "http://pasture-one-actor/object/bacmUaUc8PI",
    "published": "2025-09-09T12:34:15Z",
    "content": "text",
    "tag": [
      {
        "type": "Hashtag",
        "name": "#with-dash_under"
      },
      {
        "type": "Mention",
        "href": "http://pyfedi.local/c/pie"
      }
    ]
  }
}
pyfedi
{
  "id": 236,
  "user_id": 2,
  "community_id": 1,
  "title": "(content in post body)",
  "deleted": false,
  "nsfw": false,
  "sticky": false,
  "published": "2025-09-09T12:34:15.997457Z",
  "ap_id": "http://pasture-one-actor/object/bacmUaUc8PI",
  "local": false,
  "language_id": 2,
  "removed": false,
  "locked": false,
  "body": "text"
}

Example 4

activity
{
  "@context": [
    "https://www.w3.org/ns/activitystreams",
    {
      "Hashtag": "as:Hashtag",
      "sensitive": "as:sensitive"
    }
  ],
  "type": "Create",
  "actor": "http://pasture-one-actor/actor",
  "to": [
    "https://www.w3.org/ns/activitystreams#Public",
    "http://pyfedi.local/c/pie"
  ],
  "id": "http://pasture-one-actor/activity/IVA3wH2B9I8",
  "published": "2025-09-09T12:34:16Z",
  "object": {
    "type": "Note",
    "attributedTo": "http://pasture-one-actor/actor",
    "to": [
      "https://www.w3.org/ns/activitystreams#Public",
      "http://pyfedi.local/c/pie"
    ],
    "id": "http://pasture-one-actor/object/Y6vl66cXL_4",
    "published": "2025-09-09T12:34:16Z",
    "content": "text",
    "tag": [
      {
        "type": "Hashtag",
        "name": "#with white space"
      },
      {
        "type": "Mention",
        "href": "http://pyfedi.local/c/pie"
      }
    ]
  }
}
pyfedi
{
  "id": 237,
  "user_id": 2,
  "community_id": 1,
  "title": "(content in post body)",
  "deleted": false,
  "nsfw": false,
  "sticky": false,
  "published": "2025-09-09T12:34:16.805090Z",
  "ap_id": "http://pasture-one-actor/object/Y6vl66cXL_4",
  "local": false,
  "language_id": 2,
  "removed": false,
  "locked": false,
  "body": "text"
}

Example 5

activity
{
  "@context": [
    "https://www.w3.org/ns/activitystreams",
    {
      "Hashtag": "as:Hashtag",
      "sensitive": "as:sensitive"
    }
  ],
  "type": "Create",
  "actor": "http://pasture-one-actor/actor",
  "to": [
    "https://www.w3.org/ns/activitystreams#Public",
    "http://pyfedi.local/c/pie"
  ],
  "id": "http://pasture-one-actor/activity/HlZHU6LiLi8",
  "published": "2025-09-09T12:34:17Z",
  "object": {
    "type": "Note",
    "attributedTo": "http://pasture-one-actor/actor",
    "to": [
      "https://www.w3.org/ns/activitystreams#Public",
      "http://pyfedi.local/c/pie"
    ],
    "id": "http://pasture-one-actor/object/sOYqT1R0MKQ",
    "published": "2025-09-09T12:34:17Z",
    "content": "text",
    "tag": [
      {
        "type": "Hashtag",
        "name": "#with(subtag)"
      },
      {
        "type": "Mention",
        "href": "http://pyfedi.local/c/pie"
      }
    ]
  }
}
pyfedi
{
  "id": 238,
  "user_id": 2,
  "community_id": 1,
  "title": "(content in post body)",
  "deleted": false,
  "nsfw": false,
  "sticky": false,
  "published": "2025-09-09T12:34:17.655566Z",
  "ap_id": "http://pasture-one-actor/object/sOYqT1R0MKQ",
  "local": false,
  "language_id": 2,
  "removed": false,
  "locked": false,
  "body": "text"
}

Example 6

activity
{
  "@context": [
    "https://www.w3.org/ns/activitystreams",
    {
      "Hashtag": "as:Hashtag",
      "sensitive": "as:sensitive"
    }
  ],
  "type": "Create",
  "actor": "http://pasture-one-actor/actor",
  "to": [
    "https://www.w3.org/ns/activitystreams#Public",
    "http://pyfedi.local/c/pie"
  ],
  "id": "http://pasture-one-actor/activity/inPl-6cTSFA",
  "published": "2025-09-09T12:34:18Z",
  "object": {
    "type": "Note",
    "attributedTo": "http://pasture-one-actor/actor",
    "to": [
      "https://www.w3.org/ns/activitystreams#Public",
      "http://pyfedi.local/c/pie"
    ],
    "id": "http://pasture-one-actor/object/0ZfraNPWEug",
    "published": "2025-09-09T12:34:18Z",
    "content": "text",
    "tag": [
      {
        "type": "Hashtag",
        "name": "#with123"
      },
      {
        "type": "Mention",
        "href": "http://pyfedi.local/c/pie"
      }
    ]
  }
}
pyfedi
{
  "id": 239,
  "user_id": 2,
  "community_id": 1,
  "title": "(content in post body)",
  "deleted": false,
  "nsfw": false,
  "sticky": false,
  "published": "2025-09-09T12:34:18.458705Z",
  "ap_id": "http://pasture-one-actor/object/0ZfraNPWEug",
  "local": false,
  "language_id": 2,
  "removed": false,
  "locked": false,
  "body": "text"
}

Example 7

activity
{
  "@context": [
    "https://www.w3.org/ns/activitystreams",
    {
      "Hashtag": "as:Hashtag",
      "sensitive": "as:sensitive"
    }
  ],
  "type": "Create",
  "actor": "http://pasture-one-actor/actor",
  "to": [
    "https://www.w3.org/ns/activitystreams#Public",
    "http://pyfedi.local/c/pie"
  ],
  "id": "http://pasture-one-actor/activity/YvQyQXx0b2o",
  "published": "2025-09-09T12:34:19Z",
  "object": {
    "type": "Note",
    "attributedTo": "http://pasture-one-actor/actor",
    "to": [
      "https://www.w3.org/ns/activitystreams#Public",
      "http://pyfedi.local/c/pie"
    ],
    "id": "http://pasture-one-actor/object/ceIBT-ivDJk",
    "published": "2025-09-09T12:34:19Z",
    "content": "text",
    "tag": [
      {
        "type": "Hashtag",
        "name": "#1234"
      },
      {
        "type": "Mention",
        "href": "http://pyfedi.local/c/pie"
      }
    ]
  }
}
pyfedi
{
  "id": 240,
  "user_id": 2,
  "community_id": 1,
  "title": "(content in post body)",
  "deleted": false,
  "nsfw": false,
  "sticky": false,
  "published": "2025-09-09T12:34:19.268385Z",
  "ap_id": "http://pasture-one-actor/object/ceIBT-ivDJk",
  "local": false,
  "language_id": 2,
  "removed": false,
  "locked": false,
  "body": "text"
}

Example 8

activity
{
  "@context": [
    "https://www.w3.org/ns/activitystreams",
    {
      "Hashtag": "as:Hashtag",
      "sensitive": "as:sensitive"
    }
  ],
  "type": "Create",
  "actor": "http://pasture-one-actor/actor",
  "to": [
    "https://www.w3.org/ns/activitystreams#Public",
    "http://pyfedi.local/c/pie"
  ],
  "id": "http://pasture-one-actor/activity/A1KFy58w244",
  "published": "2025-09-09T12:34:19Z",
  "object": {
    "type": "Note",
    "attributedTo": "http://pasture-one-actor/actor",
    "to": [
      "https://www.w3.org/ns/activitystreams#Public",
      "http://pyfedi.local/c/pie"
    ],
    "id": "http://pasture-one-actor/object/rtarcNgf3TM",
    "published": "2025-09-09T12:34:19Z",
    "content": "text",
    "tag": [
      {
        "type": "Hashtag",
        "name": "#CamelCase"
      },
      {
        "type": "Mention",
        "href": "http://pyfedi.local/c/pie"
      }
    ]
  }
}
pyfedi
{
  "id": 241,
  "user_id": 2,
  "community_id": 1,
  "title": "(content in post body)",
  "deleted": false,
  "nsfw": false,
  "sticky": false,
  "published": "2025-09-09T12:34:20.113263Z",
  "ap_id": "http://pasture-one-actor/object/rtarcNgf3TM",
  "local": false,
  "language_id": 2,
  "removed": false,
  "locked": false,
  "body": "text"
}

Example 9

activity
{
  "@context": [
    "https://www.w3.org/ns/activitystreams",
    {
      "Hashtag": "as:Hashtag",
      "sensitive": "as:sensitive"
    }
  ],
  "type": "Create",
  "actor": "http://pasture-one-actor/actor",
  "to": [
    "https://www.w3.org/ns/activitystreams#Public",
    "http://pyfedi.local/c/pie"
  ],
  "id": "http://pasture-one-actor/activity/YBKcP4QZYJI",
  "published": "2025-09-09T12:34:20Z",
  "object": {
    "type": "Note",
    "attributedTo": "http://pasture-one-actor/actor",
    "to": [
      "https://www.w3.org/ns/activitystreams#Public",
      "http://pyfedi.local/c/pie"
    ],
    "id": "http://pasture-one-actor/object/Q5CY_n_Hiws",
    "published": "2025-09-09T12:34:20Z",
    "content": "text",
    "tag": [
      {
        "type": "Hashtag",
        "name": "#\u00fcml\u00e4\u00fct\u00df"
      },
      {
        "type": "Mention",
        "href": "http://pyfedi.local/c/pie"
      }
    ]
  }
}
pyfedi
{
  "id": 242,
  "user_id": 2,
  "community_id": 1,
  "title": "(content in post body)",
  "deleted": false,
  "nsfw": false,
  "sticky": false,
  "published": "2025-09-09T12:34:20.953645Z",
  "ap_id": "http://pasture-one-actor/object/Q5CY_n_Hiws",
  "local": false,
  "language_id": 2,
  "removed": false,
  "locked": false,
  "body": "text"
}

Example 10

activity
{
  "@context": [
    "https://www.w3.org/ns/activitystreams",
    {
      "Hashtag": "as:Hashtag",
      "sensitive": "as:sensitive"
    }
  ],
  "type": "Create",
  "actor": "http://pasture-one-actor/actor",
  "to": [
    "https://www.w3.org/ns/activitystreams#Public",
    "http://pyfedi.local/c/pie"
  ],
  "id": "http://pasture-one-actor/activity/2O6upNC_rLA",
  "published": "2025-09-09T12:34:21Z",
  "object": {
    "type": "Note",
    "attributedTo": "http://pasture-one-actor/actor",
    "to": [
      "https://www.w3.org/ns/activitystreams#Public",
      "http://pyfedi.local/c/pie"
    ],
    "id": "http://pasture-one-actor/object/2xsB1gfKrTs",
    "published": "2025-09-09T12:34:21Z",
    "content": "text",
    "tag": [
      {
        "type": "Hashtag",
        "name": "#\ud83d\udc04"
      },
      {
        "type": "Mention",
        "href": "http://pyfedi.local/c/pie"
      }
    ]
  }
}
pyfedi
{
  "id": 243,
  "user_id": 2,
  "community_id": 1,
  "title": "(content in post body)",
  "deleted": false,
  "nsfw": false,
  "sticky": false,
  "published": "2025-09-09T12:34:21.756501Z",
  "ap_id": "http://pasture-one-actor/object/2xsB1gfKrTs",
  "local": false,
  "language_id": 2,
  "removed": false,
  "locked": false,
  "body": "text"
}

Example 11

activity
{
  "@context": [
    "https://www.w3.org/ns/activitystreams",
    {
      "Hashtag": "as:Hashtag",
      "sensitive": "as:sensitive"
    }
  ],
  "type": "Create",
  "actor": "http://pasture-one-actor/actor",
  "to": [
    "https://www.w3.org/ns/activitystreams#Public",
    "http://pyfedi.local/c/pie"
  ],
  "id": "http://pasture-one-actor/activity/tRTAuit9J28",
  "published": "2025-09-09T12:34:22Z",
  "object": {
    "type": "Note",
    "attributedTo": "http://pasture-one-actor/actor",
    "to": [
      "https://www.w3.org/ns/activitystreams#Public",
      "http://pyfedi.local/c/pie"
    ],
    "id": "http://pasture-one-actor/object/EJfbW0_X-a4",
    "published": "2025-09-09T12:34:22Z",
    "content": "text",
    "tag": [
      {
        "type": "Hashtag",
        "name": "#\u2764\ufe0f"
      },
      {
        "type": "Mention",
        "href": "http://pyfedi.local/c/pie"
      }
    ]
  }
}
pyfedi
{
  "id": 244,
  "user_id": 2,
  "community_id": 1,
  "title": "(content in post body)",
  "deleted": false,
  "nsfw": false,
  "sticky": false,
  "published": "2025-09-09T12:34:22.553009Z",
  "ap_id": "http://pasture-one-actor/object/EJfbW0_X-a4",
  "local": false,
  "language_id": 2,
  "removed": false,
  "locked": false,
  "body": "text"
}

Example 12

activity
{
  "@context": [
    "https://www.w3.org/ns/activitystreams",
    {
      "Hashtag": "as:Hashtag",
      "sensitive": "as:sensitive"
    }
  ],
  "type": "Create",
  "actor": "http://pasture-one-actor/actor",
  "to": [
    "https://www.w3.org/ns/activitystreams#Public",
    "http://pyfedi.local/c/pie"
  ],
  "id": "http://pasture-one-actor/activity/KXb6TXXx9iY",
  "published": "2025-09-09T12:34:23Z",
  "object": {
    "type": "Note",
    "attributedTo": "http://pasture-one-actor/actor",
    "to": [
      "https://www.w3.org/ns/activitystreams#Public",
      "http://pyfedi.local/c/pie"
    ],
    "id": "http://pasture-one-actor/object/Ecd0AoFiygA",
    "published": "2025-09-09T12:34:23Z",
    "content": "text",
    "tag": [
      {
        "type": "Hashtag",
        "name": "#\u725b"
      },
      {
        "type": "Mention",
        "href": "http://pyfedi.local/c/pie"
      }
    ]
  }
}
pyfedi
{
  "id": 245,
  "user_id": 2,
  "community_id": 1,
  "title": "(content in post body)",
  "deleted": false,
  "nsfw": false,
  "sticky": false,
  "published": "2025-09-09T12:34:23.352234Z",
  "ap_id": "http://pasture-one-actor/object/Ecd0AoFiygA",
  "local": false,
  "language_id": 2,
  "removed": false,
  "locked": false,
  "body": "text"
}

Example 13

activity
{
  "@context": [
    "https://www.w3.org/ns/activitystreams",
    {
      "Hashtag": "as:Hashtag",
      "sensitive": "as:sensitive"
    }
  ],
  "type": "Create",
  "actor": "http://pasture-one-actor/actor",
  "to": [
    "https://www.w3.org/ns/activitystreams#Public",
    "http://pyfedi.local/c/pie"
  ],
  "id": "http://pasture-one-actor/activity/JTPsrln2hYg",
  "published": "2025-09-09T12:34:23Z",
  "object": {
    "type": "Note",
    "attributedTo": "http://pasture-one-actor/actor",
    "to": [
      "https://www.w3.org/ns/activitystreams#Public",
      "http://pyfedi.local/c/pie"
    ],
    "id": "http://pasture-one-actor/object/SYe7Bkqp80I",
    "published": "2025-09-09T12:34:23Z",
    "content": "broken url parameter",
    "tag": [
      {
        "type": "Hashtag",
        "name": "#test",
        "url": "https://ignore.example"
      },
      {
        "type": "Mention",
        "href": "http://pyfedi.local/c/pie"
      }
    ]
  }
}
pyfedi
{
  "id": 246,
  "user_id": 2,
  "community_id": 1,
  "title": "broken url parameter",
  "deleted": false,
  "nsfw": false,
  "sticky": false,
  "published": "2025-09-09T12:34:24.173965Z",
  "ap_id": "http://pasture-one-actor/object/SYe7Bkqp80I",
  "local": false,
  "language_id": 2,
  "removed": false,
  "locked": false,
  "body": "broken url parameter"
}