diff --git a/examples/1.9.x/console-web/examples/apps/create.md b/examples/1.9.x/console-web/examples/apps/create.md index 05f6ad6eb..c59f6fb6d 100644 --- a/examples/1.9.x/console-web/examples/apps/create.md +++ b/examples/1.9.x/console-web/examples/apps/create.md @@ -11,6 +11,12 @@ const result = await apps.create({ appId: '', name: '', redirectUris: [], + description: '', // optional + clientUri: 'https://example.com', // optional + logoUri: 'https://example.com', // optional + privacyPolicyUrl: 'https://example.com', // optional + termsUrl: 'https://example.com', // optional + contacts: [], // optional enabled: false, // optional type: 'public', // optional deviceFlow: false, // optional diff --git a/examples/1.9.x/console-web/examples/apps/update.md b/examples/1.9.x/console-web/examples/apps/update.md index 41c377ead..4d1b12fb6 100644 --- a/examples/1.9.x/console-web/examples/apps/update.md +++ b/examples/1.9.x/console-web/examples/apps/update.md @@ -10,6 +10,12 @@ const apps = new Apps(client); const result = await apps.update({ appId: '', name: '', + description: '', // optional + clientUri: 'https://example.com', // optional + logoUri: 'https://example.com', // optional + privacyPolicyUrl: 'https://example.com', // optional + termsUrl: 'https://example.com', // optional + contacts: [], // optional enabled: false, // optional redirectUris: [], // optional type: 'public', // optional diff --git a/examples/1.9.x/console-web/examples/compute/create-database.md b/examples/1.9.x/console-web/examples/compute/create-database.md index d3738db26..539112a61 100644 --- a/examples/1.9.x/console-web/examples/compute/create-database.md +++ b/examples/1.9.x/console-web/examples/compute/create-database.md @@ -13,7 +13,6 @@ const result = await compute.createDatabase({ database: '', // optional engine: 'postgres', // optional version: '17', // optional - region: 'fra', // optional type: 'shared', // optional specification: '', // optional backend: 'prisma', // optional @@ -22,8 +21,7 @@ const result = await compute.createDatabase({ storage: 1, // optional storageClass: 'ssd', // optional storageMaxGb: 0, // optional - highAvailability: false, // optional - highAvailabilityReplicaCount: 0, // optional + replicas: 0, // optional highAvailabilitySyncMode: 'async', // optional networkMaxConnections: 10, // optional networkIdleTimeoutSeconds: 60, // optional @@ -38,7 +36,8 @@ const result = await compute.createDatabase({ storageAutoscalingThresholdPercent: 50, // optional storageAutoscalingMaxGb: 0, // optional metricsEnabled: false, // optional - poolerEnabled: false // optional + poolerEnabled: false, // optional + api: 'compute' // optional }); console.log(result); diff --git a/examples/1.9.x/console-web/examples/compute/update-database.md b/examples/1.9.x/console-web/examples/compute/update-database.md index e99feeb8f..f773287b9 100644 --- a/examples/1.9.x/console-web/examples/compute/update-database.md +++ b/examples/1.9.x/console-web/examples/compute/update-database.md @@ -16,8 +16,7 @@ const result = await compute.updateDatabase({ memory: 128, // optional storage: 1, // optional storageClass: 'ssd', // optional - highAvailability: false, // optional - highAvailabilityReplicaCount: 0, // optional + replicas: 0, // optional highAvailabilitySyncMode: 'async', // optional networkMaxConnections: 10, // optional networkIdleTimeoutSeconds: 60, // optional diff --git a/examples/1.9.x/console-web/examples/documentsdb/create.md b/examples/1.9.x/console-web/examples/documentsdb/create.md index 5d73221aa..dbe140086 100644 --- a/examples/1.9.x/console-web/examples/documentsdb/create.md +++ b/examples/1.9.x/console-web/examples/documentsdb/create.md @@ -11,7 +11,7 @@ const result = await documentsDB.create({ databaseId: '', name: '', enabled: false, // optional - specification: '' // optional + dedicatedDatabaseId: '' // optional }); console.log(result); diff --git a/examples/1.9.x/console-web/examples/tablesdb/create.md b/examples/1.9.x/console-web/examples/tablesdb/create.md index d64f39634..2f33a89f0 100644 --- a/examples/1.9.x/console-web/examples/tablesdb/create.md +++ b/examples/1.9.x/console-web/examples/tablesdb/create.md @@ -10,7 +10,8 @@ const tablesDB = new TablesDB(client); const result = await tablesDB.create({ databaseId: '', name: '', - enabled: false // optional + enabled: false, // optional + dedicatedDatabaseId: '' // optional }); console.log(result); diff --git a/examples/1.9.x/console-web/examples/vectorsdb/create.md b/examples/1.9.x/console-web/examples/vectorsdb/create.md index 73dd7149c..10d3b15b1 100644 --- a/examples/1.9.x/console-web/examples/vectorsdb/create.md +++ b/examples/1.9.x/console-web/examples/vectorsdb/create.md @@ -11,7 +11,7 @@ const result = await vectorsDB.create({ databaseId: '', name: '', enabled: false, // optional - specification: '' // optional + dedicatedDatabaseId: '' // optional }); console.log(result); diff --git a/examples/1.9.x/server-dart/examples/tablesdb/create.md b/examples/1.9.x/server-dart/examples/tablesdb/create.md index 3c85e98f5..38accc2f5 100644 --- a/examples/1.9.x/server-dart/examples/tablesdb/create.md +++ b/examples/1.9.x/server-dart/examples/tablesdb/create.md @@ -12,5 +12,6 @@ Database result = await tablesDB.create( databaseId: '', name: '', enabled: false, // (optional) + dedicatedDatabaseId: '', // (optional) ); ``` diff --git a/examples/1.9.x/server-dotnet/examples/tablesdb/create.md b/examples/1.9.x/server-dotnet/examples/tablesdb/create.md index d34245c84..07fe6cf5b 100644 --- a/examples/1.9.x/server-dotnet/examples/tablesdb/create.md +++ b/examples/1.9.x/server-dotnet/examples/tablesdb/create.md @@ -13,5 +13,6 @@ TablesDB tablesDB = new TablesDB(client); Database result = await tablesDB.Create( databaseId: "", name: "", - enabled: false // optional + enabled: false, // optional + dedicatedDatabaseId: "" // optional );``` diff --git a/examples/1.9.x/server-go/examples/tablesdb/create.md b/examples/1.9.x/server-go/examples/tablesdb/create.md index c44f118ae..95503cc5b 100644 --- a/examples/1.9.x/server-go/examples/tablesdb/create.md +++ b/examples/1.9.x/server-go/examples/tablesdb/create.md @@ -19,5 +19,6 @@ response, error := service.Create( "", "", tablesdb.WithCreateEnabled(false), + tablesdb.WithCreateDedicatedDatabaseId(""), ) ``` diff --git a/examples/1.9.x/server-graphql/examples/tablesdb/create.md b/examples/1.9.x/server-graphql/examples/tablesdb/create.md index ce124f560..c56893773 100644 --- a/examples/1.9.x/server-graphql/examples/tablesdb/create.md +++ b/examples/1.9.x/server-graphql/examples/tablesdb/create.md @@ -3,7 +3,8 @@ mutation { tablesDBCreate( databaseId: "", name: "", - enabled: false + enabled: false, + dedicatedDatabaseId: "" ) { _id name @@ -44,7 +45,8 @@ mutation { tablesDBCreate( databaseId: "", name: "", - enabled: false + enabled: false, + dedicatedDatabaseId: "" ) { _id name diff --git a/examples/1.9.x/server-kotlin/java/tablesdb/create.md b/examples/1.9.x/server-kotlin/java/tablesdb/create.md index ccd99cc2d..5b9453340 100644 --- a/examples/1.9.x/server-kotlin/java/tablesdb/create.md +++ b/examples/1.9.x/server-kotlin/java/tablesdb/create.md @@ -14,6 +14,7 @@ tablesDB.create( "", // databaseId "", // name false, // enabled (optional) + "", // dedicatedDatabaseId (optional) new CoroutineCallback<>((result, error) -> { if (error != null) { error.printStackTrace(); diff --git a/examples/1.9.x/server-kotlin/kotlin/tablesdb/create.md b/examples/1.9.x/server-kotlin/kotlin/tablesdb/create.md index 622f66e2a..c13173da9 100644 --- a/examples/1.9.x/server-kotlin/kotlin/tablesdb/create.md +++ b/examples/1.9.x/server-kotlin/kotlin/tablesdb/create.md @@ -13,6 +13,7 @@ val tablesDB = TablesDB(client) val response = tablesDB.create( databaseId = "", name = "", - enabled = false // optional + enabled = false, // optional + dedicatedDatabaseId = "" // optional ) ``` diff --git a/examples/1.9.x/server-nodejs/examples/tablesdb/create.md b/examples/1.9.x/server-nodejs/examples/tablesdb/create.md index 0571906c5..cc39ad924 100644 --- a/examples/1.9.x/server-nodejs/examples/tablesdb/create.md +++ b/examples/1.9.x/server-nodejs/examples/tablesdb/create.md @@ -11,6 +11,7 @@ const tablesDB = new sdk.TablesDB(client); const result = await tablesDB.create({ databaseId: '', name: '', - enabled: false // optional + enabled: false, // optional + dedicatedDatabaseId: '' // optional }); ``` diff --git a/examples/1.9.x/server-php/examples/tablesdb/create.md b/examples/1.9.x/server-php/examples/tablesdb/create.md index 2265fc9bb..34d305693 100644 --- a/examples/1.9.x/server-php/examples/tablesdb/create.md +++ b/examples/1.9.x/server-php/examples/tablesdb/create.md @@ -14,5 +14,6 @@ $tablesDB = new TablesDB($client); $result = $tablesDB->create( databaseId: '', name: '', - enabled: false // optional + enabled: false, // optional + dedicatedDatabaseId: '' // optional );``` diff --git a/examples/1.9.x/server-python/examples/tablesdb/create.md b/examples/1.9.x/server-python/examples/tablesdb/create.md index fb6bf0fb4..c50f28e71 100644 --- a/examples/1.9.x/server-python/examples/tablesdb/create.md +++ b/examples/1.9.x/server-python/examples/tablesdb/create.md @@ -13,7 +13,8 @@ tables_db = TablesDB(client) result: Database = tables_db.create( database_id = '', name = '', - enabled = False # optional + enabled = False, # optional + dedicated_database_id = '' # optional ) print(result.model_dump()) diff --git a/examples/1.9.x/server-rest/examples/tablesdb/create.md b/examples/1.9.x/server-rest/examples/tablesdb/create.md index d17fd22e9..1be043d2b 100644 --- a/examples/1.9.x/server-rest/examples/tablesdb/create.md +++ b/examples/1.9.x/server-rest/examples/tablesdb/create.md @@ -9,12 +9,14 @@ X-Appwrite-Project: { "databaseId": "", "name": "", - "enabled": false + "enabled": false, + "dedicatedDatabaseId": "" } { "databaseId": "", "name": "", - "enabled": false + "enabled": false, + "dedicatedDatabaseId": "" } ``` diff --git a/examples/1.9.x/server-ruby/examples/tablesdb/create.md b/examples/1.9.x/server-ruby/examples/tablesdb/create.md index 4eba90afb..fd73173f5 100644 --- a/examples/1.9.x/server-ruby/examples/tablesdb/create.md +++ b/examples/1.9.x/server-ruby/examples/tablesdb/create.md @@ -13,6 +13,7 @@ tables_db = TablesDB.new(client) result = tables_db.create( database_id: '', name: '', - enabled: false # optional + enabled: false, # optional + dedicated_database_id: '' # optional ) ``` diff --git a/examples/1.9.x/server-rust/examples/tablesdb/create.md b/examples/1.9.x/server-rust/examples/tablesdb/create.md index 8a787bac1..ce76bfe0b 100644 --- a/examples/1.9.x/server-rust/examples/tablesdb/create.md +++ b/examples/1.9.x/server-rust/examples/tablesdb/create.md @@ -14,7 +14,8 @@ async fn main() -> Result<(), Box> { let result = tables_db.create( "", "", - Some(false) // optional + Some(false), // optional + Some("") // optional ).await?; let _ = result; diff --git a/examples/1.9.x/server-swift/examples/tablesdb/create.md b/examples/1.9.x/server-swift/examples/tablesdb/create.md index 91fe76a73..8b3e94646 100644 --- a/examples/1.9.x/server-swift/examples/tablesdb/create.md +++ b/examples/1.9.x/server-swift/examples/tablesdb/create.md @@ -11,7 +11,8 @@ let tablesDB = TablesDB(client) let database = try await tablesDB.create( databaseId: "", name: "", - enabled: false // optional + enabled: false, // optional + dedicatedDatabaseId: "" // optional ) ``` diff --git a/specs/1.9.x/open-api3-1.9.x-client.json b/specs/1.9.x/open-api3-1.9.x-client.json index a0bba0dd4..4ba147676 100644 --- a/specs/1.9.x/open-api3-1.9.x-client.json +++ b/specs/1.9.x/open-api3-1.9.x-client.json @@ -4176,6 +4176,49 @@ "description": "Application name.", "x-example": "" }, + "description": { + "type": "string", + "description": "Application description shown to users during OAuth2 consent.", + "default": "", + "x-example": "" + }, + "clientUri": { + "type": "string", + "description": "Application homepage URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "logoUri": { + "type": "string", + "description": "Application logo URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "privacyPolicyUrl": { + "type": "string", + "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "termsUrl": { + "type": "string", + "description": "Application terms of service URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "contacts": { + "type": "array", + "description": "Application support or security contact emails. Maximum of 100 contacts are allowed.", + "default": [], + "x-example": null, + "items": { + "type": "string" + } + }, "redirectUris": { "type": "array", "description": "Redirect URIs (array of valid URLs).", @@ -4355,6 +4398,49 @@ "description": "Application name.", "x-example": "" }, + "description": { + "type": "string", + "description": "Application description shown to users during OAuth2 consent.", + "default": "", + "x-example": "" + }, + "clientUri": { + "type": "string", + "description": "Application homepage URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "logoUri": { + "type": "string", + "description": "Application logo URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "privacyPolicyUrl": { + "type": "string", + "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "termsUrl": { + "type": "string", + "description": "Application terms of service URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "contacts": { + "type": "array", + "description": "Application support or security contact emails. Maximum of 100 contacts are allowed.", + "default": [], + "x-example": null, + "items": { + "type": "string" + } + }, "enabled": { "type": "boolean", "description": "Is application enabled?", @@ -10622,12 +10708,12 @@ "packaging": false, "public": true, "auth": { - "ProjectQuery": [] + "ProjectPath": [] } }, "security": [ { - "ProjectQuery": [], + "ProjectPath": [], "Session": [], "JWT": [] } @@ -10635,7 +10721,7 @@ "parameters": [ { "name": "project_id", - "description": "Project ID in which OAuth2 client that created grant during authorization exists.", + "description": "Project ID in which OAuth2 client exists.", "required": true, "schema": { "type": "string", @@ -10709,12 +10795,12 @@ "packaging": false, "public": true, "auth": { - "ProjectQuery": [] + "ProjectPath": [] } }, "security": [ { - "ProjectQuery": [], + "ProjectPath": [], "Session": [], "JWT": [] } @@ -11043,12 +11129,12 @@ "packaging": false, "public": true, "auth": { - "ProjectQuery": [] + "ProjectPath": [] } }, "security": [ { - "ProjectQuery": [], + "ProjectPath": [], "Session": [], "JWT": [] } @@ -11056,7 +11142,7 @@ "parameters": [ { "name": "project_id", - "description": "Project ID in which OAuth2 client that created grant during authorization exists.", + "description": "Project ID in which OAuth2 client exists.", "required": true, "schema": { "type": "string", @@ -16151,10 +16237,6 @@ "name": "users", "description": "The Users service allows you to manage your project users." }, - { - "name": "presences", - "description": "The Presences service allows you to create, query, and manage realtime presence state." - }, { "name": "sites", "description": "The Sites Service allows you view, create and manage your web applications." @@ -19052,6 +19134,41 @@ "description": "Application name.", "x-example": "My Application" }, + "description": { + "type": "string", + "description": "Application description shown to users during OAuth2 consent.", + "x-example": "Connect your workspace to My Application." + }, + "clientUri": { + "type": "string", + "description": "Application homepage URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com" + }, + "logoUri": { + "type": "string", + "description": "Application logo URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com\/logo.png" + }, + "privacyPolicyUrl": { + "type": "string", + "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com\/privacy" + }, + "termsUrl": { + "type": "string", + "description": "Application terms of service URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com\/terms" + }, + "contacts": { + "type": "array", + "description": "Application support or security contact emails.", + "items": { + "type": "string" + }, + "x-example": [ + "support@example.com" + ] + }, "redirectUris": { "type": "array", "description": "List of authorized redirect URIs. These URIs can be used to redirect users after they authenticate.", @@ -19101,6 +19218,12 @@ "$createdAt", "$updatedAt", "name", + "description", + "clientUri", + "logoUri", + "privacyPolicyUrl", + "termsUrl", + "contacts", "redirectUris", "enabled", "type", @@ -19114,6 +19237,14 @@ "$createdAt": "2020-10-15T06:38:00.000+00:00", "$updatedAt": "2020-10-15T06:38:00.000+00:00", "name": "My Application", + "description": "Connect your workspace to My Application.", + "clientUri": "https:\/\/example.com", + "logoUri": "https:\/\/example.com\/logo.png", + "privacyPolicyUrl": "https:\/\/example.com\/privacy", + "termsUrl": "https:\/\/example.com\/terms", + "contacts": [ + "support@example.com" + ], "redirectUris": [ "https:\/\/example.com\/callback" ], @@ -19495,12 +19626,14 @@ "demo": "" } }, - "ProjectQuery": { + "ProjectPath": { "type": "apiKey", "name": "project", "description": "Your project ID", "in": "query", "x-appwrite": { + "location": "path", + "param": "project_id", "demo": "" } }, diff --git a/specs/1.9.x/open-api3-1.9.x-console.json b/specs/1.9.x/open-api3-1.9.x-console.json index 61c5e36ba..b5d16944b 100644 --- a/specs/1.9.x/open-api3-1.9.x-console.json +++ b/specs/1.9.x/open-api3-1.9.x-console.json @@ -5654,6 +5654,49 @@ "description": "Application name.", "x-example": "" }, + "description": { + "type": "string", + "description": "Application description shown to users during OAuth2 consent.", + "default": "", + "x-example": "" + }, + "clientUri": { + "type": "string", + "description": "Application homepage URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "logoUri": { + "type": "string", + "description": "Application logo URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "privacyPolicyUrl": { + "type": "string", + "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "termsUrl": { + "type": "string", + "description": "Application terms of service URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "contacts": { + "type": "array", + "description": "Application support or security contact emails. Maximum of 100 contacts are allowed.", + "default": [], + "x-example": null, + "items": { + "type": "string" + } + }, "redirectUris": { "type": "array", "description": "Redirect URIs (array of valid URLs).", @@ -5835,6 +5878,49 @@ "description": "Application name.", "x-example": "" }, + "description": { + "type": "string", + "description": "Application description shown to users during OAuth2 consent.", + "default": "", + "x-example": "" + }, + "clientUri": { + "type": "string", + "description": "Application homepage URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "logoUri": { + "type": "string", + "description": "Application logo URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "privacyPolicyUrl": { + "type": "string", + "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "termsUrl": { + "type": "string", + "description": "Application terms of service URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "contacts": { + "type": "array", + "description": "Application support or security contact emails. Maximum of 100 contacts are allowed.", + "default": [], + "x-example": null, + "items": { + "type": "string" + } + }, "enabled": { "type": "boolean", "description": "Is application enabled?", @@ -9257,12 +9343,6 @@ "x-example": "17", "x-nullable": true }, - "region": { - "type": "string", - "description": "Region identifier. Use one of the enabled region codes (e.g., fra, nyc, syd).", - "default": "fra", - "x-example": "fra" - }, "type": { "type": "string", "description": "Database type: shared (serverless) or dedicated (always-on).", @@ -9315,15 +9395,9 @@ "x-example": 0, "format": "int32" }, - "highAvailability": { - "type": "boolean", - "description": "Enable high availability.", - "default": false, - "x-example": false - }, - "highAvailabilityReplicaCount": { + "replicas": { "type": "integer", - "description": "Number of high availability replicas (0-5).", + "description": "Number of high availability replicas (0-5). High availability is enabled when greater than 0.", "default": 0, "x-example": 0, "format": "int32" @@ -9427,6 +9501,12 @@ "description": "Enable connection pooler on provision.", "default": true, "x-example": false + }, + "api": { + "type": "string", + "description": "Product API that owns this database: compute (raw, direct-access), tablesdb, documentsdb, or vectorsdb. tablesdb\/documentsdb\/vectorsdb computes are reached only through their product APIs.", + "default": "compute", + "x-example": "compute" } }, "required": [ @@ -9651,15 +9731,9 @@ "x-example": "ssd", "x-nullable": true }, - "highAvailability": { - "type": "boolean", - "description": "Enable high availability.", - "x-example": false, - "x-nullable": true - }, - "highAvailabilityReplicaCount": { + "replicas": { "type": "integer", - "description": "Number of high availability replicas (0-5).", + "description": "Number of high availability replicas (0-5). High availability is enabled when greater than 0.", "x-example": 0, "format": "int32", "x-nullable": true @@ -9786,7 +9860,7 @@ }, "sqlApiAllowedStatements": { "type": "array", - "description": "Statement types the SQL API accepts. Allowed values: SELECT, INSERT, UPDATE, DELETE.", + "description": "Statement types the SQL API accepts. Allowed values: SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, DROP, TRUNCATE, GRANT, REVOKE.", "x-example": null, "items": { "type": "string" @@ -9826,7 +9900,7 @@ "tags": [ "compute" ], - "description": "Delete a dedicated database. This action is irreversible. The database status will be set to 'deleting' and all resources will be cleaned up.", + "description": "Delete a dedicated database. This action is irreversible. The database status will be set to 'deleting' and all resources will be cleaned up. Deletion is allowed from any state, and repeating the call re-dispatches the cleanup.", "responses": { "204": { "description": "No content" @@ -10024,7 +10098,7 @@ "tags": [ "compute" ], - "description": "List scheduled backup policies for a dedicated database.", + "description": " List scheduled backup policies for a dedicated database.", "responses": { "200": { "description": "Backup policy list", @@ -10094,7 +10168,7 @@ "tags": [ "compute" ], - "description": "Create a scheduled backup policy for a dedicated database.", + "description": " Create a scheduled backup policy for a dedicated database.", "responses": { "201": { "description": "backup", @@ -12151,143 +12225,6 @@ ] } }, - "\/compute\/databases\/{databaseId}\/schema": { - "get": { - "summary": "Get database schema.", - "operationId": "computeGetDatabaseSchema", - "tags": [ - "compute" - ], - "description": "Get the current schema for a dedicated database. Returns collections, fields, data types, constraints, and indexes.", - "responses": { - "200": { - "description": "Schema", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/dedicatedDatabaseSchema" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "method": "getDatabaseSchema", - "group": "databases", - "cookies": false, - "type": "", - "demo": "compute\/get-database-schema.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "databases.read", - "platforms": [ - "console" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [] - } - }, - "security": [ - { - "Project": [] - } - ], - "parameters": [ - { - "name": "databaseId", - "description": "Database ID.", - "required": true, - "schema": { - "type": "string", - "x-example": "" - }, - "in": "path" - } - ] - } - }, - "\/compute\/databases\/{databaseId}\/schema\/preview": { - "post": { - "summary": "Preview a schema change.", - "operationId": "computeCreateDatabaseSchemaPreview", - "tags": [ - "compute" - ], - "description": "Preview a schema change against a dedicated database. Returns the expected impact including affected collections, records, and a dry-run diff of the schema before and after the change.", - "responses": { - "200": { - "description": "SchemaPreview", - "content": { - "application\/json": { - "schema": { - "$ref": "#\/components\/schemas\/dedicatedDatabaseSchemaPreview" - } - } - } - } - }, - "deprecated": false, - "x-appwrite": { - "method": "createDatabaseSchemaPreview", - "group": "databases", - "cookies": false, - "type": "", - "demo": "compute\/create-database-schema-preview.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "databases.write", - "platforms": [ - "console" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [] - } - }, - "security": [ - { - "Project": [] - } - ], - "parameters": [ - { - "name": "databaseId", - "description": "Database ID.", - "required": true, - "schema": { - "type": "string", - "x-example": "" - }, - "in": "path" - } - ], - "requestBody": { - "content": { - "application\/json": { - "schema": { - "type": "object", - "properties": { - "sql": { - "type": "string", - "description": "Schema statement to preview.", - "x-example": "" - } - }, - "required": [ - "sql" - ] - } - } - } - } - } - }, "\/compute\/databases\/{databaseId}\/slow-queries": { "get": { "summary": "List slow queries.", @@ -22701,11 +22638,14 @@ "default": true, "x-example": false }, - "specification": { + "dedicatedDatabaseId": { "type": "string", - "description": "Database specification defining compute resources (CPU, memory). Defaults to the free tier. Must be enabled on the organization plan.", - "default": "free", - "x-example": "" + "description": "Optional dedicated database (compute) ID to attach this database to. Leave empty to create a database on the shared pool.", + "default": "", + "x-example": "", + "x-appwrite": { + "idGenerator": "ID.unique" + } } }, "required": [ @@ -55714,7 +55654,7 @@ "parameters": [ { "name": "serviceId", - "description": "Service name. Can be one of: account, avatars, databases, tablesdb, documentsDB, tablesDB, vectorsDB, locale, health, project, storage, teams, users, vcs, webhooks, tokens, presences, sites, functions, proxy, graphql, migrations, messaging, advisor", + "description": "Service name. Can be one of: account, avatars, databases, tablesdb, locale, health, project, storage, teams, users, vcs, sites, functions, proxy, graphql, migrations, messaging, advisor", "required": true, "schema": { "type": "string", @@ -55724,9 +55664,6 @@ "avatars", "databases", "tablesdb", - "documentsDB", - "tablesDB", - "vectorsDB", "locale", "health", "project", @@ -55734,9 +55671,6 @@ "teams", "users", "vcs", - "webhooks", - "tokens", - "presences", "sites", "functions", "proxy", @@ -63179,6 +63113,15 @@ "description": "Is the database enabled? When set to 'disabled', users cannot access the database but Server SDKs with an API key can still read and write to the database. No data is lost when this is toggled.", "default": true, "x-example": false + }, + "dedicatedDatabaseId": { + "type": "string", + "description": "Optional dedicated database (compute) ID to attach this database to. Leave empty to create a database on the shared pool.", + "default": "", + "x-example": "", + "x-appwrite": { + "idGenerator": "ID.unique" + } } }, "required": [ @@ -77916,11 +77859,14 @@ "default": true, "x-example": false }, - "specification": { + "dedicatedDatabaseId": { "type": "string", - "description": "Database specification defining compute resources (CPU, memory). Defaults to the free tier. Must be enabled on the organization plan.", - "default": "free", - "x-example": "" + "description": "Optional dedicated database (compute) ID to attach this database to. Leave empty to create a database on the shared pool.", + "default": "", + "x-example": "", + "x-appwrite": { + "idGenerator": "ID.unique" + } } }, "required": [ @@ -81437,18 +81383,6 @@ "name": "tablesdb", "description": "The TablesDB service allows you to create structured tables of columns, query and filter lists of rows" }, - { - "name": "documentsDB", - "description": "The DocumentsDB service allows you to create structured collections of documents, query and filter lists of documents." - }, - { - "name": "tablesDB", - "description": "The TablesDB service allows you to create structured tables of columns, query and filter lists of rows." - }, - { - "name": "vectorsDB", - "description": "The VectorsDB service allows you to create vector collections, embeddings, indexes, and documents." - }, { "name": "locale", "description": "The Locale service allows you to customize your app based on your users' location." @@ -81477,18 +81411,6 @@ "name": "users", "description": "The Users service allows you to manage your project users." }, - { - "name": "webhooks", - "description": "The Webhooks service allows you to configure event-driven HTTP callbacks for your project." - }, - { - "name": "tokens", - "description": "The Tokens service allows you to create and manage resource tokens for project resources." - }, - { - "name": "presences", - "description": "The Presences service allows you to create, query, and manage realtime presence state." - }, { "name": "sites", "description": "The Sites Service allows you view, create and manage your web applications." @@ -81509,10 +81431,6 @@ "name": "console", "description": "The Console service allows you to interact with console relevant information." }, - { - "name": "assistant", - "description": "The Assistant service allows Console users to ask assistant queries." - }, { "name": "organization", "description": "The Organization service allows you to manage organization-level projects." @@ -92718,9 +92636,6 @@ "avatars", "databases", "tablesdb", - "documentsDB", - "tablesDB", - "vectorsDB", "locale", "health", "project", @@ -92728,9 +92643,6 @@ "teams", "users", "vcs", - "webhooks", - "tokens", - "presences", "sites", "functions", "proxy", @@ -102891,11 +102803,6 @@ "description": "Product API that owns this database: compute, documentsdb, or vectorsdb.", "x-example": "compute" }, - "region": { - "type": "string", - "description": "Region identifier (e.g., fra, nyc, syd).", - "x-example": "fra" - }, "engine": { "type": "string", "description": "Database engine: postgres, mysql, mariadb, or mongodb.", @@ -103002,14 +102909,9 @@ "description": "Kubernetes node pool where the database is scheduled.", "x-example": "db-pool-4vcpu-8gb" }, - "highAvailability": { - "type": "boolean", - "description": "Whether high availability is enabled.", - "x-example": true - }, - "highAvailabilityReplicaCount": { + "replicas": { "type": "integer", - "description": "Number of high availability replicas.", + "description": "Number of high availability replicas. High availability is enabled when greater than 0.", "x-example": 2, "format": "int32" }, @@ -103108,7 +103010,7 @@ }, "sqlApiAllowedStatements": { "type": "array", - "description": "Statement types accepted by the SQL API. Allowed values: SELECT, INSERT, UPDATE, DELETE.", + "description": "Statement types accepted by the SQL API. Defaults to DML only; DDL\/DCL types (CREATE, ALTER, DROP, TRUNCATE, GRANT, REVOKE) are opt-in per database. Allowed values: SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, DROP, TRUNCATE, GRANT, REVOKE.", "items": { "type": "string" }, @@ -103146,7 +103048,6 @@ "name", "type", "api", - "region", "engine", "version", "specification", @@ -103167,8 +103068,7 @@ "storageClass", "storageMaxGb", "nodePool", - "highAvailability", - "highAvailabilityReplicaCount", + "replicas", "highAvailabilitySyncMode", "networkMaxConnections", "networkIdleTimeoutSeconds", @@ -103199,7 +103099,6 @@ "name": "My Production Database", "type": "dedicated", "api": "compute", - "region": "fra", "engine": "postgres", "version": "16", "specification": "s-2vcpu-2gb", @@ -103220,8 +103119,7 @@ "storageClass": "ssd", "storageMaxGb": 100, "nodePool": "db-pool-4vcpu-8gb", - "highAvailability": true, - "highAvailabilityReplicaCount": 2, + "replicas": 2, "highAvailabilitySyncMode": "async", "networkMaxConnections": 500, "networkIdleTimeoutSeconds": 900, @@ -106031,76 +105929,6 @@ "roles": "developer" } }, - "dedicatedDatabaseSchema": { - "description": "Schema", - "type": "object", - "properties": { - "tables": { - "type": "array", - "description": "List of tables with columns, types, and constraints.", - "items": { - "$ref": "#\/components\/schemas\/any" - }, - "x-example": [] - }, - "indexes": { - "type": "array", - "description": "List of indexes across all tables.", - "items": { - "$ref": "#\/components\/schemas\/any" - }, - "x-example": [] - } - }, - "required": [ - "tables", - "indexes" - ], - "example": { - "tables": [], - "indexes": [] - } - }, - "dedicatedDatabaseSchemaPreview": { - "description": "SchemaPreview", - "type": "object", - "properties": { - "supportsTransactionalDDL": { - "type": "boolean", - "description": "Whether the engine supports transactional DDL for safe preview.", - "x-example": true - }, - "preview": { - "type": "string", - "description": "Schema change preview output.", - "x-example": "ALTER TABLE users ADD COLUMN age INTEGER" - }, - "tables": { - "type": "array", - "description": "List of tables in the database after the change.", - "items": { - "type": "string" - }, - "x-example": [ - "users", - "orders" - ] - } - }, - "required": [ - "supportsTransactionalDDL", - "preview", - "tables" - ], - "example": { - "supportsTransactionalDDL": true, - "preview": "ALTER TABLE users ADD COLUMN age INTEGER", - "tables": [ - "users", - "orders" - ] - } - }, "dedicatedDatabaseSlowQuery": { "description": "SlowQuery", "type": "object", @@ -106246,13 +106074,12 @@ "format": "int32" }, "pricing": { - "allOf": [ - { - "$ref": "#\/components\/schemas\/dedicatedDatabaseSpecificationPricing" - } - ], + "type": "object", "description": "Overage and add-on pricing shared across all specifications.", - "x-example": null + "x-example": null, + "items": { + "$ref": "#\/components\/schemas\/dedicatedDatabaseSpecificationPricing" + } } }, "required": [ @@ -107233,6 +107060,41 @@ "description": "Application name.", "x-example": "My Application" }, + "description": { + "type": "string", + "description": "Application description shown to users during OAuth2 consent.", + "x-example": "Connect your workspace to My Application." + }, + "clientUri": { + "type": "string", + "description": "Application homepage URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com" + }, + "logoUri": { + "type": "string", + "description": "Application logo URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com\/logo.png" + }, + "privacyPolicyUrl": { + "type": "string", + "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com\/privacy" + }, + "termsUrl": { + "type": "string", + "description": "Application terms of service URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com\/terms" + }, + "contacts": { + "type": "array", + "description": "Application support or security contact emails.", + "items": { + "type": "string" + }, + "x-example": [ + "support@example.com" + ] + }, "redirectUris": { "type": "array", "description": "List of authorized redirect URIs. These URIs can be used to redirect users after they authenticate.", @@ -107282,6 +107144,12 @@ "$createdAt", "$updatedAt", "name", + "description", + "clientUri", + "logoUri", + "privacyPolicyUrl", + "termsUrl", + "contacts", "redirectUris", "enabled", "type", @@ -107295,6 +107163,14 @@ "$createdAt": "2020-10-15T06:38:00.000+00:00", "$updatedAt": "2020-10-15T06:38:00.000+00:00", "name": "My Application", + "description": "Connect your workspace to My Application.", + "clientUri": "https:\/\/example.com", + "logoUri": "https:\/\/example.com\/logo.png", + "privacyPolicyUrl": "https:\/\/example.com\/privacy", + "termsUrl": "https:\/\/example.com\/terms", + "contacts": [ + "support@example.com" + ], "redirectUris": [ "https:\/\/example.com\/callback" ], @@ -108107,12 +107983,14 @@ "demo": "" } }, - "ProjectQuery": { + "ProjectPath": { "type": "apiKey", "name": "project", "description": "Your project ID", "in": "query", "x-appwrite": { + "location": "path", + "param": "project_id", "demo": "" } }, diff --git a/specs/1.9.x/open-api3-1.9.x-server.json b/specs/1.9.x/open-api3-1.9.x-server.json index f589b3f63..39c5d294c 100644 --- a/specs/1.9.x/open-api3-1.9.x-server.json +++ b/specs/1.9.x/open-api3-1.9.x-server.json @@ -4013,6 +4013,49 @@ "description": "Application name.", "x-example": "" }, + "description": { + "type": "string", + "description": "Application description shown to users during OAuth2 consent.", + "default": "", + "x-example": "" + }, + "clientUri": { + "type": "string", + "description": "Application homepage URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "logoUri": { + "type": "string", + "description": "Application logo URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "privacyPolicyUrl": { + "type": "string", + "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "termsUrl": { + "type": "string", + "description": "Application terms of service URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "contacts": { + "type": "array", + "description": "Application support or security contact emails. Maximum of 100 contacts are allowed.", + "default": [], + "x-example": null, + "items": { + "type": "string" + } + }, "redirectUris": { "type": "array", "description": "Redirect URIs (array of valid URLs).", @@ -4196,6 +4239,49 @@ "description": "Application name.", "x-example": "" }, + "description": { + "type": "string", + "description": "Application description shown to users during OAuth2 consent.", + "default": "", + "x-example": "" + }, + "clientUri": { + "type": "string", + "description": "Application homepage URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "logoUri": { + "type": "string", + "description": "Application logo URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "privacyPolicyUrl": { + "type": "string", + "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "termsUrl": { + "type": "string", + "description": "Application terms of service URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "contacts": { + "type": "array", + "description": "Application support or security contact emails. Maximum of 100 contacts are allowed.", + "default": [], + "x-example": null, + "items": { + "type": "string" + } + }, "enabled": { "type": "boolean", "description": "Is application enabled?", @@ -15672,11 +15758,14 @@ "default": true, "x-example": false }, - "specification": { + "dedicatedDatabaseId": { "type": "string", - "description": "Database specification defining compute resources (CPU, memory). Defaults to the free tier. Must be enabled on the organization plan.", - "default": "free", - "x-example": "" + "description": "Optional dedicated database (compute) ID to attach this database to. Leave empty to create a database on the shared pool.", + "default": "", + "x-example": "", + "x-appwrite": { + "idGenerator": "ID.unique" + } } }, "required": [ @@ -29616,13 +29705,13 @@ "packaging": false, "public": true, "auth": { - "ProjectQuery": [], + "ProjectPath": [], "Session": [] } }, "security": [ { - "ProjectQuery": [], + "ProjectPath": [], "Session": [], "JWT": [] } @@ -29630,7 +29719,7 @@ "parameters": [ { "name": "project_id", - "description": "Project ID in which OAuth2 client that created grant during authorization exists.", + "description": "Project ID in which OAuth2 client exists.", "required": true, "schema": { "type": "string", @@ -29704,13 +29793,13 @@ "packaging": false, "public": true, "auth": { - "ProjectQuery": [], + "ProjectPath": [], "Session": [] } }, "security": [ { - "ProjectQuery": [], + "ProjectPath": [], "Session": [], "JWT": [] } @@ -30042,13 +30131,13 @@ "packaging": false, "public": true, "auth": { - "ProjectQuery": [], + "ProjectPath": [], "Session": [] } }, "security": [ { - "ProjectQuery": [], + "ProjectPath": [], "Session": [], "JWT": [] } @@ -30056,7 +30145,7 @@ "parameters": [ { "name": "project_id", - "description": "Project ID in which OAuth2 client that created grant during authorization exists.", + "description": "Project ID in which OAuth2 client exists.", "required": true, "schema": { "type": "string", @@ -39058,7 +39147,7 @@ "parameters": [ { "name": "serviceId", - "description": "Service name. Can be one of: account, avatars, databases, tablesdb, documentsDB, tablesDB, vectorsDB, locale, health, project, storage, teams, users, vcs, webhooks, tokens, presences, sites, functions, proxy, graphql, migrations, messaging, advisor", + "description": "Service name. Can be one of: account, avatars, databases, tablesdb, locale, health, project, storage, teams, users, vcs, sites, functions, proxy, graphql, migrations, messaging, advisor", "required": true, "schema": { "type": "string", @@ -39068,9 +39157,6 @@ "avatars", "databases", "tablesdb", - "documentsDB", - "tablesDB", - "vectorsDB", "locale", "health", "project", @@ -39078,9 +39164,6 @@ "teams", "users", "vcs", - "webhooks", - "tokens", - "presences", "sites", "functions", "proxy", @@ -45154,6 +45237,15 @@ "description": "Is the database enabled? When set to 'disabled', users cannot access the database but Server SDKs with an API key can still read and write to the database. No data is lost when this is toggled.", "default": true, "x-example": false + }, + "dedicatedDatabaseId": { + "type": "string", + "description": "Optional dedicated database (compute) ID to attach this database to. Leave empty to create a database on the shared pool.", + "default": "", + "x-example": "", + "x-appwrite": { + "idGenerator": "ID.unique" + } } }, "required": [ @@ -58563,11 +58655,14 @@ "default": true, "x-example": false }, - "specification": { + "dedicatedDatabaseId": { "type": "string", - "description": "Database specification defining compute resources (CPU, memory). Defaults to the free tier. Must be enabled on the organization plan.", - "default": "free", - "x-example": "" + "description": "Optional dedicated database (compute) ID to attach this database to. Leave empty to create a database on the shared pool.", + "default": "", + "x-example": "", + "x-appwrite": { + "idGenerator": "ID.unique" + } } }, "required": [ @@ -61828,18 +61923,6 @@ "name": "tablesdb", "description": "The TablesDB service allows you to create structured tables of columns, query and filter lists of rows" }, - { - "name": "documentsDB", - "description": "The DocumentsDB service allows you to create structured collections of documents, query and filter lists of documents." - }, - { - "name": "tablesDB", - "description": "The TablesDB service allows you to create structured tables of columns, query and filter lists of rows." - }, - { - "name": "vectorsDB", - "description": "The VectorsDB service allows you to create vector collections, embeddings, indexes, and documents." - }, { "name": "locale", "description": "The Locale service allows you to customize your app based on your users' location." @@ -61868,18 +61951,6 @@ "name": "users", "description": "The Users service allows you to manage your project users." }, - { - "name": "webhooks", - "description": "The Webhooks service allows you to configure event-driven HTTP callbacks for your project." - }, - { - "name": "tokens", - "description": "The Tokens service allows you to create and manage resource tokens for project resources." - }, - { - "name": "presences", - "description": "The Presences service allows you to create, query, and manage realtime presence state." - }, { "name": "sites", "description": "The Sites Service allows you view, create and manage your web applications." @@ -71529,9 +71600,6 @@ "avatars", "databases", "tablesdb", - "documentsDB", - "tablesDB", - "vectorsDB", "locale", "health", "project", @@ -71539,9 +71607,6 @@ "teams", "users", "vcs", - "webhooks", - "tokens", - "presences", "sites", "functions", "proxy", @@ -76886,6 +76951,41 @@ "description": "Application name.", "x-example": "My Application" }, + "description": { + "type": "string", + "description": "Application description shown to users during OAuth2 consent.", + "x-example": "Connect your workspace to My Application." + }, + "clientUri": { + "type": "string", + "description": "Application homepage URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com" + }, + "logoUri": { + "type": "string", + "description": "Application logo URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com\/logo.png" + }, + "privacyPolicyUrl": { + "type": "string", + "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com\/privacy" + }, + "termsUrl": { + "type": "string", + "description": "Application terms of service URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com\/terms" + }, + "contacts": { + "type": "array", + "description": "Application support or security contact emails.", + "items": { + "type": "string" + }, + "x-example": [ + "support@example.com" + ] + }, "redirectUris": { "type": "array", "description": "List of authorized redirect URIs. These URIs can be used to redirect users after they authenticate.", @@ -76935,6 +77035,12 @@ "$createdAt", "$updatedAt", "name", + "description", + "clientUri", + "logoUri", + "privacyPolicyUrl", + "termsUrl", + "contacts", "redirectUris", "enabled", "type", @@ -76948,6 +77054,14 @@ "$createdAt": "2020-10-15T06:38:00.000+00:00", "$updatedAt": "2020-10-15T06:38:00.000+00:00", "name": "My Application", + "description": "Connect your workspace to My Application.", + "clientUri": "https:\/\/example.com", + "logoUri": "https:\/\/example.com\/logo.png", + "privacyPolicyUrl": "https:\/\/example.com\/privacy", + "termsUrl": "https:\/\/example.com\/terms", + "contacts": [ + "support@example.com" + ], "redirectUris": [ "https:\/\/example.com\/callback" ], @@ -77497,12 +77611,14 @@ "demo": "" } }, - "ProjectQuery": { + "ProjectPath": { "type": "apiKey", "name": "project", "description": "Your project ID", "in": "query", "x-appwrite": { + "location": "path", + "param": "project_id", "demo": "" } }, diff --git a/specs/1.9.x/swagger2-1.9.x-client.json b/specs/1.9.x/swagger2-1.9.x-client.json index 1c5f702b6..57fbda56b 100644 --- a/specs/1.9.x/swagger2-1.9.x-client.json +++ b/specs/1.9.x/swagger2-1.9.x-client.json @@ -38,12 +38,14 @@ "demo": "" } }, - "ProjectQuery": { + "ProjectPath": { "type": "apiKey", "name": "project", "description": "Your project ID", "in": "query", "x-appwrite": { + "location": "path", + "param": "project_id", "demo": "" } }, @@ -4401,6 +4403,49 @@ "description": "Application name.", "x-example": "" }, + "description": { + "type": "string", + "description": "Application description shown to users during OAuth2 consent.", + "default": "", + "x-example": "" + }, + "clientUri": { + "type": "string", + "description": "Application homepage URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "logoUri": { + "type": "string", + "description": "Application logo URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "privacyPolicyUrl": { + "type": "string", + "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "termsUrl": { + "type": "string", + "description": "Application terms of service URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "contacts": { + "type": "array", + "description": "Application support or security contact emails. Maximum of 100 contacts are allowed.", + "default": [], + "x-example": null, + "items": { + "type": "string" + } + }, "redirectUris": { "type": "array", "description": "Redirect URIs (array of valid URLs).", @@ -4574,6 +4619,49 @@ "description": "Application name.", "x-example": "" }, + "description": { + "type": "string", + "description": "Application description shown to users during OAuth2 consent.", + "default": "", + "x-example": "" + }, + "clientUri": { + "type": "string", + "description": "Application homepage URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "logoUri": { + "type": "string", + "description": "Application logo URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "privacyPolicyUrl": { + "type": "string", + "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "termsUrl": { + "type": "string", + "description": "Application terms of service URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "contacts": { + "type": "array", + "description": "Application support or security contact emails. Maximum of 100 contacts are allowed.", + "default": [], + "x-example": null, + "items": { + "type": "string" + } + }, "enabled": { "type": "boolean", "description": "Is application enabled?", @@ -11130,12 +11218,12 @@ "packaging": false, "public": true, "auth": { - "ProjectQuery": [] + "ProjectPath": [] } }, "security": [ { - "ProjectQuery": [], + "ProjectPath": [], "Session": [], "JWT": [] } @@ -11143,7 +11231,7 @@ "parameters": [ { "name": "project_id", - "description": "Project ID in which OAuth2 client that created grant during authorization exists.", + "description": "Project ID in which OAuth2 client exists.", "required": true, "type": "string", "x-example": "", @@ -11213,12 +11301,12 @@ "packaging": false, "public": true, "auth": { - "ProjectQuery": [] + "ProjectPath": [] } }, "security": [ { - "ProjectQuery": [], + "ProjectPath": [], "Session": [], "JWT": [] } @@ -11518,12 +11606,12 @@ "packaging": false, "public": true, "auth": { - "ProjectQuery": [] + "ProjectPath": [] } }, "security": [ { - "ProjectQuery": [], + "ProjectPath": [], "Session": [], "JWT": [] } @@ -11531,7 +11619,7 @@ "parameters": [ { "name": "project_id", - "description": "Project ID in which OAuth2 client that created grant during authorization exists.", + "description": "Project ID in which OAuth2 client exists.", "required": true, "type": "string", "x-example": "", @@ -16414,10 +16502,6 @@ "name": "users", "description": "The Users service allows you to manage your project users." }, - { - "name": "presences", - "description": "The Presences service allows you to create, query, and manage realtime presence state." - }, { "name": "sites", "description": "The Sites Service allows you view, create and manage your web applications." @@ -19299,6 +19383,41 @@ "description": "Application name.", "x-example": "My Application" }, + "description": { + "type": "string", + "description": "Application description shown to users during OAuth2 consent.", + "x-example": "Connect your workspace to My Application." + }, + "clientUri": { + "type": "string", + "description": "Application homepage URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com" + }, + "logoUri": { + "type": "string", + "description": "Application logo URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com\/logo.png" + }, + "privacyPolicyUrl": { + "type": "string", + "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com\/privacy" + }, + "termsUrl": { + "type": "string", + "description": "Application terms of service URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com\/terms" + }, + "contacts": { + "type": "array", + "description": "Application support or security contact emails.", + "items": { + "type": "string" + }, + "x-example": [ + "support@example.com" + ] + }, "redirectUris": { "type": "array", "description": "List of authorized redirect URIs. These URIs can be used to redirect users after they authenticate.", @@ -19349,6 +19468,12 @@ "$createdAt", "$updatedAt", "name", + "description", + "clientUri", + "logoUri", + "privacyPolicyUrl", + "termsUrl", + "contacts", "redirectUris", "enabled", "type", @@ -19362,6 +19487,14 @@ "$createdAt": "2020-10-15T06:38:00.000+00:00", "$updatedAt": "2020-10-15T06:38:00.000+00:00", "name": "My Application", + "description": "Connect your workspace to My Application.", + "clientUri": "https:\/\/example.com", + "logoUri": "https:\/\/example.com\/logo.png", + "privacyPolicyUrl": "https:\/\/example.com\/privacy", + "termsUrl": "https:\/\/example.com\/terms", + "contacts": [ + "support@example.com" + ], "redirectUris": [ "https:\/\/example.com\/callback" ], diff --git a/specs/1.9.x/swagger2-1.9.x-console.json b/specs/1.9.x/swagger2-1.9.x-console.json index e838d8687..b525d8fb8 100644 --- a/specs/1.9.x/swagger2-1.9.x-console.json +++ b/specs/1.9.x/swagger2-1.9.x-console.json @@ -38,12 +38,14 @@ "demo": "" } }, - "ProjectQuery": { + "ProjectPath": { "type": "apiKey", "name": "project", "description": "Your project ID", "in": "query", "x-appwrite": { + "location": "path", + "param": "project_id", "demo": "" } }, @@ -5910,6 +5912,49 @@ "description": "Application name.", "x-example": "" }, + "description": { + "type": "string", + "description": "Application description shown to users during OAuth2 consent.", + "default": "", + "x-example": "" + }, + "clientUri": { + "type": "string", + "description": "Application homepage URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "logoUri": { + "type": "string", + "description": "Application logo URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "privacyPolicyUrl": { + "type": "string", + "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "termsUrl": { + "type": "string", + "description": "Application terms of service URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "contacts": { + "type": "array", + "description": "Application support or security contact emails. Maximum of 100 contacts are allowed.", + "default": [], + "x-example": null, + "items": { + "type": "string" + } + }, "redirectUris": { "type": "array", "description": "Redirect URIs (array of valid URLs).", @@ -6085,6 +6130,49 @@ "description": "Application name.", "x-example": "" }, + "description": { + "type": "string", + "description": "Application description shown to users during OAuth2 consent.", + "default": "", + "x-example": "" + }, + "clientUri": { + "type": "string", + "description": "Application homepage URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "logoUri": { + "type": "string", + "description": "Application logo URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "privacyPolicyUrl": { + "type": "string", + "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "termsUrl": { + "type": "string", + "description": "Application terms of service URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "contacts": { + "type": "array", + "description": "Application support or security contact emails. Maximum of 100 contacts are allowed.", + "default": [], + "x-example": null, + "items": { + "type": "string" + } + }, "enabled": { "type": "boolean", "description": "Is application enabled?", @@ -9947,12 +10035,6 @@ "x-example": "17", "x-nullable": true }, - "region": { - "type": "string", - "description": "Region identifier. Use one of the enabled region codes (e.g., fra, nyc, syd).", - "default": "fra", - "x-example": "fra" - }, "type": { "type": "string", "description": "Database type: shared (serverless) or dedicated (always-on).", @@ -10005,15 +10087,9 @@ "x-example": 0, "format": "int32" }, - "highAvailability": { - "type": "boolean", - "description": "Enable high availability.", - "default": false, - "x-example": false - }, - "highAvailabilityReplicaCount": { + "replicas": { "type": "integer", - "description": "Number of high availability replicas (0-5).", + "description": "Number of high availability replicas (0-5). High availability is enabled when greater than 0.", "default": 0, "x-example": 0, "format": "int32" @@ -10117,6 +10193,12 @@ "description": "Enable connection pooler on provision.", "default": true, "x-example": false + }, + "api": { + "type": "string", + "description": "Product API that owns this database: compute (raw, direct-access), tablesdb, documentsdb, or vectorsdb. tablesdb\/documentsdb\/vectorsdb computes are reached only through their product APIs.", + "default": "compute", + "x-example": "compute" } }, "required": [ @@ -10337,15 +10419,9 @@ "x-example": "ssd", "x-nullable": true }, - "highAvailability": { - "type": "boolean", - "description": "Enable high availability.", - "x-example": false, - "x-nullable": true - }, - "highAvailabilityReplicaCount": { + "replicas": { "type": "integer", - "description": "Number of high availability replicas (0-5).", + "description": "Number of high availability replicas (0-5). High availability is enabled when greater than 0.", "x-example": 0, "format": "int32", "x-nullable": true @@ -10472,7 +10548,7 @@ }, "sqlApiAllowedStatements": { "type": "array", - "description": "Statement types the SQL API accepts. Allowed values: SELECT, INSERT, UPDATE, DELETE.", + "description": "Statement types the SQL API accepts. Allowed values: SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, DROP, TRUNCATE, GRANT, REVOKE.", "x-example": null, "x-nullable": true, "items": { @@ -10517,7 +10593,7 @@ "tags": [ "compute" ], - "description": "Delete a dedicated database. This action is irreversible. The database status will be set to 'deleting' and all resources will be cleaned up.", + "description": "Delete a dedicated database. This action is irreversible. The database status will be set to 'deleting' and all resources will be cleaned up. Deletion is allowed from any state, and repeating the call re-dispatches the cleanup.", "responses": { "204": { "description": "No content" @@ -12777,139 +12853,6 @@ ] } }, - "\/compute\/databases\/{databaseId}\/schema": { - "get": { - "summary": "Get database schema.", - "operationId": "computeGetDatabaseSchema", - "consumes": [], - "produces": [ - "application\/json" - ], - "tags": [ - "compute" - ], - "description": "Get the current schema for a dedicated database. Returns collections, fields, data types, constraints, and indexes.", - "responses": { - "200": { - "description": "Schema", - "schema": { - "$ref": "#\/definitions\/dedicatedDatabaseSchema" - } - } - }, - "deprecated": false, - "x-appwrite": { - "method": "getDatabaseSchema", - "group": "databases", - "cookies": false, - "type": "", - "demo": "compute\/get-database-schema.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "databases.read", - "platforms": [ - "console" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [] - } - }, - "security": [ - { - "Project": [] - } - ], - "parameters": [ - { - "name": "databaseId", - "description": "Database ID.", - "required": true, - "type": "string", - "x-example": "", - "in": "path" - } - ] - } - }, - "\/compute\/databases\/{databaseId}\/schema\/preview": { - "post": { - "summary": "Preview a schema change.", - "operationId": "computeCreateDatabaseSchemaPreview", - "consumes": [ - "application\/json" - ], - "produces": [ - "application\/json" - ], - "tags": [ - "compute" - ], - "description": "Preview a schema change against a dedicated database. Returns the expected impact including affected collections, records, and a dry-run diff of the schema before and after the change.", - "responses": { - "200": { - "description": "SchemaPreview", - "schema": { - "$ref": "#\/definitions\/dedicatedDatabaseSchemaPreview" - } - } - }, - "deprecated": false, - "x-appwrite": { - "method": "createDatabaseSchemaPreview", - "group": "databases", - "cookies": false, - "type": "", - "demo": "compute\/create-database-schema-preview.md", - "rate-limit": 0, - "rate-time": 3600, - "rate-key": "url:{url},ip:{ip}", - "scope": "databases.write", - "platforms": [ - "console" - ], - "packaging": false, - "public": true, - "auth": { - "Project": [] - } - }, - "security": [ - { - "Project": [] - } - ], - "parameters": [ - { - "name": "databaseId", - "description": "Database ID.", - "required": true, - "type": "string", - "x-example": "", - "in": "path" - }, - { - "name": "payload", - "in": "body", - "schema": { - "type": "object", - "properties": { - "sql": { - "type": "string", - "description": "Schema statement to preview.", - "x-example": "" - } - }, - "required": [ - "sql" - ] - } - } - ] - } - }, "\/compute\/databases\/{databaseId}\/slow-queries": { "get": { "summary": "List slow queries.", @@ -23060,11 +23003,14 @@ "default": true, "x-example": false }, - "specification": { + "dedicatedDatabaseId": { "type": "string", - "description": "Database specification defining compute resources (CPU, memory). Defaults to the free tier. Must be enabled on the organization plan.", - "default": "free", - "x-example": "" + "description": "Optional dedicated database (compute) ID to attach this database to. Leave empty to create a database on the shared pool.", + "default": "", + "x-example": "", + "x-appwrite": { + "idGenerator": "ID.unique" + } } }, "required": [ @@ -56873,7 +56819,7 @@ "parameters": [ { "name": "serviceId", - "description": "Service name. Can be one of: account, avatars, databases, tablesdb, documentsDB, tablesDB, vectorsDB, locale, health, project, storage, teams, users, vcs, webhooks, tokens, presences, sites, functions, proxy, graphql, migrations, messaging, advisor", + "description": "Service name. Can be one of: account, avatars, databases, tablesdb, locale, health, project, storage, teams, users, vcs, sites, functions, proxy, graphql, migrations, messaging, advisor", "required": true, "type": "string", "x-example": "account", @@ -56882,9 +56828,6 @@ "avatars", "databases", "tablesdb", - "documentsDB", - "tablesDB", - "vectorsDB", "locale", "health", "project", @@ -56892,9 +56835,6 @@ "teams", "users", "vcs", - "webhooks", - "tokens", - "presences", "sites", "functions", "proxy", @@ -56909,9 +56849,6 @@ "avatars", "databases", "tablesdb", - "documentsDB", - "tablesDB", - "vectorsDB", "locale", "health", "project", @@ -56919,9 +56856,6 @@ "teams", "users", "vcs", - "webhooks", - "tokens", - "presences", "sites", "functions", "proxy", @@ -64800,6 +64734,15 @@ "description": "Is the database enabled? When set to 'disabled', users cannot access the database but Server SDKs with an API key can still read and write to the database. No data is lost when this is toggled.", "default": true, "x-example": false + }, + "dedicatedDatabaseId": { + "type": "string", + "description": "Optional dedicated database (compute) ID to attach this database to. Leave empty to create a database on the shared pool.", + "default": "", + "x-example": "", + "x-appwrite": { + "idGenerator": "ID.unique" + } } }, "required": [ @@ -79060,11 +79003,14 @@ "default": true, "x-example": false }, - "specification": { + "dedicatedDatabaseId": { "type": "string", - "description": "Database specification defining compute resources (CPU, memory). Defaults to the free tier. Must be enabled on the organization plan.", - "default": "free", - "x-example": "" + "description": "Optional dedicated database (compute) ID to attach this database to. Leave empty to create a database on the shared pool.", + "default": "", + "x-example": "", + "x-appwrite": { + "idGenerator": "ID.unique" + } } }, "required": [ @@ -82477,18 +82423,6 @@ "name": "tablesdb", "description": "The TablesDB service allows you to create structured tables of columns, query and filter lists of rows" }, - { - "name": "documentsDB", - "description": "The DocumentsDB service allows you to create structured collections of documents, query and filter lists of documents." - }, - { - "name": "tablesDB", - "description": "The TablesDB service allows you to create structured tables of columns, query and filter lists of rows." - }, - { - "name": "vectorsDB", - "description": "The VectorsDB service allows you to create vector collections, embeddings, indexes, and documents." - }, { "name": "locale", "description": "The Locale service allows you to customize your app based on your users' location." @@ -82517,18 +82451,6 @@ "name": "users", "description": "The Users service allows you to manage your project users." }, - { - "name": "webhooks", - "description": "The Webhooks service allows you to configure event-driven HTTP callbacks for your project." - }, - { - "name": "tokens", - "description": "The Tokens service allows you to create and manage resource tokens for project resources." - }, - { - "name": "presences", - "description": "The Presences service allows you to create, query, and manage realtime presence state." - }, { "name": "sites", "description": "The Sites Service allows you view, create and manage your web applications." @@ -82549,10 +82471,6 @@ "name": "console", "description": "The Console service allows you to interact with console relevant information." }, - { - "name": "assistant", - "description": "The Assistant service allows Console users to ask assistant queries." - }, { "name": "organization", "description": "The Organization service allows you to manage organization-level projects." @@ -93818,9 +93736,6 @@ "avatars", "databases", "tablesdb", - "documentsDB", - "tablesDB", - "vectorsDB", "locale", "health", "project", @@ -93828,9 +93743,6 @@ "teams", "users", "vcs", - "webhooks", - "tokens", - "presences", "sites", "functions", "proxy", @@ -104135,11 +104047,6 @@ "description": "Product API that owns this database: compute, documentsdb, or vectorsdb.", "x-example": "compute" }, - "region": { - "type": "string", - "description": "Region identifier (e.g., fra, nyc, syd).", - "x-example": "fra" - }, "engine": { "type": "string", "description": "Database engine: postgres, mysql, mariadb, or mongodb.", @@ -104246,14 +104153,9 @@ "description": "Kubernetes node pool where the database is scheduled.", "x-example": "db-pool-4vcpu-8gb" }, - "highAvailability": { - "type": "boolean", - "description": "Whether high availability is enabled.", - "x-example": true - }, - "highAvailabilityReplicaCount": { + "replicas": { "type": "integer", - "description": "Number of high availability replicas.", + "description": "Number of high availability replicas. High availability is enabled when greater than 0.", "x-example": 2, "format": "int32" }, @@ -104352,7 +104254,7 @@ }, "sqlApiAllowedStatements": { "type": "array", - "description": "Statement types accepted by the SQL API. Allowed values: SELECT, INSERT, UPDATE, DELETE.", + "description": "Statement types accepted by the SQL API. Defaults to DML only; DDL\/DCL types (CREATE, ALTER, DROP, TRUNCATE, GRANT, REVOKE) are opt-in per database. Allowed values: SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, DROP, TRUNCATE, GRANT, REVOKE.", "items": { "type": "string" }, @@ -104390,7 +104292,6 @@ "name", "type", "api", - "region", "engine", "version", "specification", @@ -104411,8 +104312,7 @@ "storageClass", "storageMaxGb", "nodePool", - "highAvailability", - "highAvailabilityReplicaCount", + "replicas", "highAvailabilitySyncMode", "networkMaxConnections", "networkIdleTimeoutSeconds", @@ -104443,7 +104343,6 @@ "name": "My Production Database", "type": "dedicated", "api": "compute", - "region": "fra", "engine": "postgres", "version": "16", "specification": "s-2vcpu-2gb", @@ -104464,8 +104363,7 @@ "storageClass": "ssd", "storageMaxGb": 100, "nodePool": "db-pool-4vcpu-8gb", - "highAvailability": true, - "highAvailabilityReplicaCount": 2, + "replicas": 2, "highAvailabilitySyncMode": "async", "networkMaxConnections": 500, "networkIdleTimeoutSeconds": 900, @@ -107290,78 +107188,6 @@ "roles": "developer" } }, - "dedicatedDatabaseSchema": { - "description": "Schema", - "type": "object", - "properties": { - "tables": { - "type": "array", - "description": "List of tables with columns, types, and constraints.", - "items": { - "type": "object", - "$ref": "#\/definitions\/any" - }, - "x-example": [] - }, - "indexes": { - "type": "array", - "description": "List of indexes across all tables.", - "items": { - "type": "object", - "$ref": "#\/definitions\/any" - }, - "x-example": [] - } - }, - "required": [ - "tables", - "indexes" - ], - "example": { - "tables": [], - "indexes": [] - } - }, - "dedicatedDatabaseSchemaPreview": { - "description": "SchemaPreview", - "type": "object", - "properties": { - "supportsTransactionalDDL": { - "type": "boolean", - "description": "Whether the engine supports transactional DDL for safe preview.", - "x-example": true - }, - "preview": { - "type": "string", - "description": "Schema change preview output.", - "x-example": "ALTER TABLE users ADD COLUMN age INTEGER" - }, - "tables": { - "type": "array", - "description": "List of tables in the database after the change.", - "items": { - "type": "string" - }, - "x-example": [ - "users", - "orders" - ] - } - }, - "required": [ - "supportsTransactionalDDL", - "preview", - "tables" - ], - "example": { - "supportsTransactionalDDL": true, - "preview": "ALTER TABLE users ADD COLUMN age INTEGER", - "tables": [ - "users", - "orders" - ] - } - }, "dedicatedDatabaseSlowQuery": { "description": "SlowQuery", "type": "object", @@ -108524,6 +108350,41 @@ "description": "Application name.", "x-example": "My Application" }, + "description": { + "type": "string", + "description": "Application description shown to users during OAuth2 consent.", + "x-example": "Connect your workspace to My Application." + }, + "clientUri": { + "type": "string", + "description": "Application homepage URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com" + }, + "logoUri": { + "type": "string", + "description": "Application logo URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com\/logo.png" + }, + "privacyPolicyUrl": { + "type": "string", + "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com\/privacy" + }, + "termsUrl": { + "type": "string", + "description": "Application terms of service URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com\/terms" + }, + "contacts": { + "type": "array", + "description": "Application support or security contact emails.", + "items": { + "type": "string" + }, + "x-example": [ + "support@example.com" + ] + }, "redirectUris": { "type": "array", "description": "List of authorized redirect URIs. These URIs can be used to redirect users after they authenticate.", @@ -108574,6 +108435,12 @@ "$createdAt", "$updatedAt", "name", + "description", + "clientUri", + "logoUri", + "privacyPolicyUrl", + "termsUrl", + "contacts", "redirectUris", "enabled", "type", @@ -108587,6 +108454,14 @@ "$createdAt": "2020-10-15T06:38:00.000+00:00", "$updatedAt": "2020-10-15T06:38:00.000+00:00", "name": "My Application", + "description": "Connect your workspace to My Application.", + "clientUri": "https:\/\/example.com", + "logoUri": "https:\/\/example.com\/logo.png", + "privacyPolicyUrl": "https:\/\/example.com\/privacy", + "termsUrl": "https:\/\/example.com\/terms", + "contacts": [ + "support@example.com" + ], "redirectUris": [ "https:\/\/example.com\/callback" ], diff --git a/specs/1.9.x/swagger2-1.9.x-server.json b/specs/1.9.x/swagger2-1.9.x-server.json index eac966fce..143970007 100644 --- a/specs/1.9.x/swagger2-1.9.x-server.json +++ b/specs/1.9.x/swagger2-1.9.x-server.json @@ -38,12 +38,14 @@ "demo": "" } }, - "ProjectQuery": { + "ProjectPath": { "type": "apiKey", "name": "project", "description": "Your project ID", "in": "query", "x-appwrite": { + "location": "path", + "param": "project_id", "demo": "" } }, @@ -4205,6 +4207,49 @@ "description": "Application name.", "x-example": "" }, + "description": { + "type": "string", + "description": "Application description shown to users during OAuth2 consent.", + "default": "", + "x-example": "" + }, + "clientUri": { + "type": "string", + "description": "Application homepage URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "logoUri": { + "type": "string", + "description": "Application logo URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "privacyPolicyUrl": { + "type": "string", + "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "termsUrl": { + "type": "string", + "description": "Application terms of service URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "contacts": { + "type": "array", + "description": "Application support or security contact emails. Maximum of 100 contacts are allowed.", + "default": [], + "x-example": null, + "items": { + "type": "string" + } + }, "redirectUris": { "type": "array", "description": "Redirect URIs (array of valid URLs).", @@ -4382,6 +4427,49 @@ "description": "Application name.", "x-example": "" }, + "description": { + "type": "string", + "description": "Application description shown to users during OAuth2 consent.", + "default": "", + "x-example": "" + }, + "clientUri": { + "type": "string", + "description": "Application homepage URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "logoUri": { + "type": "string", + "description": "Application logo URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "privacyPolicyUrl": { + "type": "string", + "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "termsUrl": { + "type": "string", + "description": "Application terms of service URL shown to users during OAuth2 consent.", + "default": "", + "x-example": "https:\/\/example.com", + "format": "url" + }, + "contacts": { + "type": "array", + "description": "Application support or security contact emails. Maximum of 100 contacts are allowed.", + "default": [], + "x-example": null, + "items": { + "type": "string" + } + }, "enabled": { "type": "boolean", "description": "Is application enabled?", @@ -15959,11 +16047,14 @@ "default": true, "x-example": false }, - "specification": { + "dedicatedDatabaseId": { "type": "string", - "description": "Database specification defining compute resources (CPU, memory). Defaults to the free tier. Must be enabled on the organization plan.", - "default": "free", - "x-example": "" + "description": "Optional dedicated database (compute) ID to attach this database to. Leave empty to create a database on the shared pool.", + "default": "", + "x-example": "", + "x-appwrite": { + "idGenerator": "ID.unique" + } } }, "required": [ @@ -30108,13 +30199,13 @@ "packaging": false, "public": true, "auth": { - "ProjectQuery": [], + "ProjectPath": [], "Session": [] } }, "security": [ { - "ProjectQuery": [], + "ProjectPath": [], "Session": [], "JWT": [] } @@ -30122,7 +30213,7 @@ "parameters": [ { "name": "project_id", - "description": "Project ID in which OAuth2 client that created grant during authorization exists.", + "description": "Project ID in which OAuth2 client exists.", "required": true, "type": "string", "x-example": "", @@ -30192,13 +30283,13 @@ "packaging": false, "public": true, "auth": { - "ProjectQuery": [], + "ProjectPath": [], "Session": [] } }, "security": [ { - "ProjectQuery": [], + "ProjectPath": [], "Session": [], "JWT": [] } @@ -30501,13 +30592,13 @@ "packaging": false, "public": true, "auth": { - "ProjectQuery": [], + "ProjectPath": [], "Session": [] } }, "security": [ { - "ProjectQuery": [], + "ProjectPath": [], "Session": [], "JWT": [] } @@ -30515,7 +30606,7 @@ "parameters": [ { "name": "project_id", - "description": "Project ID in which OAuth2 client that created grant during authorization exists.", + "description": "Project ID in which OAuth2 client exists.", "required": true, "type": "string", "x-example": "", @@ -39997,7 +40088,7 @@ "parameters": [ { "name": "serviceId", - "description": "Service name. Can be one of: account, avatars, databases, tablesdb, documentsDB, tablesDB, vectorsDB, locale, health, project, storage, teams, users, vcs, webhooks, tokens, presences, sites, functions, proxy, graphql, migrations, messaging, advisor", + "description": "Service name. Can be one of: account, avatars, databases, tablesdb, locale, health, project, storage, teams, users, vcs, sites, functions, proxy, graphql, migrations, messaging, advisor", "required": true, "type": "string", "x-example": "account", @@ -40006,9 +40097,6 @@ "avatars", "databases", "tablesdb", - "documentsDB", - "tablesDB", - "vectorsDB", "locale", "health", "project", @@ -40016,9 +40104,6 @@ "teams", "users", "vcs", - "webhooks", - "tokens", - "presences", "sites", "functions", "proxy", @@ -40033,9 +40118,6 @@ "avatars", "databases", "tablesdb", - "documentsDB", - "tablesDB", - "vectorsDB", "locale", "health", "project", @@ -40043,9 +40125,6 @@ "teams", "users", "vcs", - "webhooks", - "tokens", - "presences", "sites", "functions", "proxy", @@ -46563,6 +46642,15 @@ "description": "Is the database enabled? When set to 'disabled', users cannot access the database but Server SDKs with an API key can still read and write to the database. No data is lost when this is toggled.", "default": true, "x-example": false + }, + "dedicatedDatabaseId": { + "type": "string", + "description": "Optional dedicated database (compute) ID to attach this database to. Leave empty to create a database on the shared pool.", + "default": "", + "x-example": "", + "x-appwrite": { + "idGenerator": "ID.unique" + } } }, "required": [ @@ -59548,11 +59636,14 @@ "default": true, "x-example": false }, - "specification": { + "dedicatedDatabaseId": { "type": "string", - "description": "Database specification defining compute resources (CPU, memory). Defaults to the free tier. Must be enabled on the organization plan.", - "default": "free", - "x-example": "" + "description": "Optional dedicated database (compute) ID to attach this database to. Leave empty to create a database on the shared pool.", + "default": "", + "x-example": "", + "x-appwrite": { + "idGenerator": "ID.unique" + } } }, "required": [ @@ -62721,18 +62812,6 @@ "name": "tablesdb", "description": "The TablesDB service allows you to create structured tables of columns, query and filter lists of rows" }, - { - "name": "documentsDB", - "description": "The DocumentsDB service allows you to create structured collections of documents, query and filter lists of documents." - }, - { - "name": "tablesDB", - "description": "The TablesDB service allows you to create structured tables of columns, query and filter lists of rows." - }, - { - "name": "vectorsDB", - "description": "The VectorsDB service allows you to create vector collections, embeddings, indexes, and documents." - }, { "name": "locale", "description": "The Locale service allows you to customize your app based on your users' location." @@ -62761,18 +62840,6 @@ "name": "users", "description": "The Users service allows you to manage your project users." }, - { - "name": "webhooks", - "description": "The Webhooks service allows you to configure event-driven HTTP callbacks for your project." - }, - { - "name": "tokens", - "description": "The Tokens service allows you to create and manage resource tokens for project resources." - }, - { - "name": "presences", - "description": "The Presences service allows you to create, query, and manage realtime presence state." - }, { "name": "sites", "description": "The Sites Service allows you view, create and manage your web applications." @@ -72450,9 +72517,6 @@ "avatars", "databases", "tablesdb", - "documentsDB", - "tablesDB", - "vectorsDB", "locale", "health", "project", @@ -72460,9 +72524,6 @@ "teams", "users", "vcs", - "webhooks", - "tokens", - "presences", "sites", "functions", "proxy", @@ -77813,6 +77874,41 @@ "description": "Application name.", "x-example": "My Application" }, + "description": { + "type": "string", + "description": "Application description shown to users during OAuth2 consent.", + "x-example": "Connect your workspace to My Application." + }, + "clientUri": { + "type": "string", + "description": "Application homepage URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com" + }, + "logoUri": { + "type": "string", + "description": "Application logo URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com\/logo.png" + }, + "privacyPolicyUrl": { + "type": "string", + "description": "Application privacy policy URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com\/privacy" + }, + "termsUrl": { + "type": "string", + "description": "Application terms of service URL shown to users during OAuth2 consent.", + "x-example": "https:\/\/example.com\/terms" + }, + "contacts": { + "type": "array", + "description": "Application support or security contact emails.", + "items": { + "type": "string" + }, + "x-example": [ + "support@example.com" + ] + }, "redirectUris": { "type": "array", "description": "List of authorized redirect URIs. These URIs can be used to redirect users after they authenticate.", @@ -77863,6 +77959,12 @@ "$createdAt", "$updatedAt", "name", + "description", + "clientUri", + "logoUri", + "privacyPolicyUrl", + "termsUrl", + "contacts", "redirectUris", "enabled", "type", @@ -77876,6 +77978,14 @@ "$createdAt": "2020-10-15T06:38:00.000+00:00", "$updatedAt": "2020-10-15T06:38:00.000+00:00", "name": "My Application", + "description": "Connect your workspace to My Application.", + "clientUri": "https:\/\/example.com", + "logoUri": "https:\/\/example.com\/logo.png", + "privacyPolicyUrl": "https:\/\/example.com\/privacy", + "termsUrl": "https:\/\/example.com\/terms", + "contacts": [ + "support@example.com" + ], "redirectUris": [ "https:\/\/example.com\/callback" ],