Necessary Properties¶
With this support table, we want to illustrate, which properties can be removed from an object, and still create an appropriate response. We note that the basic form of an object is
{
"type": "Note",
"attributedTo": "http://pasture-one-actor/actor",
"to": [
"as:Public",
"http://mitra/users/admin"
],
"id": "http://pasture-one-actor/actor/wFuWTn-8BiE",
"published": "2023-11-28T11:38:15Z",
"content": "All fields"
}
Support Table Preview¶
| content | Object | Activity |
|---|---|---|
| All fields | Object | Activity |
| without id | Object 🚨 | Activity |
| without published | Object 🚨 | Activity |
| without attributedTo | Object 🚨 | Activity |
| without type | Object 🚨 | Activity |
Objects¶
Object 1¶
{
"@context": [
"https://www.w3.org/ns/activitystreams",
{
"Hashtag": "as:Hashtag",
"sensitive": "as:sensitive"
}
],
"attributedTo": "http://actor.example",
"content": "All fields",
"id": "http://actor.example/object/YNW-32tuNPg",
"published": "2025-11-21T12:04:55Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"type": "Note"
}
Object 2¶
❌❌❌ does not obey schema ❌❌❌
None is not of type 'string'
Failed validating 'type' in schema['properties']['id']:
{'description': 'id of the activity or object, can be assumed to be '
'globally unique. Some activities such as a Follow '
'request will require an id to be valid. Servers may '
'assume an id to be required. As assigning an id is '
"'trivial', one should assign one.",
'examples': ['https://actor.example/some_id'],
'type': 'string'}
On instance['id']:
None
{
"@context": [
"https://www.w3.org/ns/activitystreams",
{
"Hashtag": "as:Hashtag",
"sensitive": "as:sensitive"
}
],
"attributedTo": "http://actor.example",
"content": "without id",
"id": null,
"published": "2025-11-21T12:04:55Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"type": "Note"
}
Object 3¶
❌❌❌ does not obey schema ❌❌❌
None is not of type 'string'
Failed validating 'type' in schema['properties']['published']:
{'description': 'Moment of this activity or object being published',
'format': 'date-time',
'type': 'string'}
On instance['published']:
None
{
"@context": [
"https://www.w3.org/ns/activitystreams",
{
"Hashtag": "as:Hashtag",
"sensitive": "as:sensitive"
}
],
"attributedTo": "http://actor.example",
"content": "without published",
"id": "http://actor.example/object/VGXx3-Vqqw8",
"published": null,
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"type": "Note"
}
Object 4¶
❌❌❌ does not obey schema ❌❌❌
None is not of type 'string'
Failed validating 'type' in schema['properties']['attributedTo']:
{'description': 'id of the actor that authored this object',
'examples': ['https://actor.example/'],
'type': 'string'}
On instance['attributedTo']:
None
{
"@context": [
"https://www.w3.org/ns/activitystreams",
{
"Hashtag": "as:Hashtag",
"sensitive": "as:sensitive"
}
],
"attributedTo": null,
"content": "without attributedTo",
"id": "http://actor.example/object/WY6apjS2gKI",
"published": "2025-11-21T12:04:55Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"type": "Note"
}
Object 5¶
❌❌❌ does not obey schema ❌❌❌
None is not of type 'string'
Failed validating 'type' in schema['properties']['type']:
{'description': 'Type of the activity or activity. Side effects of '
'this activity are determine by this type.',
'examples': ['Follow', 'Accept', 'Create', 'Undo', 'Like', 'Note'],
'type': 'string'}
On instance['type']:
None
{
"@context": [
"https://www.w3.org/ns/activitystreams",
{
"Hashtag": "as:Hashtag",
"sensitive": "as:sensitive"
}
],
"attributedTo": "http://actor.example",
"content": "without type",
"id": "http://actor.example/object/lXO1V3U-Yao",
"published": "2025-11-21T12:04:55Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"type": null
}
Activities¶
Activity 1¶
{
"@context": [
"https://www.w3.org/ns/activitystreams",
{
"Hashtag": "as:Hashtag",
"sensitive": "as:sensitive"
}
],
"actor": "http://actor.example",
"id": "http://actor.example/activity/mfmXMNPapv8",
"object": {
"attributedTo": "http://actor.example",
"content": "All fields",
"id": "http://actor.example/object/5KM9JgQ_6P8",
"published": "2025-11-21T12:04:55Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public",
"http://remote.example/"
],
"type": "Note"
},
"published": "2025-11-21T12:04:55Z",
"to": [
"http://remote.example/",
"https://www.w3.org/ns/activitystreams#Public"
],
"type": "Create"
}
Activity 2¶
{
"@context": [
"https://www.w3.org/ns/activitystreams",
{
"Hashtag": "as:Hashtag",
"sensitive": "as:sensitive"
}
],
"actor": "http://actor.example",
"id": "http://actor.example/activity/JjsYve_YLwI",
"object": {
"attributedTo": "http://actor.example",
"content": "without id",
"id": null,
"published": "2025-11-21T12:04:55Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public",
"http://remote.example/"
],
"type": "Note"
},
"published": "2025-11-21T12:04:55Z",
"to": [
"http://remote.example/",
"https://www.w3.org/ns/activitystreams#Public"
],
"type": "Create"
}
Activity 3¶
{
"@context": [
"https://www.w3.org/ns/activitystreams",
{
"Hashtag": "as:Hashtag",
"sensitive": "as:sensitive"
}
],
"actor": "http://actor.example",
"id": "http://actor.example/activity/65B60DI0AGo",
"object": {
"attributedTo": "http://actor.example",
"content": "without published",
"id": "http://actor.example/object/V4G7ieRuMLg",
"published": null,
"to": [
"https://www.w3.org/ns/activitystreams#Public",
"http://remote.example/"
],
"type": "Note"
},
"published": "2025-11-21T12:04:55Z",
"to": [
"http://remote.example/",
"https://www.w3.org/ns/activitystreams#Public"
],
"type": "Create"
}
Activity 4¶
{
"@context": [
"https://www.w3.org/ns/activitystreams",
{
"Hashtag": "as:Hashtag",
"sensitive": "as:sensitive"
}
],
"actor": "http://actor.example",
"id": "http://actor.example/activity/Dg3zC3JskQg",
"object": {
"attributedTo": null,
"content": "without attributedTo",
"id": "http://actor.example/object/qBESL0MIH8o",
"published": "2025-11-21T12:04:55Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public",
"http://remote.example/"
],
"type": "Note"
},
"published": "2025-11-21T12:04:55Z",
"to": [
"http://remote.example/",
"https://www.w3.org/ns/activitystreams#Public"
],
"type": "Create"
}
Activity 5¶
{
"@context": [
"https://www.w3.org/ns/activitystreams",
{
"Hashtag": "as:Hashtag",
"sensitive": "as:sensitive"
}
],
"actor": "http://actor.example",
"id": "http://actor.example/activity/EY0UH6lOSog",
"object": {
"attributedTo": "http://actor.example",
"content": "without type",
"id": "http://actor.example/object/JDLZBRHbo9A",
"published": "2025-11-21T12:04:55Z",
"to": [
"https://www.w3.org/ns/activitystreams#Public",
"http://remote.example/"
],
"type": null
},
"published": "2025-11-21T12:04:55Z",
"to": [
"http://remote.example/",
"https://www.w3.org/ns/activitystreams#Public"
],
"type": "Create"
}