@archildata/api-types 0.0.49 → 0.0.51

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 (2) hide show
  1. package/index.d.ts +218 -21
  2. package/package.json +1 -1
package/index.d.ts CHANGED
@@ -13,7 +13,7 @@ export interface paths {
13
13
  };
14
14
  /**
15
15
  * Get billing summary
16
- * @description Returns the selected account's billing state and available actions.
16
+ * @description Returns the selected account's billing state and available actions. Accounts that share billing also share subscription and open-invoice information.
17
17
  */
18
18
  get: operations["getBillingSummary"];
19
19
  put?: never;
@@ -74,8 +74,8 @@ export interface paths {
74
74
  get?: never;
75
75
  put?: never;
76
76
  /**
77
- * Start card setup with Stripe Elements
78
- * @description Confirm the returned SetupIntent with Stripe Elements in the client.
77
+ * Start card setup
78
+ * @description Use the returned clientSecret to confirm card details in the client's payment form.
79
79
  */
80
80
  post: operations["createBillingSetupIntent"];
81
81
  delete?: never;
@@ -93,8 +93,8 @@ export interface paths {
93
93
  };
94
94
  get?: never;
95
95
  /**
96
- * Set the default method for customer invoices and the current subscription
97
- * @description Provide a saved method ID or a succeeded SetupIntent ID. The method must belong to the authenticated account's Stripe customer. Existing invoice debt is not paid by this action. Accounts with multiple billable subscriptions require support review.
96
+ * Set the default payment method
97
+ * @description Provide a saved payment method ID or a completed card setup ID. The payment method must belong to the selected account. This action does not pay outstanding invoices. Accounts with multiple billable subscriptions must contact support.
98
98
  */
99
99
  put: operations["setBillingDefaultPaymentMethod"];
100
100
  post?: never;
@@ -111,17 +111,57 @@ export interface paths {
111
111
  path?: never;
112
112
  cookie?: never;
113
113
  };
114
- /** Get invoice billing details from Stripe */
114
+ /** Get invoice billing details */
115
115
  get: operations["getBillingProfile"];
116
116
  put?: never;
117
117
  post?: never;
118
118
  delete?: never;
119
119
  options?: never;
120
120
  head?: never;
121
- /** Update invoice billing details in Stripe */
121
+ /** Update invoice billing details */
122
122
  patch: operations["updateBillingProfile"];
123
123
  trace?: never;
124
124
  };
125
+ "/api/billing/invoices": {
126
+ parameters: {
127
+ query?: never;
128
+ header?: never;
129
+ path?: never;
130
+ cookie?: never;
131
+ };
132
+ /**
133
+ * List account invoices
134
+ * @description Returns invoice summaries for the selected account's billing profile. Accounts that share billing have the same invoice history. The default page size is 24; use limit to request between 1 and 100 invoices. When nextCursor is returned, pass its value as cursor to fetch the next page.
135
+ */
136
+ get: operations["listBillingInvoices"];
137
+ put?: never;
138
+ post?: never;
139
+ delete?: never;
140
+ options?: never;
141
+ head?: never;
142
+ patch?: never;
143
+ trace?: never;
144
+ };
145
+ "/api/billing/invoices/{invoiceID}": {
146
+ parameters: {
147
+ query?: never;
148
+ header?: never;
149
+ path?: never;
150
+ cookie?: never;
151
+ };
152
+ /**
153
+ * Get invoice details and a PDF download link
154
+ * @description Returns invoice details and an optional invoicePdf download link. Line items and credit notes are paginated independently; limit applies to each section and defaults to 24, with values from 1 to 100 accepted. A true partialData value means at least one section has more items. To continue a section, pass its lineNextCursor as lineCursor or its creditNoteNextCursor as creditNoteCursor. Retrieve a new PDF link when needed rather than storing it for later use.
155
+ */
156
+ get: operations["getBillingInvoice"];
157
+ put?: never;
158
+ post?: never;
159
+ delete?: never;
160
+ options?: never;
161
+ head?: never;
162
+ patch?: never;
163
+ trace?: never;
164
+ };
125
165
  "/api/activity": {
126
166
  parameters: {
127
167
  query?: never;
@@ -801,13 +841,14 @@ export interface paths {
801
841
  /**
802
842
  * Set a sandbox's timeouts
803
843
  * @description Replaces one or both sandbox timeout settings. Updating `timeout` while
804
- * the sandbox is running resets its hard expiration deadline to that many
805
- * seconds from now. Updating `idle_ttl_seconds` resets the idle
806
- * countdown when no direct process connection is active; zero disables
807
- * idle expiry. Omitted settings remain unchanged. Updates are retained
808
- * across later stops and starts. For an inactive sandbox, they apply to
809
- * the next powered-on session. Sandboxes that are starting or shutting
810
- * down, or whose timeout changes concurrently, return 409.
844
+ * the sandbox is running moves its hard expiration deadline to that many
845
+ * seconds from now, but never past 24 hours after the session started.
846
+ * Updating `idle_ttl_seconds` resets the idle countdown when no direct
847
+ * process connection is active; zero disables idle expiry. Omitted
848
+ * settings remain unchanged. Updates are retained across later stops and
849
+ * starts. For an inactive sandbox, they apply to the next powered-on
850
+ * session. Sandboxes that are starting or shutting down, or whose timeout
851
+ * changes concurrently, return 409.
811
852
  */
812
853
  post: operations["setSandboxTimeout"];
813
854
  delete?: never;
@@ -877,7 +918,7 @@ export interface components {
877
918
  code?: string;
878
919
  };
879
920
  BillingOwner: {
880
- /** @description Selected account ID; linked accounts may share a Stripe customer. */
921
+ /** @description Selected account ID. */
881
922
  accountId: string;
882
923
  /** @enum {string} */
883
924
  type: "personal" | "organization";
@@ -930,7 +971,7 @@ export interface components {
930
971
  billingMode: "not_setup" | "self_serve" | "managed";
931
972
  /** @enum {string} */
932
973
  plan: "developer" | "team" | "enterprise" | "unknown";
933
- /** @description Stripe subscription status, `none`, or `managed`. */
974
+ /** @description Current subscription status, `none`, or `managed`. */
934
975
  subscriptionStatus: string;
935
976
  billingPeriod?: components["schemas"]["BillingPeriod"];
936
977
  /**
@@ -1038,6 +1079,87 @@ export interface components {
1038
1079
  success: boolean;
1039
1080
  data: components["schemas"]["BillingProfile"];
1040
1081
  };
1082
+ BillingInvoiceSummary: {
1083
+ id: string;
1084
+ number: string;
1085
+ /** Format: int64 */
1086
+ date: number;
1087
+ status: string;
1088
+ currency: string;
1089
+ /** Format: int64 */
1090
+ totalCents: number;
1091
+ /** Format: int64 */
1092
+ amountDueCents: number;
1093
+ /** Format: int64 */
1094
+ amountPaidCents: number;
1095
+ /** Format: int64 */
1096
+ amountRemainingCents: number;
1097
+ };
1098
+ ApiResponse_BillingInvoices: {
1099
+ success: boolean;
1100
+ data: components["schemas"]["BillingInvoiceSummary"][];
1101
+ nextCursor?: string;
1102
+ };
1103
+ BillingInvoiceTax: {
1104
+ /** Format: int64 */
1105
+ amountCents: number;
1106
+ /** Format: int64 */
1107
+ taxableAmountCents: number;
1108
+ type: string;
1109
+ };
1110
+ BillingInvoiceCredit: {
1111
+ /** Format: int64 */
1112
+ amountCents: number;
1113
+ type: string;
1114
+ };
1115
+ BillingInvoiceLine: {
1116
+ id: string;
1117
+ description: string;
1118
+ /** Format: int64 */
1119
+ amountCents: number;
1120
+ currency: string;
1121
+ /** Format: int64 */
1122
+ quantity: number;
1123
+ period?: components["schemas"]["BillingPeriod"];
1124
+ taxes: components["schemas"]["BillingInvoiceTax"][];
1125
+ pretaxCredits: components["schemas"]["BillingInvoiceCredit"][];
1126
+ };
1127
+ BillingCreditNote: {
1128
+ id: string;
1129
+ number: string;
1130
+ /** Format: int64 */
1131
+ date: number;
1132
+ status: string;
1133
+ type: string;
1134
+ currency: string;
1135
+ /** Format: int64 */
1136
+ totalCents: number;
1137
+ /** Format: int64 */
1138
+ prePaymentAmountCents: number;
1139
+ /** Format: int64 */
1140
+ postPaymentAmountCents: number;
1141
+ };
1142
+ BillingInvoiceDetail: components["schemas"]["BillingInvoiceSummary"] & {
1143
+ /** Format: int64 */
1144
+ subtotalCents: number;
1145
+ /** Format: int64 */
1146
+ prePaymentCreditNotesAmountCents: number;
1147
+ /** Format: int64 */
1148
+ postPaymentCreditNotesAmountCents: number;
1149
+ taxes: components["schemas"]["BillingInvoiceTax"][];
1150
+ pretaxCredits: components["schemas"]["BillingInvoiceCredit"][];
1151
+ lines: components["schemas"]["BillingInvoiceLine"][];
1152
+ creditNotes: components["schemas"]["BillingCreditNote"][];
1153
+ lineNextCursor?: string;
1154
+ creditNoteNextCursor?: string;
1155
+ partialData: boolean;
1156
+ /** Format: uri */
1157
+ invoicePdf?: string;
1158
+ };
1159
+ ApiResponse_BillingInvoiceDetail: {
1160
+ success: boolean;
1161
+ data: components["schemas"]["BillingInvoiceDetail"];
1162
+ };
1041
1163
  ActivityEvent: {
1042
1164
  accountId: string;
1043
1165
  /**
@@ -1120,7 +1242,7 @@ export interface components {
1120
1242
  egress?: components["schemas"]["SandboxEgressPolicy"];
1121
1243
  };
1122
1244
  SandboxTimeoutRequest: {
1123
- /** @description Seconds from now until a running sandbox expires, and the lifetime budget for its next powered-on session. */
1245
+ /** @description Seconds from now until a running sandbox expires, capped at 24 hours after its session started, and the lifetime budget for its next powered-on session. */
1124
1246
  timeout?: number;
1125
1247
  /** @description Seconds without a direct process connection before the sandbox pauses. Zero disables idle expiry. */
1126
1248
  idle_ttl_seconds?: number;
@@ -1133,7 +1255,7 @@ export interface components {
1133
1255
  status: components["schemas"]["SandboxState"];
1134
1256
  vcpu_count: number;
1135
1257
  mem_size_mib: number;
1136
- /** @description Lifetime budget applied independently to each powered-on session. Expiry pauses the sandbox, preserving memory and processes for resume. Defaults to 24 hours and can be reset with the timeout endpoint. */
1258
+ /** @description Lifetime budget applied independently to each powered-on session. Expiry pauses the sandbox, preserving memory and processes for resume. Defaults to 24 hours. The timeout endpoint can move the deadline, but no session runs longer than 24 hours. */
1137
1259
  max_ttl_seconds: number;
1138
1260
  /** @description Seconds without a direct process connection before the sandbox pauses, preserving memory and processes for resume. Zero disables idle expiry. */
1139
1261
  idle_ttl_seconds: number;
@@ -2398,7 +2520,7 @@ export interface operations {
2398
2520
  };
2399
2521
  };
2400
2522
  responses: {
2401
- /** @description Updated safe method details */
2523
+ /** @description Updated payment method details */
2402
2524
  200: {
2403
2525
  headers: {
2404
2526
  [name: string]: unknown;
@@ -2431,7 +2553,7 @@ export interface operations {
2431
2553
  };
2432
2554
  requestBody?: never;
2433
2555
  responses: {
2434
- /** @description SetupIntent for client-side confirmation */
2556
+ /** @description Card setup ID and client secret for confirmation */
2435
2557
  200: {
2436
2558
  headers: {
2437
2559
  [name: string]: unknown;
@@ -2485,7 +2607,7 @@ export interface operations {
2485
2607
  };
2486
2608
  };
2487
2609
  responses: {
2488
- /** @description Stripe defaults were fetched again and verified */
2610
+ /** @description Default payment method updated */
2489
2611
  200: {
2490
2612
  headers: {
2491
2613
  [name: string]: unknown;
@@ -2572,6 +2694,81 @@ export interface operations {
2572
2694
  502: components["responses"]["InternalError"];
2573
2695
  };
2574
2696
  };
2697
+ listBillingInvoices: {
2698
+ parameters: {
2699
+ query?: {
2700
+ limit?: number;
2701
+ /** @description Pagination cursor from a previous response */
2702
+ cursor?: components["parameters"]["Cursor"];
2703
+ };
2704
+ header?: never;
2705
+ path?: never;
2706
+ cookie?: never;
2707
+ };
2708
+ requestBody?: never;
2709
+ responses: {
2710
+ /** @description Invoice summaries and an optional next-page cursor */
2711
+ 200: {
2712
+ headers: {
2713
+ [name: string]: unknown;
2714
+ };
2715
+ content: {
2716
+ "application/json": components["schemas"]["ApiResponse_BillingInvoices"];
2717
+ };
2718
+ };
2719
+ 400: components["responses"]["ValidationError"];
2720
+ 401: components["responses"]["Unauthorized"];
2721
+ /** @description Billing is managed by Archil (`managed_billing`) */
2722
+ 409: {
2723
+ headers: {
2724
+ [name: string]: unknown;
2725
+ };
2726
+ content: {
2727
+ "application/json": components["schemas"]["ErrorResponse"];
2728
+ };
2729
+ };
2730
+ 502: components["responses"]["InternalError"];
2731
+ };
2732
+ };
2733
+ getBillingInvoice: {
2734
+ parameters: {
2735
+ query?: {
2736
+ limit?: number;
2737
+ lineCursor?: string;
2738
+ creditNoteCursor?: string;
2739
+ };
2740
+ header?: never;
2741
+ path: {
2742
+ invoiceID: string;
2743
+ };
2744
+ cookie?: never;
2745
+ };
2746
+ requestBody?: never;
2747
+ responses: {
2748
+ /** @description Invoice details with paginated line items and credit notes */
2749
+ 200: {
2750
+ headers: {
2751
+ [name: string]: unknown;
2752
+ };
2753
+ content: {
2754
+ "application/json": components["schemas"]["ApiResponse_BillingInvoiceDetail"];
2755
+ };
2756
+ };
2757
+ 400: components["responses"]["ValidationError"];
2758
+ 401: components["responses"]["Unauthorized"];
2759
+ 404: components["responses"]["NotFound"];
2760
+ /** @description Billing is managed by Archil (`managed_billing`) */
2761
+ 409: {
2762
+ headers: {
2763
+ [name: string]: unknown;
2764
+ };
2765
+ content: {
2766
+ "application/json": components["schemas"]["ErrorResponse"];
2767
+ };
2768
+ };
2769
+ 502: components["responses"]["InternalError"];
2770
+ };
2771
+ };
2575
2772
  listActivity: {
2576
2773
  parameters: {
2577
2774
  query?: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@archildata/api-types",
3
- "version": "0.0.49",
3
+ "version": "0.0.51",
4
4
  "description": "API types for the Archil control plane",
5
5
  "type": "module",
6
6
  "types": "index.d.ts",