Skip to content

feat: SDK update for version 8.4.0 - #110

Merged
ChiragAgg5k merged 6 commits into
mainfrom
release/8.4.0
Oct 14, 2026
Merged

ChiragAgg5k merged 6 commits into
mainfrom
release/8.4.0

Conversation

@ChiragAgg5k

@ChiragAgg5k ChiragAgg5k commented Oct 14, 2026 •

Copy link
Copy Markdown
Member

This PR contains updates to the SDK for version 8.4.0. It is patched onto the previous release tag, so it only adds the changes below; existing method signatures keep their parameter order.

What's Changed

  • Added: domains service to manage domains, DNS records, email presets, prices, transfer status and zones
  • Added: waf service with bypass, challenge, deny, rate-limit and redirect rules
  • Added: account.createEmailVerificationOTP, updateEmailVerificationOTP, createRecoveryOTP and updateRecoveryOTP
  • Added: account.createIdTokenSession and Identity.providerIdToken
  • Added: oauth2.introspect
  • Added: project environments with project.createEnvironment, getEnvironment, listEnvironments, updateEnvironment and deleteEnvironment
  • Added: organization.createEphemeralProjectKey, listProjectKeys, getProjectKey, updateProjectKey and deleteProjectKey
  • Added: Kakao, TikTok and Webflow OAuth2 providers with project.updateOAuth2Kakao, updateOAuth2TikTok and updateOAuth2Webflow
  • Added: optional prompt on the Auth0, Discord, GitHub, Microsoft, Okta, Salesforce and Zoho OAuth2 settings, and native client IDs on Apple and Google
  • Added: project.updatePasswordPwnedPolicy, project.updatePasswordRotationPolicy and User.passwordPwned
  • Added: messaging.createAppwriteProvider and messaging.updateAppwriteProvider
  • Added: optional replyToEmail and replyToName on email messages, channelId on push messages, and qos and expiry on topics
  • Added: avatars.updatePhoto and avatars.deletePhoto
  • Added: optional duration on account.createEmailPasswordSession, current on account.deleteSessions, membershipId on teams.createMembership and fingerprints on Android platforms
  • Added: optional total on the locale, transaction, runtime, specification and framework lists
  • Added: dart-3.13 and flutter-3.47 runtimes, the jaspr framework, the trigram index type, auto image gravity, the dedicatedDatabase proxy rule resource type, OTP email templates and new key scopes
  • Added: optional fields on BillingPlan, DedicatedDatabase, DedicatedDatabaseSpecification, Project and Topic, and free and start in BillingPlanGroup
  • Fixed: OAuth2 provider models with a prompt list, such as OAuth2Google, no longer throw InvalidCastException

@hansi-codes

hansi-codes Bot commented Oct 14, 2026 •

Copy link
Copy Markdown

🟢 Tier S · Ready to merge

The incremental change fixes the intended list conversion path and I found no actionable defects in the new commits.

This PR updates the .NET SDK to version 8.4.0 with new domain, WAF, authentication, project-environment, organization-key, OAuth2, messaging, and avatar APIs. It adds response models, optional fields, and enum values for the new API capabilities, and updates SDK examples and release documentation. The latest change also fixes conversion of string lists into enum value objects, including OAuth2 provider prompt lists.

Latest changes: The newest commits add string-to-IEnum conversion in ConvertToList to fix list-valued OAuth2 prompt decoding and record the fix in the changelog.

Verdict New comments Fixed Still open
✅ Approved 0 0 0
📂 Walkthrough · 9
File Change
Appwrite/Appwrite.csproj, Appwrite/Client.cs Bumps the SDK version and supports caller-selected HTTP methods for chunk uploads.
Appwrite/Enums/*.cs Adds enum values for the new runtimes, OAuth2 providers and prompts, WAF, domains, policies, and key scopes.
Appwrite/Models/*.cs Adds response models and optional fields for the 8.4.0 API additions, including OAuth2 prompt lists and native client IDs.
Appwrite/Services/Account.cs, Appwrite/Services/Avatars.cs Adds OTP and ID-token session operations and profile-photo update and deletion.
Appwrite/Services/Domains.cs, Appwrite/Services/Waf.cs Adds domain management and WAF rule service operations.
Appwrite/Services/Project.cs, Appwrite/Services/Organization.cs, Appwrite/Services/Oauth2.cs Adds project environments, project keys, OAuth2 provider and policy updates, and token introspection.
Appwrite/Services/Messaging.cs, Appwrite/Services/Databases.cs, Appwrite/Services/DocumentsDB.cs, Appwrite/Services/Functions.cs, Appwrite/Services/Locale.cs, Appwrite/Services/Sites.cs, Appwrite/Services/TablesDB.cs, Appwrite/Services/Teams.cs, Appwrite/Services/VectorsDB.cs Extends messaging options and adds optional total-count support to list operations.
Appwrite/Extensions/Extensions.cs Converts string list elements into IEnum value objects when materializing typed lists.
README.md, CHANGELOG.md, docs/examples/** Updates release notes and examples for the new APIs and records the OAuth2 prompt-list conversion fix.

Reviewed the commits since d293077 · Details · Comment @hansi-codes review to re-run, or mention @hansi-codes with a question.

hansi-codes[bot]
hansi-codes Bot previously requested changes Oct 14, 2026

@hansi-codes hansi-codes Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Tier B · 1 blocking finding to address. Summary

Comment thread Appwrite/Models/DomainTransferStatus.cs Outdated
The domains service reads transfer status; it does not start transfers.
@ChiragAgg5k

Copy link
Copy Markdown
Member Author

@hansi-codes review

@hansi-codes hansi-codes Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Tier B · See the inline comments. Summary

Comment thread docs/examples/domains/create-record-a.md Outdated
…setter

DomainTransferStatus reads reason with TryGetValue and falls back to an empty string. The examples called SetEndPoint, which Client does not have; it is SetEndpoint.
@ChiragAgg5k

Copy link
Copy Markdown
Member Author

@hansi-codes review

@hansi-codes
hansi-codes Bot dismissed their stale review October 14, 2026 12:03

The findings that requested changes are resolved. See the summary comment for what is still open.

@hansi-codes hansi-codes Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Tier S · Looks good to merge. Summary

@hansi-codes hansi-codes Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Tier A · See the inline comments. Summary

Comment thread Appwrite/Models/XDomain.cs
@ChiragAgg5k

Copy link
Copy Markdown
Member Author

@hansi-codes review

@hansi-codes hansi-codes Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Tier B · See the inline comments. Summary

@ChiragAgg5k

Copy link
Copy Markdown
Member Author

@hansi-codes review

@hansi-codes hansi-codes Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Tier A · See the inline comments. Summary

Comment thread docs/examples/oauth2/introspect.md Outdated
The examples passed snake_case spec names such as token_type_hint as named arguments; the methods take tokenTypeHint, so the snippets did not compile.
@ChiragAgg5k

Copy link
Copy Markdown
Member Author

@hansi-codes review

@hansi-codes hansi-codes Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Tier S · Looks good to merge. Summary

hansi-codes[bot]
hansi-codes Bot previously requested changes Oct 14, 2026

@hansi-codes hansi-codes Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Tier B · 1 blocking finding to address. Summary

Comment thread Appwrite/Models/OAuth2Auth0.cs
Response arrays reach ConvertToList as strings, and Convert.ChangeType cannot build an IEnum value class from one, so any provider with a non-empty prompt threw InvalidCastException (including Google and Oidc in 8.3.1). String items now go through the enum's string constructor.
@ChiragAgg5k

Copy link
Copy Markdown
Member Author

@hansi-codes review

@hansi-codes
hansi-codes Bot dismissed their stale review October 14, 2026 12:39

The findings that requested changes are resolved. See the summary comment for what is still open.

@hansi-codes hansi-codes Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Tier S · Looks good to merge. Summary

@hansi-codes hansi-codes Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Tier S · Looks good to merge. Summary

@ChiragAgg5k
ChiragAgg5k merged commit 6995725 into main Oct 14, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant