Skip to content

feat: SDK update for version 7.0.0 - #101

Merged
ChiragAgg5k merged 10 commits into
mainfrom
dev
Aug 14, 2026
Merged

ChiragAgg5k merged 10 commits into
mainfrom
dev

Conversation

@ChiragAgg5k

@ChiragAgg5k ChiragAgg5k commented Aug 14, 2026 •

Copy link
Copy Markdown
Member

This PR contains updates to the SDK for version 7.0.0.

What's Changed

  • Breaking: removed account.createJWT; use users.createJWT instead. A leaked JWT could mint further JWTs, letting a credential outlive its own expiry — a session cannot duplicate itself to live forever either
  • Breaking: removed project.createKey. A leaked key could mint further hidden keys, making a compromise far harder to contain and revoke
  • Breaking: activities.listEvents queries now takes an array instead of a string
  • Added: embeddings service with createTextEmbeddings, plus the EmbeddingModel enum
  • Added: TablesDB migration methods listMigrations, createMigration, getMigration, deleteMigration, cutoverMigration, and listOperations
  • Added: proxy.createInvalidation for purging cached edge responses, plus the InvalidationType enum
  • Added: apps.deleteInstallation
  • Added: users.getMFAChallenge and the MfaChallengeSecret model
  • Added: project.updateMFAFactorsPolicy and the PolicyMfaFactors model
  • Added: client.setOrganization for organization-scoped requests
  • Added: folder parameter to storage.createFile
  • Added: syncMode parameter to tablesDB.create and tablesDB.update, and specification to tablesDB.update
  • Added: installationScopes parameter to project.updateOAuth2Server
  • Added: custom authentication factor, node-26 runtime, mfa-factors project policy, and the embeddings.write and proxy.invalidations.write key scopes
  • Updated: response format to 1.9.6

@ChiragAgg5k ChiragAgg5k changed the title feat: .NET SDK update for version 7.0.0 feat: SDK update for version 7.0.0 Aug 14, 2026
@ChiragAgg5k ChiragAgg5k changed the title feat: SDK update for version 7.0.0 feat: .NET SDK update for version 7.0.0 Aug 14, 2026
@ChiragAgg5k ChiragAgg5k changed the title feat: .NET SDK update for version 7.0.0 feat: SDK update for version 7.0.0 Aug 14, 2026
@greptile-apps

greptile-apps Bot commented Aug 14, 2026

Copy link
Copy Markdown

Greptile Summary

This release updates the .NET SDK to API response format 1.9.6 and package version 7.0.0.

  • Adds embeddings, cache invalidation, MFA challenge, application installation deletion, and TablesDB migration/operation APIs.
  • Extends project, storage, database, billing, and organization models and request parameters.
  • Removes the documented account JWT and project key creation APIs.
  • One new lifecycle model path does not safely deserialize state-dependent null fields.

Confidence Score: 4/5

The migration lifecycle deserialization failure should be fixed before merging because normal pre-cutover responses can currently throw inside the SDK.

The new migration converter unconditionally dereferences fields that are unavailable during documented lifecycle states, and the shared JSON converter preserves those values as null.

Files Needing Attention: Appwrite/Models/DatabaseMigration.cs and Appwrite/Models/DedicatedDatabaseOperation.cs

Important Files Changed

Filename Overview
Appwrite/Models/DatabaseMigration.cs Adds the migration model, but its converter dereferences phase-dependent nullable timestamps and error data.
Appwrite/Models/DedicatedDatabaseOperation.cs Adds operation lifecycle data with nullable timestamps, while error details remain unsafe for successful operations.
Appwrite/Services/TablesDB.cs Adds migration and operation endpoints and database configuration parameters; the routes consistently feed the new response converters.
Appwrite/Services/Embeddings.cs Adds text-embedding generation with model selection and list response conversion.
Appwrite/Client.cs Updates SDK headers and response format and adds organization-scoped request configuration.
Appwrite/Appwrite.csproj Bumps the package to 7.0.0 and applies a System.Text.Json patch update.

Fix all with Greploop

Fix All in Claude Code Fix All in Codex

Prompt To Fix All With AI
### Issue 1
Appwrite/Models/DatabaseMigration.cs:108-112
**Nullable lifecycle fields crash conversion**

When a newly created or in-progress migration has null `lastError`, `verifiedAt`, `cutoverAt`, or `soakUntil`, `DatabaseMigration.From` calls `ToString()` on the null value, causing the migration API call to throw instead of returning its current state. The same conversion failure affects successful operation records with null error details in `DedicatedDatabaseOperation.From`.

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.

Reviews (1): Last reviewed commit: "chore: merge main into dev for the relea..." | Re-trigger Greptile

Comment on lines +108 to +112
lastError: map["lastError"].ToString(),
lagDocuments: Convert.ToInt64(map["lagDocuments"]),
verifiedAt: map["verifiedAt"].ToString(),
cutoverAt: map["cutoverAt"].ToString(),
soakUntil: map["soakUntil"].ToString(),

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Nullable lifecycle fields crash conversion

When a newly created or in-progress migration has null lastError, verifiedAt, cutoverAt, or soakUntil, DatabaseMigration.From calls ToString() on the null value, causing the migration API call to throw instead of returning its current state. The same conversion failure affects successful operation records with null error details in DedicatedDatabaseOperation.From.

Prompt To Fix With AI
This is a comment left during a code review.
Path: Appwrite/Models/DatabaseMigration.cs
Line: 108-112

Comment:
**Nullable lifecycle fields crash conversion**

When a newly created or in-progress migration has null `lastError`, `verifiedAt`, `cutoverAt`, or `soakUntil`, `DatabaseMigration.From` calls `ToString()` on the null value, causing the migration API call to throw instead of returning its current state. The same conversion failure affects successful operation records with null error details in `DedicatedDatabaseOperation.From`.

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.

Fix in Claude Code Fix in Codex

@ChiragAgg5k
ChiragAgg5k merged commit 9f55ad7 into main Aug 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.

2 participants