File System Operations API

System calls for file and directory manipulation, including open, read, write, and file descriptor management.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/file-system-operations-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

API entry from apis.yml

apis.yml Raw ↑
name: File System Operations API
description: System calls for file and directory manipulation, including open, read, write, and file descriptor
  management.
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
humanURL: https://man7.org/linux/man-pages/dir_section_2.html
baseURL: system://unix/fs
tags:
- Directories
- File
- Filesystem
- IO
tags_raw:
- Directories
- Files
- Filesystem
- Io
properties:
- type: Documentation
  url: https://pubs.opengroup.org/onlinepubs/9699919799/functions/contents.html
- type: APIReference
  url: https://man7.org/linux/man-pages/man2/
- type: Documentation
  url: https://pubs.opengroup.org/onlinepubs/9799919799/functions/open.html
contact:
- FN: POSIX Standards Committee
  email: standards@opengroup.org
operations:
- name: open
  description: Open file and return file descriptor
  parameters:
  - pathname
  - flags
  - mode
  returns: file descriptor (int)
- name: read
  description: Read bytes from a file descriptor
  parameters:
  - fd
  - buf
  - count
  returns: number of bytes read
- name: write
  description: Write bytes to a file descriptor
  parameters:
  - fd
  - buf
  - count
  returns: number of bytes written
- name: close
  description: Close a file descriptor
  parameters:
  - fd
  returns: 0 on success, -1 on error
- name: lseek
  description: Reposition file offset
  parameters:
  - fd
  - offset
  - whence
  returns: resulting offset
- name: stat
  description: Get file status
  parameters:
  - pathname
  - statbuf
  returns: 0 on success, -1 on error
- name: fstat
  description: Get file status by file descriptor
  parameters:
  - fd
  - statbuf
  returns: 0 on success, -1 on error
- name: lstat
  description: Get file status without following symbolic links
  parameters:
  - pathname
  - statbuf
  returns: 0 on success, -1 on error
- name: chmod
  description: Change file permissions
  parameters:
  - pathname
  - mode
  returns: 0 on success, -1 on error
- name: fchmod
  description: Change file permissions by file descriptor
  parameters:
  - fd
  - mode
  returns: 0 on success, -1 on error
- name: chown
  description: Change file owner and group
  parameters:
  - pathname
  - owner
  - group
  returns: 0 on success, -1 on error
- name: mkdir
  description: Create a directory
  parameters:
  - pathname
  - mode
  returns: 0 on success, -1 on error
- name: rmdir
  description: Remove a directory
  parameters:
  - pathname
  returns: 0 on success, -1 on error
- name: link
  description: Create a hard link to a file
  parameters:
  - oldpath
  - newpath
  returns: 0 on success, -1 on error
- name: unlink
  description: Delete a name and possibly the file it refers to
  parameters:
  - pathname
  returns: 0 on success, -1 on error
- name: symlink
  description: Create a symbolic link
  parameters:
  - target
  - linkpath
  returns: 0 on success, -1 on error
- name: readlink
  description: Read value of a symbolic link
  parameters:
  - pathname
  - buf
  - bufsiz
  returns: number of bytes placed in buf
- name: rename
  description: Change the name or location of a file
  parameters:
  - oldpath
  - newpath
  returns: 0 on success, -1 on error
- name: dup
  description: Duplicate a file descriptor
  parameters:
  - oldfd
  returns: new file descriptor
- name: dup2
  description: Duplicate a file descriptor to a specified descriptor number
  parameters:
  - oldfd
  - newfd
  returns: new file descriptor
- name: fcntl
  description: Manipulate file descriptor properties and flags
  parameters:
  - fd
  - cmd
  - arg
  returns: depends on cmd, -1 on error
- name: access
  description: Check user permissions for a file
  parameters:
  - pathname
  - mode
  returns: 0 on success, -1 on error
- name: umask
  description: Set file mode creation mask
  parameters:
  - mask
  returns: previous value of the mask
- name: opendir
  description: Open a directory stream
  parameters:
  - name
  returns: pointer to directory stream
- name: readdir
  description: Read a directory entry
  parameters:
  - dirp
  returns: pointer to dirent structure
- name: closedir
  description: Close a directory stream
  parameters:
  - dirp
  returns: 0 on success, -1 on error
- name: chdir
  description: Change working directory
  parameters:
  - path
  returns: 0 on success, -1 on error
- name: getcwd
  description: Get current working directory
  parameters:
  - buf
  - size
  returns: pointer to buf
- name: truncate
  description: Truncate a file to a specified length
  parameters:
  - path
  - length
  returns: 0 on success, -1 on error
- name: ftruncate
  description: Truncate an open file to a specified length
  parameters:
  - fd
  - length
  returns: 0 on success, -1 on error
- name: fsync
  description: Synchronize file state with storage device
  parameters:
  - fd
  returns: 0 on success, -1 on error