Filen Public Links API
The Public Links API from Filen — 15 operation(s) for public links.
The Public Links API from Filen — 15 operation(s) for public links.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/filen:filen-public-links-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Filen Public Links API
description: 'The Filen API is used by Filen clients for uploading and downloading files, managing files and directories, sharing items, accessing notes and contacts, having chat conversations, managing user-specific settings, and more.
If you need a more in depth documentation, please refer to our generated OpenAPI specs.
### API hosts
The Filen API is located at `gateway.filen.io`.
For file transfers, there''s `ingest.filen.io` and `egest.filen.io`. `ingest.filen.io` is used for uploads while `egest.filen.io` is used for downloads.
### API responses
All API responses follow the schema (TypeScript type definition):
```ts
{
status: boolean, // indicates whether the request was successful
message: string, // additional information
code: string, // a status code
data: any? // optionally, response data
}
```
### Format of timestamps
Some endpoints (where noted) provide timestamps that are *either in milliseconds or in seconds*. To handle them correctly, a calculation like this might be helpful: A timestamp is in milliseconds if `Math.abs(millisecondsNow - timestamp) for a full description of the realtime events API, see the SDK''s implementations
- `/versions` (get current client versions)
- `/mobile/offline/files` (get offline files info)'
version: v3
servers:
- url: https://gateway.filen.io/v3
tags:
- name: Public Links
paths:
/file/link/info:
post:
summary: Get file public link info
tags:
- Public Links
description: Get public link info of a file
requestBody:
description: Body JSON
content:
application/json:
schema:
type: object
properties:
uuid:
type: string
example: uuidv4
password:
type: string
example: string
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
status:
type: string
example: boolean
message:
type: string
example: string
code:
type: string
example: string
data:
type: object
properties:
bucket:
type: string
example: string
uuid:
type: string
example: string
region:
type: string
example: string
name:
type: string
example: string
size:
type: string
example: string
mime:
type: string
example: string
chunks:
type: string
example: number
password:
type: string
example: string
downloadBtn:
type: string
example: boolean
timestamp:
type: string
example: number
version:
type: string
example: number
xml:
name: main
x-codegen-request-body-name: body
operationId: postFileLinkInfo
x-operation-id-source: derived
/file/link/status:
post:
summary: Get file public link status
tags:
- Public Links
description: Retrieve file public link status
requestBody:
description: Body JSON
content:
application/json:
schema:
type: object
properties:
uuid:
type: string
example: uuidv4
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
status:
type: string
example: boolean
message:
type: string
example: string
code:
type: string
example: string
data:
type: object
properties:
uuid:
type: string
example: uuidv4
enabled:
type: string
example: boolean
expiration:
type: string
example: number
expirationText:
type: string
example: string
downloadBtn:
type: string
example: boolean
password:
type: string
example: string
xml:
name: main
x-codegen-request-body-name: body
operationId: postFileLinkStatus
x-operation-id-source: derived
/file/link/edit:
post:
summary: Edit file public link
tags:
- Public Links
description: Edit a file's public link
requestBody:
description: Body JSON
content:
application/json:
schema:
type: object
properties:
uuid:
type: string
example: uuidv4
fileUUID:
type: string
example: uuidv4
expiration:
type: string
example: string
password:
type: string
example: string
passwordHashed:
type: string
example: string
downloadBtn:
type: string
example: boolean
salt:
type: string
example: string
type:
type: string
example: enable | disable
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
status:
type: string
example: boolean
message:
type: string
example: string
code:
type: string
example: string
xml:
name: main
x-codegen-request-body-name: body
operationId: postFileLinkEdit
x-operation-id-source: derived
/file/link/password:
post:
summary: Check if file public link is password-protected
tags:
- Public Links
description: Check if a file public link is password protected
requestBody:
description: Body JSON
content:
application/json:
schema:
type: object
properties:
uuid:
type: string
example: uuidv4
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
status:
type: string
example: boolean
message:
type: string
example: string
code:
type: string
example: string
data:
type: object
properties:
hasPassword:
type: string
example: boolean
salt:
type: string
example: string
xml:
name: main
x-codegen-request-body-name: body
operationId: postFileLinkPassword
x-operation-id-source: derived
/dir/link/info:
post:
summary: Get directory public link info
tags:
- Public Links
description: Get public link info of a folder
requestBody:
description: Body JSON
content:
application/json:
schema:
type: object
properties:
uuid:
type: string
example: uuidv4
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
status:
type: string
example: boolean
message:
type: string
example: string
code:
type: string
example: string
data:
type: object
properties:
parent:
type: string
example: string
metadata:
type: string
example: string
hasPassword:
type: string
example: boolean
salt:
type: string
example: string
timestamp:
type: string
example: number
xml:
name: main
x-codegen-request-body-name: body
operationId: postDirLinkInfo
x-operation-id-source: derived
/dir/link/status:
post:
summary: Get directory public link status
tags:
- Public Links
description: Retrieve status of a folder public link
requestBody:
description: Body JSON
content:
application/json:
schema:
type: object
properties:
uuid:
type: string
example: uuidv4
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
status:
type: string
example: boolean
message:
type: string
example: string
code:
type: string
example: string
data:
type: object
properties:
exists:
type: string
example: boolean
uuid:
type: string
example: uuidv4?
key:
type: string
example: string?
expiration:
type: string
example: number?
expirationText:
type: string
example: string?
downloadBtn:
type: string
example: 0 | 1?
password:
type: string
example: string?
xml:
name: main
x-codegen-request-body-name: body
operationId: postDirLinkStatus
x-operation-id-source: derived
/dir/link/content:
post:
summary: Get directory public link content
tags:
- Public Links
description: Get public link info of a folder
requestBody:
description: Body JSON
content:
application/json:
schema:
type: object
properties:
uuid:
type: string
example: uuidv4
parent:
type: string
example: uuidv4
password:
type: string
example: string
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
status:
type: string
example: boolean
message:
type: string
example: string
code:
type: string
example: string
data:
type: object
properties:
folders:
type: string
example: array
files:
type: string
example: array
xml:
name: main
x-codegen-request-body-name: body
operationId: postDirLinkContent
x-operation-id-source: derived
/dir/link/edit:
post:
summary: Edit directory public link
tags:
- Public Links
description: Edit a folder's public link
requestBody:
description: Body JSON
content:
application/json:
schema:
type: object
properties:
uuid:
type: string
example: uuidv4
expiration:
type: string
example: string
password:
type: string
example: string
passwordHashed:
type: string
example: string
downloadBtn:
type: string
example: boolean
salt:
type: string
example: string
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
status:
type: string
example: boolean
message:
type: string
example: string
code:
type: string
example: string
xml:
name: main
x-codegen-request-body-name: body
operationId: postDirLinkEdit
x-operation-id-source: derived
/dir/link/add:
post:
summary: Add item to directory public link
tags:
- Public Links
description: Add an item to a folder public link
requestBody:
description: Body JSON
content:
application/json:
schema:
type: object
properties:
uuid:
type: string
example: uuidv4
parent:
type: string
example: uuidv4
linkUUID:
type: string
example: uuidv4
type:
type: string
example: file | folder
metadata:
type: string
example: encrypted string
key:
type: string
example: encrypted string
expiration:
type: string
example: string
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
status:
type: string
example: boolean
message:
type: string
example: string
code:
type: string
example: string
xml:
name: main
x-codegen-request-body-name: body
operationId: postDirLinkAdd
x-operation-id-source: derived
/dir/link/remove:
post:
summary: Remove directory public link
tags:
- Public Links
description: Remove a public link from a folder
requestBody:
description: Body JSON
content:
application/json:
schema:
type: object
properties:
uuid:
type: string
example: uuidv4
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
status:
type: string
example: boolean
message:
type: string
example: string
code:
type: string
example: string
xml:
name: main
x-codegen-request-body-name: body
operationId: postDirLinkRemove
x-operation-id-source: derived
/dir/size/link:
post:
summary: Get directory public link size
tags:
- Public Links
description: Retrieve public link directory size
requestBody:
description: Body JSON
content:
application/json:
schema:
type: object
properties:
uuid:
type: string
example: uuidv4
linkUUID:
type: string
example: uuidv4
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
status:
type: string
example: boolean
message:
type: string
example: string
code:
type: string
example: string
data:
type: object
properties:
size:
type: string
example: number
xml:
name: main
x-codegen-request-body-name: body
operationId: postDirSizeLink
x-operation-id-source: derived
/dir/download/link:
post:
summary: Get directory tree of public link
tags:
- Public Links
description: Retrieve complete folder tree of a public link (flattened)
requestBody:
description: Body JSON
content:
application/json:
schema:
type: object
properties:
uuid:
type: string
example: uuidv4
parent:
type: string
example: uuidv4
password:
type: string
example: string | none
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
status:
type: string
example: boolean
message:
type: string
example: string
code:
type: string
example: string
data:
type: object
properties:
files:
type: string
example: array
folders:
type: string
example: array
xml:
name: main
x-codegen-request-body-name: body
operationId: postDirDownloadLink
x-operation-id-source: derived
/item/linked/rename:
post:
summary: Rename public linked directory item
tags:
- Public Links
description: Rename a public linked folder item
requestBody:
description: Body JSON
content:
application/json:
schema:
type: object
properties:
uuid:
type: string
example: uuidv4
linkUUID:
type: string
example: uuidv4
metadata:
type: string
example: string
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
status:
type: string
example: boolean
message:
type: string
example: string
code:
type: string
example: string
xml:
name: main
x-codegen-request-body-name: body
operationId: postItemLinkedRename
x-operation-id-source: derived
/dir/linked:
post:
summary: Check if directory is public linked
tags:
- Public Links
description: Check if a folder is public linked
requestBody:
description: Body JSON
content:
application/json:
schema:
type: object
properties:
uuid:
type: string
example: uuidv4
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
status:
type: string
example: boolean
message:
type: string
example: string
code:
type: string
example: string
data:
type: object
properties:
link:
type: string
example: boolean
links:
type: string
example: '{ linkUUID: uuidv4, linkKey: string }[]'
xml:
name: main
x-codegen-request-body-name: body
operationId: postDirLinked
x-operation-id-source: derived
/item/linked:
post:
summary: Check if item is in public link
tags:
- Public Links
description: Check if an item is in a public link
requestBody:
description: Body JSON
content:
application/json:
schema:
type: object
properties:
uuid:
type: string
example: uuidv4
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
status:
type: string
example: boolean
message:
type: string
example: string
code:
type: string
example: string
data:
type: object
properties:
link:
type: string
example: boolean
links:
type: string
example: '{ linkUUID: uuidv4, linkKey: string }[]'
xml:
name: main
x-codegen-request-body-name: body
operationId: postItemLinked
x-operation-id-source: derived
components:
securitySchemes:
api_key:
type: apiKey
name: API Key
in: header
externalDocs:
description: Get general information about usage of the Filen API at docs.filen.io
url: https://docs.filen.io/docs/api