Appwrite offers a comprehensive REST API for managing user accounts (preferences, sessions, verification, recovery), serving avatar and locale resources, storing and previewing files, handling database collections and documents, running serverless functions, checking system health, and organizing teams and users, enabling developers to build full‑stack applications without writing backend infrastructure.
width(query) — Image width. Pass an integer between 0 to 2000. Defaults to 100.
height(query) — Image height. Pass an integer between 0 to 2000. Defaults to 100.
quality(query) — Image quality. Pass an integer between 0 to 100. Defaults to 100.
GET
/avatars/favicon
Get Favicon
url(query, required) — Website URL which you want to fetch the favicon from.
GET
/avatars/flags/{code}
Get Country Flag
code(path, required) — Country Code. ISO Alpha-2 country code format.
width(query) — Image width. Pass an integer between 0 to 2000. Defaults to 100.
height(query) — Image height. Pass an integer between 0 to 2000. Defaults to 100.
quality(query) — Image quality. Pass an integer between 0 to 100. Defaults to 100.
GET
/avatars/image
Get Image from URL
url(query, required) — Image URL which you want to crop.
width(query) — Resize preview image width, Pass an integer between 0 to 2000.
height(query) — Resize preview image height, Pass an integer between 0 to 2000.
GET
/avatars/initials
Get User Initials
name(query) — Full Name. When empty, current user name or email will be used. Max length: 128 chars.
width(query) — Image width. Pass an integer between 0 to 2000. Defaults to 100.
height(query) — Image height. Pass an integer between 0 to 2000. Defaults to 100.
color(query) — Changes text color. By default a random color will be picked and stay will persistent to the given name.
background(query) — Changes background color. By default a random color will be picked and stay will persistent to the given name.
GET
/avatars/qr
Get QR Code
text(query, required) — Plain text to be converted to QR code image.
size(query, limit) — QR code size. Pass an integer between 0 to 1000. Defaults to 400.
margin(query) — Margin from edge. Pass an integer between 0 to 10. Defaults to 1.
download(query) — Return resulting image with 'Content-Disposition: attachment ' headers for the browser to start downloading it. Pass 0 for no header, or 1 for otherwise. Default value is set to 0.
GET
/database/collections
List Collections
search(query) — Search term to filter your list results. Max length: 256 chars.
limit(query, limit) — Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.
offset(query, offset) — Results offset. The default value is 0. Use this param to manage pagination.
orderType(query) — Order result by ASC or DESC order.
collectionId(path, required) — Collection unique ID. You can create a new collection with validation rules using the Database service [server integration](/docs/server/database#createCollection).
filters(query) — Array of filter strings. Each filter is constructed from a key name, comparison operator (=, !=, >, =) and a value. You can also use a dot (.) separator in attribute names to filter by child document attributes. Examples: 'name=John Doe' or 'category.$id>=5bed2d152c362'.
limit(query, limit) — Maximum number of documents to return in response. Use this value to manage pagination. By default will return maximum 25 results. Maximum of 100 results allowed per request.
offset(query, offset) — Offset value. The default value is 0. Use this param to manage pagination.
orderField(query) — Document field that results will be sorted by.
orderType(query) — Order direction. Possible values are DESC for descending order, or ASC for ascending order.
orderCast(query) — Order field type casting. Possible values are int, string, date, time or datetime. The database will attempt to cast the order field to the value you pass here. The default value is a string.
search(query) — Search query. Enter any free text search. The database will try to find a match against all document attributes and children. Max length: 256 chars.
POST
/database/collections/{collectionId}/documents
Create Document
collectionId(path, required) — Collection unique ID. You can create a new collection with validation rules using the Database service [server integration](/docs/server/database#createCollection).
collectionId(path, required) — Collection unique ID. You can create a new collection with validation rules using the Database service [server integration](/docs/server/database#createCollection).
collectionId(path, required) — Collection unique ID. You can create a new collection with validation rules using the Database service [server integration](/docs/server/database#createCollection).
collectionId(path, required) — Collection unique ID. You can create a new collection with validation rules using the Database service [server integration](/docs/server/database#createCollection).
documentId(path, required) — Document unique ID.
GET
/functions
List Functions
search(query) — Search term to filter your list results. Max length: 256 chars.
limit(query, limit) — Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.
offset(query, offset) — Results offset. The default value is 0. Use this param to manage pagination.
orderType(query) — Order result by ASC or DESC order.
POST
/functions
Create Function
DELETE
/functions/{functionId}
Delete Function
functionId(path, required) — Function unique ID.
GET
/functions/{functionId}
Get Function
functionId(path, required) — Function unique ID.
PUT
/functions/{functionId}
Update Function
functionId(path, required) — Function unique ID.
GET
/functions/{functionId}/executions
List Executions
functionId(path, required) — Function unique ID.
search(query) — Search term to filter your list results. Max length: 256 chars.
limit(query, limit) — Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.
offset(query, offset) — Results offset. The default value is 0. Use this param to manage pagination.
orderType(query) — Order result by ASC or DESC order.