Skip to content

feat: API specs update for version 1.9.x#76

Open
appwrite-specs[bot] wants to merge 1 commit into
mainfrom
feat-1.9.x-specs
Open

feat: API specs update for version 1.9.x#76
appwrite-specs[bot] wants to merge 1 commit into
mainfrom
feat-1.9.x-specs

Conversation

@appwrite-specs

@appwrite-specs appwrite-specs Bot commented Jun 9, 2026

Copy link
Copy Markdown

This PR contains API specification updates for version 1.9.x.

@greptile-apps

greptile-apps Bot commented Jun 9, 2026

Copy link
Copy Markdown

Greptile Summary

This PR updates the 1.9.x API specs across all six spec files (OpenAPI 3 and Swagger 2, client/server/console) and nineteen example files. The main changes are: OAuth2 app consent metadata fields (description, clientUri, logoUri, privacyPolicyUrl, termsUrl, contacts) added to the app/apps create and update endpoints; a new oauth2GrantApp schema and an app embedded object on oauth2Grant; the ProjectQuery security scheme renamed to ProjectPath with path-location metadata; specification replaced by dedicatedDatabaseId for DB-creation endpoints; and several deprecated service tags (documentsDB, tablesDB, vectorsDB, webhooks, tokens, presences, assistant) removed from all specs.

  • OAuth2 consent metadata: New optional fields for app branding (logo, homepage, privacy/terms URLs, contacts) are added consistently to request bodies and the app response schema across all six spec files.
  • Database API cleanup: specification parameter is replaced by dedicatedDatabaseId across tablesDB, documentsDB, and vectorsDB create endpoints; deprecated compound service names are removed from the service-id enum.
  • Schema reference bug: The new oauth2Grant.app embedded-object property incorrectly uses the items keyword (array-only) instead of a proper $ref or allOf to reference oauth2GrantApp; this affects the client and server specs in both OpenAPI 3 and Swagger 2 variants.

Confidence Score: 4/5

Safe to merge for most of the changes, but the oauth2Grant.app schema reference is structurally incorrect and will cause SDK generators and validators to produce untyped fields for that property.

The app property added to oauth2Grant in all four client/server specs (OpenAPI 3 and Swagger 2) declares "type": "object" but uses "items" to point at the oauth2GrantApp schema. Because items is only defined for array types, tooling that generates SDKs from these specs will silently ignore the $ref and emit an untyped object, losing all type information for the consent app metadata on every OAuth2 grant response. Everything else — the new consent fields, the database parameter rename, the security scheme rename, and the example file updates — looks correct.

specs/1.9.x/open-api3-1.9.x-client.json, open-api3-1.9.x-server.json, swagger2-1.9.x-client.json, and swagger2-1.9.x-server.json — specifically the oauth2Grant.app property definition in each.

Important Files Changed

Filename Overview
specs/1.9.x/open-api3-1.9.x-client.json Adds OAuth2 app consent fields, oauth2GrantApp schema, and ProjectPath security scheme. The oauth2Grant.app property incorrectly uses items (array keyword) on a type:object, breaking schema-driven tooling for that field.
specs/1.9.x/open-api3-1.9.x-server.json Same as client spec — adds OAuth2 consent metadata, renames ProjectQuery→ProjectPath, replaces specification→dedicatedDatabaseId for DB creation. Contains the same items-on-object schema bug in oauth2Grant.app.
specs/1.9.x/swagger2-1.9.x-client.json Swagger 2.0 counterpart of the client spec. Carries the same items-on-object bug in oauth2Grant.app and additionally places both type:object and $ref inside the items object.
specs/1.9.x/swagger2-1.9.x-server.json Swagger 2.0 counterpart of the server spec. Same items-on-object bug in oauth2Grant.app as the other specs.
specs/1.9.x/open-api3-1.9.x-console.json Adds OAuth2 app consent fields, api field for compute DB creation, dedicatedDatabaseId param, and removes deprecated service tags. No schema-reference errors found.
specs/1.9.x/swagger2-1.9.x-console.json Swagger 2.0 console spec with same structural changes as OpenAPI 3 console. No issues found.
examples/1.9.x/console-web/examples/apps/create.md Adds optional OAuth2 consent fields (description, clientUri, logoUri, privacyPolicyUrl, termsUrl, contacts) to the apps.create example.
examples/1.9.x/console-web/examples/tablesdb/create.md Replaces specification with dedicatedDatabaseId in the tablesDB.create example, consistent with spec changes.

Reviews (2): Last reviewed commit: "chore: update API specs and SDK examples" | Re-trigger Greptile

Comment thread specs/1.9.x/open-api3-1.9.x-client.json
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.

0 participants