Appwrite 11.0.0

dotnet add package Appwrite --version 11.0.0
                    
NuGet\Install-Package Appwrite -Version 11.0.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Appwrite" Version="11.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Appwrite" Version="11.0.0" />
                    
Directory.Packages.props
<PackageReference Include="Appwrite" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Appwrite --version 11.0.0
                    
#r "nuget: Appwrite, 11.0.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Appwrite@11.0.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Appwrite&version=11.0.0
                    
Install as a Cake Addin
#tool nuget:?package=Appwrite&version=11.0.0
                    
Install as a Cake Tool

Appwrite .NET SDK

License Version X Account Discord

This SDK targets Appwrite server version 2.5.x as shipped on Appwrite Cloud. Self-hosted releases can lag behind Cloud — if you run an older self-hosted build, use a matching older SDK from previous releases when APIs differ.

Appwrite is an open-source backend as a service server that abstracts and simplifies complex and repetitive development tasks behind a very simple to use REST API. Appwrite aims to help you develop your apps faster and in a more secure way. Use the .NET SDK to integrate your app with the Appwrite server to easily start interacting with all of Appwrite backend APIs and tools. For full API documentation and tutorials go to https://appwrite.io/docs

Installation

The package targets .NET Standard 2.0 and .NET Framework 4.6.2, so it runs on .NET 5 or later, .NET Core 2.0 or later, and .NET Framework 4.6.2 or later.

Install it with the .NET CLI:

dotnet add package Appwrite --version 11.0.0

Or with the Package Manager Console:

Install-Package Appwrite -Version 11.0.0

Or add a reference to your project's .csproj file:

<PackageReference Include="Appwrite" Version="11.0.0" />

Getting Started

Initialize and make an API request

Initialize the SDK with your Appwrite endpoint, project ID, and an API key. Find the endpoint and project ID in your project's Settings page, and create an API key with the scopes your code needs under Overview > Integrations > API keys. API keys grant server-level access, so keep them out of client-side code.

using Appwrite;
using Appwrite.Services;

var client = new Client()
    .SetEndpoint("https://<REGION>.cloud.appwrite.io/v1")
    .SetProject("<PROJECT_ID>")
    .SetKey("<API_KEY>");

var users = new Users(client);

var user = await users.Create(
    userId: ID.Unique(),
    email: "email@example.com",
    password: "password",
    name: "Walter O'Brien");

Console.WriteLine(user.Name);

If you self-host Appwrite, use your own endpoint, such as https://appwrite.example.com/v1. During local development with a self-signed certificate, call .SetSelfSigned(true) to skip certificate verification. Never use it in production.

Error handling

The SDK throws an AppwriteException when a request fails. It exposes Message, Code, Type, and Response properties that you can use to inspect the error.

try
{
    var user = await users.Create(
        userId: ID.Unique(),
        email: "email@example.com",
        password: "password",
        name: "Walter O'Brien");
}
catch (AppwriteException e)
{
    Console.WriteLine(e.Message);
}

Preparing models for TablesDB

The SDK serializes request data with System.Text.Json and converts property names from PascalCase to camelCase. If your table's column names are not in camelCase, the serialized names will not match your columns.

Add the JsonPropertyName attribute to each property of your model so it serializes to the column name. For example, for a table with a name column (string) and a release_date column (datetime):

using System.Text.Json.Serialization;

public class Movie
{
    [JsonPropertyName("name")]
    public string Name { get; set; }

    [JsonPropertyName("release_date")]
    public DateTime ReleaseDate { get; set; }
}

Pass the model as the row data:

var tablesDB = new TablesDB(client);

var row = await tablesDB.CreateRow(
    databaseId: "<DATABASE_ID>",
    tableId: "<TABLE_ID>",
    rowId: ID.Unique(),
    data: new Movie { Name = "Spider-Man", ReleaseDate = new DateTime(2002, 5, 3) });

Learn more

You can use the following resources to learn more and get help:

Contribution

This library is auto-generated by Appwrite custom SDK Generator. To learn more about how you can help us improve this SDK, please check the contribution guide before sending a pull-request.

License

Please see the BSD-3-Clause license file for more information.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 is compatible.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Appwrite:

Package Downloads
AppwriteHelper

Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
11.0.0 58 10/21/2026
10.0.0 66 10/20/2026
9.0.0 106 10/15/2026
8.4.0 85 10/14/2026
8.3.1 89 10/12/2026
8.3.0 88 10/12/2026
8.2.0 101 10/9/2026
8.1.0 114 10/6/2026
8.0.0 277 9/2/2026
8.0.0-rc.1 78 8/28/2026
7.0.0 495 8/14/2026
6.1.0 460 7/24/2026
6.0.0 157 7/13/2026
5.1.0 382 6/5/2026
5.0.0 182 6/1/2026
4.2.0 147 5/21/2026
4.1.0 138 5/20/2026
4.0.0 149 5/19/2026
3.1.0 202 5/8/2026
3.0.0 416 4/16/2026
Loading failed