Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion Appwrite/Appwrite.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<PropertyGroup>
<TargetFrameworks>netstandard2.0;net462</TargetFrameworks>
<PackageId>Appwrite</PackageId>
<Version>3.0.0</Version>
<Version>3.1.0</Version>
<Authors>Appwrite Team</Authors>
<Company>Appwrite Team</Company>
<Description>
Expand Down
22 changes: 19 additions & 3 deletions Appwrite/Client.cs
Original file line number Diff line number Diff line change
Expand Up @@ -69,12 +69,12 @@ public Client(
_headers = new Dictionary<string, string>()
{
{ "content-type", "application/json" },
{ "user-agent" , $"AppwriteDotNetSDK/3.0.0 ({Environment.OSVersion.Platform}; {Environment.OSVersion.VersionString})"},
{ "user-agent" , $"AppwriteDotNetSDK/3.1.0 ({Environment.OSVersion.Platform}; {Environment.OSVersion.VersionString})"},
{ "x-sdk-name", ".NET" },
{ "x-sdk-platform", "server" },
{ "x-sdk-language", "dotnet" },
{ "x-sdk-version", "3.0.0"},
{ "X-Appwrite-Response-Format", "1.9.1" }
{ "x-sdk-version", "3.1.0"},
{ "X-Appwrite-Response-Format", "1.9.4" }
};

_config = new Dictionary<string, string>();
Expand Down Expand Up @@ -156,6 +156,22 @@ public Client SetForwardedUserAgent(string value) {
return this;
}

/// <summary>Your secret dev API key</summary>
public Client SetDevKey(string value) {
_config.Add("devKey", value);
AddHeader("X-Appwrite-Dev-Key", value);

return this;
}

/// <summary>The user cookie to authenticate with. Used by SDKs that forward an incoming Cookie header in server-side runtimes.</summary>
public Client SetCookie(string value) {
_config.Add("cookie", value);
AddHeader("Cookie", value);

return this;
}

/// <summary>Impersonate a user by ID on an already user-authenticated request. Requires the current request to be authenticated as a user with impersonator capability; X-Appwrite-Key alone is not sufficient. Impersonator users are intentionally granted users.read so they can discover a target before impersonation begins. Internal audit logs still attribute actions to the original impersonator and record the impersonated target only in internal audit payload data.</summary>
public Client SetImpersonateUserId(string value) {
_config.Add("impersonateUserId", value);
Expand Down
1 change: 1 addition & 0 deletions Appwrite/Enums/BuildRuntime.cs
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,7 @@ public BuildRuntime(string value)
public static BuildRuntime Go124 => new BuildRuntime("go-1.24");
public static BuildRuntime Go125 => new BuildRuntime("go-1.25");
public static BuildRuntime Go126 => new BuildRuntime("go-1.26");
public static BuildRuntime Rust183 => new BuildRuntime("rust-1.83");
public static BuildRuntime Static1 => new BuildRuntime("static-1");
public static BuildRuntime Flutter324 => new BuildRuntime("flutter-3.24");
public static BuildRuntime Flutter327 => new BuildRuntime("flutter-3.27");
Expand Down
146 changes: 146 additions & 0 deletions Appwrite/Enums/EmailTemplateLocale.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,146 @@
using System;

namespace Appwrite.Enums
{
public class EmailTemplateLocale : IEnum
{
public string Value { get; private set; }

public EmailTemplateLocale(string value)
{
Value = value;
}

public static EmailTemplateLocale Af => new EmailTemplateLocale("af");
public static EmailTemplateLocale ArAe => new EmailTemplateLocale("ar-ae");
public static EmailTemplateLocale ArBh => new EmailTemplateLocale("ar-bh");
public static EmailTemplateLocale ArDz => new EmailTemplateLocale("ar-dz");
public static EmailTemplateLocale ArEg => new EmailTemplateLocale("ar-eg");
public static EmailTemplateLocale ArIq => new EmailTemplateLocale("ar-iq");
public static EmailTemplateLocale ArJo => new EmailTemplateLocale("ar-jo");
public static EmailTemplateLocale ArKw => new EmailTemplateLocale("ar-kw");
public static EmailTemplateLocale ArLb => new EmailTemplateLocale("ar-lb");
public static EmailTemplateLocale ArLy => new EmailTemplateLocale("ar-ly");
public static EmailTemplateLocale ArMa => new EmailTemplateLocale("ar-ma");
public static EmailTemplateLocale ArOm => new EmailTemplateLocale("ar-om");
public static EmailTemplateLocale ArQa => new EmailTemplateLocale("ar-qa");
public static EmailTemplateLocale ArSa => new EmailTemplateLocale("ar-sa");
public static EmailTemplateLocale ArSy => new EmailTemplateLocale("ar-sy");
public static EmailTemplateLocale ArTn => new EmailTemplateLocale("ar-tn");
public static EmailTemplateLocale ArYe => new EmailTemplateLocale("ar-ye");
public static EmailTemplateLocale As => new EmailTemplateLocale("as");
public static EmailTemplateLocale Az => new EmailTemplateLocale("az");
public static EmailTemplateLocale Be => new EmailTemplateLocale("be");
public static EmailTemplateLocale Bg => new EmailTemplateLocale("bg");
public static EmailTemplateLocale Bh => new EmailTemplateLocale("bh");
public static EmailTemplateLocale Bn => new EmailTemplateLocale("bn");
public static EmailTemplateLocale Bs => new EmailTemplateLocale("bs");
public static EmailTemplateLocale Ca => new EmailTemplateLocale("ca");
public static EmailTemplateLocale Cs => new EmailTemplateLocale("cs");
public static EmailTemplateLocale Cy => new EmailTemplateLocale("cy");
public static EmailTemplateLocale Da => new EmailTemplateLocale("da");
public static EmailTemplateLocale De => new EmailTemplateLocale("de");
public static EmailTemplateLocale DeAt => new EmailTemplateLocale("de-at");
public static EmailTemplateLocale DeCh => new EmailTemplateLocale("de-ch");
public static EmailTemplateLocale DeLi => new EmailTemplateLocale("de-li");
public static EmailTemplateLocale DeLu => new EmailTemplateLocale("de-lu");
public static EmailTemplateLocale El => new EmailTemplateLocale("el");
public static EmailTemplateLocale En => new EmailTemplateLocale("en");
public static EmailTemplateLocale EnAu => new EmailTemplateLocale("en-au");
public static EmailTemplateLocale EnBz => new EmailTemplateLocale("en-bz");
public static EmailTemplateLocale EnCa => new EmailTemplateLocale("en-ca");
public static EmailTemplateLocale EnGb => new EmailTemplateLocale("en-gb");
public static EmailTemplateLocale EnIe => new EmailTemplateLocale("en-ie");
public static EmailTemplateLocale EnJm => new EmailTemplateLocale("en-jm");
public static EmailTemplateLocale EnNz => new EmailTemplateLocale("en-nz");
public static EmailTemplateLocale EnTt => new EmailTemplateLocale("en-tt");
public static EmailTemplateLocale EnUs => new EmailTemplateLocale("en-us");
public static EmailTemplateLocale EnZa => new EmailTemplateLocale("en-za");
public static EmailTemplateLocale Eo => new EmailTemplateLocale("eo");
public static EmailTemplateLocale Es => new EmailTemplateLocale("es");
public static EmailTemplateLocale EsAr => new EmailTemplateLocale("es-ar");
public static EmailTemplateLocale EsBo => new EmailTemplateLocale("es-bo");
public static EmailTemplateLocale EsCl => new EmailTemplateLocale("es-cl");
public static EmailTemplateLocale EsCo => new EmailTemplateLocale("es-co");
public static EmailTemplateLocale EsCr => new EmailTemplateLocale("es-cr");
public static EmailTemplateLocale EsDo => new EmailTemplateLocale("es-do");
public static EmailTemplateLocale EsEc => new EmailTemplateLocale("es-ec");
public static EmailTemplateLocale EsGt => new EmailTemplateLocale("es-gt");
public static EmailTemplateLocale EsHn => new EmailTemplateLocale("es-hn");
public static EmailTemplateLocale EsMx => new EmailTemplateLocale("es-mx");
public static EmailTemplateLocale EsNi => new EmailTemplateLocale("es-ni");
public static EmailTemplateLocale EsPa => new EmailTemplateLocale("es-pa");
public static EmailTemplateLocale EsPe => new EmailTemplateLocale("es-pe");
public static EmailTemplateLocale EsPr => new EmailTemplateLocale("es-pr");
public static EmailTemplateLocale EsPy => new EmailTemplateLocale("es-py");
public static EmailTemplateLocale EsSv => new EmailTemplateLocale("es-sv");
public static EmailTemplateLocale EsUy => new EmailTemplateLocale("es-uy");
public static EmailTemplateLocale EsVe => new EmailTemplateLocale("es-ve");
public static EmailTemplateLocale Et => new EmailTemplateLocale("et");
public static EmailTemplateLocale Eu => new EmailTemplateLocale("eu");
public static EmailTemplateLocale Fa => new EmailTemplateLocale("fa");
public static EmailTemplateLocale Fi => new EmailTemplateLocale("fi");
public static EmailTemplateLocale Fo => new EmailTemplateLocale("fo");
public static EmailTemplateLocale Fr => new EmailTemplateLocale("fr");
public static EmailTemplateLocale FrBe => new EmailTemplateLocale("fr-be");
public static EmailTemplateLocale FrCa => new EmailTemplateLocale("fr-ca");
public static EmailTemplateLocale FrCh => new EmailTemplateLocale("fr-ch");
public static EmailTemplateLocale FrLu => new EmailTemplateLocale("fr-lu");
public static EmailTemplateLocale Ga => new EmailTemplateLocale("ga");
public static EmailTemplateLocale Gd => new EmailTemplateLocale("gd");
public static EmailTemplateLocale He => new EmailTemplateLocale("he");
public static EmailTemplateLocale Hi => new EmailTemplateLocale("hi");
public static EmailTemplateLocale Hr => new EmailTemplateLocale("hr");
public static EmailTemplateLocale Hu => new EmailTemplateLocale("hu");
public static EmailTemplateLocale Id => new EmailTemplateLocale("id");
public static EmailTemplateLocale Is => new EmailTemplateLocale("is");
public static EmailTemplateLocale It => new EmailTemplateLocale("it");
public static EmailTemplateLocale ItCh => new EmailTemplateLocale("it-ch");
public static EmailTemplateLocale Ja => new EmailTemplateLocale("ja");
public static EmailTemplateLocale Ji => new EmailTemplateLocale("ji");
public static EmailTemplateLocale Ko => new EmailTemplateLocale("ko");
public static EmailTemplateLocale Ku => new EmailTemplateLocale("ku");
public static EmailTemplateLocale Lt => new EmailTemplateLocale("lt");
public static EmailTemplateLocale Lv => new EmailTemplateLocale("lv");
public static EmailTemplateLocale Mk => new EmailTemplateLocale("mk");
public static EmailTemplateLocale Ml => new EmailTemplateLocale("ml");
public static EmailTemplateLocale Ms => new EmailTemplateLocale("ms");
public static EmailTemplateLocale Mt => new EmailTemplateLocale("mt");
public static EmailTemplateLocale Nb => new EmailTemplateLocale("nb");
public static EmailTemplateLocale Ne => new EmailTemplateLocale("ne");
public static EmailTemplateLocale Nl => new EmailTemplateLocale("nl");
public static EmailTemplateLocale NlBe => new EmailTemplateLocale("nl-be");
public static EmailTemplateLocale Nn => new EmailTemplateLocale("nn");
public static EmailTemplateLocale No => new EmailTemplateLocale("no");
public static EmailTemplateLocale Pa => new EmailTemplateLocale("pa");
public static EmailTemplateLocale Pl => new EmailTemplateLocale("pl");
public static EmailTemplateLocale Pt => new EmailTemplateLocale("pt");
public static EmailTemplateLocale PtBr => new EmailTemplateLocale("pt-br");
public static EmailTemplateLocale Rm => new EmailTemplateLocale("rm");
public static EmailTemplateLocale Ro => new EmailTemplateLocale("ro");
public static EmailTemplateLocale RoMd => new EmailTemplateLocale("ro-md");
public static EmailTemplateLocale Ru => new EmailTemplateLocale("ru");
public static EmailTemplateLocale RuMd => new EmailTemplateLocale("ru-md");
public static EmailTemplateLocale Sb => new EmailTemplateLocale("sb");
public static EmailTemplateLocale Sk => new EmailTemplateLocale("sk");
public static EmailTemplateLocale Sl => new EmailTemplateLocale("sl");
public static EmailTemplateLocale Sq => new EmailTemplateLocale("sq");
public static EmailTemplateLocale Sr => new EmailTemplateLocale("sr");
public static EmailTemplateLocale Sv => new EmailTemplateLocale("sv");
public static EmailTemplateLocale SvFi => new EmailTemplateLocale("sv-fi");
public static EmailTemplateLocale Th => new EmailTemplateLocale("th");
public static EmailTemplateLocale Tn => new EmailTemplateLocale("tn");
public static EmailTemplateLocale Tr => new EmailTemplateLocale("tr");
public static EmailTemplateLocale Ts => new EmailTemplateLocale("ts");
public static EmailTemplateLocale Ua => new EmailTemplateLocale("ua");
public static EmailTemplateLocale Ur => new EmailTemplateLocale("ur");
public static EmailTemplateLocale Ve => new EmailTemplateLocale("ve");
public static EmailTemplateLocale Vi => new EmailTemplateLocale("vi");
public static EmailTemplateLocale Xh => new EmailTemplateLocale("xh");
public static EmailTemplateLocale ZhCn => new EmailTemplateLocale("zh-cn");
public static EmailTemplateLocale ZhHk => new EmailTemplateLocale("zh-hk");
public static EmailTemplateLocale ZhSg => new EmailTemplateLocale("zh-sg");
public static EmailTemplateLocale ZhTw => new EmailTemplateLocale("zh-tw");
public static EmailTemplateLocale Zu => new EmailTemplateLocale("zu");
}
}
22 changes: 22 additions & 0 deletions Appwrite/Enums/EmailTemplateType.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
using System;

namespace Appwrite.Enums
{
public class EmailTemplateType : IEnum
{
public string Value { get; private set; }

public EmailTemplateType(string value)
{
Value = value;
}

public static EmailTemplateType Verification => new EmailTemplateType("verification");
public static EmailTemplateType MagicSession => new EmailTemplateType("magicSession");
public static EmailTemplateType Recovery => new EmailTemplateType("recovery");
public static EmailTemplateType Invitation => new EmailTemplateType("invitation");
public static EmailTemplateType MfaChallenge => new EmailTemplateType("mfaChallenge");
public static EmailTemplateType SessionAlert => new EmailTemplateType("sessionAlert");
public static EmailTemplateType OtpSession => new EmailTemplateType("otpSession");
}
}
22 changes: 22 additions & 0 deletions Appwrite/Enums/MethodId.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
using System;

namespace Appwrite.Enums
{
public class MethodId : IEnum
{
public string Value { get; private set; }

public MethodId(string value)
{
Value = value;
}

public static MethodId EmailPassword => new MethodId("email-password");
public static MethodId MagicUrl => new MethodId("magic-url");
public static MethodId EmailOtp => new MethodId("email-otp");
public static MethodId Anonymous => new MethodId("anonymous");
public static MethodId Invites => new MethodId("invites");
public static MethodId Jwt => new MethodId("jwt");
public static MethodId Phone => new MethodId("phone");
}
}
3 changes: 3 additions & 0 deletions Appwrite/Enums/OAuthProvider.cs
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,12 @@ public OAuthProvider(string value)
public static OAuthProvider Etsy => new OAuthProvider("etsy");
public static OAuthProvider Facebook => new OAuthProvider("facebook");
public static OAuthProvider Figma => new OAuthProvider("figma");
public static OAuthProvider Fusionauth => new OAuthProvider("fusionauth");
public static OAuthProvider Github => new OAuthProvider("github");
public static OAuthProvider Gitlab => new OAuthProvider("gitlab");
public static OAuthProvider Google => new OAuthProvider("google");
public static OAuthProvider Keycloak => new OAuthProvider("keycloak");
public static OAuthProvider Kick => new OAuthProvider("kick");
public static OAuthProvider Linkedin => new OAuthProvider("linkedin");
public static OAuthProvider Microsoft => new OAuthProvider("microsoft");
public static OAuthProvider Notion => new OAuthProvider("notion");
Expand Down
24 changes: 24 additions & 0 deletions Appwrite/Enums/PolicyId.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
using System;

namespace Appwrite.Enums
{
public class PolicyId : IEnum
{
public string Value { get; private set; }

public PolicyId(string value)
{
Value = value;
}

public static PolicyId PasswordDictionary => new PolicyId("password-dictionary");
public static PolicyId PasswordHistory => new PolicyId("password-history");
public static PolicyId PasswordPersonalData => new PolicyId("password-personal-data");
public static PolicyId SessionAlert => new PolicyId("session-alert");
public static PolicyId SessionDuration => new PolicyId("session-duration");
public static PolicyId SessionInvalidation => new PolicyId("session-invalidation");
public static PolicyId SessionLimit => new PolicyId("session-limit");
public static PolicyId UserLimit => new PolicyId("user-limit");
public static PolicyId MembershipPrivacy => new PolicyId("membership-privacy");
}
}
Loading
Loading