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": [
"http://pyfedi.local/c/pie",
"https://www.w3.org/ns/activitystreams#Public"
],
"id": "http://pasture-one-actor/activity/8Spdd0t7Kzs",
"published": "2025-09-14T08:54:25Z",
"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/PGUTe9eYNjw",
"published": "2025-09-14T08:54:25Z",
"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-14T08:54:25.754982Z",
"ap_id": "http://pasture-one-actor/object/PGUTe9eYNjw",
"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": [
"http://pyfedi.local/c/pie",
"https://www.w3.org/ns/activitystreams#Public"
],
"id": "http://pasture-one-actor/activity/MUgOfcwuZW0",
"published": "2025-09-14T08:54:26Z",
"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/rJDPk8k8zSI",
"published": "2025-09-14T08:54:26Z",
"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-14T08:54:26.484314Z",
"ap_id": "http://pasture-one-actor/object/rJDPk8k8zSI",
"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": [
"http://pyfedi.local/c/pie",
"https://www.w3.org/ns/activitystreams#Public"
],
"id": "http://pasture-one-actor/activity/xN1YYq_Xql0",
"published": "2025-09-14T08:54:27Z",
"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/dN314J1VeiM",
"published": "2025-09-14T08:54:27Z",
"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-14T08:54:27.237281Z",
"ap_id": "http://pasture-one-actor/object/dN314J1VeiM",
"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": [
"http://pyfedi.local/c/pie",
"https://www.w3.org/ns/activitystreams#Public"
],
"id": "http://pasture-one-actor/activity/pvb9I8aQZGQ",
"published": "2025-09-14T08:54:27Z",
"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/L9k-SdA8JGw",
"published": "2025-09-14T08:54:27Z",
"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-14T08:54:27.992341Z",
"ap_id": "http://pasture-one-actor/object/L9k-SdA8JGw",
"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": [
"http://pyfedi.local/c/pie",
"https://www.w3.org/ns/activitystreams#Public"
],
"id": "http://pasture-one-actor/activity/T0BSiPmVnHk",
"published": "2025-09-14T08:54:28Z",
"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/9hn80Hq46yE",
"published": "2025-09-14T08:54:28Z",
"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-14T08:54:28.764645Z",
"ap_id": "http://pasture-one-actor/object/9hn80Hq46yE",
"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": [
"http://pyfedi.local/c/pie",
"https://www.w3.org/ns/activitystreams#Public"
],
"id": "http://pasture-one-actor/activity/DYqfD7k8pRg",
"published": "2025-09-14T08:54:29Z",
"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/WvDq_suo8Ho",
"published": "2025-09-14T08:54:29Z",
"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-14T08:54:29.529116Z",
"ap_id": "http://pasture-one-actor/object/WvDq_suo8Ho",
"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": [
"http://pyfedi.local/c/pie",
"https://www.w3.org/ns/activitystreams#Public"
],
"id": "http://pasture-one-actor/activity/qtRDC0XZDgM",
"published": "2025-09-14T08:54:30Z",
"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/-O1Ij7uCRbQ",
"published": "2025-09-14T08:54:30Z",
"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-14T08:54:30.369897Z",
"ap_id": "http://pasture-one-actor/object/-O1Ij7uCRbQ",
"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": [
"http://pyfedi.local/c/pie",
"https://www.w3.org/ns/activitystreams#Public"
],
"id": "http://pasture-one-actor/activity/ONws8iNgVfc",
"published": "2025-09-14T08:54:30Z",
"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/tdg4LOr8Hu4",
"published": "2025-09-14T08:54:30Z",
"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-14T08:54:31.104913Z",
"ap_id": "http://pasture-one-actor/object/tdg4LOr8Hu4",
"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": [
"http://pyfedi.local/c/pie",
"https://www.w3.org/ns/activitystreams#Public"
],
"id": "http://pasture-one-actor/activity/h81Jz8lU6WY",
"published": "2025-09-14T08:54:31Z",
"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/wF9WubqwBb4",
"published": "2025-09-14T08:54:31Z",
"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": [
"http://pyfedi.local/c/pie",
"https://www.w3.org/ns/activitystreams#Public"
],
"id": "http://pasture-one-actor/activity/5eZKk0aAt-E",
"published": "2025-09-14T08:54: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/x1KHKO8g8VA",
"published": "2025-09-14T08:54:44Z",
"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-14T08:54:44.506927Z",
"ap_id": "http://pasture-one-actor/object/x1KHKO8g8VA",
"local": false,
"language_id": 2,
"removed": false,
"locked": false,
"body": "duplicate mention, see https://codeberg.org/funfedidev/fediverse-pasture-inputs/issues/75"
}