Skip to content

Mentions

Mentions are discussed in this section of ActivityStreams.

The big difference on if mentions are parsed are currently a result of if the value in href can be resolved by the application being tested.

In the support table parsed means that the activity could be parsed, but the mention was discarded. A ❌ in the support table means that the entire message has failed to parse.

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/I79QGCgY3Os",
  "published": "2025-09-09T12:28:39Z",
  "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/P2MqmyEjUkg",
    "published": "2025-09-09T12:28:39Z",
    "content": "basic mention; mention as list of dictionaries",
    "tag": [
      {
        "type": "Mention",
        "name": "@actor@test_server",
        "href": "http://pasture-one-actor/actor"
      },
      {
        "type": "Mention",
        "href": "http://pyfedi.local/c/pie"
      }
    ]
  }
}
pyfedi
{
  "id": 102,
  "user_id": 2,
  "community_id": 1,
  "title": "basic mention; mention as list of dictionaries",
  "deleted": false,
  "nsfw": false,
  "sticky": false,
  "published": "2025-09-09T12:28:39.799401Z",
  "ap_id": "http://pasture-one-actor/object/P2MqmyEjUkg",
  "local": false,
  "language_id": 2,
  "removed": false,
  "locked": false,
  "body": "basic mention; mention as list of dictionaries"
}

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/0WbZw2cII0s",
  "published": "2025-09-09T12:28:40Z",
  "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/_NBtwdWRhfE",
    "published": "2025-09-09T12:28:40Z",
    "content": "text @actor@pasture-one-actor; mention as dictionary",
    "tag": [
      {
        "type": "Mention",
        "name": "@actor@test_server",
        "href": "http://pasture-one-actor/actor"
      },
      {
        "type": "Mention",
        "href": "http://pyfedi.local/c/pie"
      }
    ]
  }
}
pyfedi
{
  "id": 103,
  "user_id": 2,
  "community_id": 1,
  "title": "text @actor@pasture-one-actor; mention as dictionary",
  "deleted": false,
  "nsfw": false,
  "sticky": false,
  "published": "2025-09-09T12:28:40.627950Z",
  "ap_id": "http://pasture-one-actor/object/_NBtwdWRhfE",
  "local": false,
  "language_id": 2,
  "removed": false,
  "locked": false,
  "body": "text @actor@pasture-one-actor; mention as dictionary"
}

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/P9Tip3gnBFg",
  "published": "2025-09-09T12:28:41Z",
  "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/qfQs7PYNr8c",
    "published": "2025-09-09T12:28:41Z",
    "content": "unrelated text",
    "tag": [
      {
        "type": "Mention",
        "name": "something something",
        "href": "http://pasture-one-actor/actor"
      },
      {
        "type": "Mention",
        "href": "http://pyfedi.local/c/pie"
      }
    ]
  }
}
pyfedi
{
  "id": 104,
  "user_id": 2,
  "community_id": 1,
  "title": "[Microblog] unrelated text",
  "deleted": false,
  "nsfw": false,
  "sticky": false,
  "published": "2025-09-09T12:28:41.437285Z",
  "ap_id": "http://pasture-one-actor/object/qfQs7PYNr8c",
  "local": false,
  "language_id": 2,
  "removed": false,
  "locked": false,
  "body": "unrelated 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/z9GG8zB7qyw",
  "published": "2025-09-09T12:28:42Z",
  "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/UGhkCLPGJis",
    "published": "2025-09-09T12:28:42Z",
    "content": "Missing Name @actor@pasture-one-actor",
    "tag": [
      {
        "type": "Mention",
        "href": "http://pasture-one-actor/actor"
      },
      {
        "type": "Mention",
        "href": "http://pyfedi.local/c/pie"
      }
    ]
  }
}
pyfedi
{
  "id": 105,
  "user_id": 2,
  "community_id": 1,
  "title": "Missing Name @actor@pasture-one-actor",
  "deleted": false,
  "nsfw": false,
  "sticky": false,
  "published": "2025-09-09T12:28:42.215655Z",
  "ap_id": "http://pasture-one-actor/object/UGhkCLPGJis",
  "local": false,
  "language_id": 2,
  "removed": false,
  "locked": false,
  "body": "Missing Name @actor@pasture-one-actor"
}

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/lELkBDeOOvY",
  "published": "2025-09-09T12:28:42Z",
  "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/cQFNv08zXjA",
    "published": "2025-09-09T12:28:42Z",
    "content": "realworld url",
    "tag": [
      {
        "type": "Mention",
        "name": "@the_milkman@mastodon.social",
        "href": "https://mastodon.social/users/the_milkman"
      },
      {
        "type": "Mention",
        "href": "http://pyfedi.local/c/pie"
      }
    ]
  }
}
pyfedi
{
  "id": 106,
  "user_id": 2,
  "community_id": 1,
  "title": "[Microblog] realworld url",
  "deleted": false,
  "nsfw": false,
  "sticky": false,
  "published": "2025-09-09T12:28:43.041831Z",
  "ap_id": "http://pasture-one-actor/object/cQFNv08zXjA",
  "local": false,
  "language_id": 2,
  "removed": false,
  "locked": false,
  "body": "realworld url"
}

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/opqNrytAUgQ",
  "published": "2025-09-09T12:28:43Z",
  "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/1SghDmpLCBI",
    "published": "2025-09-09T12:28:43Z",
    "content": "unresolvable url -- https",
    "tag": [
      {
        "type": "Mention",
        "name": "@dummy@example",
        "href": "https://dummy.example"
      },
      {
        "type": "Mention",
        "href": "http://pyfedi.local/c/pie"
      }
    ]
  }
}
pyfedi
{
  "id": 107,
  "user_id": 2,
  "community_id": 1,
  "title": "unresolvable url -- https",
  "deleted": false,
  "nsfw": false,
  "sticky": false,
  "published": "2025-09-09T12:28:43.797874Z",
  "ap_id": "http://pasture-one-actor/object/1SghDmpLCBI",
  "local": false,
  "language_id": 2,
  "removed": false,
  "locked": false,
  "body": "unresolvable url -- https"
}

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/x7eOX1u-Tlw",
  "published": "2025-09-09T12:28:44Z",
  "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/g0kGXGTmG8s",
    "published": "2025-09-09T12:28:44Z",
    "content": "texunresolvable url -- http",
    "tag": [
      {
        "type": "Mention",
        "name": "@test_actor@test_server",
        "href": "http://test_actor"
      },
      {
        "type": "Mention",
        "href": "http://pyfedi.local/c/pie"
      }
    ]
  }
}
pyfedi
{
  "id": 108,
  "user_id": 2,
  "community_id": 1,
  "title": "texunresolvable url -- http",
  "deleted": false,
  "nsfw": false,
  "sticky": false,
  "published": "2025-09-09T12:28:44.633352Z",
  "ap_id": "http://pasture-one-actor/object/g0kGXGTmG8s",
  "local": false,
  "language_id": 2,
  "removed": false,
  "locked": false,
  "body": "texunresolvable url -- http"
}

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/Tl7wmhEEXQw",
  "published": "2025-09-09T12:28:45Z",
  "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/goNE7_PhUFE",
    "published": "2025-09-09T12:28:45Z",
    "content": "name is 'yay'",
    "tag": [
      {
        "type": "as:Mention",
        "name": "yay",
        "href": "http://pasture-one-actor/actor"
      },
      {
        "type": "Mention",
        "href": "http://pyfedi.local/c/pie"
      }
    ]
  }
}
pyfedi
{
  "id": 109,
  "user_id": 2,
  "community_id": 1,
  "title": "[Microblog] name is 'yay'",
  "deleted": false,
  "nsfw": false,
  "sticky": false,
  "published": "2025-09-09T12:28:45.431009Z",
  "ap_id": "http://pasture-one-actor/object/goNE7_PhUFE",
  "local": false,
  "language_id": 2,
  "removed": false,
  "locked": false,
  "body": "name is 'yay'"
}

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/tTdNEtnbd-s",
  "published": "2025-09-09T12:28:46Z",
  "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/M-5iP8aYFus",
    "published": "2025-09-09T12:28:46Z",
    "content": "@actor text",
    "tag": [
      {
        "name": "@actor",
        "href": "http://pasture-one-actor/actor"
      },
      {
        "type": "Mention",
        "href": "http://pyfedi.local/c/pie"
      }
    ]
  }
}

no result

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/xmK0pMWVlyo",
  "published": "2025-09-09T12:28:58Z",
  "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/zoD26BlzR4M",
    "published": "2025-09-09T12:28:58Z",
    "content": "duplicate mention, see https://codeberg.org/funfedidev/fediverse-pasture-inputs/issues/75",
    "tag": [
      {
        "type": "Mention",
        "name": "@actor@test_server",
        "href": "http://pasture-one-actor/actor"
      },
      {
        "type": "Mention",
        "name": "@actor@test_server",
        "href": "http://pasture-one-actor/actor"
      },
      {
        "type": "Mention",
        "href": "http://pyfedi.local/c/pie"
      }
    ]
  }
}
pyfedi
{
  "id": 110,
  "user_id": 2,
  "community_id": 1,
  "title": "duplicate mention, see https://codeberg",
  "deleted": false,
  "nsfw": false,
  "sticky": false,
  "published": "2025-09-09T12:28:58.950870Z",
  "ap_id": "http://pasture-one-actor/object/zoD26BlzR4M",
  "local": false,
  "language_id": 2,
  "removed": false,
  "locked": false,
  "body": "duplicate mention, see https://codeberg.org/funfedidev/fediverse-pasture-inputs/issues/75"
}