Appwrite Storage API

The Storage service allows you to manage your project files. 13 operations across 7 paths in the Appwrite 2.0.0 OpenAPI.

Operations 13

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /storage/buckets List storage buckets · List buckets #
Ask an LLM
“Which storage buckets exist in my project?”
“Can I search my buckets by name?”
Tell an agent
List all my storage buckets.
Search storage buckets for {search}.
POST /storage/buckets Create a storage bucket · Create bucket #
Ask an LLM
“How do I create a bucket to hold uploaded files?”
“Can I cap file size and allowed extensions when creating a bucket?”
Tell an agent
Create a storage bucket {name} with ID {bucketId}.
Create bucket {bucketId} named {name} that only accepts {allowedFileExtensions} up to {maximumFileSize} bytes.
GET /storage/buckets/{bucketId} Get a bucket's settings · Get bucket #
Ask an LLM
“What limits and permissions are set on a bucket?”
“Can I fetch a single bucket's metadata by ID?”
Tell an agent
Show bucket {bucketId}.
Get the settings of storage bucket {bucketId}.
PUT /storage/buckets/{bucketId} Change an existing bucket's settings · Update bucket #
Ask an LLM
“Can I turn on compression or antivirus for a bucket I already have?”
“How do I rename an existing bucket or change its permissions?”
Tell an agent
Rename bucket {bucketId} to {name}.
Update bucket {bucketId}, keeping name {name}, to use compression {compression}.
DELETE /storage/buckets/{bucketId} Delete a storage bucket · Delete bucket #
Ask an LLM
“How do I delete a bucket I no longer use?”
“Can I remove an entire storage bucket by ID?”
Tell an agent destructive · confirm first
Delete bucket {bucketId}.
Remove the storage bucket {bucketId}.
GET /storage/buckets/{bucketId}/files List files in a bucket · List files #
Ask an LLM
“Which files are stored in a bucket?”
“Can I search a bucket's files by name?”
Tell an agent
List files in bucket {bucketId}.
Search bucket {bucketId} for files matching {search}.
POST /storage/buckets/{bucketId}/files Upload a file to a bucket · Create file #
Ask an LLM
“How do I upload a file into a storage bucket?”
“How are large files uploaded, in chunks?”
Tell an agent
Upload {file} to bucket {bucketId} as file {fileId}.
Upload {file} to {bucketId} with ID {fileId} and permissions {permissions}.
GET /storage/buckets/{bucketId}/files/{fileId} Get a file's metadata · Get file #
Ask an LLM
“What size and type is a stored file?”
“Can I get a file's metadata without downloading it?”
Tell an agent
Show metadata for file {fileId} in bucket {bucketId}.
Get file info for {fileId} in {bucketId}.
PUT /storage/buckets/{bucketId}/files/{fileId} Rename a file or change its permissions · Update file #
Ask an LLM
“Can I rename a file after uploading it?”
“How do I change who can read an uploaded file?”
Tell an agent
Rename file {fileId} in bucket {bucketId} to {name}.
Set permissions on file {fileId} in {bucketId} to {permissions}.
DELETE /storage/buckets/{bucketId}/files/{fileId} Delete a file · Delete file #
Ask an LLM
“How do I delete an uploaded file?”
“Who is allowed to delete a file in a bucket?”
Tell an agent destructive · confirm first
Delete file {fileId} from bucket {bucketId}.
Remove {fileId} from storage bucket {bucketId}.
GET /storage/buckets/{bucketId}/files/{fileId}/download Download a file as an attachment · Get file for download #
Ask an LLM
“How do I make the browser download a stored file?”
“Can I download a file using a file token instead of a session?”
Tell an agent
Download file {fileId} from bucket {bucketId}.
Download {fileId} from {bucketId} using token {token}.
GET /storage/buckets/{bucketId}/files/{fileId}/preview Get a resized image preview of a file · Get file preview #
Ask an LLM
“Can I get a thumbnail of an uploaded image at a specific size?”
“Which image formats can a file preview be output as?”
Tell an agent
Get a {width}x{height} preview of file {fileId} in bucket {bucketId}.
Preview {fileId} from {bucketId} as {output} at quality {quality}.
GET /storage/buckets/{bucketId}/files/{fileId}/view View a file inline in the browser · Get file for view #
Ask an LLM
“How do I display a stored file inline instead of downloading it?”
“Can I embed a stored PDF or image directly in a page?”
Tell an agent
Open file {fileId} from bucket {bucketId} for inline viewing.
View {fileId} in {bucketId} inline with token {token}.

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/appwrite:appwrite-storage-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 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 Specification

appwrite-storage-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 2.0.0
  title: Appwrite Storage API
  description: Appwrite backend as a service cuts up to 70% of the time and costs required for building a modern application. We abstract and simplify common development tasks behind a REST APIs, to help you develop your app in a fast and secure way. For full API documentation and tutorials go to https://appwrite.io/docs
  termsOfService: https://appwrite.io/policy/terms
  contact:
    name: Appwrite Team
    url: https://appwrite.io/support
    email: team@appwrite.io
  license:
    name: BSD-3-Clause
    url: https://raw.githubusercontent.com/appwrite/appwrite/master/LICENSE
servers:
- url: https://cloud.appwrite.io/v1
  description: Appwrite Cloud endpoint.
- url: https://{region}.cloud.appwrite.io/v1
  description: Appwrite Cloud regional endpoint. Replace `{region}` with your project region.
  variables:
    region:
      default: fra
      description: Appwrite Cloud region.
tags:


# --- truncated at 32 KB (46 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/appwrite/refs/heads/main/openapi/appwrite-storage-api-openapi.yml