GuestLinks
Manage guest access to a filespace using guest links.
/api/v1/filespaces/{filespaceId}/guest-links
List guest links
Returns a paginated list of guest links for the filespace.
Parameters
Parameter | Type | Description |
|---|---|---|
|
| Maximum number of results to return. |
|
| Cursor for pagination. |
|
| Required. |
limit
Type
numberDescription
Maximum number of results to return.
nextCursor
Type
stringDescription
Cursor for pagination.
filespaceId
Type
stringDescription
Required.
Responses
Status | Description |
|---|---|
| Guest links have been successfully fetched. |
| Pagination query parameters are invalid. |
| Invalid or missing credentials. |
200
Description
Guest links have been successfully fetched.
400
Description
Pagination query parameters are invalid.
401
Description
Invalid or missing credentials.
200 response — GET /filespaces/{filespaceId}/guest-links
{"data": {"guestLinks": [{"id": "cm1abc2def3ghi4jk5lm","name": "Project assets","filespaceId": "439a0d7f-396a-46a5-8d89-df818e594b2d","workspaceId": "5f8d3a2b-1c4e-4f6a-9b8d-7e2f1a3c5d6e","fsEntryId": "1234:5678","status": "active","expiresAt": "2026-12-31T23:59:59Z","createdAt": "2026-01-15T10:30:00Z","linkSecret": "f82snfbZsXJzRJVfTvyiihp2ESgPn8O1_izXzYKV8zE.fwE","emailsCount": 3}],"nextCursor": "eyJwcmluY2lwYWxJZCI6ImFiYyJ9"}}
401 response — GET /filespaces/{filespaceId}/guest-links
{"error": {"message": "Invalid or expired token"}}
/api/v1/filespaces/{filespaceId}/guest-links
Create a guest link
Creates a guest link for a filesystem entry. Provide either entryId or path to identify the target. The link grants read-only access to guests.
Parameters
Parameter | Type | Description |
|---|---|---|
|
| Required. |
filespaceId
Type
stringDescription
Required.
Request body
Field | Type | Description |
|---|---|---|
|
| The ID of the filesystem entry to create a guest link for. Provide either entryId or path. |
|
| Absolute path to the filesystem entry to create a guest link for. Provide either entryId or path. |
|
| Required. Name for the guest link. |
|
| Optional expiration date for the guest link in ISO 8601 format. |
entryId
Type
stringDescription
The ID of the filesystem entry to create a guest link for. Provide either entryId or path.
path
Type
stringDescription
Absolute path to the filesystem entry to create a guest link for. Provide either entryId or path.
name
Type
stringDescription
Required. Name for the guest link.
expiresAt
Type
string <date-time-ISO8601>Description
Optional expiration date for the guest link in ISO 8601 format.
Responses
Status | Description |
|---|---|
| Guest link has been successfully created. |
| 1. Exactly one of entryId or path must be provided. 2. File system entry ID is invalid. 3. Paths inside LucidLink should start with a '/'. 4. Guest link expiration date must be in the future. |
| Invalid or missing credentials. |
| File system entry not found. |
201
Description
Guest link has been successfully created.
400
Description
1. Exactly one of entryId or path must be provided. 2. File system entry ID is invalid. 3. Paths inside LucidLink should start with a '/'. 4. Guest link expiration date must be in the future.
401
Description
Invalid or missing credentials.
404
Description
File system entry not found.
201 response — POST /filespaces/{filespaceId}/guest-links
{"data": {"guestLinkId": "cm1abc2def3ghi4jk5lm","linkSecret": "f82snfbZsXJzRJVfTvyiihp2ESgPn8O1_izXzYKV8zE.fwE"}}
401 response — POST /filespaces/{filespaceId}/guest-links
{"error": {"message": "Invalid or expired token"}}
404 response — POST /filespaces/{filespaceId}/guest-links
{"error": {"message": "File system entry not found"}}
/api/v1/filespaces/{filespaceId}/guest-links/{guestLinkId}
Update a guest link
Updates the name and/or expiration of a guest link. If neither field is provided, the current state is returned unchanged.
Parameters
Parameter | Type | Description |
|---|---|---|
|
| Required. |
|
| Required. |
guestLinkId
Type
stringDescription
Required.
filespaceId
Type
stringDescription
Required.
Request body
Field | Type | Description |
|---|---|---|
|
| New name for the guest link. |
|
| New expiration date in ISO 8601 format. Set to null to remove expiration. |
name
Type
stringDescription
New name for the guest link.
expiresAt
Type
string <date-time-ISO8601>Description
New expiration date in ISO 8601 format. Set to null to remove expiration.
Responses
Status | Description |
|---|---|
| Guest link has been successfully updated. |
| Guest link expiration date must be in the future. |
| Invalid or missing credentials. |
| Resource not found or user has no access privilege. |
200
Description
Guest link has been successfully updated.
400
Description
Guest link expiration date must be in the future.
401
Description
Invalid or missing credentials.
404
Description
Resource not found or user has no access privilege.
200 response — PATCH /filespaces/{filespaceId}/guest-links/{guestLinkId}
{"data": {"id": "cm1abc2def3ghi4jk5lm","name": "Project assets","filespaceId": "439a0d7f-396a-46a5-8d89-df818e594b2d","workspaceId": "5f8d3a2b-1c4e-4f6a-9b8d-7e2f1a3c5d6e","fsEntryId": "1234:5678","status": "active","expiresAt": "2026-12-31T23:59:59Z","createdAt": "2026-01-15T10:30:00Z","linkSecret": "f82snfbZsXJzRJVfTvyiihp2ESgPn8O1_izXzYKV8zE.fwE","emailsCount": 3}}
401 response — PATCH /filespaces/{filespaceId}/guest-links/{guestLinkId}
{"error": {"message": "Invalid or expired token"}}
/api/v1/filespaces/{filespaceId}/guest-links/{guestLinkId}
Delete a guest link
Permanently deletes a guest link. All associated ACL entries are removed. The operation is idempotent: deleting a guest link that does not exist succeeds without effect.
Parameters
Parameter | Type | Description |
|---|---|---|
|
| Required. |
|
| Required. |
guestLinkId
Type
stringDescription
Required.
filespaceId
Type
stringDescription
Required.
Responses
Status | Description |
|---|---|
| Guest link has been successfully deleted. |
| Invalid or missing credentials. |
200
Description
Guest link has been successfully deleted.
401
Description
Invalid or missing credentials.
401 response — DELETE /filespaces/{filespaceId}/guest-links/{guestLinkId}
{"error": {"message": "Invalid or expired token"}}
/api/v1/filespaces/{filespaceId}/guest-links/{guestLinkId}/url
Get a distributable guest link URL
Returns a ready-to-share URL for the guest link.
Parameters
Parameter | Type | Description |
|---|---|---|
|
| Required. |
|
| Required. |
guestLinkId
Type
stringDescription
Required.
filespaceId
Type
stringDescription
Required.
Responses
Status | Description |
|---|---|
| Guest link URL has been successfully generated. |
| Invalid or missing credentials. |
| Resource not found or user has no access privilege. |
200
Description
Guest link URL has been successfully generated.
401
Description
Invalid or missing credentials.
404
Description
Resource not found or user has no access privilege.
200 response — GET /filespaces/{filespaceId}/guest-links/{guestLinkId}/url
{"data": {"url": "https://app.lucidlink.com/guest/79QqCDg9GDWN11-eWV1f#f82snfbZsXJzRJVfTvyiihp2ESgPn8O1_izXzYKV8zE.fwE"}}
401 response — GET /filespaces/{filespaceId}/guest-links/{guestLinkId}/url
{"error": {"message": "Invalid or expired token"}}
404 response — GET /filespaces/{filespaceId}/guest-links/{guestLinkId}/url
{"error": {"message": "Resource not found or user has no access privilege"}}
/api/v1/filespaces/{filespaceId}/guest-links/{guestLinkId}/guests
List guests of a guest link
Returns all access control list entries for a guest link.
Parameters
Parameter | Type | Description |
|---|---|---|
|
| Required. |
|
| Required. |
guestLinkId
Type
stringDescription
Required.
filespaceId
Type
stringDescription
Required.
Responses
Status | Description |
|---|---|
| Guests have been successfully fetched. |
| Invalid or missing credentials. |
| Resource not found or user has no access privilege. |
200
Description
Guests have been successfully fetched.
401
Description
Invalid or missing credentials.
404
Description
Resource not found or user has no access privilege.
200 response — GET /filespaces/{filespaceId}/guest-links/{guestLinkId}/guests
{"data": [{"guestLinkId": "cm1abc2def3ghi4jk5lm","email": "guest@example.com","createdByMemberId": "7a3b9c1d-2e4f-5a6b-8c9d-0e1f2a3b4c5d","createdAt": "2026-01-15T10:30:00Z","lastUsedAt": null}]}
401 response — GET /filespaces/{filespaceId}/guest-links/{guestLinkId}/guests
{"error": {"message": "Invalid or expired token"}}
404 response — GET /filespaces/{filespaceId}/guest-links/{guestLinkId}/guests
{"error": {"message": "Resource not found or user has no access privilege"}}
/api/v1/filespaces/{filespaceId}/guest-links/{guestLinkId}/guests
Add guest to guest link
Adds email addresses to the access control list of a guest link. Maximum 25 emails per request.
Parameters
Parameter | Type | Description |
|---|---|---|
|
| Required. |
|
| Required. |
guestLinkId
Type
stringDescription
Required.
filespaceId
Type
stringDescription
Required.
Request body
Field | Type | Description |
|---|---|---|
|
| Required. Array of email addresses to add to the guest link ACL. Maximum 25 emails per request. |
emails
Type
string <email>[]Description
Required. Array of email addresses to add to the guest link ACL. Maximum 25 emails per request.
Responses
Status | Description |
|---|---|
| Emails have been successfully added. Returns the updated guest list. |
| Request body is invalid. |
| Invalid or missing credentials. |
| Resource not found or user has no access privilege. |
200
Description
Emails have been successfully added. Returns the updated guest list.
400
Description
Request body is invalid.
401
Description
Invalid or missing credentials.
404
Description
Resource not found or user has no access privilege.
200 response — POST /filespaces/{filespaceId}/guest-links/{guestLinkId}/guests
{"data": [{"guestLinkId": "cm1abc2def3ghi4jk5lm","email": "guest@example.com","createdByMemberId": "7a3b9c1d-2e4f-5a6b-8c9d-0e1f2a3b4c5d","createdAt": "2026-01-15T10:30:00Z","lastUsedAt": null}]}
401 response — POST /filespaces/{filespaceId}/guest-links/{guestLinkId}/guests
{"error": {"message": "Invalid or expired token"}}
404 response — POST /filespaces/{filespaceId}/guest-links/{guestLinkId}/guests
{"error": {"message": "Resource not found or user has no access privilege"}}
/api/v1/filespaces/{filespaceId}/guest-links/{guestLinkId}/guests/{email}
Remove a guest from guest link
Removes a single email address from the access control list of a guest link. The operation is idempotent: removing an email that is not in the ACL succeeds without effect.
Parameters
Parameter | Type | Description |
|---|---|---|
|
| Required. |
|
| Required. |
|
| Required. |
guestLinkId
Type
stringDescription
Required.
email
Type
stringDescription
Required.
filespaceId
Type
stringDescription
Required.
Responses
Status | Description |
|---|---|
| Email has been successfully removed from the ACL. |
| Invalid or missing credentials. |
200
Description
Email has been successfully removed from the ACL.
401
Description
Invalid or missing credentials.
401 response — DELETE /filespaces/{filespaceId}/guest-links/{guestLinkId}/guests/{email}
{"error": {"message": "Invalid or expired token"}}