@amerged/ohmyhost-cli 0.1.41 → 0.1.43

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.
@@ -329,11 +329,6 @@ export type OrganizationCredits = {
329
329
  * Seven days after the credit was used up. Existing services and domains are retained during this grace; no automatic data deletion. Explicit project stop budgets are separate.
330
330
  */
331
331
  grace_expires_at: string | null;
332
- active_meters: Array<string>;
333
- /**
334
- * Published integer prices, newest first. A published rate is not proof of enabled billing; only active_meters names currently billed sources. Builds retain their accepted quote. Provider cost is a list-price basis before platform allowances, not an invoice.
335
- */
336
- rate_cards: Array<PublishedCreditRateCard>;
337
332
  };
338
333
 
339
334
  /**
@@ -379,23 +374,6 @@ export type OrganizationCreditUsage = {
379
374
  }>;
380
375
  };
381
376
 
382
- export type PublishedCreditRateCard = {
383
- id: string;
384
- currency: "USD";
385
- published_at: string;
386
- effective_from: string;
387
- rates: Array<{
388
- meter: string;
389
- unit: string;
390
- units_per_charge: string;
391
- /**
392
- * Provider list-cost basis for units_per_charge, in USD micro-units (1000000 equals 1 USD), before shared allowances and discounts. Null for the PGCF RAM tariff means node infrastructure costs are tracked separately and are not allocated to this customer rate; null never means zero cost.
393
- */
394
- provider_cost_micros: string | null;
395
- credit_micros: CreditMicros;
396
- }>;
397
- };
398
-
399
377
  export type SetProjectCreditBudgetRequest = {
400
378
  /**
401
379
  * The monthly budget, at most 9007199254740991 microcredits (about 9 billion credits); null removes it.
@@ -910,29 +888,22 @@ export type ProjectDatabaseAccessRequest = {
910
888
  label?: string | null;
911
889
  };
912
890
 
913
- export type ProjectDatabaseAccess = (
914
- | {
915
- database?: "neondb";
916
- }
917
- | {
918
- database?: unknown;
919
- }
920
- ) & {
891
+ export type ProjectDatabaseAccess = {
921
892
  access_id: Ulid;
922
893
  environment: "dev" | "prod";
923
894
  mode: "read" | "write";
924
895
  role_name: string;
925
896
  host: string;
926
897
  /**
927
- * neondb for a transitional Neon credential; the exact 20-character PGCF database identity for WSS.
898
+ * The exact 20-character PGCF database identity for WSS.
928
899
  */
929
900
  database: string;
930
- provider?: "pgcf";
931
- transport?: "wss";
901
+ provider: "pgcf";
902
+ transport: "wss";
932
903
  /**
933
904
  * Verified WSS origin ending in / and matching host. The local bridge adds /v2 and the bound database and user; no public PostgreSQL TCP endpoint.
934
905
  */
935
- websocket_url?: string;
906
+ websocket_url: string;
936
907
  label: string | null;
937
908
  state: "active" | "expired" | "revoked";
938
909
  issued_at: string;
@@ -941,29 +912,22 @@ export type ProjectDatabaseAccess = (
941
912
  revocation_reason: "principal" | "expired" | "budget" | "creation_failed" | "data_change" | null;
942
913
  };
943
914
 
944
- export type ProjectDatabaseAccessCredential = (
945
- | {
946
- database?: "neondb";
947
- }
948
- | {
949
- database?: unknown;
950
- }
951
- ) & {
915
+ export type ProjectDatabaseAccessCredential = {
952
916
  access_id: Ulid;
953
917
  environment: "dev" | "prod";
954
918
  mode: "read" | "write";
955
919
  role_name: string;
956
920
  host: string;
957
921
  /**
958
- * neondb for a transitional Neon credential; the exact 20-character PGCF database identity for WSS.
922
+ * The exact 20-character PGCF database identity for WSS.
959
923
  */
960
924
  database: string;
961
- provider?: "pgcf";
962
- transport?: "wss";
925
+ provider: "pgcf";
926
+ transport: "wss";
963
927
  /**
964
928
  * Verified WSS origin ending in / and matching host. The local bridge adds /v2 and the bound database and user; no public PostgreSQL TCP endpoint.
965
929
  */
966
- websocket_url?: string;
930
+ websocket_url: string;
967
931
  label: string | null;
968
932
  state: "active" | "expired" | "revoked";
969
933
  issued_at: string;
@@ -975,7 +939,7 @@ export type ProjectDatabaseAccessCredential = (
975
939
  */
976
940
  connection_uri: string;
977
941
  /**
978
- * For PGCF, a secret-free ohmyhost database psql invocation that obtains and revokes its own session credential. Transitional Neon responses retain their original direct invocation.
942
+ * For PGCF, a secret-free ohmyhost database psql invocation that obtains and revokes its own session credential.
979
943
  */
980
944
  psql_command: string;
981
945
  };
@@ -984,6 +948,201 @@ export type ProjectDatabaseAccessPage = {
984
948
  items: Array<ProjectDatabaseAccess>;
985
949
  };
986
950
 
951
+ export type DatabaseWebhookEventType =
952
+ | "database.created"
953
+ | "database.ready"
954
+ | "database.woke"
955
+ | "database.slept"
956
+ | "database.suspended"
957
+ | "database.resized"
958
+ | "database.deleted";
959
+
960
+ export type DatabaseWebhookCreateRequest = {
961
+ /**
962
+ * HTTPS receiver URL.
963
+ */
964
+ url: string;
965
+ event_types: Array<DatabaseWebhookEventType>;
966
+ /**
967
+ * Extra headers sent with every delivery. Names are case-insensitive and must be unique; content-type, host, content-length, connection, transfer-encoding, user-agent, te, upgrade, expect and any name starting with pgcf-, cf- or x-forwarded- are refused.
968
+ */
969
+ headers?: {
970
+ [key: string]: string;
971
+ };
972
+ };
973
+
974
+ export type DatabaseWebhook = {
975
+ id: string;
976
+ environment: "dev" | "prod";
977
+ url: string;
978
+ event_types: Array<DatabaseWebhookEventType>;
979
+ /**
980
+ * Names of the extra headers only; their values are never returned.
981
+ */
982
+ header_names: Array<string>;
983
+ created_at: string;
984
+ };
985
+
986
+ export type DatabaseWebhookCreated = {
987
+ id: string;
988
+ environment: "dev" | "prod";
989
+ url: string;
990
+ event_types: Array<DatabaseWebhookEventType>;
991
+ header_names: Array<string>;
992
+ created_at: string;
993
+ /**
994
+ * Signing secret, returned only by this creation answer.
995
+ */
996
+ secret: string;
997
+ };
998
+
999
+ export type DatabaseWebhookPage = {
1000
+ items: Array<DatabaseWebhook>;
1001
+ };
1002
+
1003
+ export type DatabaseWebhookDeleted = {
1004
+ id: string;
1005
+ deleted: true;
1006
+ };
1007
+
1008
+ export type DatabaseWebhookDelivery = {
1009
+ id: string;
1010
+ event_id: string;
1011
+ event_type: DatabaseWebhookEventType;
1012
+ webhook_id: string;
1013
+ state: "pending" | "delivered" | "dead_lettered";
1014
+ attempts: number;
1015
+ created_at: string;
1016
+ next_attempt_at: string | null;
1017
+ delivered_at: string | null;
1018
+ last_status: number | null;
1019
+ last_error: "timeout" | "network" | "http" | "expired" | "permanent" | null;
1020
+ };
1021
+
1022
+ export type DatabaseWebhookDeliveryPage = {
1023
+ items: Array<DatabaseWebhookDelivery>;
1024
+ next_cursor: string | null;
1025
+ };
1026
+
1027
+ export type DatabaseWebhookTestResult = {
1028
+ delivered: boolean;
1029
+ status: number | null;
1030
+ error: "timeout" | "network" | "http" | null;
1031
+ duration_ms: number;
1032
+ };
1033
+
1034
+ export type DatabaseWebhookReplayAccepted = {
1035
+ delivery_id: string;
1036
+ state: "pending";
1037
+ };
1038
+
1039
+ export type DatabaseScheduleSetRequest = unknown & {
1040
+ /**
1041
+ * Five-field cron expression evaluated in UTC. Send exactly one of cron or every_seconds.
1042
+ */
1043
+ cron?: string;
1044
+ /**
1045
+ * Interval in seconds between runs. Send exactly one of cron or every_seconds.
1046
+ */
1047
+ every_seconds?: number;
1048
+ /**
1049
+ * Statements run in order by the application's runtime role. At most 16 KiB per statement and 64 KiB in total.
1050
+ */
1051
+ statements: Array<string>;
1052
+ timeout_ms?: number;
1053
+ enabled?: boolean;
1054
+ /**
1055
+ * Confirms that the statements run with the application's runtime role.
1056
+ */
1057
+ confirm: true;
1058
+ };
1059
+
1060
+ export type DatabaseSchedule = (
1061
+ | {
1062
+ cron?: string;
1063
+ every_seconds?: null;
1064
+ }
1065
+ | {
1066
+ cron?: null;
1067
+ every_seconds?: number;
1068
+ }
1069
+ ) & {
1070
+ name: string;
1071
+ environment: "dev" | "prod";
1072
+ cron: string | null;
1073
+ every_seconds: number | null;
1074
+ statements: Array<string>;
1075
+ timeout_ms: number;
1076
+ enabled: boolean;
1077
+ next_run_at: string | null;
1078
+ created_at: string;
1079
+ };
1080
+
1081
+ export type DatabaseSchedulePage = {
1082
+ items: Array<DatabaseSchedule>;
1083
+ };
1084
+
1085
+ export type DatabaseScheduleDeleted = {
1086
+ name: string;
1087
+ deleted: true;
1088
+ };
1089
+
1090
+ export type DatabaseScheduleRun = {
1091
+ id: number;
1092
+ schedule: string;
1093
+ scheduled_at: string;
1094
+ started_at: string | null;
1095
+ finished_at: string;
1096
+ outcome:
1097
+ | "succeeded"
1098
+ | "failed"
1099
+ | "timed_out"
1100
+ | "outcome_unknown"
1101
+ | "rejected"
1102
+ | "skipped_capacity"
1103
+ | "skipped_suspended"
1104
+ | "skipped_deleted"
1105
+ | "skipped_missed";
1106
+ sqlstate: string | null;
1107
+ attempts: number;
1108
+ manual: boolean;
1109
+ };
1110
+
1111
+ export type DatabaseScheduleRunPage = {
1112
+ items: Array<DatabaseScheduleRun>;
1113
+ };
1114
+
1115
+ export type DatabaseScheduleRunAccepted = {
1116
+ schedule: string;
1117
+ state: "queued";
1118
+ };
1119
+
1120
+ export type DatabaseExecutionMetrics = {
1121
+ schedule_runs_succeeded: number;
1122
+ schedule_runs_failed: number;
1123
+ schedule_runs_timed_out: number;
1124
+ schedule_runs_outcome_unknown: number;
1125
+ schedule_runs_rejected: number;
1126
+ schedule_runs_skipped: number;
1127
+ events_emitted: number;
1128
+ event_bytes: number;
1129
+ webhook_attempts: number;
1130
+ webhook_deliveries_delivered: number;
1131
+ webhook_deliveries_dead_lettered: number;
1132
+ };
1133
+
1134
+ export type DatabaseExecutionUsageRow = {
1135
+ start: string;
1136
+ end: string;
1137
+ final: boolean;
1138
+ metrics: DatabaseExecutionMetrics;
1139
+ };
1140
+
1141
+ export type DatabaseExecutionUsagePage = {
1142
+ items: Array<DatabaseExecutionUsageRow>;
1143
+ next_cursor: string | null;
1144
+ };
1145
+
987
1146
  export type SetDevAccessModeRequest = {
988
1147
  mode: "protected" | "public";
989
1148
  };
@@ -1442,6 +1601,10 @@ export type ProblemDetails = {
1442
1601
  | "compute_performance_unavailable"
1443
1602
  | "database_write_pending"
1444
1603
  | "database_access_limit"
1604
+ | "database_webhook_limit"
1605
+ | "database_schedule_limit"
1606
+ | "database_schedule_not_runnable"
1607
+ | "database_webhook_delivery_pending"
1445
1608
  | "compute_change_pending"
1446
1609
  | "compute_change_conflict"
1447
1610
  | "billing_purchase_conflict"
@@ -1816,11 +1979,36 @@ export type ProjectId = Ulid;
1816
1979
  */
1817
1980
  export type DatabaseAccessId = Ulid;
1818
1981
 
1982
+ /**
1983
+ * Application environment to read; dev when omitted.
1984
+ */
1985
+ export type DatabaseEnvironmentRead = "dev" | "prod";
1986
+
1819
1987
  /**
1820
1988
  * Restrict the listing to one application environment.
1821
1989
  */
1822
1990
  export type DatabaseEnvironmentFilter = "dev" | "prod";
1823
1991
 
1992
+ /**
1993
+ * Application environment the mutation applies to.
1994
+ */
1995
+ export type DatabaseEnvironment = "dev" | "prod";
1996
+
1997
+ /**
1998
+ * Database webhook identifier.
1999
+ */
2000
+ export type DatabaseWebhookId = string;
2001
+
2002
+ /**
2003
+ * Database webhook delivery identifier.
2004
+ */
2005
+ export type DatabaseWebhookDeliveryId = string;
2006
+
2007
+ /**
2008
+ * Database schedule name, unique per project environment.
2009
+ */
2010
+ export type DatabaseScheduleName = string;
2011
+
1824
2012
  /**
1825
2013
  * Opaque continuation cursor returned by the preceding project page.
1826
2014
  */
@@ -7928,6 +8116,924 @@ export type RevokeProjectDatabaseAccessResponses = {
7928
8116
  export type RevokeProjectDatabaseAccessResponse =
7929
8117
  RevokeProjectDatabaseAccessResponses[keyof RevokeProjectDatabaseAccessResponses];
7930
8118
 
8119
+ export type ListProjectDatabaseWebhooksData = {
8120
+ body?: never;
8121
+ headers?: {
8122
+ /**
8123
+ * Optional caller-provided correlation identifier.
8124
+ */
8125
+ "X-Request-Id"?: string;
8126
+ };
8127
+ path: {
8128
+ /**
8129
+ * Project identifier.
8130
+ */
8131
+ project_id: Ulid;
8132
+ };
8133
+ query?: {
8134
+ /**
8135
+ * Application environment to read; dev when omitted.
8136
+ */
8137
+ environment?: "dev" | "prod";
8138
+ };
8139
+ url: "/v1/projects/{project_id}/database/webhooks";
8140
+ };
8141
+
8142
+ export type ListProjectDatabaseWebhooksErrors = {
8143
+ /**
8144
+ * The request failed.
8145
+ */
8146
+ 400: ProblemDetails;
8147
+ /**
8148
+ * The request failed.
8149
+ */
8150
+ 401: ProblemDetails;
8151
+ /**
8152
+ * The resource does not exist or is not visible to the authenticated principal.
8153
+ */
8154
+ 404: ProblemDetails;
8155
+ /**
8156
+ * The request failed.
8157
+ */
8158
+ 429: ProblemDetails;
8159
+ /**
8160
+ * The request failed.
8161
+ */
8162
+ 503: ProblemDetails;
8163
+ };
8164
+
8165
+ export type ListProjectDatabaseWebhooksError =
8166
+ ListProjectDatabaseWebhooksErrors[keyof ListProjectDatabaseWebhooksErrors];
8167
+
8168
+ export type ListProjectDatabaseWebhooksResponses = {
8169
+ /**
8170
+ * The database webhooks of the environment.
8171
+ */
8172
+ 200: DatabaseWebhookPage;
8173
+ };
8174
+
8175
+ export type ListProjectDatabaseWebhooksResponse =
8176
+ ListProjectDatabaseWebhooksResponses[keyof ListProjectDatabaseWebhooksResponses];
8177
+
8178
+ export type CreateProjectDatabaseWebhookData = {
8179
+ body: DatabaseWebhookCreateRequest;
8180
+ headers: {
8181
+ /**
8182
+ * Optional caller-provided correlation identifier.
8183
+ */
8184
+ "X-Request-Id"?: string;
8185
+ /**
8186
+ * Identifies one mutation and its canonical request payload.
8187
+ */
8188
+ "Idempotency-Key": string;
8189
+ };
8190
+ path: {
8191
+ /**
8192
+ * Project identifier.
8193
+ */
8194
+ project_id: Ulid;
8195
+ };
8196
+ query: {
8197
+ /**
8198
+ * Application environment the mutation applies to.
8199
+ */
8200
+ environment: "dev" | "prod";
8201
+ };
8202
+ url: "/v1/projects/{project_id}/database/webhooks";
8203
+ };
8204
+
8205
+ export type CreateProjectDatabaseWebhookErrors = {
8206
+ /**
8207
+ * The request failed.
8208
+ */
8209
+ 400: ProblemDetails;
8210
+ /**
8211
+ * The request failed.
8212
+ */
8213
+ 401: ProblemDetails;
8214
+ /**
8215
+ * The resource does not exist or is not visible to the authenticated principal.
8216
+ */
8217
+ 404: ProblemDetails;
8218
+ /**
8219
+ * The request failed.
8220
+ */
8221
+ 409: ProblemDetails;
8222
+ /**
8223
+ * The request failed.
8224
+ */
8225
+ 429: ProblemDetails;
8226
+ /**
8227
+ * The request failed.
8228
+ */
8229
+ 503: ProblemDetails;
8230
+ };
8231
+
8232
+ export type CreateProjectDatabaseWebhookError =
8233
+ CreateProjectDatabaseWebhookErrors[keyof CreateProjectDatabaseWebhookErrors];
8234
+
8235
+ export type CreateProjectDatabaseWebhookResponses = {
8236
+ /**
8237
+ * The webhook with its signing secret, returned once and never persisted in plaintext.
8238
+ */
8239
+ 201: DatabaseWebhookCreated;
8240
+ };
8241
+
8242
+ export type CreateProjectDatabaseWebhookResponse =
8243
+ CreateProjectDatabaseWebhookResponses[keyof CreateProjectDatabaseWebhookResponses];
8244
+
8245
+ export type DeleteProjectDatabaseWebhookData = {
8246
+ body?: never;
8247
+ headers?: {
8248
+ /**
8249
+ * Optional caller-provided correlation identifier.
8250
+ */
8251
+ "X-Request-Id"?: string;
8252
+ };
8253
+ path: {
8254
+ /**
8255
+ * Project identifier.
8256
+ */
8257
+ project_id: Ulid;
8258
+ /**
8259
+ * Database webhook identifier.
8260
+ */
8261
+ webhook_id: string;
8262
+ };
8263
+ query: {
8264
+ /**
8265
+ * Application environment the mutation applies to.
8266
+ */
8267
+ environment: "dev" | "prod";
8268
+ };
8269
+ url: "/v1/projects/{project_id}/database/webhooks/{webhook_id}";
8270
+ };
8271
+
8272
+ export type DeleteProjectDatabaseWebhookErrors = {
8273
+ /**
8274
+ * The request failed.
8275
+ */
8276
+ 400: ProblemDetails;
8277
+ /**
8278
+ * The request failed.
8279
+ */
8280
+ 401: ProblemDetails;
8281
+ /**
8282
+ * The resource does not exist or is not visible to the authenticated principal.
8283
+ */
8284
+ 404: ProblemDetails;
8285
+ /**
8286
+ * The request failed.
8287
+ */
8288
+ 429: ProblemDetails;
8289
+ /**
8290
+ * The request failed.
8291
+ */
8292
+ 503: ProblemDetails;
8293
+ };
8294
+
8295
+ export type DeleteProjectDatabaseWebhookError =
8296
+ DeleteProjectDatabaseWebhookErrors[keyof DeleteProjectDatabaseWebhookErrors];
8297
+
8298
+ export type DeleteProjectDatabaseWebhookResponses = {
8299
+ /**
8300
+ * The identifier of the deleted webhook.
8301
+ */
8302
+ 200: DatabaseWebhookDeleted;
8303
+ };
8304
+
8305
+ export type DeleteProjectDatabaseWebhookResponse =
8306
+ DeleteProjectDatabaseWebhookResponses[keyof DeleteProjectDatabaseWebhookResponses];
8307
+
8308
+ export type GetProjectDatabaseWebhookData = {
8309
+ body?: never;
8310
+ headers?: {
8311
+ /**
8312
+ * Optional caller-provided correlation identifier.
8313
+ */
8314
+ "X-Request-Id"?: string;
8315
+ };
8316
+ path: {
8317
+ /**
8318
+ * Project identifier.
8319
+ */
8320
+ project_id: Ulid;
8321
+ /**
8322
+ * Database webhook identifier.
8323
+ */
8324
+ webhook_id: string;
8325
+ };
8326
+ query?: {
8327
+ /**
8328
+ * Application environment to read; dev when omitted.
8329
+ */
8330
+ environment?: "dev" | "prod";
8331
+ };
8332
+ url: "/v1/projects/{project_id}/database/webhooks/{webhook_id}";
8333
+ };
8334
+
8335
+ export type GetProjectDatabaseWebhookErrors = {
8336
+ /**
8337
+ * The request failed.
8338
+ */
8339
+ 400: ProblemDetails;
8340
+ /**
8341
+ * The request failed.
8342
+ */
8343
+ 401: ProblemDetails;
8344
+ /**
8345
+ * The resource does not exist or is not visible to the authenticated principal.
8346
+ */
8347
+ 404: ProblemDetails;
8348
+ /**
8349
+ * The request failed.
8350
+ */
8351
+ 429: ProblemDetails;
8352
+ /**
8353
+ * The request failed.
8354
+ */
8355
+ 503: ProblemDetails;
8356
+ };
8357
+
8358
+ export type GetProjectDatabaseWebhookError =
8359
+ GetProjectDatabaseWebhookErrors[keyof GetProjectDatabaseWebhookErrors];
8360
+
8361
+ export type GetProjectDatabaseWebhookResponses = {
8362
+ /**
8363
+ * The database webhook.
8364
+ */
8365
+ 200: DatabaseWebhook;
8366
+ };
8367
+
8368
+ export type GetProjectDatabaseWebhookResponse =
8369
+ GetProjectDatabaseWebhookResponses[keyof GetProjectDatabaseWebhookResponses];
8370
+
8371
+ export type TestProjectDatabaseWebhookData = {
8372
+ body?: never;
8373
+ headers?: {
8374
+ /**
8375
+ * Optional caller-provided correlation identifier.
8376
+ */
8377
+ "X-Request-Id"?: string;
8378
+ };
8379
+ path: {
8380
+ /**
8381
+ * Project identifier.
8382
+ */
8383
+ project_id: Ulid;
8384
+ /**
8385
+ * Database webhook identifier.
8386
+ */
8387
+ webhook_id: string;
8388
+ };
8389
+ query: {
8390
+ /**
8391
+ * Application environment the mutation applies to.
8392
+ */
8393
+ environment: "dev" | "prod";
8394
+ };
8395
+ url: "/v1/projects/{project_id}/database/webhooks/{webhook_id}/test";
8396
+ };
8397
+
8398
+ export type TestProjectDatabaseWebhookErrors = {
8399
+ /**
8400
+ * The request failed.
8401
+ */
8402
+ 400: ProblemDetails;
8403
+ /**
8404
+ * The request failed.
8405
+ */
8406
+ 401: ProblemDetails;
8407
+ /**
8408
+ * The resource does not exist or is not visible to the authenticated principal.
8409
+ */
8410
+ 404: ProblemDetails;
8411
+ /**
8412
+ * The request failed.
8413
+ */
8414
+ 429: ProblemDetails;
8415
+ /**
8416
+ * The request failed.
8417
+ */
8418
+ 503: ProblemDetails;
8419
+ };
8420
+
8421
+ export type TestProjectDatabaseWebhookError =
8422
+ TestProjectDatabaseWebhookErrors[keyof TestProjectDatabaseWebhookErrors];
8423
+
8424
+ export type TestProjectDatabaseWebhookResponses = {
8425
+ /**
8426
+ * The outcome of the test request.
8427
+ */
8428
+ 200: DatabaseWebhookTestResult;
8429
+ };
8430
+
8431
+ export type TestProjectDatabaseWebhookResponse =
8432
+ TestProjectDatabaseWebhookResponses[keyof TestProjectDatabaseWebhookResponses];
8433
+
8434
+ export type ListProjectDatabaseWebhookDeliveriesData = {
8435
+ body?: never;
8436
+ headers?: {
8437
+ /**
8438
+ * Optional caller-provided correlation identifier.
8439
+ */
8440
+ "X-Request-Id"?: string;
8441
+ };
8442
+ path: {
8443
+ /**
8444
+ * Project identifier.
8445
+ */
8446
+ project_id: Ulid;
8447
+ };
8448
+ query?: {
8449
+ /**
8450
+ * Application environment to read; dev when omitted.
8451
+ */
8452
+ environment?: "dev" | "prod";
8453
+ /**
8454
+ * Restrict the listing to the deliveries of one webhook.
8455
+ */
8456
+ webhook_id?: string;
8457
+ /**
8458
+ * Maximum number of deliveries in this page.
8459
+ */
8460
+ limit?: number;
8461
+ /**
8462
+ * Opaque cursor returned by the previous page.
8463
+ */
8464
+ cursor?: string;
8465
+ };
8466
+ url: "/v1/projects/{project_id}/database/webhook-deliveries";
8467
+ };
8468
+
8469
+ export type ListProjectDatabaseWebhookDeliveriesErrors = {
8470
+ /**
8471
+ * The request failed.
8472
+ */
8473
+ 400: ProblemDetails;
8474
+ /**
8475
+ * The request failed.
8476
+ */
8477
+ 401: ProblemDetails;
8478
+ /**
8479
+ * The resource does not exist or is not visible to the authenticated principal.
8480
+ */
8481
+ 404: ProblemDetails;
8482
+ /**
8483
+ * The request failed.
8484
+ */
8485
+ 429: ProblemDetails;
8486
+ /**
8487
+ * The request failed.
8488
+ */
8489
+ 503: ProblemDetails;
8490
+ };
8491
+
8492
+ export type ListProjectDatabaseWebhookDeliveriesError =
8493
+ ListProjectDatabaseWebhookDeliveriesErrors[keyof ListProjectDatabaseWebhookDeliveriesErrors];
8494
+
8495
+ export type ListProjectDatabaseWebhookDeliveriesResponses = {
8496
+ /**
8497
+ * One page of database webhook deliveries.
8498
+ */
8499
+ 200: DatabaseWebhookDeliveryPage;
8500
+ };
8501
+
8502
+ export type ListProjectDatabaseWebhookDeliveriesResponse =
8503
+ ListProjectDatabaseWebhookDeliveriesResponses[keyof ListProjectDatabaseWebhookDeliveriesResponses];
8504
+
8505
+ export type ReplayProjectDatabaseWebhookDeliveryData = {
8506
+ body?: never;
8507
+ headers?: {
8508
+ /**
8509
+ * Optional caller-provided correlation identifier.
8510
+ */
8511
+ "X-Request-Id"?: string;
8512
+ };
8513
+ path: {
8514
+ /**
8515
+ * Project identifier.
8516
+ */
8517
+ project_id: Ulid;
8518
+ /**
8519
+ * Database webhook delivery identifier.
8520
+ */
8521
+ delivery_id: string;
8522
+ };
8523
+ query: {
8524
+ /**
8525
+ * Application environment the mutation applies to.
8526
+ */
8527
+ environment: "dev" | "prod";
8528
+ };
8529
+ url: "/v1/projects/{project_id}/database/webhook-deliveries/{delivery_id}/replay";
8530
+ };
8531
+
8532
+ export type ReplayProjectDatabaseWebhookDeliveryErrors = {
8533
+ /**
8534
+ * The request failed.
8535
+ */
8536
+ 400: ProblemDetails;
8537
+ /**
8538
+ * The request failed.
8539
+ */
8540
+ 401: ProblemDetails;
8541
+ /**
8542
+ * The resource does not exist or is not visible to the authenticated principal.
8543
+ */
8544
+ 404: ProblemDetails;
8545
+ /**
8546
+ * The request failed.
8547
+ */
8548
+ 409: ProblemDetails;
8549
+ /**
8550
+ * The request failed.
8551
+ */
8552
+ 429: ProblemDetails;
8553
+ /**
8554
+ * The request failed.
8555
+ */
8556
+ 503: ProblemDetails;
8557
+ };
8558
+
8559
+ export type ReplayProjectDatabaseWebhookDeliveryError =
8560
+ ReplayProjectDatabaseWebhookDeliveryErrors[keyof ReplayProjectDatabaseWebhookDeliveryErrors];
8561
+
8562
+ export type ReplayProjectDatabaseWebhookDeliveryResponses = {
8563
+ /**
8564
+ * The delivery was queued for another attempt.
8565
+ */
8566
+ 202: DatabaseWebhookReplayAccepted;
8567
+ };
8568
+
8569
+ export type ReplayProjectDatabaseWebhookDeliveryResponse =
8570
+ ReplayProjectDatabaseWebhookDeliveryResponses[keyof ReplayProjectDatabaseWebhookDeliveryResponses];
8571
+
8572
+ export type ListProjectDatabaseSchedulesData = {
8573
+ body?: never;
8574
+ headers?: {
8575
+ /**
8576
+ * Optional caller-provided correlation identifier.
8577
+ */
8578
+ "X-Request-Id"?: string;
8579
+ };
8580
+ path: {
8581
+ /**
8582
+ * Project identifier.
8583
+ */
8584
+ project_id: Ulid;
8585
+ };
8586
+ query?: {
8587
+ /**
8588
+ * Application environment to read; dev when omitted.
8589
+ */
8590
+ environment?: "dev" | "prod";
8591
+ };
8592
+ url: "/v1/projects/{project_id}/database/schedules";
8593
+ };
8594
+
8595
+ export type ListProjectDatabaseSchedulesErrors = {
8596
+ /**
8597
+ * The request failed.
8598
+ */
8599
+ 400: ProblemDetails;
8600
+ /**
8601
+ * The request failed.
8602
+ */
8603
+ 401: ProblemDetails;
8604
+ /**
8605
+ * The resource does not exist or is not visible to the authenticated principal.
8606
+ */
8607
+ 404: ProblemDetails;
8608
+ /**
8609
+ * The request failed.
8610
+ */
8611
+ 429: ProblemDetails;
8612
+ /**
8613
+ * The request failed.
8614
+ */
8615
+ 503: ProblemDetails;
8616
+ };
8617
+
8618
+ export type ListProjectDatabaseSchedulesError =
8619
+ ListProjectDatabaseSchedulesErrors[keyof ListProjectDatabaseSchedulesErrors];
8620
+
8621
+ export type ListProjectDatabaseSchedulesResponses = {
8622
+ /**
8623
+ * The database schedules of the environment.
8624
+ */
8625
+ 200: DatabaseSchedulePage;
8626
+ };
8627
+
8628
+ export type ListProjectDatabaseSchedulesResponse =
8629
+ ListProjectDatabaseSchedulesResponses[keyof ListProjectDatabaseSchedulesResponses];
8630
+
8631
+ export type DeleteProjectDatabaseScheduleData = {
8632
+ body?: never;
8633
+ headers?: {
8634
+ /**
8635
+ * Optional caller-provided correlation identifier.
8636
+ */
8637
+ "X-Request-Id"?: string;
8638
+ };
8639
+ path: {
8640
+ /**
8641
+ * Project identifier.
8642
+ */
8643
+ project_id: Ulid;
8644
+ /**
8645
+ * Database schedule name, unique per project environment.
8646
+ */
8647
+ name: string;
8648
+ };
8649
+ query: {
8650
+ /**
8651
+ * Application environment the mutation applies to.
8652
+ */
8653
+ environment: "dev" | "prod";
8654
+ };
8655
+ url: "/v1/projects/{project_id}/database/schedules/{name}";
8656
+ };
8657
+
8658
+ export type DeleteProjectDatabaseScheduleErrors = {
8659
+ /**
8660
+ * The request failed.
8661
+ */
8662
+ 400: ProblemDetails;
8663
+ /**
8664
+ * The request failed.
8665
+ */
8666
+ 401: ProblemDetails;
8667
+ /**
8668
+ * The resource does not exist or is not visible to the authenticated principal.
8669
+ */
8670
+ 404: ProblemDetails;
8671
+ /**
8672
+ * The request failed.
8673
+ */
8674
+ 429: ProblemDetails;
8675
+ /**
8676
+ * The request failed.
8677
+ */
8678
+ 503: ProblemDetails;
8679
+ };
8680
+
8681
+ export type DeleteProjectDatabaseScheduleError =
8682
+ DeleteProjectDatabaseScheduleErrors[keyof DeleteProjectDatabaseScheduleErrors];
8683
+
8684
+ export type DeleteProjectDatabaseScheduleResponses = {
8685
+ /**
8686
+ * The name of the deleted schedule.
8687
+ */
8688
+ 200: DatabaseScheduleDeleted;
8689
+ };
8690
+
8691
+ export type DeleteProjectDatabaseScheduleResponse =
8692
+ DeleteProjectDatabaseScheduleResponses[keyof DeleteProjectDatabaseScheduleResponses];
8693
+
8694
+ export type GetProjectDatabaseScheduleData = {
8695
+ body?: never;
8696
+ headers?: {
8697
+ /**
8698
+ * Optional caller-provided correlation identifier.
8699
+ */
8700
+ "X-Request-Id"?: string;
8701
+ };
8702
+ path: {
8703
+ /**
8704
+ * Project identifier.
8705
+ */
8706
+ project_id: Ulid;
8707
+ /**
8708
+ * Database schedule name, unique per project environment.
8709
+ */
8710
+ name: string;
8711
+ };
8712
+ query?: {
8713
+ /**
8714
+ * Application environment to read; dev when omitted.
8715
+ */
8716
+ environment?: "dev" | "prod";
8717
+ };
8718
+ url: "/v1/projects/{project_id}/database/schedules/{name}";
8719
+ };
8720
+
8721
+ export type GetProjectDatabaseScheduleErrors = {
8722
+ /**
8723
+ * The request failed.
8724
+ */
8725
+ 400: ProblemDetails;
8726
+ /**
8727
+ * The request failed.
8728
+ */
8729
+ 401: ProblemDetails;
8730
+ /**
8731
+ * The resource does not exist or is not visible to the authenticated principal.
8732
+ */
8733
+ 404: ProblemDetails;
8734
+ /**
8735
+ * The request failed.
8736
+ */
8737
+ 429: ProblemDetails;
8738
+ /**
8739
+ * The request failed.
8740
+ */
8741
+ 503: ProblemDetails;
8742
+ };
8743
+
8744
+ export type GetProjectDatabaseScheduleError =
8745
+ GetProjectDatabaseScheduleErrors[keyof GetProjectDatabaseScheduleErrors];
8746
+
8747
+ export type GetProjectDatabaseScheduleResponses = {
8748
+ /**
8749
+ * The database schedule.
8750
+ */
8751
+ 200: DatabaseSchedule;
8752
+ };
8753
+
8754
+ export type GetProjectDatabaseScheduleResponse =
8755
+ GetProjectDatabaseScheduleResponses[keyof GetProjectDatabaseScheduleResponses];
8756
+
8757
+ export type SetProjectDatabaseScheduleData = {
8758
+ body: DatabaseScheduleSetRequest;
8759
+ headers?: {
8760
+ /**
8761
+ * Optional caller-provided correlation identifier.
8762
+ */
8763
+ "X-Request-Id"?: string;
8764
+ };
8765
+ path: {
8766
+ /**
8767
+ * Project identifier.
8768
+ */
8769
+ project_id: Ulid;
8770
+ /**
8771
+ * Database schedule name, unique per project environment.
8772
+ */
8773
+ name: string;
8774
+ };
8775
+ query: {
8776
+ /**
8777
+ * Application environment the mutation applies to.
8778
+ */
8779
+ environment: "dev" | "prod";
8780
+ };
8781
+ url: "/v1/projects/{project_id}/database/schedules/{name}";
8782
+ };
8783
+
8784
+ export type SetProjectDatabaseScheduleErrors = {
8785
+ /**
8786
+ * The request failed.
8787
+ */
8788
+ 400: ProblemDetails;
8789
+ /**
8790
+ * The request failed.
8791
+ */
8792
+ 401: ProblemDetails;
8793
+ /**
8794
+ * The resource does not exist or is not visible to the authenticated principal.
8795
+ */
8796
+ 404: ProblemDetails;
8797
+ /**
8798
+ * The request failed.
8799
+ */
8800
+ 409: ProblemDetails;
8801
+ /**
8802
+ * The request failed.
8803
+ */
8804
+ 429: ProblemDetails;
8805
+ /**
8806
+ * The request failed.
8807
+ */
8808
+ 503: ProblemDetails;
8809
+ };
8810
+
8811
+ export type SetProjectDatabaseScheduleError =
8812
+ SetProjectDatabaseScheduleErrors[keyof SetProjectDatabaseScheduleErrors];
8813
+
8814
+ export type SetProjectDatabaseScheduleResponses = {
8815
+ /**
8816
+ * The schedule as stored.
8817
+ */
8818
+ 200: DatabaseSchedule;
8819
+ };
8820
+
8821
+ export type SetProjectDatabaseScheduleResponse =
8822
+ SetProjectDatabaseScheduleResponses[keyof SetProjectDatabaseScheduleResponses];
8823
+
8824
+ export type ListProjectDatabaseScheduleRunsData = {
8825
+ body?: never;
8826
+ headers?: {
8827
+ /**
8828
+ * Optional caller-provided correlation identifier.
8829
+ */
8830
+ "X-Request-Id"?: string;
8831
+ };
8832
+ path: {
8833
+ /**
8834
+ * Project identifier.
8835
+ */
8836
+ project_id: Ulid;
8837
+ /**
8838
+ * Database schedule name, unique per project environment.
8839
+ */
8840
+ name: string;
8841
+ };
8842
+ query?: {
8843
+ /**
8844
+ * Application environment to read; dev when omitted.
8845
+ */
8846
+ environment?: "dev" | "prod";
8847
+ /**
8848
+ * Maximum number of runs in this page.
8849
+ */
8850
+ limit?: number;
8851
+ };
8852
+ url: "/v1/projects/{project_id}/database/schedules/{name}/runs";
8853
+ };
8854
+
8855
+ export type ListProjectDatabaseScheduleRunsErrors = {
8856
+ /**
8857
+ * The request failed.
8858
+ */
8859
+ 400: ProblemDetails;
8860
+ /**
8861
+ * The request failed.
8862
+ */
8863
+ 401: ProblemDetails;
8864
+ /**
8865
+ * The resource does not exist or is not visible to the authenticated principal.
8866
+ */
8867
+ 404: ProblemDetails;
8868
+ /**
8869
+ * The request failed.
8870
+ */
8871
+ 429: ProblemDetails;
8872
+ /**
8873
+ * The request failed.
8874
+ */
8875
+ 503: ProblemDetails;
8876
+ };
8877
+
8878
+ export type ListProjectDatabaseScheduleRunsError =
8879
+ ListProjectDatabaseScheduleRunsErrors[keyof ListProjectDatabaseScheduleRunsErrors];
8880
+
8881
+ export type ListProjectDatabaseScheduleRunsResponses = {
8882
+ /**
8883
+ * The newest runs of the schedule, newest first.
8884
+ */
8885
+ 200: DatabaseScheduleRunPage;
8886
+ };
8887
+
8888
+ export type ListProjectDatabaseScheduleRunsResponse =
8889
+ ListProjectDatabaseScheduleRunsResponses[keyof ListProjectDatabaseScheduleRunsResponses];
8890
+
8891
+ export type RunProjectDatabaseScheduleData = {
8892
+ body?: never;
8893
+ headers?: {
8894
+ /**
8895
+ * Optional caller-provided correlation identifier.
8896
+ */
8897
+ "X-Request-Id"?: string;
8898
+ };
8899
+ path: {
8900
+ /**
8901
+ * Project identifier.
8902
+ */
8903
+ project_id: Ulid;
8904
+ /**
8905
+ * Database schedule name, unique per project environment.
8906
+ */
8907
+ name: string;
8908
+ };
8909
+ query: {
8910
+ /**
8911
+ * Application environment the mutation applies to.
8912
+ */
8913
+ environment: "dev" | "prod";
8914
+ };
8915
+ url: "/v1/projects/{project_id}/database/schedules/{name}/run";
8916
+ };
8917
+
8918
+ export type RunProjectDatabaseScheduleErrors = {
8919
+ /**
8920
+ * The request failed.
8921
+ */
8922
+ 400: ProblemDetails;
8923
+ /**
8924
+ * The request failed.
8925
+ */
8926
+ 401: ProblemDetails;
8927
+ /**
8928
+ * The resource does not exist or is not visible to the authenticated principal.
8929
+ */
8930
+ 404: ProblemDetails;
8931
+ /**
8932
+ * The request failed.
8933
+ */
8934
+ 409: ProblemDetails;
8935
+ /**
8936
+ * The request failed.
8937
+ */
8938
+ 429: ProblemDetails;
8939
+ /**
8940
+ * The request failed.
8941
+ */
8942
+ 503: ProblemDetails;
8943
+ };
8944
+
8945
+ export type RunProjectDatabaseScheduleError =
8946
+ RunProjectDatabaseScheduleErrors[keyof RunProjectDatabaseScheduleErrors];
8947
+
8948
+ export type RunProjectDatabaseScheduleResponses = {
8949
+ /**
8950
+ * The run was queued.
8951
+ */
8952
+ 202: DatabaseScheduleRunAccepted;
8953
+ };
8954
+
8955
+ export type RunProjectDatabaseScheduleResponse =
8956
+ RunProjectDatabaseScheduleResponses[keyof RunProjectDatabaseScheduleResponses];
8957
+
8958
+ export type GetProjectDatabaseExecutionUsageData = {
8959
+ body?: never;
8960
+ headers?: {
8961
+ /**
8962
+ * Optional caller-provided correlation identifier.
8963
+ */
8964
+ "X-Request-Id"?: string;
8965
+ };
8966
+ path: {
8967
+ /**
8968
+ * Project identifier.
8969
+ */
8970
+ project_id: Ulid;
8971
+ };
8972
+ query: {
8973
+ /**
8974
+ * Application environment to read; dev when omitted.
8975
+ */
8976
+ environment?: "dev" | "prod";
8977
+ /**
8978
+ * Inclusive window start in UTC, aligned to the granularity.
8979
+ */
8980
+ from: string;
8981
+ /**
8982
+ * Exclusive window end in UTC, aligned to the granularity.
8983
+ */
8984
+ to: string;
8985
+ /**
8986
+ * Length of each returned window.
8987
+ */
8988
+ granularity: "hour" | "day";
8989
+ /**
8990
+ * Maximum number of windows in this page.
8991
+ */
8992
+ limit?: number;
8993
+ /**
8994
+ * Opaque cursor returned by the previous page.
8995
+ */
8996
+ cursor?: string;
8997
+ };
8998
+ url: "/v1/projects/{project_id}/database/execution-usage";
8999
+ };
9000
+
9001
+ export type GetProjectDatabaseExecutionUsageErrors = {
9002
+ /**
9003
+ * The request failed.
9004
+ */
9005
+ 400: ProblemDetails;
9006
+ /**
9007
+ * The request failed.
9008
+ */
9009
+ 401: ProblemDetails;
9010
+ /**
9011
+ * The resource does not exist or is not visible to the authenticated principal.
9012
+ */
9013
+ 404: ProblemDetails;
9014
+ /**
9015
+ * The request failed.
9016
+ */
9017
+ 429: ProblemDetails;
9018
+ /**
9019
+ * The request failed.
9020
+ */
9021
+ 503: ProblemDetails;
9022
+ };
9023
+
9024
+ export type GetProjectDatabaseExecutionUsageError =
9025
+ GetProjectDatabaseExecutionUsageErrors[keyof GetProjectDatabaseExecutionUsageErrors];
9026
+
9027
+ export type GetProjectDatabaseExecutionUsageResponses = {
9028
+ /**
9029
+ * One page of execution usage windows.
9030
+ */
9031
+ 200: DatabaseExecutionUsagePage;
9032
+ };
9033
+
9034
+ export type GetProjectDatabaseExecutionUsageResponse =
9035
+ GetProjectDatabaseExecutionUsageResponses[keyof GetProjectDatabaseExecutionUsageResponses];
9036
+
7931
9037
  export type PlanDeploymentRollbackData = {
7932
9038
  body?: never;
7933
9039
  headers?: {