@leaflow/sdk 0.0.0-dev.230.g6609f68 → 0.0.0-dev.234.gce19274
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.
|
@@ -105,6 +105,22 @@ export type CreateCancellationRequestBody = NonNullable<operations["create-cance
|
|
|
105
105
|
export type GetCancellationRequestResult = operations["get-cancellation-request"]["responses"][200]["content"]["application/json"];
|
|
106
106
|
/** The success response body of `POST /account/v1/cancellation-requests/{cancellationRequestId}/cancel`. */
|
|
107
107
|
export type CancelCancellationRequestResult = operations["cancel-cancellation-request"]["responses"][200]["content"]["application/json"];
|
|
108
|
+
/** The success response body of `POST /account/v1/cancellations/preview`. */
|
|
109
|
+
export type CreateCancellationPreviewResult = operations["create-cancellation-preview"]["responses"][200]["content"]["application/json"];
|
|
110
|
+
/** The request body of `POST /account/v1/cancellations/preview`. */
|
|
111
|
+
export type CreateCancellationPreviewBody = NonNullable<operations["create-cancellation-preview"]["requestBody"]>["content"]["application/json"];
|
|
112
|
+
/** The success response body of `POST /account/v1/cancellations`. */
|
|
113
|
+
export type CreateCancellationResult = operations["create-cancellation"]["responses"][200]["content"]["application/json"];
|
|
114
|
+
/** The request body of `POST /account/v1/cancellations`. */
|
|
115
|
+
export type CreateCancellationBody = NonNullable<operations["create-cancellation"]["requestBody"]>["content"]["application/json"];
|
|
116
|
+
/** The success response body of `GET /account/v1/cancellations`. */
|
|
117
|
+
export type ListCancellationsResult = operations["list-cancellations"]["responses"][200]["content"]["application/json"];
|
|
118
|
+
/** The query parameters of `GET /account/v1/cancellations`. */
|
|
119
|
+
export type ListCancellationsQuery = operations["list-cancellations"]["parameters"]["query"];
|
|
120
|
+
/** The success response body of `GET /account/v1/cancellations/{cancellationId}`. */
|
|
121
|
+
export type GetCancellationResult = operations["get-cancellation"]["responses"][200]["content"]["application/json"];
|
|
122
|
+
/** The success response body of `POST /account/v1/cancellations/{cancellationId}/withdraw`. */
|
|
123
|
+
export type WithdrawCancellationResult = operations["withdraw-cancellation"]["responses"][200]["content"]["application/json"];
|
|
108
124
|
/** The success response body of `GET /account/v1/subscriptions/{subscriptionId}/renewal-prices`. */
|
|
109
125
|
export type ListRenewalPricesResult = operations["list-renewal-prices"]["responses"][200]["content"]["application/json"];
|
|
110
126
|
/** The success response body of `POST /account/v1/subscriptions/{subscriptionId}/renew`. */
|
|
@@ -395,7 +395,10 @@ export interface paths {
|
|
|
395
395
|
* Returns a checkout address when the gateway requires the cardholder to confirm the
|
|
396
396
|
* payment; the invoice is marked paid once the gateway confirms it.
|
|
397
397
|
*
|
|
398
|
-
* Calling this on an invoice that is already paid returns the invoice unchanged.
|
|
398
|
+
* Calling this on an invoice that is already paid returns the invoice unchanged. A void invoice
|
|
399
|
+
* is refused with `BILLING_INVOICE_NOT_PAYABLE`; the invoice of an order that has failed or was
|
|
400
|
+
* canceled, with `BILLING_ORDER_FAILED` or `BILLING_ORDER_CANCELED`; and that of an order whose
|
|
401
|
+
* payment deadline has passed, with `BILLING_ORDER_EXPIRED`.
|
|
399
402
|
*/
|
|
400
403
|
post: operations["pay-invoice"];
|
|
401
404
|
delete?: never;
|
|
@@ -450,8 +453,10 @@ export interface paths {
|
|
|
450
453
|
* Either every invoice is paid or none is. When the credit grants and balance cannot cover
|
|
451
454
|
* them all, the request fails with `BILLING_INSUFFICIENT_FUNDS` and nothing is charged.
|
|
452
455
|
* Invoices that are already paid are not charged again. An invoice with an online payment
|
|
453
|
-
* still in progress is refused with `BILLING_PAYMENT_PENDING`,
|
|
454
|
-
*
|
|
456
|
+
* still in progress is refused with `BILLING_PAYMENT_PENDING`, a void invoice with
|
|
457
|
+
* `BILLING_INVOICE_NOT_PAYABLE`, an order that has failed or was canceled with
|
|
458
|
+
* `BILLING_ORDER_FAILED` or `BILLING_ORDER_CANCELED`, and an order whose payment deadline has
|
|
459
|
+
* passed with `BILLING_ORDER_EXPIRED`.
|
|
455
460
|
*/
|
|
456
461
|
post: operations["pay-together"];
|
|
457
462
|
delete?: never;
|
|
@@ -689,7 +694,10 @@ export interface paths {
|
|
|
689
694
|
};
|
|
690
695
|
/**
|
|
691
696
|
* Preview cancellation
|
|
697
|
+
* @deprecated
|
|
692
698
|
* @description Reads confirmed terms and paid-period value without recording a request or locking a refund amount.
|
|
699
|
+
*
|
|
700
|
+
* Use create-cancellation-preview, which previews the subscriptions released together.
|
|
693
701
|
*/
|
|
694
702
|
get: operations["preview-cancellation"];
|
|
695
703
|
put?: never;
|
|
@@ -713,7 +721,10 @@ export interface paths {
|
|
|
713
721
|
put?: never;
|
|
714
722
|
/**
|
|
715
723
|
* Request subscription cancellation
|
|
724
|
+
* @deprecated
|
|
716
725
|
* @description Ends the whole subscription under confirmed terms. The request does not itself stop service; actual end is confirmed by the owning service. Refund processing is separate.
|
|
726
|
+
*
|
|
727
|
+
* Use create-cancellation, which ends the subscriptions released together and checks the refund.
|
|
717
728
|
*/
|
|
718
729
|
post: operations["create-cancellation-request"];
|
|
719
730
|
delete?: never;
|
|
@@ -731,7 +742,11 @@ export interface paths {
|
|
|
731
742
|
};
|
|
732
743
|
cookie?: never;
|
|
733
744
|
};
|
|
734
|
-
/**
|
|
745
|
+
/**
|
|
746
|
+
* Get cancellation request
|
|
747
|
+
* @deprecated
|
|
748
|
+
* @description Use get-cancellation.
|
|
749
|
+
*/
|
|
735
750
|
get: operations["get-cancellation-request"];
|
|
736
751
|
put?: never;
|
|
737
752
|
post?: never;
|
|
@@ -754,7 +769,10 @@ export interface paths {
|
|
|
754
769
|
put?: never;
|
|
755
770
|
/**
|
|
756
771
|
* Cancel a cancellation request
|
|
772
|
+
* @deprecated
|
|
757
773
|
* @description Allowed only before release starts. Does not resume a previously suspended subscription.
|
|
774
|
+
*
|
|
775
|
+
* Use withdraw-cancellation, which withdraws the whole cancellation.
|
|
758
776
|
*/
|
|
759
777
|
post: operations["cancel-cancellation-request"];
|
|
760
778
|
delete?: never;
|
|
@@ -763,6 +781,136 @@ export interface paths {
|
|
|
763
781
|
patch?: never;
|
|
764
782
|
trace?: never;
|
|
765
783
|
};
|
|
784
|
+
"/account/v1/cancellations/preview": {
|
|
785
|
+
parameters: {
|
|
786
|
+
query?: never;
|
|
787
|
+
header?: never;
|
|
788
|
+
path?: never;
|
|
789
|
+
cookie?: never;
|
|
790
|
+
};
|
|
791
|
+
get?: never;
|
|
792
|
+
put?: never;
|
|
793
|
+
/**
|
|
794
|
+
* Preview a cancellation
|
|
795
|
+
* @description What canceling these subscriptions together would return, computed now under the refund terms
|
|
796
|
+
* agreed when each was bought. This request does not create a resource: nothing is recorded or
|
|
797
|
+
* reserved.
|
|
798
|
+
*
|
|
799
|
+
* It is refused with the same errors as creating the cancellation, except that the amount is not
|
|
800
|
+
* checked. Give the returned `proration_date` and `refundable_amount` when creating it.
|
|
801
|
+
*/
|
|
802
|
+
post: operations["create-cancellation-preview"];
|
|
803
|
+
delete?: never;
|
|
804
|
+
options?: never;
|
|
805
|
+
head?: never;
|
|
806
|
+
patch?: never;
|
|
807
|
+
trace?: never;
|
|
808
|
+
};
|
|
809
|
+
"/account/v1/cancellations": {
|
|
810
|
+
parameters: {
|
|
811
|
+
query?: never;
|
|
812
|
+
header?: never;
|
|
813
|
+
path?: never;
|
|
814
|
+
cookie?: never;
|
|
815
|
+
};
|
|
816
|
+
/**
|
|
817
|
+
* List cancellations
|
|
818
|
+
* @description Newest first. Filter by `subscription_id` and `status=open` to find the cancellation now under way for a subscription.
|
|
819
|
+
*/
|
|
820
|
+
get: operations["list-cancellations"];
|
|
821
|
+
put?: never;
|
|
822
|
+
/**
|
|
823
|
+
* Cancel subscriptions
|
|
824
|
+
* @description Ends a set of subscriptions of one service together, at one time. Deleting a resource that a
|
|
825
|
+
* subscription pays for is an `immediate` cancellation of every subscription released with it,
|
|
826
|
+
* such as a server with the disks deleted along with it, or an address with its bandwidth.
|
|
827
|
+
*
|
|
828
|
+
* The service that provides the resources releases them: at once for `immediate`, or at
|
|
829
|
+
* `scheduled_at`, the end of the paid term, for `period_end`. When release is confirmed, the
|
|
830
|
+
* unused value is returned the way it was paid, under the refund terms agreed when each
|
|
831
|
+
* subscription was bought. For `immediate` the refund is computed as of `proration_date`, so the
|
|
832
|
+
* amount confirmed here is the amount returned: prepaid service used while the resources are
|
|
833
|
+
* being released is not deducted from it. Usage of a postpaid subscription is charged until its
|
|
834
|
+
* resources are released, as usual.
|
|
835
|
+
*
|
|
836
|
+
* `mode` must be allowed for every subscription. Postpaid and one-time subscriptions end only
|
|
837
|
+
* `immediate`. A prepaid subscription ends `period_end` while its paid term lasts, and
|
|
838
|
+
* `immediate` unless its termination terms allow only the end of the paid term and that term has
|
|
839
|
+
* not ended yet. For `period_end` the paid terms of all the subscriptions must end at the same
|
|
840
|
+
* time.
|
|
841
|
+
*
|
|
842
|
+
* Refused with:
|
|
843
|
+
* - 400 `BILLING_CANCELLATION_INVALID` when `subscription_ids` or `proration_date` is not
|
|
844
|
+
* acceptable (`meta.field`), or the subscriptions do not all belong to one service, project,
|
|
845
|
+
* account and currency;
|
|
846
|
+
* - 409 `BILLING_CANCELLATION_CONFLICT` when a subscription has not started or has ended;
|
|
847
|
+
* - 422 `BILLING_CANCELLATION_MODE_FIXED` when `mode` is not allowed for a subscription, and
|
|
848
|
+
* `BILLING_CANCELLATION_TERMS_UNSET` when a prepaid subscription has no termination terms;
|
|
849
|
+
* both carry `meta.subscription_id`;
|
|
850
|
+
* - 409 `BILLING_CANCELLATION_SCHEDULES_DIFFER` when, for `period_end`, the paid terms end at
|
|
851
|
+
* different times;
|
|
852
|
+
* - 409 `BILLING_SUBSCRIPTION_OPERATION_PENDING` when a subscription is already being canceled
|
|
853
|
+
* (`meta.cancellation_id`) or reclaimed (`meta.job_id`);
|
|
854
|
+
* - 409 `BILLING_ORDER_PAYMENT_IN_FLIGHT` while an online payment for a renewal of one of them
|
|
855
|
+
* is in progress;
|
|
856
|
+
* - 422 `BILLING_CANCELLATION_UNSUPPORTED` when the service cannot yet be canceled here;
|
|
857
|
+
* - 409 `BILLING_CANCELLATION_REFUND_CHANGED` when the refund is no longer
|
|
858
|
+
* `expected_refundable_amount`; preview again.
|
|
859
|
+
*
|
|
860
|
+
* Sending the same request again, for the same subscriptions, mode and amount while that
|
|
861
|
+
* cancellation is still open, returns it with 200 rather than creating another. Renewal orders
|
|
862
|
+
* still waiting for payment are canceled along with it.
|
|
863
|
+
*/
|
|
864
|
+
post: operations["create-cancellation"];
|
|
865
|
+
delete?: never;
|
|
866
|
+
options?: never;
|
|
867
|
+
head?: never;
|
|
868
|
+
patch?: never;
|
|
869
|
+
trace?: never;
|
|
870
|
+
};
|
|
871
|
+
"/account/v1/cancellations/{cancellationId}": {
|
|
872
|
+
parameters: {
|
|
873
|
+
query?: never;
|
|
874
|
+
header?: never;
|
|
875
|
+
path: {
|
|
876
|
+
cancellationId: components["parameters"]["CancellationId"];
|
|
877
|
+
};
|
|
878
|
+
cookie?: never;
|
|
879
|
+
};
|
|
880
|
+
/** Get a cancellation */
|
|
881
|
+
get: operations["get-cancellation"];
|
|
882
|
+
put?: never;
|
|
883
|
+
post?: never;
|
|
884
|
+
delete?: never;
|
|
885
|
+
options?: never;
|
|
886
|
+
head?: never;
|
|
887
|
+
patch?: never;
|
|
888
|
+
trace?: never;
|
|
889
|
+
};
|
|
890
|
+
"/account/v1/cancellations/{cancellationId}/withdraw": {
|
|
891
|
+
parameters: {
|
|
892
|
+
query?: never;
|
|
893
|
+
header?: never;
|
|
894
|
+
path: {
|
|
895
|
+
cancellationId: components["parameters"]["CancellationId"];
|
|
896
|
+
};
|
|
897
|
+
cookie?: never;
|
|
898
|
+
};
|
|
899
|
+
get?: never;
|
|
900
|
+
put?: never;
|
|
901
|
+
/**
|
|
902
|
+
* Withdraw a cancellation
|
|
903
|
+
* @description Withdraws the whole cancellation while none of its resources has begun to be released; the
|
|
904
|
+
* subscriptions continue as before. After that it is refused with 409
|
|
905
|
+
* `BILLING_CANCELLATION_CONFLICT`. Withdrawing one that is already withdrawn returns it unchanged.
|
|
906
|
+
*/
|
|
907
|
+
post: operations["withdraw-cancellation"];
|
|
908
|
+
delete?: never;
|
|
909
|
+
options?: never;
|
|
910
|
+
head?: never;
|
|
911
|
+
patch?: never;
|
|
912
|
+
trace?: never;
|
|
913
|
+
};
|
|
766
914
|
"/account/v1/subscriptions/{subscriptionId}/renewal-prices": {
|
|
767
915
|
parameters: {
|
|
768
916
|
query?: never;
|
|
@@ -798,7 +946,17 @@ export interface paths {
|
|
|
798
946
|
put?: never;
|
|
799
947
|
/**
|
|
800
948
|
* Renew subscription
|
|
801
|
-
* @description Purchases prepaid periods from paid_until using the agreed recurring amount
|
|
949
|
+
* @description Purchases prepaid periods from paid_until using the agreed recurring amount, and pays for them at
|
|
950
|
+
* once. A changed interval selects a current price and freezes new terms on the order, applied
|
|
951
|
+
* only after fulfillment. Existing paid periods keep their value.
|
|
952
|
+
*
|
|
953
|
+
* Without `payment_method_id`, the renewal is paid from credit grants and the balance as
|
|
954
|
+
* `use_credits` and `use_balance` allow; when they cannot pay it all, the renewal is refused with
|
|
955
|
+
* `BILLING_INSUFFICIENT_FUNDS` and no order is left. To pay another way, create a renewal order
|
|
956
|
+
* and pay its invoice instead.
|
|
957
|
+
*
|
|
958
|
+
* Save order_id before submitting and query the order after an unknown outcome; duplicate
|
|
959
|
+
* creation conflicts.
|
|
802
960
|
*/
|
|
803
961
|
post: operations["renew-subscription"];
|
|
804
962
|
delete?: never;
|
|
@@ -960,7 +1118,8 @@ export interface paths {
|
|
|
960
1118
|
* @description Withdraws an order that is not paid in full, and tells the service that placed it, so that
|
|
961
1119
|
* nothing is delivered. An order with nothing paid becomes `canceled` and its invoice is voided.
|
|
962
1120
|
* What was already paid toward it, from credit grants or the balance, is returned the way it was
|
|
963
|
-
* paid, and the order becomes `failed
|
|
1121
|
+
* paid, and the order becomes `failed`; its invoice is voided once everything paid has been
|
|
1122
|
+
* returned. Either way `cancel_reason` is `requested_by_customer`.
|
|
964
1123
|
* Canceling an order that is already canceled or failed returns it unchanged.
|
|
965
1124
|
*
|
|
966
1125
|
* Refused with 409 and `BILLING_PAID_ORDER_NOT_CANCELABLE` once the invoice is paid in full,
|
|
@@ -1037,6 +1196,157 @@ export interface components {
|
|
|
1037
1196
|
* @enum {string}
|
|
1038
1197
|
*/
|
|
1039
1198
|
RefundPolicy: "none" | "prorated";
|
|
1199
|
+
CancellationPreviewRequest: {
|
|
1200
|
+
/** @description The subscriptions to end together, all of one service. Every subscription released with a resource must be included. */
|
|
1201
|
+
subscription_ids: string[];
|
|
1202
|
+
mode: components["schemas"]["TerminationPolicy"];
|
|
1203
|
+
};
|
|
1204
|
+
/**
|
|
1205
|
+
* @description What the cancellation would return, subscription by subscription and in total, as of now.
|
|
1206
|
+
*
|
|
1207
|
+
* - `unused_amount`: before tax, the value of the paid service still unused, whatever the refund
|
|
1208
|
+
* terms say.
|
|
1209
|
+
* - `refundable_amount`: what is returned the way it was paid, including the tax paid on it;
|
|
1210
|
+
* `refund_amount` plus `credit_amount`.
|
|
1211
|
+
* - `refund_amount`: the part returned to the balance or to the payment method.
|
|
1212
|
+
* - `credit_amount`: the part restored to the credit grants that paid.
|
|
1213
|
+
* - `tax_amount`: the tax included in `refundable_amount`.
|
|
1214
|
+
* - `forfeited_amount`: before tax, the part of `unused_amount` the refund terms do not return.
|
|
1215
|
+
*
|
|
1216
|
+
* Postpaid and one-time subscriptions show zero; usage until release is charged as usual.
|
|
1217
|
+
*/
|
|
1218
|
+
CancellationRefundPreview: {
|
|
1219
|
+
mode: components["schemas"]["TerminationPolicy"];
|
|
1220
|
+
/**
|
|
1221
|
+
* Format: date-time
|
|
1222
|
+
* @description For `period_end`, when release begins, the end of the paid terms.
|
|
1223
|
+
*/
|
|
1224
|
+
scheduled_at?: string;
|
|
1225
|
+
/**
|
|
1226
|
+
* Format: date-time
|
|
1227
|
+
* @description For `immediate`, the second the refund is computed as of. Give it when creating the cancellation.
|
|
1228
|
+
*/
|
|
1229
|
+
proration_date?: string;
|
|
1230
|
+
currency: string;
|
|
1231
|
+
unused_amount: components["schemas"]["Money"];
|
|
1232
|
+
refundable_amount: components["schemas"]["Money"];
|
|
1233
|
+
refund_amount: components["schemas"]["Money"];
|
|
1234
|
+
credit_amount: components["schemas"]["Money"];
|
|
1235
|
+
tax_amount: components["schemas"]["Money"];
|
|
1236
|
+
forfeited_amount: components["schemas"]["Money"];
|
|
1237
|
+
items: components["schemas"]["CancellationRefundPreviewItem"][];
|
|
1238
|
+
};
|
|
1239
|
+
/** @description One subscription of the preview. The amounts mean what they mean in the preview. */
|
|
1240
|
+
CancellationRefundPreviewItem: {
|
|
1241
|
+
/** Format: uuid */
|
|
1242
|
+
subscription_id: string;
|
|
1243
|
+
/** Format: uuid */
|
|
1244
|
+
plan_id: string;
|
|
1245
|
+
plan_name: string;
|
|
1246
|
+
/** @description The project and its current name, for display. Absent for a purchase at account level, and when the project details cannot be read at the moment. */
|
|
1247
|
+
project?: components["schemas"]["NamedIdentity"] | null;
|
|
1248
|
+
/** @enum {string} */
|
|
1249
|
+
billing_type: "postpaid" | "prepaid" | "one_time";
|
|
1250
|
+
unused_amount: components["schemas"]["Money"];
|
|
1251
|
+
refundable_amount: components["schemas"]["Money"];
|
|
1252
|
+
refund_amount: components["schemas"]["Money"];
|
|
1253
|
+
credit_amount: components["schemas"]["Money"];
|
|
1254
|
+
tax_amount: components["schemas"]["Money"];
|
|
1255
|
+
forfeited_amount: components["schemas"]["Money"];
|
|
1256
|
+
};
|
|
1257
|
+
CancellationCreate: {
|
|
1258
|
+
/** @description As in the preview. */
|
|
1259
|
+
subscription_ids: string[];
|
|
1260
|
+
mode: components["schemas"]["TerminationPolicy"];
|
|
1261
|
+
/**
|
|
1262
|
+
* Format: date-time
|
|
1263
|
+
* @description For `immediate`, the `proration_date` of the preview: a whole second, not in the future and
|
|
1264
|
+
* at most ten minutes old. The refund is computed as of it. Now when omitted.
|
|
1265
|
+
*/
|
|
1266
|
+
proration_date?: string;
|
|
1267
|
+
/** @description The `refundable_amount` of the preview. The cancellation is refused when the refund differs. */
|
|
1268
|
+
expected_refundable_amount: string;
|
|
1269
|
+
/** @description A note from the account holder. It is kept with the cancellation and not shown elsewhere. */
|
|
1270
|
+
reason?: string;
|
|
1271
|
+
};
|
|
1272
|
+
/**
|
|
1273
|
+
* @description One cancellation of a set of subscriptions of one service, released together at one time.
|
|
1274
|
+
*
|
|
1275
|
+
* - `requested`: `immediate`, release has not begun.
|
|
1276
|
+
* - `scheduled`: `period_end`, waiting for `scheduled_at`.
|
|
1277
|
+
* - `releasing`: release has begun; it can no longer be withdrawn.
|
|
1278
|
+
* - `completed`: every subscription has ended and its refund has been made.
|
|
1279
|
+
* - `canceled`: withdrawn before release began; the subscriptions continue.
|
|
1280
|
+
* - `failed`: the service could not carry it out, for the reason in `failure_code`; the
|
|
1281
|
+
* subscriptions continue and can be canceled again.
|
|
1282
|
+
*/
|
|
1283
|
+
Cancellation: {
|
|
1284
|
+
/** Format: uuid */
|
|
1285
|
+
id: string;
|
|
1286
|
+
/** @enum {string} */
|
|
1287
|
+
status: "requested" | "scheduled" | "releasing" | "completed" | "canceled" | "failed";
|
|
1288
|
+
mode: components["schemas"]["TerminationPolicy"];
|
|
1289
|
+
/** Format: date-time */
|
|
1290
|
+
scheduled_at?: string;
|
|
1291
|
+
/**
|
|
1292
|
+
* Format: date-time
|
|
1293
|
+
* @description For `immediate`, the second the refund is computed as of.
|
|
1294
|
+
*/
|
|
1295
|
+
proration_date?: string;
|
|
1296
|
+
/**
|
|
1297
|
+
* @description Who asked for it. `project_deletion` means the project was deleted.
|
|
1298
|
+
* @enum {string}
|
|
1299
|
+
*/
|
|
1300
|
+
origin: "customer" | "operator" | "project_deletion";
|
|
1301
|
+
currency: string;
|
|
1302
|
+
/** @description The refund confirmed when it was created. Absent when the platform created it. */
|
|
1303
|
+
expected_refundable_amount?: components["schemas"]["Money"];
|
|
1304
|
+
/**
|
|
1305
|
+
* @description Present with `failed`. A code of the service that provides the resources, such as a disk
|
|
1306
|
+
* that can only be released with its server. Clients map it to their own wording.
|
|
1307
|
+
*/
|
|
1308
|
+
failure_code?: string;
|
|
1309
|
+
/** Format: date-time */
|
|
1310
|
+
requested_at: string;
|
|
1311
|
+
/** Format: date-time */
|
|
1312
|
+
completed_at?: string;
|
|
1313
|
+
/** Format: date-time */
|
|
1314
|
+
canceled_at?: string;
|
|
1315
|
+
items: components["schemas"]["CancellationItem"][];
|
|
1316
|
+
};
|
|
1317
|
+
/** @description One subscription of the cancellation. */
|
|
1318
|
+
CancellationItem: {
|
|
1319
|
+
/**
|
|
1320
|
+
* Format: uuid
|
|
1321
|
+
* @description The cancellation request of this subscription, the same as `Subscription.cancellation_request.id`.
|
|
1322
|
+
*/
|
|
1323
|
+
id: string;
|
|
1324
|
+
/** Format: uuid */
|
|
1325
|
+
subscription_id: string;
|
|
1326
|
+
/** Format: uuid */
|
|
1327
|
+
plan_id: string;
|
|
1328
|
+
plan_name: string;
|
|
1329
|
+
/** @enum {string} */
|
|
1330
|
+
status: "requested" | "scheduled" | "releasing" | "completed" | "canceled" | "failed";
|
|
1331
|
+
/** Format: date-time */
|
|
1332
|
+
release_started_at?: string;
|
|
1333
|
+
/**
|
|
1334
|
+
* Format: date-time
|
|
1335
|
+
* @description When the service ended, as confirmed by the service that provides it.
|
|
1336
|
+
*/
|
|
1337
|
+
effective_at?: string;
|
|
1338
|
+
/** @description Present with `completed`. The part of the refund returned to the account balance. */
|
|
1339
|
+
balance_amount?: components["schemas"]["Money"];
|
|
1340
|
+
/** @description Present with `completed`. The part restored to the credit grants that paid. */
|
|
1341
|
+
credit_amount?: components["schemas"]["Money"];
|
|
1342
|
+
/** @description Present with `completed`. The part returned to the payment method it was paid with. */
|
|
1343
|
+
gateway_amount?: components["schemas"]["Money"];
|
|
1344
|
+
};
|
|
1345
|
+
CancellationList: {
|
|
1346
|
+
items: components["schemas"]["Cancellation"][];
|
|
1347
|
+
/** Format: int64 */
|
|
1348
|
+
total_count?: number;
|
|
1349
|
+
};
|
|
1040
1350
|
CancellationPreview: {
|
|
1041
1351
|
/** Format: uuid */
|
|
1042
1352
|
subscription_id: string;
|
|
@@ -1055,6 +1365,11 @@ export interface components {
|
|
|
1055
1365
|
/** @description A cancellation request for the original purchase. scheduled_at is the intended time; effective_at is the confirmed end of service. The request alone does not stop metering or issue a refund. */
|
|
1056
1366
|
CancellationRequest: {
|
|
1057
1367
|
reason?: string;
|
|
1368
|
+
/**
|
|
1369
|
+
* Format: uuid
|
|
1370
|
+
* @description The cancellation this request belongs to, with the other subscriptions released together.
|
|
1371
|
+
*/
|
|
1372
|
+
cancellation_id?: string;
|
|
1058
1373
|
/** Format: uuid */
|
|
1059
1374
|
id: string;
|
|
1060
1375
|
/** Format: uuid */
|
|
@@ -1646,6 +1961,10 @@ export interface components {
|
|
|
1646
1961
|
*
|
|
1647
1962
|
* `refunded` means the invoice was paid and has since been refunded in full; a partial refund
|
|
1648
1963
|
* leaves it `paid`, with the refunded part in `amount_refunded`.
|
|
1964
|
+
*
|
|
1965
|
+
* `void` means the invoice will not be paid and holds no money: nothing was paid, or its order
|
|
1966
|
+
* failed or was canceled and everything paid toward it has been returned, as `amount_paid` and
|
|
1967
|
+
* `amount_refunded` show.
|
|
1649
1968
|
* @enum {string}
|
|
1650
1969
|
*/
|
|
1651
1970
|
InvoiceStatus: "draft" | "open" | "paid" | "refunded" | "void" | "uncollectible";
|
|
@@ -1930,7 +2249,7 @@ export interface components {
|
|
|
1930
2249
|
* - `provisioning_failed`: the purchase could not be delivered.
|
|
1931
2250
|
* - `order_expired`: the order expired after part of it had been paid.
|
|
1932
2251
|
* - `order_canceled`: the account holder canceled the order after part of it had been paid.
|
|
1933
|
-
* - `change_canceled`: a scheduled change was withdrawn after it had been paid.
|
|
2252
|
+
* - `change_canceled`: a scheduled change was withdrawn after part of it had been paid.
|
|
1934
2253
|
* - `change_expired`: a scheduled change could not take effect before its time passed.
|
|
1935
2254
|
* - `subscription_canceled`: the subscription was canceled and its unused value returned under
|
|
1936
2255
|
* its refund terms.
|
|
@@ -2657,6 +2976,7 @@ export interface components {
|
|
|
2657
2976
|
ProjectId: string;
|
|
2658
2977
|
InvoiceId: string;
|
|
2659
2978
|
OrderId: string;
|
|
2979
|
+
CancellationId: string;
|
|
2660
2980
|
CancellationRequestId: string;
|
|
2661
2981
|
SubscriptionId: string;
|
|
2662
2982
|
PaymentMethodId: string;
|
|
@@ -3658,6 +3978,143 @@ export interface operations {
|
|
|
3658
3978
|
default: components["responses"]["Error"];
|
|
3659
3979
|
};
|
|
3660
3980
|
};
|
|
3981
|
+
"create-cancellation-preview": {
|
|
3982
|
+
parameters: {
|
|
3983
|
+
query?: never;
|
|
3984
|
+
header?: never;
|
|
3985
|
+
path?: never;
|
|
3986
|
+
cookie?: never;
|
|
3987
|
+
};
|
|
3988
|
+
requestBody: {
|
|
3989
|
+
content: {
|
|
3990
|
+
"application/json": components["schemas"]["CancellationPreviewRequest"];
|
|
3991
|
+
};
|
|
3992
|
+
};
|
|
3993
|
+
responses: {
|
|
3994
|
+
/** @description OK */
|
|
3995
|
+
200: {
|
|
3996
|
+
headers: {
|
|
3997
|
+
[name: string]: unknown;
|
|
3998
|
+
};
|
|
3999
|
+
content: {
|
|
4000
|
+
"application/json": components["schemas"]["CancellationRefundPreview"];
|
|
4001
|
+
};
|
|
4002
|
+
};
|
|
4003
|
+
default: components["responses"]["Error"];
|
|
4004
|
+
};
|
|
4005
|
+
};
|
|
4006
|
+
"list-cancellations": {
|
|
4007
|
+
parameters: {
|
|
4008
|
+
query?: {
|
|
4009
|
+
/** @description 1-based page number; the first page when omitted. */
|
|
4010
|
+
page?: components["parameters"]["Page"];
|
|
4011
|
+
/** @description How many per page, 100 at most. */
|
|
4012
|
+
page_size?: components["parameters"]["PageSize"];
|
|
4013
|
+
/** @description Restrict to one of your accounts. All of them when omitted. */
|
|
4014
|
+
billing_account_id?: components["parameters"]["AccountIdQuery"];
|
|
4015
|
+
/** @description Only cancellations that include this subscription. */
|
|
4016
|
+
subscription_id?: string;
|
|
4017
|
+
/** @description Only cancellations in this status. `open` means requested, scheduled or releasing. */
|
|
4018
|
+
status?: "open" | "requested" | "scheduled" | "releasing" | "completed" | "canceled" | "failed";
|
|
4019
|
+
};
|
|
4020
|
+
header?: never;
|
|
4021
|
+
path?: never;
|
|
4022
|
+
cookie?: never;
|
|
4023
|
+
};
|
|
4024
|
+
requestBody?: never;
|
|
4025
|
+
responses: {
|
|
4026
|
+
/** @description OK */
|
|
4027
|
+
200: {
|
|
4028
|
+
headers: {
|
|
4029
|
+
[name: string]: unknown;
|
|
4030
|
+
};
|
|
4031
|
+
content: {
|
|
4032
|
+
"application/json": components["schemas"]["CancellationList"];
|
|
4033
|
+
};
|
|
4034
|
+
};
|
|
4035
|
+
default: components["responses"]["Error"];
|
|
4036
|
+
};
|
|
4037
|
+
};
|
|
4038
|
+
"create-cancellation": {
|
|
4039
|
+
parameters: {
|
|
4040
|
+
query?: never;
|
|
4041
|
+
header?: never;
|
|
4042
|
+
path?: never;
|
|
4043
|
+
cookie?: never;
|
|
4044
|
+
};
|
|
4045
|
+
requestBody: {
|
|
4046
|
+
content: {
|
|
4047
|
+
"application/json": components["schemas"]["CancellationCreate"];
|
|
4048
|
+
};
|
|
4049
|
+
};
|
|
4050
|
+
responses: {
|
|
4051
|
+
/** @description The same cancellation, already open */
|
|
4052
|
+
200: {
|
|
4053
|
+
headers: {
|
|
4054
|
+
[name: string]: unknown;
|
|
4055
|
+
};
|
|
4056
|
+
content: {
|
|
4057
|
+
"application/json": components["schemas"]["Cancellation"];
|
|
4058
|
+
};
|
|
4059
|
+
};
|
|
4060
|
+
/** @description Created */
|
|
4061
|
+
201: {
|
|
4062
|
+
headers: {
|
|
4063
|
+
[name: string]: unknown;
|
|
4064
|
+
};
|
|
4065
|
+
content: {
|
|
4066
|
+
"application/json": components["schemas"]["Cancellation"];
|
|
4067
|
+
};
|
|
4068
|
+
};
|
|
4069
|
+
default: components["responses"]["Error"];
|
|
4070
|
+
};
|
|
4071
|
+
};
|
|
4072
|
+
"get-cancellation": {
|
|
4073
|
+
parameters: {
|
|
4074
|
+
query?: never;
|
|
4075
|
+
header?: never;
|
|
4076
|
+
path: {
|
|
4077
|
+
cancellationId: components["parameters"]["CancellationId"];
|
|
4078
|
+
};
|
|
4079
|
+
cookie?: never;
|
|
4080
|
+
};
|
|
4081
|
+
requestBody?: never;
|
|
4082
|
+
responses: {
|
|
4083
|
+
/** @description OK */
|
|
4084
|
+
200: {
|
|
4085
|
+
headers: {
|
|
4086
|
+
[name: string]: unknown;
|
|
4087
|
+
};
|
|
4088
|
+
content: {
|
|
4089
|
+
"application/json": components["schemas"]["Cancellation"];
|
|
4090
|
+
};
|
|
4091
|
+
};
|
|
4092
|
+
default: components["responses"]["Error"];
|
|
4093
|
+
};
|
|
4094
|
+
};
|
|
4095
|
+
"withdraw-cancellation": {
|
|
4096
|
+
parameters: {
|
|
4097
|
+
query?: never;
|
|
4098
|
+
header?: never;
|
|
4099
|
+
path: {
|
|
4100
|
+
cancellationId: components["parameters"]["CancellationId"];
|
|
4101
|
+
};
|
|
4102
|
+
cookie?: never;
|
|
4103
|
+
};
|
|
4104
|
+
requestBody?: never;
|
|
4105
|
+
responses: {
|
|
4106
|
+
/** @description OK */
|
|
4107
|
+
200: {
|
|
4108
|
+
headers: {
|
|
4109
|
+
[name: string]: unknown;
|
|
4110
|
+
};
|
|
4111
|
+
content: {
|
|
4112
|
+
"application/json": components["schemas"]["Cancellation"];
|
|
4113
|
+
};
|
|
4114
|
+
};
|
|
4115
|
+
default: components["responses"]["Error"];
|
|
4116
|
+
};
|
|
4117
|
+
};
|
|
3661
4118
|
"list-renewal-prices": {
|
|
3662
4119
|
parameters: {
|
|
3663
4120
|
query?: never;
|
|
@@ -19,6 +19,22 @@ export type ListProjectSubscriptionsQuery = operations["list-project-subscriptio
|
|
|
19
19
|
export type SetProjectAutoRenewResult = operations["set-project-auto-renew"]["responses"][200]["content"]["application/json"];
|
|
20
20
|
/** The request body of `PUT /api/v1/projects/{projectId}/subscriptions/{subscriptionId}/auto-renew`. */
|
|
21
21
|
export type SetProjectAutoRenewBody = NonNullable<operations["set-project-auto-renew"]["requestBody"]>["content"]["application/json"];
|
|
22
|
+
/** The success response body of `POST /api/v1/projects/{projectId}/cancellations/preview`. */
|
|
23
|
+
export type CreateProjectCancellationPreviewResult = operations["create-project-cancellation-preview"]["responses"][200]["content"]["application/json"];
|
|
24
|
+
/** The request body of `POST /api/v1/projects/{projectId}/cancellations/preview`. */
|
|
25
|
+
export type CreateProjectCancellationPreviewBody = NonNullable<operations["create-project-cancellation-preview"]["requestBody"]>["content"]["application/json"];
|
|
26
|
+
/** The success response body of `POST /api/v1/projects/{projectId}/cancellations`. */
|
|
27
|
+
export type CreateProjectCancellationResult = operations["create-project-cancellation"]["responses"][200]["content"]["application/json"];
|
|
28
|
+
/** The request body of `POST /api/v1/projects/{projectId}/cancellations`. */
|
|
29
|
+
export type CreateProjectCancellationBody = NonNullable<operations["create-project-cancellation"]["requestBody"]>["content"]["application/json"];
|
|
30
|
+
/** The success response body of `GET /api/v1/projects/{projectId}/cancellations`. */
|
|
31
|
+
export type ListProjectCancellationsResult = operations["list-project-cancellations"]["responses"][200]["content"]["application/json"];
|
|
32
|
+
/** The query parameters of `GET /api/v1/projects/{projectId}/cancellations`. */
|
|
33
|
+
export type ListProjectCancellationsQuery = operations["list-project-cancellations"]["parameters"]["query"];
|
|
34
|
+
/** The success response body of `GET /api/v1/projects/{projectId}/cancellations/{cancellationId}`. */
|
|
35
|
+
export type GetProjectCancellationResult = operations["get-project-cancellation"]["responses"][200]["content"]["application/json"];
|
|
36
|
+
/** The success response body of `POST /api/v1/projects/{projectId}/cancellations/{cancellationId}/withdraw`. */
|
|
37
|
+
export type WithdrawProjectCancellationResult = operations["withdraw-project-cancellation"]["responses"][200]["content"]["application/json"];
|
|
22
38
|
/** The success response body of `GET /api/v1/projects/{projectId}/orders`. */
|
|
23
39
|
export type ListProjectOrdersResult = operations["list-project-orders"]["responses"][200]["content"]["application/json"];
|
|
24
40
|
/** The query parameters of `GET /api/v1/projects/{projectId}/orders`. */
|
|
@@ -121,6 +121,142 @@ export interface paths {
|
|
|
121
121
|
patch?: never;
|
|
122
122
|
trace?: never;
|
|
123
123
|
};
|
|
124
|
+
"/api/v1/projects/{projectId}/cancellations/preview": {
|
|
125
|
+
parameters: {
|
|
126
|
+
query?: never;
|
|
127
|
+
header?: never;
|
|
128
|
+
path: {
|
|
129
|
+
projectId: components["parameters"]["ProjectId"];
|
|
130
|
+
};
|
|
131
|
+
cookie?: never;
|
|
132
|
+
};
|
|
133
|
+
get?: never;
|
|
134
|
+
put?: never;
|
|
135
|
+
/**
|
|
136
|
+
* Preview a cancellation
|
|
137
|
+
* @description What canceling these subscriptions together would return, computed now under the refund terms
|
|
138
|
+
* agreed when each was bought. This request does not create a resource: nothing is recorded or
|
|
139
|
+
* reserved.
|
|
140
|
+
*
|
|
141
|
+
* It is refused with the same errors as creating the cancellation, except that the amount is not
|
|
142
|
+
* checked. Give the returned `proration_date` and `refundable_amount` when creating it.
|
|
143
|
+
*/
|
|
144
|
+
post: operations["create-project-cancellation-preview"];
|
|
145
|
+
delete?: never;
|
|
146
|
+
options?: never;
|
|
147
|
+
head?: never;
|
|
148
|
+
patch?: never;
|
|
149
|
+
trace?: never;
|
|
150
|
+
};
|
|
151
|
+
"/api/v1/projects/{projectId}/cancellations": {
|
|
152
|
+
parameters: {
|
|
153
|
+
query?: never;
|
|
154
|
+
header?: never;
|
|
155
|
+
path: {
|
|
156
|
+
projectId: components["parameters"]["ProjectId"];
|
|
157
|
+
};
|
|
158
|
+
cookie?: never;
|
|
159
|
+
};
|
|
160
|
+
/**
|
|
161
|
+
* List cancellations
|
|
162
|
+
* @description Newest first. Filter by `subscription_id` and `status=open` to find the cancellation now under way for a subscription.
|
|
163
|
+
*/
|
|
164
|
+
get: operations["list-project-cancellations"];
|
|
165
|
+
put?: never;
|
|
166
|
+
/**
|
|
167
|
+
* Cancel subscriptions
|
|
168
|
+
* @description Ends a set of subscriptions of one service together, at one time. Deleting a resource that a
|
|
169
|
+
* subscription pays for is an `immediate` cancellation of every subscription released with it,
|
|
170
|
+
* such as a server with the disks deleted along with it, or an address with its bandwidth.
|
|
171
|
+
*
|
|
172
|
+
* The service that provides the resources releases them: at once for `immediate`, or at
|
|
173
|
+
* `scheduled_at`, the end of the paid term, for `period_end`. When release is confirmed, the
|
|
174
|
+
* unused value is returned the way it was paid, under the refund terms agreed when each
|
|
175
|
+
* subscription was bought. For `immediate` the refund is computed as of `proration_date`, so the
|
|
176
|
+
* amount confirmed here is the amount returned: prepaid service used while the resources are
|
|
177
|
+
* being released is not deducted from it. Usage of a postpaid subscription is charged until its
|
|
178
|
+
* resources are released, as usual.
|
|
179
|
+
*
|
|
180
|
+
* `mode` must be allowed for every subscription. Postpaid and one-time subscriptions end only
|
|
181
|
+
* `immediate`. A prepaid subscription ends `period_end` while its paid term lasts, and
|
|
182
|
+
* `immediate` unless its termination terms allow only the end of the paid term and that term has
|
|
183
|
+
* not ended yet. For `period_end` the paid terms of all the subscriptions must end at the same
|
|
184
|
+
* time.
|
|
185
|
+
*
|
|
186
|
+
* Refused with:
|
|
187
|
+
* - 400 `BILLING_CANCELLATION_INVALID` when `subscription_ids` or `proration_date` is not
|
|
188
|
+
* acceptable (`meta.field`), or the subscriptions do not all belong to one service, project,
|
|
189
|
+
* account and currency;
|
|
190
|
+
* - 409 `BILLING_CANCELLATION_CONFLICT` when a subscription has not started or has ended;
|
|
191
|
+
* - 422 `BILLING_CANCELLATION_MODE_FIXED` when `mode` is not allowed for a subscription, and
|
|
192
|
+
* `BILLING_CANCELLATION_TERMS_UNSET` when a prepaid subscription has no termination terms;
|
|
193
|
+
* both carry `meta.subscription_id`;
|
|
194
|
+
* - 409 `BILLING_CANCELLATION_SCHEDULES_DIFFER` when, for `period_end`, the paid terms end at
|
|
195
|
+
* different times;
|
|
196
|
+
* - 409 `BILLING_SUBSCRIPTION_OPERATION_PENDING` when a subscription is already being canceled
|
|
197
|
+
* (`meta.cancellation_id`) or reclaimed (`meta.job_id`);
|
|
198
|
+
* - 409 `BILLING_ORDER_PAYMENT_IN_FLIGHT` while an online payment for a renewal of one of them
|
|
199
|
+
* is in progress;
|
|
200
|
+
* - 422 `BILLING_CANCELLATION_UNSUPPORTED` when the service cannot yet be canceled here;
|
|
201
|
+
* - 409 `BILLING_CANCELLATION_REFUND_CHANGED` when the refund is no longer
|
|
202
|
+
* `expected_refundable_amount`; preview again.
|
|
203
|
+
*
|
|
204
|
+
* Sending the same request again, for the same subscriptions, mode and amount while that
|
|
205
|
+
* cancellation is still open, returns it with 200 rather than creating another. Renewal orders
|
|
206
|
+
* still waiting for payment are canceled along with it.
|
|
207
|
+
*/
|
|
208
|
+
post: operations["create-project-cancellation"];
|
|
209
|
+
delete?: never;
|
|
210
|
+
options?: never;
|
|
211
|
+
head?: never;
|
|
212
|
+
patch?: never;
|
|
213
|
+
trace?: never;
|
|
214
|
+
};
|
|
215
|
+
"/api/v1/projects/{projectId}/cancellations/{cancellationId}": {
|
|
216
|
+
parameters: {
|
|
217
|
+
query?: never;
|
|
218
|
+
header?: never;
|
|
219
|
+
path: {
|
|
220
|
+
projectId: components["parameters"]["ProjectId"];
|
|
221
|
+
cancellationId: components["parameters"]["CancellationId"];
|
|
222
|
+
};
|
|
223
|
+
cookie?: never;
|
|
224
|
+
};
|
|
225
|
+
/** Get a cancellation */
|
|
226
|
+
get: operations["get-project-cancellation"];
|
|
227
|
+
put?: never;
|
|
228
|
+
post?: never;
|
|
229
|
+
delete?: never;
|
|
230
|
+
options?: never;
|
|
231
|
+
head?: never;
|
|
232
|
+
patch?: never;
|
|
233
|
+
trace?: never;
|
|
234
|
+
};
|
|
235
|
+
"/api/v1/projects/{projectId}/cancellations/{cancellationId}/withdraw": {
|
|
236
|
+
parameters: {
|
|
237
|
+
query?: never;
|
|
238
|
+
header?: never;
|
|
239
|
+
path: {
|
|
240
|
+
projectId: components["parameters"]["ProjectId"];
|
|
241
|
+
cancellationId: components["parameters"]["CancellationId"];
|
|
242
|
+
};
|
|
243
|
+
cookie?: never;
|
|
244
|
+
};
|
|
245
|
+
get?: never;
|
|
246
|
+
put?: never;
|
|
247
|
+
/**
|
|
248
|
+
* Withdraw a cancellation
|
|
249
|
+
* @description Withdraws the whole cancellation while none of its resources has begun to be released; the
|
|
250
|
+
* subscriptions continue as before. After that it is refused with 409
|
|
251
|
+
* `BILLING_CANCELLATION_CONFLICT`. Withdrawing one that is already withdrawn returns it unchanged.
|
|
252
|
+
*/
|
|
253
|
+
post: operations["withdraw-project-cancellation"];
|
|
254
|
+
delete?: never;
|
|
255
|
+
options?: never;
|
|
256
|
+
head?: never;
|
|
257
|
+
patch?: never;
|
|
258
|
+
trace?: never;
|
|
259
|
+
};
|
|
124
260
|
"/api/v1/projects/{projectId}/orders": {
|
|
125
261
|
parameters: {
|
|
126
262
|
query?: never;
|
|
@@ -303,9 +439,165 @@ export interface components {
|
|
|
303
439
|
* @enum {string}
|
|
304
440
|
*/
|
|
305
441
|
RefundPolicy: "none" | "prorated";
|
|
442
|
+
CancellationPreviewRequest: {
|
|
443
|
+
/** @description The subscriptions to end together, all of one service. Every subscription released with a resource must be included. */
|
|
444
|
+
subscription_ids: string[];
|
|
445
|
+
mode: components["schemas"]["TerminationPolicy"];
|
|
446
|
+
};
|
|
447
|
+
/**
|
|
448
|
+
* @description What the cancellation would return, subscription by subscription and in total, as of now.
|
|
449
|
+
*
|
|
450
|
+
* - `unused_amount`: before tax, the value of the paid service still unused, whatever the refund
|
|
451
|
+
* terms say.
|
|
452
|
+
* - `refundable_amount`: what is returned the way it was paid, including the tax paid on it;
|
|
453
|
+
* `refund_amount` plus `credit_amount`.
|
|
454
|
+
* - `refund_amount`: the part returned to the balance or to the payment method.
|
|
455
|
+
* - `credit_amount`: the part restored to the credit grants that paid.
|
|
456
|
+
* - `tax_amount`: the tax included in `refundable_amount`.
|
|
457
|
+
* - `forfeited_amount`: before tax, the part of `unused_amount` the refund terms do not return.
|
|
458
|
+
*
|
|
459
|
+
* Postpaid and one-time subscriptions show zero; usage until release is charged as usual.
|
|
460
|
+
*/
|
|
461
|
+
CancellationRefundPreview: {
|
|
462
|
+
mode: components["schemas"]["TerminationPolicy"];
|
|
463
|
+
/**
|
|
464
|
+
* Format: date-time
|
|
465
|
+
* @description For `period_end`, when release begins, the end of the paid terms.
|
|
466
|
+
*/
|
|
467
|
+
scheduled_at?: string;
|
|
468
|
+
/**
|
|
469
|
+
* Format: date-time
|
|
470
|
+
* @description For `immediate`, the second the refund is computed as of. Give it when creating the cancellation.
|
|
471
|
+
*/
|
|
472
|
+
proration_date?: string;
|
|
473
|
+
currency: string;
|
|
474
|
+
unused_amount: components["schemas"]["Money"];
|
|
475
|
+
refundable_amount: components["schemas"]["Money"];
|
|
476
|
+
refund_amount: components["schemas"]["Money"];
|
|
477
|
+
credit_amount: components["schemas"]["Money"];
|
|
478
|
+
tax_amount: components["schemas"]["Money"];
|
|
479
|
+
forfeited_amount: components["schemas"]["Money"];
|
|
480
|
+
items: components["schemas"]["CancellationRefundPreviewItem"][];
|
|
481
|
+
};
|
|
482
|
+
/** @description One subscription of the preview. The amounts mean what they mean in the preview. */
|
|
483
|
+
CancellationRefundPreviewItem: {
|
|
484
|
+
/** Format: uuid */
|
|
485
|
+
subscription_id: string;
|
|
486
|
+
/** Format: uuid */
|
|
487
|
+
plan_id: string;
|
|
488
|
+
plan_name: string;
|
|
489
|
+
/** @description The project and its current name, for display. Absent for a purchase at account level, and when the project details cannot be read at the moment. */
|
|
490
|
+
project?: components["schemas"]["NamedIdentity"] | null;
|
|
491
|
+
/** @enum {string} */
|
|
492
|
+
billing_type: "postpaid" | "prepaid" | "one_time";
|
|
493
|
+
unused_amount: components["schemas"]["Money"];
|
|
494
|
+
refundable_amount: components["schemas"]["Money"];
|
|
495
|
+
refund_amount: components["schemas"]["Money"];
|
|
496
|
+
credit_amount: components["schemas"]["Money"];
|
|
497
|
+
tax_amount: components["schemas"]["Money"];
|
|
498
|
+
forfeited_amount: components["schemas"]["Money"];
|
|
499
|
+
};
|
|
500
|
+
CancellationCreate: {
|
|
501
|
+
/** @description As in the preview. */
|
|
502
|
+
subscription_ids: string[];
|
|
503
|
+
mode: components["schemas"]["TerminationPolicy"];
|
|
504
|
+
/**
|
|
505
|
+
* Format: date-time
|
|
506
|
+
* @description For `immediate`, the `proration_date` of the preview: a whole second, not in the future and
|
|
507
|
+
* at most ten minutes old. The refund is computed as of it. Now when omitted.
|
|
508
|
+
*/
|
|
509
|
+
proration_date?: string;
|
|
510
|
+
/** @description The `refundable_amount` of the preview. The cancellation is refused when the refund differs. */
|
|
511
|
+
expected_refundable_amount: string;
|
|
512
|
+
/** @description A note from the account holder. It is kept with the cancellation and not shown elsewhere. */
|
|
513
|
+
reason?: string;
|
|
514
|
+
};
|
|
515
|
+
/**
|
|
516
|
+
* @description One cancellation of a set of subscriptions of one service, released together at one time.
|
|
517
|
+
*
|
|
518
|
+
* - `requested`: `immediate`, release has not begun.
|
|
519
|
+
* - `scheduled`: `period_end`, waiting for `scheduled_at`.
|
|
520
|
+
* - `releasing`: release has begun; it can no longer be withdrawn.
|
|
521
|
+
* - `completed`: every subscription has ended and its refund has been made.
|
|
522
|
+
* - `canceled`: withdrawn before release began; the subscriptions continue.
|
|
523
|
+
* - `failed`: the service could not carry it out, for the reason in `failure_code`; the
|
|
524
|
+
* subscriptions continue and can be canceled again.
|
|
525
|
+
*/
|
|
526
|
+
Cancellation: {
|
|
527
|
+
/** Format: uuid */
|
|
528
|
+
id: string;
|
|
529
|
+
/** @enum {string} */
|
|
530
|
+
status: "requested" | "scheduled" | "releasing" | "completed" | "canceled" | "failed";
|
|
531
|
+
mode: components["schemas"]["TerminationPolicy"];
|
|
532
|
+
/** Format: date-time */
|
|
533
|
+
scheduled_at?: string;
|
|
534
|
+
/**
|
|
535
|
+
* Format: date-time
|
|
536
|
+
* @description For `immediate`, the second the refund is computed as of.
|
|
537
|
+
*/
|
|
538
|
+
proration_date?: string;
|
|
539
|
+
/**
|
|
540
|
+
* @description Who asked for it. `project_deletion` means the project was deleted.
|
|
541
|
+
* @enum {string}
|
|
542
|
+
*/
|
|
543
|
+
origin: "customer" | "operator" | "project_deletion";
|
|
544
|
+
currency: string;
|
|
545
|
+
/** @description The refund confirmed when it was created. Absent when the platform created it. */
|
|
546
|
+
expected_refundable_amount?: components["schemas"]["Money"];
|
|
547
|
+
/**
|
|
548
|
+
* @description Present with `failed`. A code of the service that provides the resources, such as a disk
|
|
549
|
+
* that can only be released with its server. Clients map it to their own wording.
|
|
550
|
+
*/
|
|
551
|
+
failure_code?: string;
|
|
552
|
+
/** Format: date-time */
|
|
553
|
+
requested_at: string;
|
|
554
|
+
/** Format: date-time */
|
|
555
|
+
completed_at?: string;
|
|
556
|
+
/** Format: date-time */
|
|
557
|
+
canceled_at?: string;
|
|
558
|
+
items: components["schemas"]["CancellationItem"][];
|
|
559
|
+
};
|
|
560
|
+
/** @description One subscription of the cancellation. */
|
|
561
|
+
CancellationItem: {
|
|
562
|
+
/**
|
|
563
|
+
* Format: uuid
|
|
564
|
+
* @description The cancellation request of this subscription, the same as `Subscription.cancellation_request.id`.
|
|
565
|
+
*/
|
|
566
|
+
id: string;
|
|
567
|
+
/** Format: uuid */
|
|
568
|
+
subscription_id: string;
|
|
569
|
+
/** Format: uuid */
|
|
570
|
+
plan_id: string;
|
|
571
|
+
plan_name: string;
|
|
572
|
+
/** @enum {string} */
|
|
573
|
+
status: "requested" | "scheduled" | "releasing" | "completed" | "canceled" | "failed";
|
|
574
|
+
/** Format: date-time */
|
|
575
|
+
release_started_at?: string;
|
|
576
|
+
/**
|
|
577
|
+
* Format: date-time
|
|
578
|
+
* @description When the service ended, as confirmed by the service that provides it.
|
|
579
|
+
*/
|
|
580
|
+
effective_at?: string;
|
|
581
|
+
/** @description Present with `completed`. The part of the refund returned to the account balance. */
|
|
582
|
+
balance_amount?: components["schemas"]["Money"];
|
|
583
|
+
/** @description Present with `completed`. The part restored to the credit grants that paid. */
|
|
584
|
+
credit_amount?: components["schemas"]["Money"];
|
|
585
|
+
/** @description Present with `completed`. The part returned to the payment method it was paid with. */
|
|
586
|
+
gateway_amount?: components["schemas"]["Money"];
|
|
587
|
+
};
|
|
588
|
+
CancellationList: {
|
|
589
|
+
items: components["schemas"]["Cancellation"][];
|
|
590
|
+
/** Format: int64 */
|
|
591
|
+
total_count?: number;
|
|
592
|
+
};
|
|
306
593
|
/** @description A cancellation request for the original purchase. scheduled_at is the intended time; effective_at is the confirmed end of service. The request alone does not stop metering or issue a refund. */
|
|
307
594
|
CancellationRequest: {
|
|
308
595
|
reason?: string;
|
|
596
|
+
/**
|
|
597
|
+
* Format: uuid
|
|
598
|
+
* @description The cancellation this request belongs to, with the other subscriptions released together.
|
|
599
|
+
*/
|
|
600
|
+
cancellation_id?: string;
|
|
309
601
|
/** Format: uuid */
|
|
310
602
|
id: string;
|
|
311
603
|
/** Format: uuid */
|
|
@@ -565,6 +857,9 @@ export interface components {
|
|
|
565
857
|
/**
|
|
566
858
|
* @description `refunded` means the invoice was paid and has since been refunded in full; a partial refund
|
|
567
859
|
* leaves it `paid`, with the refunded part in `amount_refunded`.
|
|
860
|
+
*
|
|
861
|
+
* `void` means the invoice will not be paid and holds no money: nothing was paid, or its order
|
|
862
|
+
* failed or was canceled and everything paid toward it has been returned.
|
|
568
863
|
* @enum {string}
|
|
569
864
|
*/
|
|
570
865
|
InvoiceStatus: "draft" | "open" | "paid" | "refunded" | "void" | "uncollectible";
|
|
@@ -1060,6 +1355,7 @@ export interface components {
|
|
|
1060
1355
|
};
|
|
1061
1356
|
};
|
|
1062
1357
|
parameters: {
|
|
1358
|
+
CancellationId: string;
|
|
1063
1359
|
/** @description 1-based page number; the first page when omitted. */
|
|
1064
1360
|
Page: number;
|
|
1065
1361
|
/** @description How many per page, 100 at most. */
|
|
@@ -1235,6 +1531,149 @@ export interface operations {
|
|
|
1235
1531
|
default: components["responses"]["Error"];
|
|
1236
1532
|
};
|
|
1237
1533
|
};
|
|
1534
|
+
"create-project-cancellation-preview": {
|
|
1535
|
+
parameters: {
|
|
1536
|
+
query?: never;
|
|
1537
|
+
header?: never;
|
|
1538
|
+
path: {
|
|
1539
|
+
projectId: components["parameters"]["ProjectId"];
|
|
1540
|
+
};
|
|
1541
|
+
cookie?: never;
|
|
1542
|
+
};
|
|
1543
|
+
requestBody: {
|
|
1544
|
+
content: {
|
|
1545
|
+
"application/json": components["schemas"]["CancellationPreviewRequest"];
|
|
1546
|
+
};
|
|
1547
|
+
};
|
|
1548
|
+
responses: {
|
|
1549
|
+
/** @description OK */
|
|
1550
|
+
200: {
|
|
1551
|
+
headers: {
|
|
1552
|
+
[name: string]: unknown;
|
|
1553
|
+
};
|
|
1554
|
+
content: {
|
|
1555
|
+
"application/json": components["schemas"]["CancellationRefundPreview"];
|
|
1556
|
+
};
|
|
1557
|
+
};
|
|
1558
|
+
default: components["responses"]["Error"];
|
|
1559
|
+
};
|
|
1560
|
+
};
|
|
1561
|
+
"list-project-cancellations": {
|
|
1562
|
+
parameters: {
|
|
1563
|
+
query?: {
|
|
1564
|
+
/** @description 1-based page number; the first page when omitted. */
|
|
1565
|
+
page?: components["parameters"]["Page"];
|
|
1566
|
+
/** @description How many per page, 100 at most. */
|
|
1567
|
+
page_size?: components["parameters"]["PageSize"];
|
|
1568
|
+
/** @description Only cancellations that include this subscription. */
|
|
1569
|
+
subscription_id?: string;
|
|
1570
|
+
/** @description Only cancellations in this status. `open` means requested, scheduled or releasing. */
|
|
1571
|
+
status?: "open" | "requested" | "scheduled" | "releasing" | "completed" | "canceled" | "failed";
|
|
1572
|
+
};
|
|
1573
|
+
header?: never;
|
|
1574
|
+
path: {
|
|
1575
|
+
projectId: components["parameters"]["ProjectId"];
|
|
1576
|
+
};
|
|
1577
|
+
cookie?: never;
|
|
1578
|
+
};
|
|
1579
|
+
requestBody?: never;
|
|
1580
|
+
responses: {
|
|
1581
|
+
/** @description OK */
|
|
1582
|
+
200: {
|
|
1583
|
+
headers: {
|
|
1584
|
+
[name: string]: unknown;
|
|
1585
|
+
};
|
|
1586
|
+
content: {
|
|
1587
|
+
"application/json": components["schemas"]["CancellationList"];
|
|
1588
|
+
};
|
|
1589
|
+
};
|
|
1590
|
+
default: components["responses"]["Error"];
|
|
1591
|
+
};
|
|
1592
|
+
};
|
|
1593
|
+
"create-project-cancellation": {
|
|
1594
|
+
parameters: {
|
|
1595
|
+
query?: never;
|
|
1596
|
+
header?: never;
|
|
1597
|
+
path: {
|
|
1598
|
+
projectId: components["parameters"]["ProjectId"];
|
|
1599
|
+
};
|
|
1600
|
+
cookie?: never;
|
|
1601
|
+
};
|
|
1602
|
+
requestBody: {
|
|
1603
|
+
content: {
|
|
1604
|
+
"application/json": components["schemas"]["CancellationCreate"];
|
|
1605
|
+
};
|
|
1606
|
+
};
|
|
1607
|
+
responses: {
|
|
1608
|
+
/** @description The same cancellation, already open */
|
|
1609
|
+
200: {
|
|
1610
|
+
headers: {
|
|
1611
|
+
[name: string]: unknown;
|
|
1612
|
+
};
|
|
1613
|
+
content: {
|
|
1614
|
+
"application/json": components["schemas"]["Cancellation"];
|
|
1615
|
+
};
|
|
1616
|
+
};
|
|
1617
|
+
/** @description Created */
|
|
1618
|
+
201: {
|
|
1619
|
+
headers: {
|
|
1620
|
+
[name: string]: unknown;
|
|
1621
|
+
};
|
|
1622
|
+
content: {
|
|
1623
|
+
"application/json": components["schemas"]["Cancellation"];
|
|
1624
|
+
};
|
|
1625
|
+
};
|
|
1626
|
+
default: components["responses"]["Error"];
|
|
1627
|
+
};
|
|
1628
|
+
};
|
|
1629
|
+
"get-project-cancellation": {
|
|
1630
|
+
parameters: {
|
|
1631
|
+
query?: never;
|
|
1632
|
+
header?: never;
|
|
1633
|
+
path: {
|
|
1634
|
+
projectId: components["parameters"]["ProjectId"];
|
|
1635
|
+
cancellationId: components["parameters"]["CancellationId"];
|
|
1636
|
+
};
|
|
1637
|
+
cookie?: never;
|
|
1638
|
+
};
|
|
1639
|
+
requestBody?: never;
|
|
1640
|
+
responses: {
|
|
1641
|
+
/** @description OK */
|
|
1642
|
+
200: {
|
|
1643
|
+
headers: {
|
|
1644
|
+
[name: string]: unknown;
|
|
1645
|
+
};
|
|
1646
|
+
content: {
|
|
1647
|
+
"application/json": components["schemas"]["Cancellation"];
|
|
1648
|
+
};
|
|
1649
|
+
};
|
|
1650
|
+
default: components["responses"]["Error"];
|
|
1651
|
+
};
|
|
1652
|
+
};
|
|
1653
|
+
"withdraw-project-cancellation": {
|
|
1654
|
+
parameters: {
|
|
1655
|
+
query?: never;
|
|
1656
|
+
header?: never;
|
|
1657
|
+
path: {
|
|
1658
|
+
projectId: components["parameters"]["ProjectId"];
|
|
1659
|
+
cancellationId: components["parameters"]["CancellationId"];
|
|
1660
|
+
};
|
|
1661
|
+
cookie?: never;
|
|
1662
|
+
};
|
|
1663
|
+
requestBody?: never;
|
|
1664
|
+
responses: {
|
|
1665
|
+
/** @description OK */
|
|
1666
|
+
200: {
|
|
1667
|
+
headers: {
|
|
1668
|
+
[name: string]: unknown;
|
|
1669
|
+
};
|
|
1670
|
+
content: {
|
|
1671
|
+
"application/json": components["schemas"]["Cancellation"];
|
|
1672
|
+
};
|
|
1673
|
+
};
|
|
1674
|
+
default: components["responses"]["Error"];
|
|
1675
|
+
};
|
|
1676
|
+
};
|
|
1238
1677
|
"list-project-orders": {
|
|
1239
1678
|
parameters: {
|
|
1240
1679
|
query?: {
|
|
@@ -46,7 +46,7 @@ export interface paths {
|
|
|
46
46
|
* Delete a backup
|
|
47
47
|
* @description Independent of the source disk: deletion succeeds whether or not that disk still exists.
|
|
48
48
|
*
|
|
49
|
-
* Refused with `COMPUTE_RESOURCE_SUBSCRIBED` while a subscription pays for the backup, including a pay-as-you-go subscription. `meta.resource_id` names the backup. It is released
|
|
49
|
+
* Refused with `COMPUTE_RESOURCE_SUBSCRIBED` while a subscription pays for the backup, including a pay-as-you-go subscription. `meta.resource_id` names the backup. It is released by canceling the subscriptions listed in `meta.subscription_ids` through Billing, the same set as its `release_subscription_ids`.
|
|
50
50
|
*/
|
|
51
51
|
delete: operations["delete-backup"];
|
|
52
52
|
options?: never;
|
|
@@ -240,7 +240,7 @@ export interface paths {
|
|
|
240
240
|
* Delete a disk
|
|
241
241
|
* @description Deletion is rejected while the disk is attached, or while snapshots created from it still exist.
|
|
242
242
|
*
|
|
243
|
-
* Refused with `COMPUTE_RESOURCE_SUBSCRIBED` while a subscription pays for the disk, including a pay-as-you-go subscription. `meta.resource_id` names the disk. It is released
|
|
243
|
+
* Refused with `COMPUTE_RESOURCE_SUBSCRIBED` while a subscription pays for the disk, including a pay-as-you-go subscription. `meta.resource_id` names the disk. It is released by canceling the subscriptions listed in `meta.subscription_ids` through Billing, the same set as its `release_subscription_ids`.
|
|
244
244
|
*/
|
|
245
245
|
delete: operations["delete-disk"];
|
|
246
246
|
options?: never;
|
|
@@ -342,7 +342,7 @@ export interface paths {
|
|
|
342
342
|
* Release a floating IP
|
|
343
343
|
* @description Releases the floating IP after unbinding it. Completion is reported by the returned task.
|
|
344
344
|
*
|
|
345
|
-
* Refused with `COMPUTE_RESOURCE_SUBSCRIBED` while a subscription pays for the address or for its bandwidth, including a pay-as-you-go subscription. `meta.resource_id` names the floating IP. It is released
|
|
345
|
+
* Refused with `COMPUTE_RESOURCE_SUBSCRIBED` while a subscription pays for the address or for its bandwidth, including a pay-as-you-go subscription. `meta.resource_id` names the floating IP. It is released by canceling the subscriptions listed in `meta.subscription_ids` through Billing, the same set as its `release_subscription_ids`.
|
|
346
346
|
*/
|
|
347
347
|
delete: operations["release-floating-ip"];
|
|
348
348
|
options?: never;
|
|
@@ -443,7 +443,7 @@ export interface paths {
|
|
|
443
443
|
*
|
|
444
444
|
* An instance being captured as a private image cannot be released. Wait for the capture to finish, or delete that image first.
|
|
445
445
|
*
|
|
446
|
-
* Refused with `COMPUTE_RESOURCE_SUBSCRIBED` while a subscription pays for the instance, or for a disk that is deleted with it, including a pay-as-you-go subscription. `meta.resource_id` names that resource.
|
|
446
|
+
* Refused with `COMPUTE_RESOURCE_SUBSCRIBED` while a subscription pays for the instance, or for a disk that is deleted with it, including a pay-as-you-go subscription. `meta.resource_id` names that resource. The instance is released by canceling the subscriptions listed in `meta.subscription_ids` through Billing, the same set as its `release_subscription_ids`.
|
|
447
447
|
*/
|
|
448
448
|
delete: operations["delete-instance"];
|
|
449
449
|
options?: never;
|
|
@@ -955,7 +955,7 @@ export interface paths {
|
|
|
955
955
|
*
|
|
956
956
|
* An image whose capture has not finished can be deleted; the capture is aborted.
|
|
957
957
|
*
|
|
958
|
-
* Refused with `COMPUTE_RESOURCE_SUBSCRIBED` while a subscription pays for the image, including a pay-as-you-go subscription. `meta.resource_id` names the image. It is released
|
|
958
|
+
* Refused with `COMPUTE_RESOURCE_SUBSCRIBED` while a subscription pays for the image, including a pay-as-you-go subscription. `meta.resource_id` names the image. It is released by canceling the subscriptions listed in `meta.subscription_ids` through Billing, the same set as its `release_subscription_ids`.
|
|
959
959
|
*/
|
|
960
960
|
delete: operations["delete-private-image"];
|
|
961
961
|
options?: never;
|
|
@@ -1256,7 +1256,7 @@ export interface paths {
|
|
|
1256
1256
|
post?: never;
|
|
1257
1257
|
/**
|
|
1258
1258
|
* Delete a snapshot
|
|
1259
|
-
* @description Refused with `COMPUTE_RESOURCE_SUBSCRIBED` while a subscription pays for the snapshot, including a pay-as-you-go subscription. `meta.resource_id` names the snapshot. It is released
|
|
1259
|
+
* @description Refused with `COMPUTE_RESOURCE_SUBSCRIBED` while a subscription pays for the snapshot, including a pay-as-you-go subscription. `meta.resource_id` names the snapshot. It is released by canceling the subscriptions listed in `meta.subscription_ids` through Billing, the same set as its `release_subscription_ids`.
|
|
1260
1260
|
*/
|
|
1261
1261
|
delete: operations["delete-snapshot"];
|
|
1262
1262
|
options?: never;
|
|
@@ -1451,6 +1451,8 @@ export interface components {
|
|
|
1451
1451
|
price_id: string | null;
|
|
1452
1452
|
/** Format: uuid */
|
|
1453
1453
|
subscription_item_id: string | null;
|
|
1454
|
+
/** @description The subscriptions a cancellation through Billing has to cover to release this backup: its own. Subscriptions that have ended are not listed, and the list is empty when no subscription pays for any of them. */
|
|
1455
|
+
release_subscription_ids: string[];
|
|
1454
1456
|
/** @enum {string|null} */
|
|
1455
1457
|
access_state: "pending" | "enabled" | "suspended" | "reclaimed" | null;
|
|
1456
1458
|
task: components["schemas"]["Task"] | null;
|
|
@@ -1533,6 +1535,8 @@ export interface components {
|
|
|
1533
1535
|
price_id: string | null;
|
|
1534
1536
|
/** Format: uuid */
|
|
1535
1537
|
subscription_item_id: string | null;
|
|
1538
|
+
/** @description The subscriptions a cancellation through Billing has to cover to release this disk: its own and those of its snapshots. A system disk is released only with its instance, so for a system disk the list is that of the instance. Subscriptions that have ended are not listed, and the list is empty when no subscription pays for any of them. */
|
|
1539
|
+
release_subscription_ids: string[];
|
|
1536
1540
|
/** @enum {string|null} */
|
|
1537
1541
|
access_state: "pending" | "enabled" | "suspended" | "reclaimed" | null;
|
|
1538
1542
|
task: components["schemas"]["Task"] | null;
|
|
@@ -1765,6 +1769,8 @@ export interface components {
|
|
|
1765
1769
|
price_id: string | null;
|
|
1766
1770
|
/** Format: uuid */
|
|
1767
1771
|
subscription_item_id: string | null;
|
|
1772
|
+
/** @description The subscriptions a cancellation through Billing has to cover to release this address: the subscriptions of the address and of its bandwidth. Subscriptions that have ended are not listed, and the list is empty when no subscription pays for any of them. */
|
|
1773
|
+
release_subscription_ids: string[];
|
|
1768
1774
|
/** @enum {string|null} */
|
|
1769
1775
|
access_state: "pending" | "enabled" | "suspended" | "reclaimed" | null;
|
|
1770
1776
|
task: components["schemas"]["Task"] | null;
|
|
@@ -1891,6 +1897,8 @@ export interface components {
|
|
|
1891
1897
|
price_id: string | null;
|
|
1892
1898
|
/** Format: uuid */
|
|
1893
1899
|
subscription_item_id: string | null;
|
|
1900
|
+
/** @description The subscriptions a cancellation through Billing has to cover to release this instance: its own, those of the disks deleted with it, and those of the snapshots of those disks. Subscriptions that have ended are not listed, and the list is empty when no subscription pays for any of them. */
|
|
1901
|
+
release_subscription_ids: string[];
|
|
1894
1902
|
/** @enum {string|null} */
|
|
1895
1903
|
access_state: "pending" | "enabled" | "suspended" | "reclaimed" | null;
|
|
1896
1904
|
/**
|
|
@@ -2187,6 +2195,8 @@ export interface components {
|
|
|
2187
2195
|
price_id: string | null;
|
|
2188
2196
|
/** Format: uuid */
|
|
2189
2197
|
subscription_item_id: string | null;
|
|
2198
|
+
/** @description The subscriptions a cancellation through Billing has to cover to release this private image: its own. Subscriptions that have ended are not listed, and the list is empty when no subscription pays for any of them. */
|
|
2199
|
+
release_subscription_ids: string[];
|
|
2190
2200
|
/** @enum {string|null} */
|
|
2191
2201
|
access_state: "pending" | "enabled" | "suspended" | "reclaimed" | null;
|
|
2192
2202
|
task: components["schemas"]["Task"] | null;
|
|
@@ -2406,6 +2416,8 @@ export interface components {
|
|
|
2406
2416
|
price_id: string | null;
|
|
2407
2417
|
/** Format: uuid */
|
|
2408
2418
|
subscription_item_id: string | null;
|
|
2419
|
+
/** @description The subscriptions a cancellation through Billing has to cover to release this snapshot: its own. Subscriptions that have ended are not listed, and the list is empty when no subscription pays for any of them. */
|
|
2420
|
+
release_subscription_ids: string[];
|
|
2409
2421
|
/** @enum {string|null} */
|
|
2410
2422
|
access_state: "pending" | "enabled" | "suspended" | "reclaimed" | null;
|
|
2411
2423
|
task: components["schemas"]["Task"] | null;
|