Overview
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](https://appwrite.io/docs)
Appwrite is a development API from appwrite.io. Requests are authenticated with an API key. It is served over HTTPS. Its OpenAPI description documents 100 endpoints.
At a glance
- Authentication
- API key
- HTTPS
- Yes
- CORS
- Unknown
- Category
- Development
- Base URL
https://appwrite.io/v1- Version
- 0.9.3
- Endpoints
- 100
- OpenAPI
- Specification ↗
- Spec updated
- 2021-08-12
Make a first request
Replace the placeholders; the documentation says exactly where credentials go.
curl -X GET "https://appwrite.io/v1/account" \
-H "Accept: application/json" \
-H "X-API-Key: YOUR_API_KEY"const response = await fetch("https://appwrite.io/v1/account", {
method: "GET",
headers: {
"Accept": "application/json",
"X-API-Key": "YOUR_API_KEY",
},
});
const data = await response.json();
console.log(data);import requests
response = requests.request(
"GET",
"https://appwrite.io/v1/account",
headers={
"Accept": "application/json",
"X-API-Key": "YOUR_API_KEY",
},
timeout=30,
)
print(response.json())Endpoints
| Method | Path | What it does |
|---|---|---|
| GET | /account | Get Account |
| POST | /account | Create Account |
| DELETE | /account | Delete Account |
| PATCH | /account/email | Update Account Email |
| POST | /account/jwt | Create Account JWT |
| GET | /account/logs | Get Account Logs |
| PATCH | /account/name | Update Account Name |
| PATCH | /account/password | Update Account Password |
| GET | /account/prefs | Get Account Preferences |
| PATCH | /account/prefs | Update Account Preferences |
| POST | /account/recovery | Create Password Recovery |
| PUT | /account/recovery | Complete Password Recovery |
| GET | /account/sessions | Get Account Sessions |
| POST | /account/sessions | Create Account Session |
| DELETE | /account/sessions | Delete All Account Sessions |
| POST | /account/sessions/anonymous | Create Anonymous Session |
| GET | /account/sessions/oauth2/{provider} | Create Account Session with OAuth2 |
| GET | /account/sessions/{sessionId} | Get Session By ID |
| DELETE | /account/sessions/{sessionId} | Delete Account Session |
| POST | /account/verification | Create Email Verification |
| PUT | /account/verification | Complete Email Verification |
| GET | /avatars/browsers/{code} | Get Browser Icon |
| GET | /avatars/credit-cards/{code} | Get Credit Card Icon |
| GET | /avatars/favicon | Get Favicon |
| GET | /avatars/flags/{code} | Get Country Flag |
| GET | /avatars/image | Get Image from URL |
| GET | /avatars/initials | Get User Initials |
| GET | /avatars/qr | Get QR Code |
| GET | /database/collections/{collectionId}/documents | List Documents |
| POST | /database/collections/{collectionId}/documents | Create Document |
| GET | /database/collections/{collectionId}/documents/{documentId} | Get Document |
| PATCH | /database/collections/{collectionId}/documents/{documentId} | Update Document |
| DELETE | /database/collections/{collectionId}/documents/{documentId} | Delete Document |
| GET | /functions/{functionId}/executions | List Executions |
| POST | /functions/{functionId}/executions | Create Execution |
| GET | /functions/{functionId}/executions/{executionId} | Get Execution |
| GET | /locale | Get User Locale |
| GET | /locale/continents | List Continents |
| GET | /locale/countries | List Countries |
| GET | /locale/countries/eu | List EU Countries |
| GET | /locale/countries/phones | List Countries Phone Codes |
| GET | /locale/currencies | List Currencies |
| GET | /locale/languages | List Languages |
| GET | /storage/files | List Files |
| POST | /storage/files | Create File |
| GET | /storage/files/{fileId} | Get File |
| PUT | /storage/files/{fileId} | Update File |
| DELETE | /storage/files/{fileId} | Delete File |
| GET | /storage/files/{fileId}/download | Get File for Download |
| GET | /storage/files/{fileId}/preview | Get File Preview |
| GET | /storage/files/{fileId}/view | Get File for View |
| GET | /teams | List Teams |
| POST | /teams | Create Team |
| GET | /teams/{teamId} | Get Team |
| PUT | /teams/{teamId} | Update Team |
| DELETE | /teams/{teamId} | Delete Team |
| GET | /teams/{teamId}/memberships | Get Team Memberships |
| POST | /teams/{teamId}/memberships | Create Team Membership |
| PATCH | /teams/{teamId}/memberships/{membershipId} | Update Membership Roles |
| DELETE | /teams/{teamId}/memberships/{membershipId} | Delete Team Membership |
| PATCH | /teams/{teamId}/memberships/{membershipId}/status | Update Team Membership Status |
| GET | /database/collections | List Collections |
| POST | /database/collections | Create Collection |
| GET | /database/collections/{collectionId} | Get Collection |
| PUT | /database/collections/{collectionId} | Update Collection |
| DELETE | /database/collections/{collectionId} | Delete Collection |
| GET | /functions | List Functions |
| POST | /functions | Create Function |
| GET | /functions/{functionId} | Get Function |
| PUT | /functions/{functionId} | Update Function |
| DELETE | /functions/{functionId} | Delete Function |
| PATCH | /functions/{functionId}/tag | Update Function Tag |
| GET | /functions/{functionId}/tags | List Tags |
| POST | /functions/{functionId}/tags | Create Tag |
| GET | /functions/{functionId}/tags/{tagId} | Get Tag |
| DELETE | /functions/{functionId}/tags/{tagId} | Delete Tag |
| GET | /health | Get HTTP |
| GET | /health/anti-virus | Get Anti virus |
| GET | /health/cache | Get Cache |
| GET | /health/db | Get DB |
| GET | /health/queue/certificates | Get Certificate Queue |
| GET | /health/queue/functions | Get Functions Queue |
| GET | /health/queue/logs | Get Logs Queue |
| GET | /health/queue/tasks | Get Tasks Queue |
| GET | /health/queue/usage | Get Usage Queue |
| GET | /health/queue/webhooks | Get Webhooks Queue |
| GET | /health/storage/local | Get Local Storage |
| GET | /health/time | Get Time |
| GET | /users | List Users |
| POST | /users | Create User |
| GET | /users/{userId} | Get User |
| DELETE | /users/{userId} | Delete User |
| GET | /users/{userId}/logs | Get User Logs |
| GET | /users/{userId}/prefs | Get User Preferences |
| PATCH | /users/{userId}/prefs | Update User Preferences |
| GET | /users/{userId}/sessions | Get User Sessions |
| DELETE | /users/{userId}/sessions | Delete User Sessions |
| DELETE | /users/{userId}/sessions/{sessionId} | Delete User Session |
| PATCH | /users/{userId}/status | Update User Status |
| PATCH | /users/{userId}/verification | Update Email Verification |
Questions
Does the Appwrite API need an API key?
Yes. The Appwrite API uses API key authentication; the documentation explains how to get credentials.
Does the Appwrite API support HTTPS?
Yes, the Appwrite API is served over HTTPS.
How many endpoints does the Appwrite API have?
Its OpenAPI description lists 100 endpoints in version 0.9.3. All of them are shown on this page.
What are alternatives to the Appwrite API?
Other Development APIs include Cloudflare, Azure DevOps, IPify, App Store Connect API, StackExchange.
Similar development APIs
Compare alternatives →Cloudflare
DevelopmentManage DNS, CDN, Workers and other services; documented with an official OpenAPI 3.0 spec
Azure DevOps
DevelopmentThe Azure DevOps basic components of a REST API request/response pair
IPify
DevelopmentA simple IP Address API
App Store Connect API
DevelopmentThe data structure that represents an app store connect api resource.
StackExchange
DevelopmentQ&A forum for developers
IPinfo
DevelopmentAnother simple IP Address API
Listed from APIs.guru (CC0).