Collection

Collections are a way to represent paginated groups of entities. They are used everywhere lists of entities can be found, such as a user's outbox.

Entity Definition

  • Name
    author
    Type
    Reference
    Description

    Reference to the author of the collection. Usually the user who "owns" the collection.

  • Name
    total
    Required
    Required
    Type
    u64
    Type
    number
    Description

    Total number of entities in the collection, across all pages.

  • Name
    items
    Required
    Required
    Type
    Entity[]
    Description

    Collection contents. Must be an array of entities.

Example Collection

{
    "author": "https://versia.social/users/018ec082-0ae1-761c-b2c5-22275a611771",
    "total": 46,
    "items": [
        {
            "id": "456df8ed-daf1-4062-abab-491071c7b8dd",
            "type": "Note",
            "uri": "https://versia.social/notes/456df8ed-daf1-4062-abab-491071c7b8dd",
            "created_at": "2024-04-09T01:38:51.743Z",
            ...
            "collections": {
                "replies": "https://versia.social/notes/456df8ed-daf1-4062-abab-491071c7b8dd/replies",
                "quotes": "https://versia.social/notes/456df8ed-daf1-4062-abab-491071c7b8dd/quotes"
            },
            "content": {
                "text/plain": {
                    "content": "Hello, world!"
                }
            }
        }
    ]
}

URI Collection

URI Collections are identical to regular collections, but they contain only URIs instead of full entities. They are useful for cases when remote entities need to be included in a collection, as those are typically not stored in implementation databases.

  • Name
    author
    Type
    Reference
    Description

    Reference to the author of the collection. Usually the user who owns the collection.

  • Name
    total
    Required
    Required
    Type
    u64
    Type
    number
    Description

    Total number of entities in the collection, across all pages.

  • Name
    items
    Required
    Required
    Type
    Reference[]
    Description

    Collection contents. Must be an array of References.

Example URI Collection

{
    "author": "018ec082-0ae1-761c-b2c5-22275a611771",
    "total": 46,
    "items": [
        "versia.social:f8b0d4b4-d354-4798-bbc5-c2ba8acabfe3",
        "social.bob.com:2B27E62snga763"
    ]
}