@appwrite.io/console 14.0.0 → 15.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@appwrite.io/console",
3
3
  "homepage": "https://appwrite.io/support",
4
4
  "description": "Appwrite is an open-source self-hosted backend server that abstracts and simplifies complex and repetitive development tasks behind a very simple REST API",
5
- "version": "14.0.0",
5
+ "version": "15.1.0",
6
6
  "license": "BSD-3-Clause",
7
7
  "main": "dist/cjs/sdk.js",
8
8
  "exports": {
package/types/client.d.ts CHANGED
@@ -121,6 +121,7 @@ declare class Client {
121
121
  impersonateuserphone: string;
122
122
  platform: string;
123
123
  selfSigned: boolean;
124
+ credentials: RequestCredentials;
124
125
  };
125
126
  /**
126
127
  * Custom headers for API requests.
@@ -161,6 +162,17 @@ declare class Client {
161
162
  * @returns {this}
162
163
  */
163
164
  setSelfSigned(selfSigned: boolean): this;
165
+ /**
166
+ * Set credentials
167
+ *
168
+ * Controls whether fetch sends credentials like cookies with requests.
169
+ *
170
+ * @param {RequestCredentials} credentials
171
+ *
172
+ * @returns {this}
173
+ */
174
+ setCredentials(credentials: RequestCredentials): this;
175
+ private shouldUseFallbackCredentials;
164
176
  /**
165
177
  * Set Project
166
178
  *
@@ -240,7 +252,7 @@ declare class Client {
240
252
  /**
241
253
  * Set ImpersonateUserId
242
254
  *
243
- * Impersonate a user by ID on an already user-authenticated request. Requires the current request to be authenticated as a user with impersonator capability; X-Appwrite-Key alone is not sufficient. Impersonator users are intentionally granted users.read so they can discover a target before impersonation begins. Internal audit logs still attribute actions to the original impersonator and record the impersonated target only in internal audit payload data.
255
+ * Impersonate a user by ID
244
256
  *
245
257
  * @param value string
246
258
  *
@@ -250,7 +262,7 @@ declare class Client {
250
262
  /**
251
263
  * Set ImpersonateUserEmail
252
264
  *
253
- * Impersonate a user by email on an already user-authenticated request. Requires the current request to be authenticated as a user with impersonator capability; X-Appwrite-Key alone is not sufficient. Impersonator users are intentionally granted users.read so they can discover a target before impersonation begins. Internal audit logs still attribute actions to the original impersonator and record the impersonated target only in internal audit payload data.
265
+ * Impersonate a user by email
254
266
  *
255
267
  * @param value string
256
268
  *
@@ -260,7 +272,7 @@ declare class Client {
260
272
  /**
261
273
  * Set ImpersonateUserPhone
262
274
  *
263
- * Impersonate a user by phone on an already user-authenticated request. Requires the current request to be authenticated as a user with impersonator capability; X-Appwrite-Key alone is not sufficient. Impersonator users are intentionally granted users.read so they can discover a target before impersonation begins. Internal audit logs still attribute actions to the original impersonator and record the impersonated target only in internal audit payload data.
275
+ * Impersonate a user by phone
264
276
  *
265
277
  * @param value string
266
278
  *
@@ -11,5 +11,6 @@ export declare enum ProjectPolicyId {
11
11
  Membershipprivacy = "membership-privacy",
12
12
  Denyaliasedemail = "deny-aliased-email",
13
13
  Denydisposableemail = "deny-disposable-email",
14
- Denyfreeemail = "deny-free-email"
14
+ Denyfreeemail = "deny-free-email",
15
+ Denycorporateemail = "deny-corporate-email"
15
16
  }
@@ -16,5 +16,6 @@ export declare enum ProjectServiceId {
16
16
  Graphql = "graphql",
17
17
  Migrations = "migrations",
18
18
  Messaging = "messaging",
19
- Advisor = "advisor"
19
+ Advisor = "advisor",
20
+ Oauth2 = "oauth2"
20
21
  }
@@ -61,6 +61,7 @@ export declare enum QuerySuggestionResource {
61
61
  Blocks = "blocks",
62
62
  Threats = "threats",
63
63
  Feedbacks = "feedbacks",
64
+ Disputes = "disputes",
64
65
  ShInstallations = "sh_installations",
65
66
  Apps = "apps",
66
67
  AppSecrets = "appsecrets",
package/types/index.d.ts CHANGED
@@ -24,6 +24,7 @@ export { Locale } from './services/locale';
24
24
  export { Manager } from './services/manager';
25
25
  export { Messaging } from './services/messaging';
26
26
  export { Migrations } from './services/migrations';
27
+ export { Oauth2 } from './services/oauth-2';
27
28
  export { Organization } from './services/organization';
28
29
  export { Organizations } from './services/organizations';
29
30
  export { Presences } from './services/presences';
package/types/models.d.ts CHANGED
@@ -564,7 +564,7 @@ export declare namespace Models {
564
564
  /**
565
565
  * List of policies.
566
566
  */
567
- policies: (Models.PolicyPasswordDictionary | Models.PolicyPasswordHistory | Models.PolicyPasswordStrength | Models.PolicyPasswordPersonalData | Models.PolicySessionAlert | Models.PolicySessionDuration | Models.PolicySessionInvalidation | Models.PolicySessionLimit | Models.PolicyUserLimit | Models.PolicyMembershipPrivacy | Models.PolicyDenyAliasedEmail | Models.PolicyDenyDisposableEmail | Models.PolicyDenyFreeEmail)[];
567
+ policies: (Models.PolicyPasswordDictionary | Models.PolicyPasswordHistory | Models.PolicyPasswordStrength | Models.PolicyPasswordPersonalData | Models.PolicySessionAlert | Models.PolicySessionDuration | Models.PolicySessionInvalidation | Models.PolicySessionLimit | Models.PolicyUserLimit | Models.PolicyMembershipPrivacy | Models.PolicyDenyAliasedEmail | Models.PolicyDenyDisposableEmail | Models.PolicyDenyFreeEmail | Models.PolicyDenyCorporateEmail)[];
568
568
  };
569
569
  /**
570
570
  * Email Templates List
@@ -5121,59 +5121,59 @@ export declare namespace Models {
5121
5121
  /**
5122
5122
  * OAuth2 server status
5123
5123
  */
5124
- oAuth2ServerEnabled: boolean;
5124
+ oAuth2ServerEnabled?: boolean;
5125
5125
  /**
5126
5126
  * OAuth2 server authorization URL
5127
5127
  */
5128
- oAuth2ServerAuthorizationUrl: string;
5128
+ oAuth2ServerAuthorizationUrl?: string;
5129
5129
  /**
5130
5130
  * OAuth2 server allowed scopes
5131
5131
  */
5132
- oAuth2ServerScopes: string[];
5132
+ oAuth2ServerScopes?: string[];
5133
5133
  /**
5134
5134
  * OAuth2 server accepted RFC 9396 authorization_details types
5135
5135
  */
5136
- oAuth2ServerAuthorizationDetailsTypes: string[];
5136
+ oAuth2ServerAuthorizationDetailsTypes?: string[];
5137
5137
  /**
5138
5138
  * OAuth2 server access token duration in seconds for confidential clients
5139
5139
  */
5140
- oAuth2ServerAccessTokenDuration: number;
5140
+ oAuth2ServerAccessTokenDuration?: number;
5141
5141
  /**
5142
5142
  * OAuth2 server refresh token duration in seconds for confidential clients
5143
5143
  */
5144
- oAuth2ServerRefreshTokenDuration: number;
5144
+ oAuth2ServerRefreshTokenDuration?: number;
5145
5145
  /**
5146
5146
  * OAuth2 server access token duration in seconds for public clients (SPAs, mobile, native)
5147
5147
  */
5148
- oAuth2ServerPublicAccessTokenDuration: number;
5148
+ oAuth2ServerPublicAccessTokenDuration?: number;
5149
5149
  /**
5150
5150
  * OAuth2 server refresh token duration in seconds for public clients (SPAs, mobile, native)
5151
5151
  */
5152
- oAuth2ServerPublicRefreshTokenDuration: number;
5152
+ oAuth2ServerPublicRefreshTokenDuration?: number;
5153
5153
  /**
5154
5154
  * When enabled, PKCE is required for confidential clients (server-side flows using client_secret). PKCE is always required for public clients regardless of this setting.
5155
5155
  */
5156
- oAuth2ServerConfidentialPkce: boolean;
5156
+ oAuth2ServerConfidentialPkce?: boolean;
5157
5157
  /**
5158
5158
  * URL to your application page where users enter the device flow user code. Empty when the Device Authorization Grant is not configured.
5159
5159
  */
5160
- oAuth2ServerVerificationUrl: string;
5160
+ oAuth2ServerVerificationUrl?: string;
5161
5161
  /**
5162
5162
  * Number of characters in the device flow user code, excluding the formatting separator.
5163
5163
  */
5164
- oAuth2ServerUserCodeLength: number;
5164
+ oAuth2ServerUserCodeLength?: number;
5165
5165
  /**
5166
5166
  * Character set for device flow user codes: `numeric`, `alphabetic`, or `alphanumeric`.
5167
5167
  */
5168
- oAuth2ServerUserCodeFormat: string;
5168
+ oAuth2ServerUserCodeFormat?: string;
5169
5169
  /**
5170
5170
  * Lifetime in seconds of device flow device codes and user codes.
5171
5171
  */
5172
- oAuth2ServerDeviceCodeDuration: number;
5172
+ oAuth2ServerDeviceCodeDuration?: number;
5173
5173
  /**
5174
5174
  * OAuth2 server discovery URL
5175
5175
  */
5176
- oAuth2ServerDiscoveryUrl: string;
5176
+ oAuth2ServerDiscoveryUrl?: string;
5177
5177
  };
5178
5178
  /**
5179
5179
  * ProjectAuthMethod
@@ -9744,6 +9744,10 @@ export declare namespace Models {
9744
9744
  * Does plan support blocking free email addresses.
9745
9745
  */
9746
9746
  supportsFreeEmailValidation: boolean;
9747
+ /**
9748
+ * Does plan support restricting sign-ups to corporate email addresses only.
9749
+ */
9750
+ supportsCorporateEmailValidation: boolean;
9747
9751
  /**
9748
9752
  * Does plan support project-specific member roles.
9749
9753
  */
@@ -10321,7 +10325,7 @@ export declare namespace Models {
10321
10325
  */
10322
10326
  storage: number;
10323
10327
  /**
10324
- * Storage class: ssd, nvme, or hdd.
10328
+ * Storage class. Currently always 'ssd'; DigitalOcean exposes a single block-storage class.
10325
10329
  */
10326
10330
  storageClass: string;
10327
10331
  /**
@@ -10401,7 +10405,7 @@ export declare namespace Models {
10401
10405
  */
10402
10406
  sqlApiEnabled: boolean;
10403
10407
  /**
10404
- * 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.
10408
+ * Statement types accepted by the SQL API. Defaults to read/write 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.
10405
10409
  */
10406
10410
  sqlApiAllowedStatements: string[];
10407
10411
  /**
@@ -11582,6 +11586,19 @@ export declare namespace Models {
11582
11586
  */
11583
11587
  enabled: boolean;
11584
11588
  };
11589
+ /**
11590
+ * Policy Deny Corporate Email
11591
+ */
11592
+ export type PolicyDenyCorporateEmail = {
11593
+ /**
11594
+ * Policy ID.
11595
+ */
11596
+ $id: string;
11597
+ /**
11598
+ * Whether the deny non-corporate email policy is enabled.
11599
+ */
11600
+ enabled: boolean;
11601
+ };
11585
11602
  /**
11586
11603
  * PoolerConfig
11587
11604
  */
@@ -12023,74 +12040,112 @@ export declare namespace Models {
12023
12040
  credits: AdditionalResource;
12024
12041
  };
12025
12042
  /**
12026
- * usageEvent
12043
+ * usageDataPoint
12027
12044
  */
12028
- export type UsageEvent = {
12045
+ export type UsageDataPoint = {
12029
12046
  /**
12030
- * The metric key.
12047
+ * Bucket start timestamp (ISO 8601). When `interval` is omitted this is the request end time, marking the aggregate as-of moment.
12031
12048
  */
12032
- metric: string;
12049
+ time: string;
12033
12050
  /**
12034
- * The metric value.
12051
+ * Aggregated value for the bucket.
12035
12052
  */
12036
12053
  value: number;
12037
12054
  /**
12038
- * The event timestamp.
12055
+ * API endpoint path when broken down by `path`.
12039
12056
  */
12040
- time: string;
12057
+ path?: string;
12041
12058
  /**
12042
- * The API endpoint path.
12059
+ * HTTP method when broken down by `method`.
12043
12060
  */
12044
- path: string;
12061
+ method?: string;
12045
12062
  /**
12046
- * The HTTP method.
12063
+ * HTTP status code when broken down by `status`.
12047
12064
  */
12048
- method: string;
12065
+ status?: string;
12049
12066
  /**
12050
- * HTTP status code. Stored as string to preserve unset state (empty string = not available).
12067
+ * API service segment when broken down by `service`.
12051
12068
  */
12052
- status: string;
12069
+ service?: string;
12053
12070
  /**
12054
- * The resource type.
12071
+ * Country code when broken down by `country`.
12055
12072
  */
12056
- resourceType: string;
12073
+ country?: string;
12057
12074
  /**
12058
- * The resource ID.
12075
+ * Appwrite region when broken down by `region`.
12059
12076
  */
12060
- resourceId: string;
12077
+ region?: string;
12061
12078
  /**
12062
- * Country code in [ISO 3166-1](http://en.wikipedia.org/wiki/ISO_3166-1) two-character format.
12079
+ * Caller origin hostname when broken down by `hostname`.
12063
12080
  */
12064
- countryCode: string;
12081
+ hostname?: string;
12065
12082
  /**
12066
- * The user agent string.
12083
+ * Operating system name when broken down by `osName`.
12067
12084
  */
12068
- userAgent: string;
12085
+ osName?: string;
12086
+ /**
12087
+ * Client type when broken down by `clientType`.
12088
+ */
12089
+ clientType?: string;
12090
+ /**
12091
+ * Client name when broken down by `clientName`.
12092
+ */
12093
+ clientName?: string;
12094
+ /**
12095
+ * Device classification when broken down by `deviceName`.
12096
+ */
12097
+ deviceName?: string;
12098
+ /**
12099
+ * Owning team ID when broken down by `teamId`.
12100
+ */
12101
+ teamId?: string;
12102
+ /**
12103
+ * External resource ID when broken down by `resourceId`.
12104
+ */
12105
+ resourceId?: string;
12106
+ /**
12107
+ * Resource type when broken down by `resource` (gauges only).
12108
+ */
12109
+ resource?: string;
12069
12110
  };
12070
12111
  /**
12071
- * usageGauge
12112
+ * usageEventList
12072
12113
  */
12073
- export type UsageGauge = {
12114
+ export type UsageEventList = {
12074
12115
  /**
12075
- * The metric key.
12116
+ * Time interval size (1h or 1d). Empty when the request omits `interval` — points then carry the request end time as their as-of marker.
12076
12117
  */
12077
- metric: string;
12118
+ interval: string;
12078
12119
  /**
12079
- * The current snapshot value.
12120
+ * One entry per requested metric, each carrying its own points[] time series (sums per bucket / dimension over time).
12080
12121
  */
12081
- value: number;
12122
+ metrics: UsageMetric[];
12123
+ };
12124
+ /**
12125
+ * usageGaugeList
12126
+ */
12127
+ export type UsageGaugeList = {
12082
12128
  /**
12083
- * The snapshot timestamp.
12129
+ * Time interval size (1h or 1d). Empty when the request omits `interval` — points then carry the request end time as their as-of marker.
12084
12130
  */
12085
- time: string;
12131
+ interval: string;
12086
12132
  /**
12087
- * The resource type.
12133
+ * One entry per requested metric, each carrying its own points[] time series (latest-snapshot per bucket / dimension via argMax over time).
12088
12134
  */
12089
- resourceType: string;
12135
+ metrics: UsageMetric[];
12136
+ };
12137
+ /**
12138
+ * usageMetric
12139
+ */
12140
+ export type UsageMetric = {
12090
12141
  /**
12091
- * The resource ID.
12142
+ * Metric key this series describes.
12092
12143
  */
12093
- resourceId: string;
12144
+ metric: string;
12145
+ /**
12146
+ * Data points for this metric, ordered by time ascending. With `interval`, each entry is one bucket; without, each entry is one row of the dimensional or aggregate breakdown.
12147
+ */
12148
+ points: UsageDataPoint[];
12094
12149
  };
12095
12150
  /**
12096
12151
  * Organization
@@ -12387,10 +12442,34 @@ export declare namespace Models {
12387
12442
  * Application support or security contact emails.
12388
12443
  */
12389
12444
  contacts: string[];
12445
+ /**
12446
+ * Application tagline shown to users during OAuth2 consent.
12447
+ */
12448
+ tagline: string;
12449
+ /**
12450
+ * Application tags shown to users during OAuth2 consent.
12451
+ */
12452
+ tags: string[];
12453
+ /**
12454
+ * Application image URLs shown to users during OAuth2 consent.
12455
+ */
12456
+ images: string[];
12457
+ /**
12458
+ * Application support URL shown to users during OAuth2 consent.
12459
+ */
12460
+ supportUrl: string;
12461
+ /**
12462
+ * Application data deletion URL shown to users during OAuth2 consent.
12463
+ */
12464
+ dataDeletionUrl: string;
12390
12465
  /**
12391
12466
  * List of authorized redirect URIs. These URIs can be used to redirect users after they authenticate.
12392
12467
  */
12393
12468
  redirectUris: string[];
12469
+ /**
12470
+ * List of authorized post-logout redirect URIs for OpenID Connect RP-Initiated Logout. The logout endpoint only redirects users to URIs in this list after ending their session.
12471
+ */
12472
+ postLogoutRedirectUris: string[];
12394
12473
  /**
12395
12474
  * Whether the app is enabled or not.
12396
12475
  */
@@ -12498,6 +12577,152 @@ export declare namespace Models {
12498
12577
  */
12499
12578
  lastAccessedAt?: string;
12500
12579
  };
12580
+ /**
12581
+ * OAuth2 Authorize
12582
+ */
12583
+ export type Oauth2Authorize = {
12584
+ /**
12585
+ * OAuth2 grant ID. Set when the user must give explicit consent; pass it to the approve or reject endpoint. Empty when a redirect URL is returned instead.
12586
+ */
12587
+ grantId: string;
12588
+ /**
12589
+ * URL the end user should be redirected to when the flow can complete without consent. Empty when consent is still required.
12590
+ */
12591
+ redirectUrl: string;
12592
+ };
12593
+ /**
12594
+ * OAuth2 Approve
12595
+ */
12596
+ export type Oauth2Approve = {
12597
+ /**
12598
+ * URL the end user should be redirected to after the grant is approved, carrying the authorization `code` and/or `id_token` along with the original `state`.
12599
+ */
12600
+ redirectUrl: string;
12601
+ };
12602
+ /**
12603
+ * OAuth2 Reject
12604
+ */
12605
+ export type Oauth2Reject = {
12606
+ /**
12607
+ * URL the end user should be redirected to after the grant is rejected, carrying an `access_denied` error.
12608
+ */
12609
+ redirectUrl: string;
12610
+ };
12611
+ /**
12612
+ * OAuth2 Grant
12613
+ */
12614
+ export type Oauth2Grant = {
12615
+ /**
12616
+ * Grant ID.
12617
+ */
12618
+ $id: string;
12619
+ /**
12620
+ * Grant creation time in ISO 8601 format.
12621
+ */
12622
+ $createdAt: string;
12623
+ /**
12624
+ * Grant update date in ISO 8601 format.
12625
+ */
12626
+ $updatedAt: string;
12627
+ /**
12628
+ * ID of the user the grant belongs to.
12629
+ */
12630
+ userId: string;
12631
+ /**
12632
+ * ID of the OAuth2 client (app) the grant was requested for.
12633
+ */
12634
+ appId: string;
12635
+ /**
12636
+ * Requested OAuth2 scopes the user is being asked to consent to.
12637
+ */
12638
+ scopes: string[];
12639
+ /**
12640
+ * Requested RFC 8707 resource indicators the user is being asked to consent to.
12641
+ */
12642
+ resources: string[];
12643
+ /**
12644
+ * Requested authorization_details the user is being asked to consent to, as a JSON string. Each entry has a `type` plus project-defined fields.
12645
+ */
12646
+ authorizationDetails: string;
12647
+ /**
12648
+ * OIDC prompt directive the consent screen should honor. Space-separated list of: login, consent, select_account.
12649
+ */
12650
+ prompt: string;
12651
+ /**
12652
+ * Redirect URI the user will be sent to after the flow completes.
12653
+ */
12654
+ redirectUri: string;
12655
+ /**
12656
+ * Unix timestamp of when the user last authenticated.
12657
+ */
12658
+ authTime: number;
12659
+ /**
12660
+ * Grant expiration time in ISO 8601 format.
12661
+ */
12662
+ expire: string;
12663
+ };
12664
+ /**
12665
+ * OAuth2 Device Authorization
12666
+ */
12667
+ export type Oauth2DeviceAuthorization = {
12668
+ /**
12669
+ * Device verification code used by the client to poll the token endpoint.
12670
+ */
12671
+ device_code: string;
12672
+ /**
12673
+ * Short code the end user enters on the verification page.
12674
+ */
12675
+ user_code: string;
12676
+ /**
12677
+ * URL where the end user enters the user code.
12678
+ */
12679
+ verification_uri: string;
12680
+ /**
12681
+ * Verification URL with the user code prefilled as a query parameter.
12682
+ */
12683
+ verification_uri_complete: string;
12684
+ /**
12685
+ * Lifetime of the device code and user code in seconds.
12686
+ */
12687
+ expires_in: number;
12688
+ /**
12689
+ * Minimum polling interval for the token endpoint in seconds.
12690
+ */
12691
+ interval: number;
12692
+ };
12693
+ /**
12694
+ * OAuth2 Token
12695
+ */
12696
+ export type Oauth2Token = {
12697
+ /**
12698
+ * OAuth2 access token.
12699
+ */
12700
+ access_token: string;
12701
+ /**
12702
+ * OAuth2 token type.
12703
+ */
12704
+ token_type: string;
12705
+ /**
12706
+ * Access token lifetime in seconds.
12707
+ */
12708
+ expires_in: number;
12709
+ /**
12710
+ * OAuth2 refresh token.
12711
+ */
12712
+ refresh_token: string;
12713
+ /**
12714
+ * Space-separated scopes granted to the access token.
12715
+ */
12716
+ scope: string;
12717
+ /**
12718
+ * Granted RFC 9396 authorization details as a JSON string.
12719
+ */
12720
+ authorization_details?: string;
12721
+ /**
12722
+ * OpenID Connect ID token. Returned when the `openid` scope is granted.
12723
+ */
12724
+ id_token?: string;
12725
+ };
12501
12726
  /**
12502
12727
  * Activity event list
12503
12728
  */
@@ -12745,32 +12970,6 @@ export declare namespace Models {
12745
12970
  */
12746
12971
  regions: ConsoleRegion[];
12747
12972
  };
12748
- /**
12749
- * Usage events list
12750
- */
12751
- export type UsageEventList = {
12752
- /**
12753
- * Total number of events that matched your query.
12754
- */
12755
- total: number;
12756
- /**
12757
- * List of events.
12758
- */
12759
- events: UsageEvent[];
12760
- };
12761
- /**
12762
- * Usage gauges list
12763
- */
12764
- export type UsageGaugeList = {
12765
- /**
12766
- * Total number of gauges that matched your query.
12767
- */
12768
- total: number;
12769
- /**
12770
- * List of gauges.
12771
- */
12772
- gauges: UsageGauge[];
12773
- };
12774
12973
  /**
12775
12974
  * Apps list
12776
12975
  */