Skip to content

[FEATURE REQUEST] Create a link over a space #4753

@jesmrec

Description

@jesmrec

Add a new link is only allowed for Space managers, same as Members.

  • Required permission: libre.graph/driveItem/permissions/create

iOS example:

Image
  • Header with item info
  • Form
    • Name (optional): max 255 chars
    • Permissions: Can View Can Edit Secret File Drop (hardcoded?)
    • Password: mandatory if enforced (same as item links, capability-based). Option to copy it to the clipboard.
    • Expiration date (optional)

REQUEST

iOS way - Not useful for this issue ❌

POST https://<url>/graph/v1beta1/drives/<drive-id>/items/<item-id>/createLink

Web way - Used for this issue (only one parameter is required) ✅

POST https://<url>/graph/v1beta1/drives/<drive-id>/root/createLink

with the following payload:

{
    "displayName": "Test",
    "expirationDateTime": "2026-01-19T13:14:09.021Z",
    "password": "T/Ec90Vo5/!n##1S%x",
    "type": "edit"
}

type has three different values: view, edit, createOnly

Permission is always mandatory, so, if it is not checked, the Create button is disabled.

Password, following capability password. It always uses to be true but it should be checked.

Response body - Not needed in this issue ❌

{
    "createdDateTime": "2026-01-14T08:40:49.439847853Z",
    "expirationDateTime": "2026-01-21T08:40:47.921Z",
    "hasPassword": true,
    "id": "DDugZscaZAnhDvr",
    "link": {
        "@libre.graph.displayName": "Name",
        "@libre.graph.quickLink": false,
        "preventsDownload": false,
        "type": "view",
        "webUrl": "https://<url>/s/uwNlynuHnkvMtKA"
    }
}

After submitting creation, view is closed and the list of links refreshed with the new link. Show a snackbar in the space members view if the operation has been successful.

TASKS

  • Research (if needed)
  • Create branch feature/create_a_link_over_a_space
  • Development tasks
    • Add + option to create links (only for users with permissions)
    • Create the new view/screen for space public links
    • Implement methods and network operation to create a public link
    • Implement unit tests (if needed)
  • Code review and apply changes requested
  • Design test plan
  • QA
  • Merge branch feature/create_a_link_over_a_space into master

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions