Skip to content

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

Merged
ChiragAgg5k merged 2 commits into
mainfrom
feat-1.9.x-specs
Jun 11, 2026
Merged

feat: API specs update for version 1.9.x#79
ChiragAgg5k merged 2 commits into
mainfrom
feat-1.9.x-specs

Conversation

@appwrite-specs

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

Copy link
Copy Markdown
Contributor

This PR contains API specification updates for version 1.9.x, regenerated through the OpenAPI 3 only pipeline (appwrite/sdk-generator 2.0.0 + appwrite/appwrite#12565).

It also removes the swagger2-1.9.x-* spec files: specs are generated and consumed as OpenAPI 3 only now. Swagger 2 files for older versions (1.8.x and below) are kept as historical artifacts.

@greptile-apps

greptile-apps Bot commented Jun 11, 2026

Copy link
Copy Markdown

Greptile Summary

This bot-generated PR updates the 1.9.x API specs with two main changes: new OAuth2 consent fields (tagline, tags, images, supportUrl, dataDeletionUrl) added to App create/update operations and model schemas across all three spec targets (client, console, server), and removal of the database type field from the console spec's createDatabase operation and database model (with matching terminology changes from "shared/dedicated" to "shared-pool/node pool" and updated default resource sizes).

  • New App fields: tagline, tags, images, supportUrl, and dataDeletionUrl added consistently to create/update request bodies and the App response schema; example files updated to match.
  • Database model update: The type field is removed from createDatabase body and the database model in the console spec; specification default lowered from s-2vcpu-2gb to s-1vcpu-1gb with proportionally reduced CPU (2000→1000 mcores), memory (2048→1024 MB), and storage (25→10 GB) defaults.
  • Swagger2 deletion: All three swagger2 spec files for 1.9.x are entirely removed; every prior version from 0.6.x to 1.8.x ships both OpenAPI3 and swagger2 formats, making this the only version without a swagger2 spec.

Confidence Score: 3/5

The OpenAPI3 changes look correct, but the unexplained deletion of all three swagger2 files breaks a pattern every other version in the repo follows and would immediately impact any consumer relying on swagger2 for 1.9.x.

The new App fields and database model changes in the OpenAPI3 specs are consistent and well-formed. The concern is the complete, unexplained removal of the swagger2 spec files — every version from 0.6.x through 1.8.x ships both OpenAPI3 and swagger2; 1.9.x would be the sole exception. If this is an unintentional bot regression rather than a deliberate deprecation, those files would need to be regenerated before merge.

The three deleted swagger2 files (swagger2-1.9.x-client.json, swagger2-1.9.x-console.json, swagger2-1.9.x-server.json) need explicit confirmation that their removal is intentional before merging.

Important Files Changed

Filename Overview
specs/1.9.x/swagger2-1.9.x-client.json Entire file deleted (19,827 lines); all previous versions from 0.6.x through 1.8.x retain their swagger2 equivalents, making 1.9.x the only version without a swagger2 spec.
specs/1.9.x/swagger2-1.9.x-console.json Entire file deleted (109,155 lines); only console swagger2 spec among all versions to be removed.
specs/1.9.x/swagger2-1.9.x-server.json Entire file deleted (78,560 lines); breaks swagger2 parity pattern present in every prior version.
specs/1.9.x/open-api3-1.9.x-client.json New App fields added (tagline, tags, images, supportUrl, dataDeletionUrl) to create/update request bodies and App model; format: "url" applied to supportUrl/dataDeletionUrl in request bodies but omitted from the App model schema.
specs/1.9.x/open-api3-1.9.x-console.json App fields added; database type field removed from createDatabase request body and model schema; defaults updated (specification, cpu, memory, storage); description wording updated from "shared/dedicated" to "shared-pool/node pool".
specs/1.9.x/open-api3-1.9.x-server.json Same App field additions as client spec; format: "url" on supportUrl/dataDeletionUrl in request bodies but absent from the App model response schema.
examples/1.9.x/console-web/examples/apps/create.md New optional parameters (tagline, tags, images, supportUrl, dataDeletionUrl) added; consistent with the spec changes.
examples/1.9.x/console-web/examples/apps/update.md Same new optional parameters added as in create.md; consistent with spec changes.
examples/1.9.x/console-web/examples/compute/create-database.md Removed the optional type parameter, consistent with its removal from the console spec.

Reviews (2): Last reviewed commit: "(chore): remove swagger 2 specs for 1.9...." | Re-trigger Greptile

Comment on lines +5858 to +5866
"x-example": null,
"items": {
"type": "string"
}
},
"supportUrl": {
"type": "string",
"description": "Application support URL shown to users during OAuth2 consent.",
"default": "",

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 images items missing URL format annotation

supportUrl and dataDeletionUrl both carry "format": "url" to signal that values must be URLs, but the string items inside the images array do not. Since the field is described as "image URLs," the items should declare the same format for consistency with the rest of the schema and to give SDK generators and validators an accurate type hint. The same gap exists in the images field in open-api3-1.9.x-client.json and open-api3-1.9.x-server.json.

Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

Comment on lines +5844 to +5866
},
"tags": {
"type": "array",
"description": "Application tags shown to users during OAuth2 consent. Maximum of 100 tags are allowed, each up to 64 characters long.",
"default": [],
"x-example": null,
"items": {
"type": "string"
}
},
"images": {
"type": "array",
"description": "Application image URLs shown to users during OAuth2 consent. Maximum of 100 images are allowed.",
"default": [],
"x-example": null,
"items": {
"type": "string"
}
},
"supportUrl": {
"type": "string",
"description": "Application support URL shown to users during OAuth2 consent.",
"default": "",

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 x-example: null on tags and images request-body fields

The tags and images array fields in the create/update request bodies use "x-example": null, while the App model schema (the response definition) provides concrete example values (["productivity","automation"] and ["https://example.com/screenshot.png"] respectively). Many SDK generators and documentation renderers surface x-example directly; null suppresses the example entirely in generated docs and client stubs even though meaningful values are available. Using the same concrete examples as the model schema would keep generated SDKs and documentation consistent. The same pattern appears in both the client and server specs.

Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

Specs are generated and consumed as OpenAPI 3 only since
appwrite/sdk-generator 2.0.0 and appwrite/appwrite#12565.
@ChiragAgg5k ChiragAgg5k merged commit 9b9b57c into main Jun 11, 2026
1 of 2 checks passed
@ChiragAgg5k ChiragAgg5k deleted the feat-1.9.x-specs branch June 11, 2026 08:21
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