@vertracloud/api-types 0.3.6 → 0.4.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/v1.js CHANGED
@@ -49,6 +49,11 @@ __export(v1_exports, {
49
49
  ApplicationVersion: () => ApplicationVersion,
50
50
  ApplicationZeroDowntime: () => ApplicationZeroDowntime,
51
51
  BillingTaxIdType: () => BillingTaxIdType,
52
+ BlobContentDisposition: () => BlobContentDisposition,
53
+ BlobCustomDomainStatus: () => BlobCustomDomainStatus,
54
+ BlobUploadMode: () => BlobUploadMode,
55
+ BlobUploadStatus: () => BlobUploadStatus,
56
+ BlobVisibility: () => BlobVisibility,
52
57
  DatabaseCluster: () => DatabaseCluster,
53
58
  DatabaseFilterOperator: () => DatabaseFilterOperator,
54
59
  DatabaseRedisKeyType: () => DatabaseRedisKeyType,
@@ -149,6 +154,8 @@ var APIApiKeyScope = {
149
154
  WORKSPACES_WRITE: "workspaces:write",
150
155
  WORKSPACES_DELETE: "workspaces:delete",
151
156
  WORKSPACES_INVITES: "workspaces:invites",
157
+ BLOB_READ: "blob:read",
158
+ BLOB_WRITE: "blob:write",
152
159
  BILLING_READ: "billing:read",
153
160
  BILLING_WRITE: "billing:write",
154
161
  REDEEM_WRITE: "redeem:write"
@@ -333,6 +340,47 @@ var API_KEY_SCOPES = {
333
340
  { method: "POST", path: "/v1/workspaces/invites/:token/decline" }
334
341
  ]
335
342
  },
343
+ /** Blob Storage (`blob.vertracloud.app`). Upload tokens (`vcup_`) are a separate credential, not a scope. */
344
+ "blob:read": {
345
+ group: "blob",
346
+ routes: [
347
+ { method: "GET", path: "/v1/blob/objects" },
348
+ { method: "GET", path: "/v1/blob/objects/:object_id" },
349
+ { method: "GET", path: "/v1/blob/objects/:object_id/download" },
350
+ { method: "GET", path: "/v1/blob/shares" },
351
+ { method: "GET", path: "/v1/blob/rules" },
352
+ { method: "GET", path: "/v1/blob/stats" },
353
+ { method: "GET", path: "/v1/blob/s3/credentials" },
354
+ { method: "GET", path: "/v1/blob/domains" }
355
+ ]
356
+ },
357
+ "blob:write": {
358
+ group: "blob",
359
+ routes: [
360
+ { method: "POST", path: "/v1/blob/objects" },
361
+ { method: "PATCH", path: "/v1/blob/objects" },
362
+ { method: "PATCH", path: "/v1/blob/objects/:object_id" },
363
+ { method: "POST", path: "/v1/blob/objects/copy" },
364
+ { method: "DELETE", path: "/v1/blob/objects" },
365
+ { method: "DELETE", path: "/v1/blob/objects/:object_id" },
366
+ { method: "POST", path: "/v1/blob/uploads" },
367
+ { method: "GET", path: "/v1/blob/uploads" },
368
+ { method: "GET", path: "/v1/blob/uploads/:upload_id" },
369
+ { method: "POST", path: "/v1/blob/uploads/:upload_id/parts" },
370
+ { method: "POST", path: "/v1/blob/uploads/:upload_id/complete" },
371
+ { method: "DELETE", path: "/v1/blob/uploads/:upload_id" },
372
+ { method: "POST", path: "/v1/blob/shares" },
373
+ { method: "DELETE", path: "/v1/blob/shares/:share_id" },
374
+ { method: "PUT", path: "/v1/blob/rules" },
375
+ { method: "PUT", path: "/v1/blob/rules/:prefix" },
376
+ { method: "DELETE", path: "/v1/blob/rules/:prefix" },
377
+ { method: "POST", path: "/v1/blob/upload-tokens" },
378
+ { method: "POST", path: "/v1/blob/domains" },
379
+ { method: "POST", path: "/v1/blob/domains/:domain_id/verify" },
380
+ { method: "PATCH", path: "/v1/blob/domains/:domain_id" },
381
+ { method: "DELETE", path: "/v1/blob/domains/:domain_id" }
382
+ ]
383
+ },
336
384
  "billing:read": {
337
385
  group: "billing",
338
386
  routes: [
@@ -380,6 +428,8 @@ var WorkspacePermission = {
380
428
  DATABASES_DELETE: "databases:delete",
381
429
  SNAPSHOTS_READ: "snapshots:read",
382
430
  SNAPSHOTS_MANAGE: "snapshots:manage",
431
+ BLOB_READ: "blob:read",
432
+ BLOB_MANAGE: "blob:manage",
383
433
  MEMBERS_READ: "members:read",
384
434
  MEMBERS_MANAGE: "members:manage",
385
435
  ROLES_MANAGE: "roles:manage",
@@ -400,6 +450,8 @@ var WORKSPACE_PERMISSIONS = {
400
450
  "databases:delete": { group: "databases" },
401
451
  "snapshots:read": { group: "snapshots" },
402
452
  "snapshots:manage": { group: "snapshots" },
453
+ "blob:read": { group: "blob" },
454
+ "blob:manage": { group: "blob" },
403
455
  "members:read": { group: "members" },
404
456
  "members:manage": { group: "members" },
405
457
  "roles:manage": { group: "roles" },
@@ -415,7 +467,7 @@ var WorkspaceRolePreset = {
415
467
  function workspacePresetPermissions(preset) {
416
468
  switch (preset) {
417
469
  case "admin":
418
- return WORKSPACE_PERMISSION_LIST.filter((p) => p !== "snapshots:manage");
470
+ return WORKSPACE_PERMISSION_LIST.filter((p) => p !== "snapshots:manage" && p !== "blob:read" && p !== "blob:manage");
419
471
  case "developer":
420
472
  return ["apps:read", "apps:manage", "apps:lifecycle", "apps:envs", "apps:files", "databases:read", "databases:manage", "databases:lifecycle", "databases:credentials", "databases:data", "snapshots:read", "members:read", "activities:read"];
421
473
  case "operator":
@@ -500,6 +552,52 @@ var API_ERROR_CODES = {
500
552
  APP_NOT_PUBLISHED: "APP_NOT_PUBLISHED",
501
553
  APP_ALREADY_IN_WORKSPACE: "APP_ALREADY_IN_WORKSPACE",
502
554
  APP_NOT_FOUND_IN_WORKSPACE: "APP_NOT_FOUND_IN_WORKSPACE",
555
+ /** 404 — the object does not exist or belongs to another account. */
556
+ BLOB_OBJECT_NOT_FOUND: "BLOB_OBJECT_NOT_FOUND",
557
+ /** 409 — the path is taken and `overwrite` is not set. */
558
+ BLOB_OBJECT_ALREADY_EXISTS: "BLOB_OBJECT_ALREADY_EXISTS",
559
+ /** 404 — the upload does not exist, is not yours, or is already completed or aborted. */
560
+ BLOB_UPLOAD_NOT_FOUND: "BLOB_UPLOAD_NOT_FOUND",
561
+ /** 410 — the upload passed its deadline. */
562
+ BLOB_UPLOAD_EXPIRED: "BLOB_UPLOAD_EXPIRED",
563
+ /** 409 — parts are missing or the stored size differs from the declared size. */
564
+ BLOB_UPLOAD_INCOMPLETE: "BLOB_UPLOAD_INCOMPLETE",
565
+ /** 409 — more uploads open than the plan allows. */
566
+ BLOB_UPLOAD_LIMIT: "BLOB_UPLOAD_LIMIT",
567
+ /** 400 — the SHA-256 sent does not match the file. */
568
+ BLOB_CHECKSUM_MISMATCH: "BLOB_CHECKSUM_MISMATCH",
569
+ /** 413 — the file exceeds the plan, single-request upload, folder rule or upload token limit. */
570
+ BLOB_FILE_TOO_LARGE: "BLOB_FILE_TOO_LARGE",
571
+ /** 403 — Blob Storage is suspended for the account (grace period, abuse or deletion). */
572
+ BLOB_NAMESPACE_SUSPENDED: "BLOB_NAMESPACE_SUSPENDED",
573
+ /** 401 — the upload token does not exist, expired or was revoked. */
574
+ BLOB_UPLOAD_TOKEN_INVALID: "BLOB_UPLOAD_TOKEN_INVALID",
575
+ /** 401 — the upload token has no uses left. */
576
+ BLOB_UPLOAD_TOKEN_EXHAUSTED: "BLOB_UPLOAD_TOKEN_EXHAUSTED",
577
+ /** 403 — upload tokens only work on the upload routes. */
578
+ BLOB_UPLOAD_TOKEN_NOT_ALLOWED: "BLOB_UPLOAD_TOKEN_NOT_ALLOWED",
579
+ /** 403 — the path, size or extension is outside what the upload token allows. */
580
+ BLOB_UPLOAD_TOKEN_CONSTRAINT: "BLOB_UPLOAD_TOKEN_CONSTRAINT",
581
+ /** 404 — the share does not exist, was revoked or expired. */
582
+ BLOB_SHARE_NOT_FOUND: "BLOB_SHARE_NOT_FOUND",
583
+ /** 410 — the share reached its download limit. */
584
+ BLOB_SHARE_EXHAUSTED: "BLOB_SHARE_EXHAUSTED",
585
+ /** 401 — wrong share password. */
586
+ BLOB_SHARE_PASSWORD_INVALID: "BLOB_SHARE_PASSWORD_INVALID",
587
+ /** 409 — the `If-Match` of the rule list is outdated; read it again. */
588
+ BLOB_RULES_CONFLICT: "BLOB_RULES_CONFLICT",
589
+ /** 409 — more folder rules than the plan allows. */
590
+ BLOB_RULE_LIMIT: "BLOB_RULE_LIMIT",
591
+ /** 409 — more custom domains than the plan allows. */
592
+ BLOB_CUSTOM_DOMAIN_LIMIT: "BLOB_CUSTOM_DOMAIN_LIMIT",
593
+ /** 409 — the hostname is already in use. */
594
+ BLOB_CUSTOM_DOMAIN_TAKEN: "BLOB_CUSTOM_DOMAIN_TAKEN",
595
+ /** 404 — the domain does not exist or belongs to another account. */
596
+ BLOB_CUSTOM_DOMAIN_NOT_FOUND: "BLOB_CUSTOM_DOMAIN_NOT_FOUND",
597
+ /** 422 — the file extension is blocked, outside the rule or token, or the content is an executable. */
598
+ BLOCKED_FILE_TYPE: "BLOCKED_FILE_TYPE",
599
+ /** 403 — the upload would exceed the storage quota. */
600
+ STORAGE_QUOTA_EXCEEDED: "STORAGE_QUOTA_EXCEEDED",
503
601
  BUILD_FAILED: "BUILD_FAILED",
504
602
  BUILD_TIMEOUT: "BUILD_TIMEOUT",
505
603
  /** 400 — the order needs complete billing details for the service invoice (name, address and, in Brazil, CPF/CNPJ). Fill them with `PUT /v1/users/me/billing`. */
@@ -755,6 +853,26 @@ var BillingTaxIdType = {
755
853
  CNPJ: "cnpj"
756
854
  };
757
855
 
856
+ // payloads/v1/blob.ts
857
+ var BlobVisibility = { PUBLIC: "public", PRIVATE: "private" };
858
+ var BlobContentDisposition = {
859
+ INLINE: "inline",
860
+ ATTACHMENT: "attachment"
861
+ };
862
+ var BlobUploadMode = { SINGLE: "single", MULTIPART: "multipart" };
863
+ var BlobUploadStatus = {
864
+ PENDING: "pending",
865
+ COMPLETED: "completed",
866
+ ABORTED: "aborted",
867
+ EXPIRED: "expired"
868
+ };
869
+ var BlobCustomDomainStatus = {
870
+ PENDING: "pending",
871
+ ACTIVE: "active",
872
+ FAILED: "failed",
873
+ SUSPENDED: "suspended"
874
+ };
875
+
758
876
  // payloads/v1/database.ts
759
877
  var DatabaseType = {
760
878
  POSTGRESQL: 1,
@@ -894,6 +1012,11 @@ var UserLanguage = {
894
1012
  ApplicationVersion,
895
1013
  ApplicationZeroDowntime,
896
1014
  BillingTaxIdType,
1015
+ BlobContentDisposition,
1016
+ BlobCustomDomainStatus,
1017
+ BlobUploadMode,
1018
+ BlobUploadStatus,
1019
+ BlobVisibility,
897
1020
  DatabaseCluster,
898
1021
  DatabaseFilterOperator,
899
1022
  DatabaseRedisKeyType,