Skip to content

[FEATURE REQUEST] List links over a space #4752

@jesmrec

Description

@jesmrec

Spaces can be pointed with a link that is created in the Space's options. Link is intended to be copied and pasted in a web browser to check the content inside. It can be protected with a password and an expiration date.

In terms of UI, Links section is included in the Members section, below the list of members (as the web and iOS clients). On Android side, a new header Links can be created with the same design than the Members header.

Every link will fill a row, same as the members. iOS example:

Image

It shows name, permission level, link, and expiration date. IMO, link not necessary there.

List of links is available for everyone, no matter the role or permission. Also, copying the link is also available for everyone.

When no links are available, it should be correctly shown with a message like No links available or No links created yet

Request to get the links:

GET https://<url>/graph/v1beta1/drives/<drive-id>/root/permissions

last entries of the response with the list of existing links looks like that:

        {
            "createdDateTime": "2026-01-12T10:08:39.764335893Z",
            "hasPassword": true,
            "id": "jGjfJjubYXPHtGn",
            "link": {
                "@libre.graph.displayName": "Secret",
                "@libre.graph.quickLink": false,
                "preventsDownload": false,
                "type": "createOnly",
                "webUrl": "https://<url>/s/OquwFbuGPeZOWgF"
            }
        },
        {
            "createdDateTime": "2025-12-18T11:53:09.801445412Z",
            "hasPassword": true,
            "id": "YqiiKVjbOtpnkhM",
            "link": {
                "@libre.graph.displayName": "Unnamed link",
                "@libre.graph.quickLink": false,
                "preventsDownload": false,
                "type": "view",
                "webUrl": "https://<url>/s/efqwHCEfbjMrMqe"
            }
        },
        {
            "createdDateTime": "2026-01-12T10:08:25.408268119Z",
            "hasPassword": true,
            "id": "jICMXjlnzxsQuQY",
            "link": {
                "@libre.graph.displayName": "Edit",
                "@libre.graph.quickLink": false,
                "preventsDownload": false,
                "type": "edit",
                "webUrl": "https://<url>/s/JmqgIzFKGuIIMVT"
            }
        }

"createdDateTime": timestamp of link creation
"hasPassword": if the link is password protected, not relevant for the current issue
"id": link id, not sure if it will be relevant or not
"@libre.graph.displayName": name for the link to show in the list
"@libre.graph.quickLink": seems to be always false
"preventsDownload": seems to be always false
"type": level of permission: createOnly, view, edit. They are mapped to Secret file drop, Can view and Can edit (hardcoded?)
"webUrl": link to the space

As tasks for this issue

  • Add the new header with LINKS title
  • List the existing links with permissions and expiration date (similar to Members) or the message if there is no links available
  • Add the chain icon to share the link. Same as the public links in sharing.

TASKS

  • Research (if needed)`
  • Create branch feature/feature_name
  • Development tasks
    • Implement whatever
    • ...
    • Implement unit tests (if needed)
  • Code review and apply changes requested
  • Design test plan
  • QA
  • Merge branch feature/feature_name into master

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions