@amerged/ohmyhost-sdk 0.1.22 → 0.1.24

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.
Files changed (32) hide show
  1. package/README.md +1 -1
  2. package/dist/generated/index.d.ts +2 -2
  3. package/dist/generated/index.d.ts.map +1 -1
  4. package/dist/generated/index.js +1 -1
  5. package/dist/generated/index.js.map +1 -1
  6. package/dist/generated/sdk.gen.d.ts +29 -6
  7. package/dist/generated/sdk.gen.d.ts.map +1 -1
  8. package/dist/generated/sdk.gen.js +64 -5
  9. package/dist/generated/sdk.gen.js.map +1 -1
  10. package/dist/generated/types.gen.d.ts +178 -10
  11. package/dist/generated/types.gen.d.ts.map +1 -1
  12. package/package.json +1 -1
  13. package/src/packages/sdk-ts/package.json +21 -0
  14. package/src/packages/sdk-ts/{generated → src/generated}/index.ts +15 -0
  15. package/src/packages/sdk-ts/{generated → src/generated}/sdk.gen.ts +114 -5
  16. package/src/packages/sdk-ts/{generated → src/generated}/types.gen.ts +209 -10
  17. /package/src/packages/sdk-ts/{generated → src/generated}/client/client.gen.ts +0 -0
  18. /package/src/packages/sdk-ts/{generated → src/generated}/client/index.ts +0 -0
  19. /package/src/packages/sdk-ts/{generated → src/generated}/client/types.gen.ts +0 -0
  20. /package/src/packages/sdk-ts/{generated → src/generated}/client/utils.gen.ts +0 -0
  21. /package/src/packages/sdk-ts/{generated → src/generated}/client.gen.ts +0 -0
  22. /package/src/packages/sdk-ts/{generated → src/generated}/core/auth.gen.ts +0 -0
  23. /package/src/packages/sdk-ts/{generated → src/generated}/core/bodySerializer.gen.ts +0 -0
  24. /package/src/packages/sdk-ts/{generated → src/generated}/core/params.gen.ts +0 -0
  25. /package/src/packages/sdk-ts/{generated → src/generated}/core/pathSerializer.gen.ts +0 -0
  26. /package/src/packages/sdk-ts/{generated → src/generated}/core/queryKeySerializer.gen.ts +0 -0
  27. /package/src/packages/sdk-ts/{generated → src/generated}/core/serverSentEvents.gen.ts +0 -0
  28. /package/src/packages/sdk-ts/{generated → src/generated}/core/types.gen.ts +0 -0
  29. /package/src/packages/sdk-ts/{generated → src/generated}/core/utils.gen.ts +0 -0
  30. /package/src/packages/sdk-ts/{index.ts → src/index.ts} +0 -0
  31. /package/src/packages/sdk-ts/{managed-mail-response.ts → src/managed-mail-response.ts} +0 -0
  32. /package/src/packages/sdk-ts/{managed-mail.ts → src/managed-mail.ts} +0 -0
@@ -48,6 +48,8 @@ import type {
48
48
  CreateOrganizationResponses,
49
49
  CreateProjectDatabaseAccessErrors,
50
50
  CreateProjectDatabaseAccessResponses,
51
+ CreateProjectDataChangeErrors,
52
+ CreateProjectDataChangeResponses,
51
53
  CreateProjectDevAccessTicketErrors,
52
54
  CreateProjectDevAccessTicketResponses,
53
55
  CreateProjectErrors,
@@ -161,6 +163,8 @@ import type {
161
163
  PlanDeploymentRollbackResponses,
162
164
  PlanPaidProjectDomainErrors,
163
165
  PlanPaidProjectDomainResponses,
166
+ PlanProjectDataChangeErrors,
167
+ PlanProjectDataChangeResponses,
164
168
  PlanProjectDeletionErrors,
165
169
  PlanProjectDeletionResponses,
166
170
  PrepareManagedMailWebhookErrors,
@@ -168,6 +172,7 @@ import type {
168
172
  ProjectDatabaseAccessRequest,
169
173
  ProjectDatabaseQueryRequest,
170
174
  ProjectDatabaseWriteRequest,
175
+ ProjectDataChangeRequest,
171
176
  PromoteDeploymentErrors,
172
177
  PromoteDeploymentResponses,
173
178
  PutEnvironmentSecretErrors,
@@ -1024,7 +1029,7 @@ export const createOrganization = <ThrowOnError extends boolean = true>(
1024
1029
  /**
1025
1030
  * Create or resume an owner's hosted Stripe Checkout
1026
1031
  *
1027
- * Returns a human payment URL, never charges a saved card. Paid is USD 10/month; each top-up pack is USD 10 before tax; a purchase grants 100 credits per dollar up to USD 100 and 125 credits per dollar for the part above, so 10 packs grant 10000 and 20 packs grant 22500 non-expiring credits. Retry the same offer, packs and Idempotency-Key after uncertainty. Browser return is not payment proof; read this checkout and the organization balance. A conflicting or existing subscription returns billing_purchase_conflict (409); read the original checkout or request an owner billing portal URL instead of another purchase. Works at zero credits.
1032
+ * Returns a human payment URL, never charges a saved card. Paid is USD 10/month; each top-up pack is USD 10 before tax; a purchase grants 100 credits per dollar up to USD 100 and 125 credits per dollar for the part above, so 10 packs grant 10000 and 20 packs grant 22500 credits. Top-ups require active Paid access and have no time limit during uninterrupted Paid membership; remaining top-ups expire when the workspace returns to Free. Monthly Paid credits expire at billing-period end without rollover. Retry the same offer, packs and Idempotency-Key after uncertainty. Browser return is not payment proof; read this checkout and the organization balance. A conflicting or existing subscription returns billing_purchase_conflict (409); read the original checkout or request an owner billing portal URL instead of another purchase. Works at zero credits.
1028
1033
  */
1029
1034
  export const createBillingCheckout = <ThrowOnError extends boolean = true>(
1030
1035
  parameters: {
@@ -1077,7 +1082,7 @@ export const createBillingCheckout = <ThrowOnError extends boolean = true>(
1077
1082
  /**
1078
1083
  * Observe and reconcile an owner's original checkout
1079
1084
  *
1080
- * Reads Stripe and reconciles confirmed credits/refunds idempotently. payment_confirmed describes the original Checkout, not spendable credit or current Paid entitlement. Read organization credits for available funding; paid_until is the current paid coverage. No new purchase intent or payment is created; an uncertain original Checkout can resume using its stored identity.
1085
+ * Reads Stripe and reconciles confirmed credits/refunds idempotently. payment_confirmed describes the original Checkout, not spendable credit or current Paid entitlement. Read organization credits for available funding and the organization account's effective plan for Paid coverage; paid_until is the paid Stripe period end, not the end of renewal grace. No new purchase intent or payment is created; an uncertain original Checkout can resume using its stored identity.
1081
1086
  */
1082
1087
  export const getBillingCheckout = <ThrowOnError extends boolean = true>(
1083
1088
  parameters: {
@@ -1199,7 +1204,7 @@ export const getBillingRecharge = <ThrowOnError extends boolean = true>(
1199
1204
  /**
1200
1205
  * Enable or disable explicitly authorized auto-recharge
1201
1206
  *
1202
- * Owner-only. An agent must obtain explicit approval for off-session charges and the gross monthly spending cap before enabling. Each refill costs USD 9 before tax for 1000 non-expiring credits when available credits fall below 100. A saved Stripe card is required; follow setup_url if returned. Current revision prevents stale edits; retry the original Idempotency-Key and payload after uncertainty. Disable prevents new charge initiation; already initiated payments may complete. No subscription or Paid features are created.
1207
+ * Owner-only. An agent must obtain explicit approval for off-session charges and the gross monthly spending cap before enabling. Each refill costs USD 9 before tax for 1000 top-up credits when available credits fall below 100. Active Paid access is required to enable recharge and initiate a payment; remaining refill credits expire on downgrade to Free. A saved Stripe card is required; follow setup_url if returned. Current revision prevents stale edits; retry the original Idempotency-Key and payload after uncertainty. Disable prevents new charge initiation; already initiated payments may complete. No subscription or Paid features are created.
1203
1208
  */
1204
1209
  export const configureBillingRecharge = <ThrowOnError extends boolean = true>(
1205
1210
  parameters: {
@@ -2068,7 +2073,7 @@ export const getProjectPoweredByFlag = <ThrowOnError extends boolean = true>(
2068
2073
  /**
2069
2074
  * Show or hide the "Powered by ohmyho.st" flag
2070
2075
  *
2071
- * Owner-only. The production site shows a small flag on its right edge that links to ohmyho.st. While it is on, a Free workspace may connect its own domain to this project and the custom-hostname fee is waived; Paid periods receive bonus credits. Hiding it is refused while a Free workspace's domain depends on it. A retry with the same Idempotency-Key and body returns the first result without switching again; a changed request under a used key returns idempotency_key_reused (409).
2076
+ * Owner-only. The production site shows a small flag on its right edge that links to ohmyho.st. While it is on, a Free workspace may connect its own domain to this project and the custom-hostname fee is waived; each Paid period bought through Stripe adds 250 credits to the organization, however many of its projects show the flag. Hiding it is refused while a Free workspace's domain depends on it. A retry with the same Idempotency-Key and body returns the first result without switching again; a changed request under a used key returns idempotency_key_reused (409).
2072
2077
  */
2073
2078
  export const setProjectPoweredByFlag = <ThrowOnError extends boolean = true>(
2074
2079
  parameters: {
@@ -2693,7 +2698,7 @@ export const getPaidProjectDomain = <ThrowOnError extends boolean = true>(
2693
2698
  /**
2694
2699
  * Apply one Paid customer-owned hostname
2695
2700
  *
2696
- * Requires a confirmed current Paid service period and no expired credit-exhaustion grace. Returns paid_plan_required without a Paid period, or insufficient_organization_credits after seven days with no available credits, without provider mutation. Top-ups restore exhausted Paid access but do not create or extend a Paid service period. After the Paid check, a project whose Prod environment has no active deployment returns production_deployment_required (409) without claiming the hostname or any provider mutation; a changed request under a used key returns idempotency_key_reused (409).
2701
+ * Requires Paid access (a Stripe period or a grant) or, for a Free workspace, a project that currently shows the powered-by flag, and no expired credit-exhaustion grace. Returns paid_plan_required otherwise, or insufficient_organization_credits after seven days with no available credits, without provider mutation. Top-ups lift a credit-exhaustion block but never start or extend Paid access. After that check, a project whose Prod environment has no active deployment returns production_deployment_required (409) without claiming the hostname or any provider mutation; a changed request under a used key returns idempotency_key_reused (409).
2697
2702
  */
2698
2703
  export const applyPaidProjectDomain = <ThrowOnError extends boolean = true>(
2699
2704
  parameters: {
@@ -4307,3 +4312,107 @@ export const getManagedMailAttachment = <ThrowOnError extends boolean = true>(
4307
4312
  ...params,
4308
4313
  });
4309
4314
  };
4315
+
4316
+ /**
4317
+ * Plan a Dev and Prod data assignment change
4318
+ *
4319
+ * Plans one of four Owner-only changes without copying data and issues a ten-minute action-bound confirmation token. shared remains the default at project creation. A Dev reset preserves secrets and access mode and renews a protected share link.
4320
+ */
4321
+ export const planProjectDataChange = <ThrowOnError extends boolean = true>(
4322
+ parameters: {
4323
+ "X-Request-Id"?: string;
4324
+ project_id: Ulid;
4325
+ projectDataChangeRequest: ProjectDataChangeRequest;
4326
+ },
4327
+ options?: Options<never, ThrowOnError>,
4328
+ ): RequestResult<
4329
+ PlanProjectDataChangeResponses,
4330
+ PlanProjectDataChangeErrors,
4331
+ ThrowOnError,
4332
+ "data"
4333
+ > => {
4334
+ const params = buildClientParams(
4335
+ [parameters],
4336
+ [
4337
+ {
4338
+ args: [
4339
+ { in: "headers", key: "X-Request-Id" },
4340
+ { in: "path", key: "project_id" },
4341
+ { key: "projectDataChangeRequest", map: "body" },
4342
+ ],
4343
+ },
4344
+ ],
4345
+ );
4346
+ return (options?.client ?? client).post<
4347
+ PlanProjectDataChangeResponses,
4348
+ PlanProjectDataChangeErrors,
4349
+ ThrowOnError,
4350
+ "data"
4351
+ >({
4352
+ responseStyle: "data",
4353
+ security: [{ scheme: "bearer", type: "http" }],
4354
+ url: "/v1/projects/{project_id}/data-changes:plan",
4355
+ ...options,
4356
+ ...params,
4357
+ headers: {
4358
+ "Content-Type": "application/json",
4359
+ ...options?.headers,
4360
+ ...params.headers,
4361
+ },
4362
+ });
4363
+ };
4364
+
4365
+ /**
4366
+ * Execute a confirmed Dev and Prod data assignment change
4367
+ *
4368
+ * Accepts an asynchronous Owner-only data change with the plan ETag, X-Confirmation-Token and Idempotency-Key. It never deletes the data area Prod keeps. Retired Dev resources are removed after access and outstanding upload capabilities are fenced; uncertain effects remain reconcilable.
4369
+ */
4370
+ export const createProjectDataChange = <ThrowOnError extends boolean = true>(
4371
+ parameters: {
4372
+ "X-Request-Id"?: string;
4373
+ "Idempotency-Key": string;
4374
+ "If-Match": string;
4375
+ "X-Confirmation-Token": ConfirmationToken;
4376
+ project_id: Ulid;
4377
+ projectDataChangeRequest: ProjectDataChangeRequest;
4378
+ },
4379
+ options?: Options<never, ThrowOnError>,
4380
+ ): RequestResult<
4381
+ CreateProjectDataChangeResponses,
4382
+ CreateProjectDataChangeErrors,
4383
+ ThrowOnError,
4384
+ "data"
4385
+ > => {
4386
+ const params = buildClientParams(
4387
+ [parameters],
4388
+ [
4389
+ {
4390
+ args: [
4391
+ { in: "headers", key: "X-Request-Id" },
4392
+ { in: "headers", key: "Idempotency-Key" },
4393
+ { in: "headers", key: "If-Match" },
4394
+ { in: "headers", key: "X-Confirmation-Token" },
4395
+ { in: "path", key: "project_id" },
4396
+ { key: "projectDataChangeRequest", map: "body" },
4397
+ ],
4398
+ },
4399
+ ],
4400
+ );
4401
+ return (options?.client ?? client).post<
4402
+ CreateProjectDataChangeResponses,
4403
+ CreateProjectDataChangeErrors,
4404
+ ThrowOnError,
4405
+ "data"
4406
+ >({
4407
+ responseStyle: "data",
4408
+ security: [{ scheme: "bearer", type: "http" }],
4409
+ url: "/v1/projects/{project_id}/data-changes",
4410
+ ...options,
4411
+ ...params,
4412
+ headers: {
4413
+ "Content-Type": "application/json",
4414
+ ...options?.headers,
4415
+ ...params.headers,
4416
+ },
4417
+ });
4418
+ };
@@ -652,7 +652,7 @@ export type ProjectDatabaseAccess = {
652
652
  issued_at: string;
653
653
  expires_at: string;
654
654
  revoked_at: string | null;
655
- revocation_reason: "principal" | "expired" | "budget" | "creation_failed" | null;
655
+ revocation_reason: "principal" | "expired" | "budget" | "creation_failed" | "data_change" | null;
656
656
  };
657
657
 
658
658
  export type ProjectDatabaseAccessCredential = ProjectDatabaseAccess & {
@@ -819,6 +819,9 @@ export type GuardedActionPlan = (
819
819
  source_artifact_digest?: Sha256Digest;
820
820
  source_environment?: "dev";
821
821
  target_environment?: "prod";
822
+ /**
823
+ * Send as If-Match with this plan's confirmation token.
824
+ */
822
825
  resource_etag: string;
823
826
  effects: Array<string>;
824
827
  risks: Array<string>;
@@ -840,7 +843,7 @@ export type GitCommitSha = string;
840
843
  export type Sha256Digest = string;
841
844
 
842
845
  /**
843
- * Chosen when the project is created. shared uses one database and a shared file namespace across Dev/Prod; isolated keeps their database/Auth records and files separate. Skills recommend isolated development, but the customer chooses the additional measured database consumption. Promotion applies pending schema migrations to an isolated Prod database without copying Dev data. Changing an established mode requires an explicit data migration.
846
+ * Optional at creation, default shared. shared uses one data area across Dev/Prod; isolated gives each environment its own database/Auth records and file namespace. The four Owner-confirmed data-change actions reassign or reset areas without copying data or files and without a special change fee; ordinary measured resource consumption still applies. A reset or merge removes the named Dev resources. Promotion applies pending schema migrations to isolated Prod without copying Dev data.
844
847
  */
845
848
  export type ProjectDataMode = "shared" | "isolated";
846
849
 
@@ -925,7 +928,7 @@ export type CreateProjectRequest = {
925
928
 
926
929
  export type CreateOrganizationRequest = {
927
930
  /**
928
- * Optional public acquisition source from a link's r parameter. Signup is open and this value grants nothing; omit it when the customer arrived directly. Promotional credits are server-configured, attribution is fixed for the user, and rewards are never multiplied by retries or additional organizations.
931
+ * Optional public acquisition source from a link's r parameter; never a secret or an access code. Omit it when the customer arrived directly. A workspace referral value (ref-...) or a flag value (flag-..., while that project still shows the flag) gives the user's first workspace 1,000 credits and 30 days of granted Paid access; other promotional credits are server-configured. Direct signup and invalid referral values create a Free workspace without a referral reward. Attribution is fixed for the user, and rewards are never multiplied by retries or additional organizations.
929
932
  */
930
933
  signup_source?: string;
931
934
  name: string;
@@ -958,6 +961,9 @@ export type OrganizationAccount = {
958
961
  workos_organization_id: string;
959
962
  plan: "free" | "paid";
960
963
  plan_source: "free" | "stripe" | "granted" | "manual";
964
+ /**
965
+ * End of the paid Stripe billing period or the applicable grant; null on Free or for an unbounded grant. During an unpaid renewal the effective Paid plan may remain available for up to 14 days after this Stripe period end, without new monthly credits.
966
+ */
961
967
  paid_until: string | null;
962
968
  available_micros: CreditMicros;
963
969
  monthly_micros: CreditMicros;
@@ -1103,7 +1109,14 @@ export type ProblemDetails = {
1103
1109
  | "api_key_creation_uncertain"
1104
1110
  | "api_key_permissions_unavailable"
1105
1111
  | "reconciliation_exhausted"
1106
- | "service_unavailable";
1112
+ | "service_unavailable"
1113
+ | "source_commit_not_found"
1114
+ | "domain_hostname_taken"
1115
+ | "data_change_blocked"
1116
+ | "data_change_in_progress"
1117
+ | "data_change_not_applicable"
1118
+ | "rollback_target_data_changed"
1119
+ | "project_domain_delete_required";
1107
1120
  request_id: string;
1108
1121
  retryable: boolean;
1109
1122
  /**
@@ -1283,7 +1296,10 @@ export type OperationFailure = {
1283
1296
  | "runtime_candidate_failed"
1284
1297
  | "runtime_candidate_rejected"
1285
1298
  | "storage_jurisdiction_conflict"
1286
- | "provider_state_absent";
1299
+ | "provider_state_absent"
1300
+ | "auto_deploy_plan_rejected"
1301
+ | "promotion_source_stale"
1302
+ | "promotion_target_stale";
1287
1303
  message: string;
1288
1304
  /**
1289
1305
  * A terminal operation cannot be retried in place; follow suggested_action.
@@ -1317,6 +1333,41 @@ export type AuditEventPage = {
1317
1333
 
1318
1334
  export type Ulid = string;
1319
1335
 
1336
+ /**
1337
+ * Owner-confirmed assignment change. No application data is copied; physical resources are provisioned lazily.
1338
+ */
1339
+ export type ProjectDataChangeKind =
1340
+ | "isolate_prod_keeps_data"
1341
+ | "isolate_dev_keeps_data"
1342
+ | "share_prod_keeps_data"
1343
+ | "reset_dev";
1344
+
1345
+ export type ProjectDataChangeRequest = {
1346
+ change: ProjectDataChangeKind;
1347
+ };
1348
+
1349
+ /**
1350
+ * An action-bound ten-minute plan naming retained, retired and lazily created data areas. The workspace Owner confirms its destructive effects before execution.
1351
+ */
1352
+ export type ProjectDataChangePlan = {
1353
+ action: "data_change";
1354
+ project_id: Ulid;
1355
+ change: ProjectDataChangeKind;
1356
+ data_mode_before: "shared" | "isolated";
1357
+ data_mode_after: "shared" | "isolated";
1358
+ effects: Array<string>;
1359
+ destructive_effects: Array<string>;
1360
+ redeploy_environments: ["dev" | "prod"];
1361
+ risks: Array<string>;
1362
+ /**
1363
+ * Send as If-Match with this plan's confirmation token.
1364
+ */
1365
+ resource_etag: string;
1366
+ confirmation_token: ConfirmationToken;
1367
+ created_at: string;
1368
+ expires_at: string;
1369
+ };
1370
+
1320
1371
  /**
1321
1372
  * Immutable pre-build deployment plan. It expires exactly 24 hours after creation.
1322
1373
  */
@@ -1362,7 +1413,7 @@ export type AuditLimit = number;
1362
1413
  export type IdempotencyKey = string;
1363
1414
 
1364
1415
  /**
1365
- * Exact ETag returned for the current project or deployment state.
1416
+ * Use resource_etag from a fresh rollback, promotion, deletion or data-change plan. For a project address change, use etag from project status; an ETag from another representation is not accepted.
1366
1417
  */
1367
1418
  export type IfMatch = string;
1368
1419
 
@@ -2530,6 +2581,10 @@ export type CreateBillingCheckoutErrors = {
2530
2581
  * The request failed.
2531
2582
  */
2532
2583
  401: ProblemDetails;
2584
+ /**
2585
+ * The request failed.
2586
+ */
2587
+ 402: ProblemDetails;
2533
2588
  /**
2534
2589
  * The resource does not exist or is not visible to the authenticated principal.
2535
2590
  */
@@ -2769,6 +2824,10 @@ export type ConfigureBillingRechargeErrors = {
2769
2824
  * The request failed.
2770
2825
  */
2771
2826
  401: ProblemDetails;
2827
+ /**
2828
+ * The request failed.
2829
+ */
2830
+ 402: ProblemDetails;
2772
2831
  /**
2773
2832
  * The resource does not exist or is not visible to the authenticated principal.
2774
2833
  */
@@ -3275,7 +3334,7 @@ export type DeleteProjectData = {
3275
3334
  */
3276
3335
  "Idempotency-Key": string;
3277
3336
  /**
3278
- * Exact ETag returned for the current project or deployment state.
3337
+ * Use resource_etag from a fresh rollback, promotion, deletion or data-change plan. For a project address change, use etag from project status; an ETag from another representation is not accepted.
3279
3338
  */
3280
3339
  "If-Match": string;
3281
3340
  /**
@@ -4450,7 +4509,7 @@ export type ChangeProjectHandleData = {
4450
4509
  */
4451
4510
  "Idempotency-Key": string;
4452
4511
  /**
4453
- * Exact ETag returned for the current project or deployment state.
4512
+ * Use resource_etag from a fresh rollback, promotion, deletion or data-change plan. For a project address change, use etag from project status; an ETag from another representation is not accepted.
4454
4513
  */
4455
4514
  "If-Match": string;
4456
4515
  };
@@ -5706,7 +5765,7 @@ export type RollbackDeploymentData = {
5706
5765
  */
5707
5766
  "Idempotency-Key": string;
5708
5767
  /**
5709
- * Exact ETag returned for the current project or deployment state.
5768
+ * Use resource_etag from a fresh rollback, promotion, deletion or data-change plan. For a project address change, use etag from project status; an ETag from another representation is not accepted.
5710
5769
  */
5711
5770
  "If-Match": string;
5712
5771
  /**
@@ -5849,7 +5908,7 @@ export type PromoteDeploymentData = {
5849
5908
  */
5850
5909
  "Idempotency-Key": string;
5851
5910
  /**
5852
- * Exact ETag returned for the current project or deployment state.
5911
+ * Use resource_etag from a fresh rollback, promotion, deletion or data-change plan. For a project address change, use etag from project status; an ETag from another representation is not accepted.
5853
5912
  */
5854
5913
  "If-Match": string;
5855
5914
  /**
@@ -7066,3 +7125,143 @@ export type GetManagedMailAttachmentResponses = {
7066
7125
 
7067
7126
  export type GetManagedMailAttachmentResponse =
7068
7127
  GetManagedMailAttachmentResponses[keyof GetManagedMailAttachmentResponses];
7128
+
7129
+ export type PlanProjectDataChangeData = {
7130
+ body: ProjectDataChangeRequest;
7131
+ headers?: {
7132
+ /**
7133
+ * Optional caller-provided correlation identifier.
7134
+ */
7135
+ "X-Request-Id"?: string;
7136
+ };
7137
+ path: {
7138
+ /**
7139
+ * Project identifier.
7140
+ */
7141
+ project_id: Ulid;
7142
+ };
7143
+ query?: never;
7144
+ url: "/v1/projects/{project_id}/data-changes:plan";
7145
+ };
7146
+
7147
+ export type PlanProjectDataChangeErrors = {
7148
+ /**
7149
+ * The request failed.
7150
+ */
7151
+ 400: ProblemDetails;
7152
+ /**
7153
+ * The request failed.
7154
+ */
7155
+ 401: ProblemDetails;
7156
+ /**
7157
+ * The request failed.
7158
+ */
7159
+ 403: ProblemDetails;
7160
+ /**
7161
+ * The resource does not exist or is not visible to the authenticated principal.
7162
+ */
7163
+ 404: ProblemDetails;
7164
+ /**
7165
+ * The request failed.
7166
+ */
7167
+ 409: ProblemDetails;
7168
+ /**
7169
+ * The request failed.
7170
+ */
7171
+ 429: ProblemDetails;
7172
+ /**
7173
+ * The request failed.
7174
+ */
7175
+ 503: ProblemDetails;
7176
+ };
7177
+
7178
+ export type PlanProjectDataChangeError =
7179
+ PlanProjectDataChangeErrors[keyof PlanProjectDataChangeErrors];
7180
+
7181
+ export type PlanProjectDataChangeResponses = {
7182
+ /**
7183
+ * The data assignment plan and its exact destructive effects.
7184
+ */
7185
+ 200: ProjectDataChangePlan;
7186
+ };
7187
+
7188
+ export type PlanProjectDataChangeResponse =
7189
+ PlanProjectDataChangeResponses[keyof PlanProjectDataChangeResponses];
7190
+
7191
+ export type CreateProjectDataChangeData = {
7192
+ body: ProjectDataChangeRequest;
7193
+ headers: {
7194
+ /**
7195
+ * Optional caller-provided correlation identifier.
7196
+ */
7197
+ "X-Request-Id"?: string;
7198
+ /**
7199
+ * Identifies one mutation and its canonical request payload.
7200
+ */
7201
+ "Idempotency-Key": string;
7202
+ /**
7203
+ * Use resource_etag from a fresh rollback, promotion, deletion or data-change plan. For a project address change, use etag from project status; an ETag from another representation is not accepted.
7204
+ */
7205
+ "If-Match": string;
7206
+ /**
7207
+ * Ten-minute token bound to the planned action, project, target resource, and resource ETag.
7208
+ */
7209
+ "X-Confirmation-Token": ConfirmationToken;
7210
+ };
7211
+ path: {
7212
+ /**
7213
+ * Project identifier.
7214
+ */
7215
+ project_id: Ulid;
7216
+ };
7217
+ query?: never;
7218
+ url: "/v1/projects/{project_id}/data-changes";
7219
+ };
7220
+
7221
+ export type CreateProjectDataChangeErrors = {
7222
+ /**
7223
+ * The request failed.
7224
+ */
7225
+ 400: ProblemDetails;
7226
+ /**
7227
+ * The request failed.
7228
+ */
7229
+ 401: ProblemDetails;
7230
+ /**
7231
+ * The request failed.
7232
+ */
7233
+ 403: ProblemDetails;
7234
+ /**
7235
+ * The resource does not exist or is not visible to the authenticated principal.
7236
+ */
7237
+ 404: ProblemDetails;
7238
+ /**
7239
+ * The request failed.
7240
+ */
7241
+ 409: ProblemDetails;
7242
+ /**
7243
+ * The request failed.
7244
+ */
7245
+ 413: ProblemDetails;
7246
+ /**
7247
+ * The request failed.
7248
+ */
7249
+ 429: ProblemDetails;
7250
+ /**
7251
+ * The request failed.
7252
+ */
7253
+ 503: ProblemDetails;
7254
+ };
7255
+
7256
+ export type CreateProjectDataChangeError =
7257
+ CreateProjectDataChangeErrors[keyof CreateProjectDataChangeErrors];
7258
+
7259
+ export type CreateProjectDataChangeResponses = {
7260
+ /**
7261
+ * The mutation was accepted for asynchronous processing.
7262
+ */
7263
+ 202: Operation;
7264
+ };
7265
+
7266
+ export type CreateProjectDataChangeResponse =
7267
+ CreateProjectDataChangeResponses[keyof CreateProjectDataChangeResponses];
File without changes