- Added addon management methods to Organizations service:
listAddons,createBaaAddon,getAddon,deleteAddon,confirmAddonPayment,getAddonPrice - Added
Addonenum andBillingPlanSupportedAddonsmodel - Added
templateRepository,templateOwner,templateRootDirectory,templateVersionoptional parameters tofunctions.create - Added
authDisposableEmails,authCanonicalEmails,authFreeEmailsfields to Project model - Added
supportForIntegerIdsfield to database adapter model - Added descriptions to
createJSONExportandcreateJSONImportmigration methods - Updated
ProxyRulefield descriptions for clarity
- Added:
createJSONExport()andcreateJSONImport()methods to Migrations service - Added:
Dart311andFlutter341runtime variants - Updated:
reasonandexpiredAtfields onBlockmodel are now optional - Updated: Improved
ProxyRulefield descriptions - Updated: Rollup upgraded to v4 with ESM config, Node >= 18 engine requirement
- Fixed: Added
filesfield topackage.jsonto publish only built artifacts to npm
- Added: Added
getHeaders()method toClientto expose current request headers - Added: Added
ProviderRepositoryRuntimeandProviderRepositoryRuntimeListmodels - Updated:
createRepositoryDetection()return type now includesDetectionRuntime - Updated:
listRepositories()return type now includesProviderRepositoryRuntimeList - Added: Added
package-lock.jsonto track dependency lockfile in version control
- [BREAKING] Changed
$sequencetype fromnumbertostringforRowandDocumentmodels - [BREAKING] Renamed
IndexTypeenum: split intoDatabasesIndexType(for Databases) andTablesDBIndexType(for TablesDB) - [BREAKING]
Project.createVariablenow requiresvariableIdas a new first parameter - [BREAKING] Removed
ProviderRepositoryRuntime,ProviderRepositoryRuntimeList, andDetectionRuntimemodels - [BREAKING] Removed all RC (release candidate) runtime variants from
Runtime,Runtimes, andBuildRuntimeenums - Added new
Domains.updateAutoRenewal()method for enabling/disabling domain auto-renewal - Added new
Users.updateImpersonator()method for enabling/disabling user impersonation - Added impersonation support:
setImpersonateUserId(),setImpersonateUserEmail(),setImpersonateUserPhone()onClient - Added
impersonatorandimpersonatorUserIdoptional fields toUsermodel - Added
autoRenewaloptional parameter toDomains.createPurchase()andDomains.createTransferIn() - Added optional
queriesandtotalparameters toProject.listVariables() - Added
DocumentsdbandVectorsdbvalues toDatabaseTypeandBackupServicesenums - Added new scopes:
Account,ProjectRead,ProjectWrite,PlatformsRead,PlatformsWrite,ProjectsRead,ProjectsWrite,KeysRead,KeysWrite,DevKeysRead,DevKeysWrite - Added VectorsDB and DocumentsDB usage metrics to
UsagePeriodmodel - Added embeddings metrics (
embeddingsText*) toUsagePeriodmodel - Added
realtimeMessagesandrealtimeBandwidthfields toPlanmodel - Changed
Project.updateVariablekeyparameter from required to optional - Updated
Logmodel field descriptions to clarify impersonation behavior - Updated
X-Appwrite-Response-Formatheader to1.9.0 - Updated devDependencies: Rollup 2→3, TypeScript 4.7→5.7, and related plugin upgrades
- Breaking: Renamed
domains.confirmPurchase()todomains.updatePurchase() - Breaking: Renamed
domains.confirmTransferIn()todomains.updateTransferIn() - Breaking: Replaced
ProjectsAPI withWebhooksfor webhook usage - Breaking: Renamed
updateWebhook()toupdate()onWebhooks - Breaking: Renamed
listWebhooks()tolist()onWebhooks - Breaking: Replaced
DomainPurchasePaymentStatuswithDomainPurchaseStatus - Breaking: Renamed
DomainTransferStatusStatustoDomainTransferStatus - Breaking: Removed
Deno121,Deno124,Deno135fromBuildRuntime/Runtimeenums - Updated README badge to API version
1.8.2 - Added
queriesoption towebhooks.list()
- Breaking: Functions and Sites now require
specificationparameter and supportdeploymentRetention - Breaking: New
buildSpecificationandruntimeSpecificationparameters for functions - Added messaging migration resource types: Provider, Topic, Subscriber, Message
- Added new build runtimes and runtime versions
- Added domain purchase and transfer confirmation endpoints
- Added
DomainPurchasePaymentStatusenum
- Breaking: Channel.collection() and Channel.table() now require explicit IDs
- Added migration resource enums: AppwriteMigrationResource, FirebaseMigrationResource, NHostMigrationResource, SupabaseMigrationResource
- Added DomainTransferStatusStatus enum
- Added ttl option to listDocuments and listRows
- Added new docs/examples across domains, health, migrations, projects, sites
- Updated docs and examples to reflect new resources and transfers
- Add support for
createPurchasemethod inDomainsservice - Fix very large double values (for example 1.7976931348623157e+308) from being expanded into giant integer literals
- Breaking: EmailTemplateType enum values renamed and updated (Magicsession -> MagicSession, Mfachallenge -> MfaChallenge, Sessionalert -> SessionAlert, Otpsession -> OtpSession) and their underlying string values changed accordingly, which may affect existing integrations.
- Breaking: OAuthProvider enum removed GithubImagine and GoogleImagine options, potentially breaking code that referenced those providers.
- New: Channel.upsert() method added to support upserting documents/rows with Channel.
- New: Expanded runtime support with additional runtimes across BuildRuntime, Runtime, and Runtimes enums (Node.js 23-25, PHP 8.4, Ruby 3.4/4.0, Python 3.13/3.14, Deno 2.5/2.6, Bun 1.2/1.3, Go 1.24-1.26, Java 25, Kotlin 2.3, Swift 6.2, etc.).
- Chore: Removed bignumber.js dependency; library now relies on json-bigint and native BigInt handling; ensure compatibility for users that depended on bignumber.js.
- Documentation: Update README to reflect Appwrite server compatibility 1.8.x.
- Maintenance: Changelog updated with 2.3.1 patch: Add missing
queriesparameter to new string type attributes (backward-compatible improvement).
- Add missing
queriesparameter to new string type attributes
- Add
queriesparameter toRealtime.subscribe()andclient.subscribe()for server-side query filtering - Add slot-based subscription management with subscription ID mappings from backend
- Add
subscriptionsfield toRealtimeResponseEventtype - Fix
Rolesenum removed from Teams service;rolesparameter now acceptsstring[] - Fix parameter detection in overloaded methods to check for optional params (Account, Avatars, Graphql)
- Fix WebSocket connection handling with stale connection guards and improved close/reconnect logic
- Fix doc examples wrapped in markdown code fences
- Add array-based enum parameters (e.g.,
permissions: BrowserPermission[]). - Breaking change:
Outputenum has been removed; useImageFormatinstead. - Add
Channelhelpers for Realtime. - Add
getQueueAuditssupport toHealthservice. - Add longtext/mediumtext/text/varchar attribute and column helpers to
DatabasesandTablesDBservices.
Fix bigint and float parsing in SDK.
- Fix only use
bigintfor min, max and default attributes
- Allow
bigintto be passed in all methods that previously only acceptednumber
- Add
setSelfSignedandsetCookiemethods toClientclass
- Update SDK examples to use object-based parameters instead of positional arguments
- Align all service method usage with the new API signature style
- Update publish workflow to use trusted publishing mechanism
- Fix autocompletion not working for
Documentmodel even when generic is passed - Add
getAvailableCreditsandupdateProjectsmethods toOrganizationsservice - Allow internal attributes to be passed in
dataparameter ofcreateDocument,updateDocumentetc. methods - Formatting changes
- Add
1.8.xsupport
- Add encrypt to string attribute model
- Add upsert document method
- Add max deployment size and max build size plan attributes
- Remove
templateRepository,templateOwner,templateRootDirectory,templateVersionfromfunctions.create
- Update docs to use
https://<REGION>.cloud.appwrite.io/v1instead ofhttps://cloud.appwrite.io/v1 - Add
1.7.xsupport
- Updates checking and then setting of cloud and realtime endpoint.
- Remove unnecessary asyncs and awaits.
- Adds and fixes lot of the billing related models and return types.
- Fixes typing for attributes type in Collection class.
- Removes method.title for multiplexing of endpoints.
- Removes unnecessary adding of project to payload.
- Ensures AppwriteException's "response" attribute is always string
- Adds check for file not found in chuckedUpload method
- Adds figma oauth adapter
- Adds image transformations usages to project, bucket and org. usages.
- Add some model vars that were left out and were required for DB read & writes.
- Adds support for
databasesReadsTotalanddatabasesWritesTotalattributes