diff --git a/Recurly/Constants.cs b/Recurly/Constants.cs
index 4b14d819..1f0967f8 100644
--- a/Recurly/Constants.cs
+++ b/Recurly/Constants.cs
@@ -833,6 +833,24 @@ public enum InvoiceState
};
+ public enum InvoiceStateQueryParam
+ {
+ Undefined = 0,
+
+ [EnumMember(Value = "pending")]
+ Pending,
+
+ [EnumMember(Value = "past_due")]
+ PastDue,
+
+ [EnumMember(Value = "paid")]
+ Paid,
+
+ [EnumMember(Value = "failed")]
+ Failed,
+
+ };
+
public enum CollectionMethod
{
Undefined = 0,
diff --git a/Recurly/IClient.cs b/Recurly/IClient.cs
index 6ec4816b..86457ea1 100644
--- a/Recurly/IClient.cs
+++ b/Recurly/IClient.cs
@@ -660,6 +660,7 @@ public interface IClient
///
/// Account ID or code. For ID no prefix is used e.g. `e28zov4fw0v2`. For code use prefix `code-`, e.g. `code-bob`.
/// Filter results by their IDs. Up to 200 IDs can be passed at once using commas as separators, e.g. `ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6`. **Important notes:** * The `ids` parameter cannot be used with any other ordering or filtering parameters (`limit`, `order`, `sort`, `begin_time`, `end_time`, etc) * Invalid or unknown IDs will be ignored, so you should check that the results correspond to your request. * Records are returned in an arbitrary order. Since results are all returned at once you can sort the records yourself.
+ /// Invoice state.
/// Limit number of records 1-200.
/// Sort order.
/// Sort field. You *really* only want to sort by `updated_at` in ascending order. In descending order updated records will move behind the cursor and could prevent some records from being returned.
@@ -1643,6 +1644,7 @@ public interface IClient
/// List a site's invoices list_invoices api documentation
///
/// Filter results by their IDs. Up to 200 IDs can be passed at once using commas as separators, e.g. `ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6`. **Important notes:** * The `ids` parameter cannot be used with any other ordering or filtering parameters (`limit`, `order`, `sort`, `begin_time`, `end_time`, etc) * Invalid or unknown IDs will be ignored, so you should check that the results correspond to your request. * Records are returned in an arbitrary order. Since results are all returned at once you can sort the records yourself.
+ /// Invoice state.
/// Limit number of records 1-200.
/// Sort order.
/// Sort field. You *really* only want to sort by `updated_at` in ascending order. In descending order updated records will move behind the cursor and could prevent some records from being returned.
@@ -2633,6 +2635,7 @@ public interface IClient
///
/// Subscription ID or UUID. For ID no prefix is used e.g. `e28zov4fw0v2`. For UUID use prefix `uuid-`, e.g. `uuid-123457890`.
/// Filter results by their IDs. Up to 200 IDs can be passed at once using commas as separators, e.g. `ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6`. **Important notes:** * The `ids` parameter cannot be used with any other ordering or filtering parameters (`limit`, `order`, `sort`, `begin_time`, `end_time`, etc) * Invalid or unknown IDs will be ignored, so you should check that the results correspond to your request. * Records are returned in an arbitrary order. Since results are all returned at once you can sort the records yourself.
+ /// Invoice state.
/// Limit number of records 1-200.
/// Sort order.
/// Sort field. You *really* only want to sort by `updated_at` in ascending order. In descending order updated records will move behind the cursor and could prevent some records from being returned.
@@ -3273,6 +3276,7 @@ public interface IClient
///
/// Business Entity ID. For ID no prefix is used e.g. `e28zov4fw0v2`. For code use prefix `code-`, e.g. `code-entity1`.
/// Filter results by their IDs. Up to 200 IDs can be passed at once using commas as separators, e.g. `ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6`. **Important notes:** * The `ids` parameter cannot be used with any other ordering or filtering parameters (`limit`, `order`, `sort`, `begin_time`, `end_time`, etc) * Invalid or unknown IDs will be ignored, so you should check that the results correspond to your request. * Records are returned in an arbitrary order. Since results are all returned at once you can sort the records yourself.
+ /// Invoice state.
/// Limit number of records 1-200.
/// Sort order.
/// Sort field. You *really* only want to sort by `updated_at` in ascending order. In descending order updated records will move behind the cursor and could prevent some records from being returned.
diff --git a/Recurly/Resources/ListAccountInvoicesParams.cs b/Recurly/Resources/ListAccountInvoicesParams.cs
index c55d13ab..c91b9a16 100644
--- a/Recurly/Resources/ListAccountInvoicesParams.cs
+++ b/Recurly/Resources/ListAccountInvoicesParams.cs
@@ -20,6 +20,10 @@ public class ListAccountInvoicesParams : OptionalParams
[JsonProperty("ids")]
public IList Ids { get; set; }
+ /// Invoice state.
+ [JsonProperty("state")]
+ public Constants.InvoiceStateQueryParam? State { get; set; }
+
/// Limit number of records 1-200.
[JsonProperty("limit")]
public int? Limit { get; set; }
diff --git a/Recurly/Resources/ListBusinessEntityInvoicesParams.cs b/Recurly/Resources/ListBusinessEntityInvoicesParams.cs
index 5cb27101..6ce3ad17 100644
--- a/Recurly/Resources/ListBusinessEntityInvoicesParams.cs
+++ b/Recurly/Resources/ListBusinessEntityInvoicesParams.cs
@@ -20,6 +20,10 @@ public class ListBusinessEntityInvoicesParams : OptionalParams
[JsonProperty("ids")]
public IList Ids { get; set; }
+ /// Invoice state.
+ [JsonProperty("state")]
+ public Constants.InvoiceStateQueryParam? State { get; set; }
+
/// Limit number of records 1-200.
[JsonProperty("limit")]
public int? Limit { get; set; }
diff --git a/Recurly/Resources/ListInvoicesParams.cs b/Recurly/Resources/ListInvoicesParams.cs
index 142f349a..ab5fa714 100644
--- a/Recurly/Resources/ListInvoicesParams.cs
+++ b/Recurly/Resources/ListInvoicesParams.cs
@@ -20,6 +20,10 @@ public class ListInvoicesParams : OptionalParams
[JsonProperty("ids")]
public IList Ids { get; set; }
+ /// Invoice state.
+ [JsonProperty("state")]
+ public Constants.InvoiceStateQueryParam? State { get; set; }
+
/// Limit number of records 1-200.
[JsonProperty("limit")]
public int? Limit { get; set; }
diff --git a/Recurly/Resources/ListSubscriptionInvoicesParams.cs b/Recurly/Resources/ListSubscriptionInvoicesParams.cs
index 2a6c1183..9b7a6c75 100644
--- a/Recurly/Resources/ListSubscriptionInvoicesParams.cs
+++ b/Recurly/Resources/ListSubscriptionInvoicesParams.cs
@@ -20,6 +20,10 @@ public class ListSubscriptionInvoicesParams : OptionalParams
[JsonProperty("ids")]
public IList Ids { get; set; }
+ /// Invoice state.
+ [JsonProperty("state")]
+ public Constants.InvoiceStateQueryParam? State { get; set; }
+
/// Limit number of records 1-200.
[JsonProperty("limit")]
public int? Limit { get; set; }
diff --git a/openapi/api.yaml b/openapi/api.yaml
index 8a8a6784..6e8d8d12 100644
--- a/openapi/api.yaml
+++ b/openapi/api.yaml
@@ -3521,6 +3521,7 @@ paths:
parameters:
- "$ref": "#/components/parameters/account_id"
- "$ref": "#/components/parameters/ids"
+ - "$ref": "#/components/parameters/invoice_state"
- "$ref": "#/components/parameters/limit"
- "$ref": "#/components/parameters/order"
- "$ref": "#/components/parameters/sort_dates"
@@ -8110,6 +8111,7 @@ paths:
to learn how to use pagination in the API and Client Libraries.
parameters:
- "$ref": "#/components/parameters/ids"
+ - "$ref": "#/components/parameters/invoice_state"
- "$ref": "#/components/parameters/limit"
- "$ref": "#/components/parameters/order"
- "$ref": "#/components/parameters/sort_dates"
@@ -13909,6 +13911,7 @@ paths:
parameters:
- "$ref": "#/components/parameters/subscription_id"
- "$ref": "#/components/parameters/ids"
+ - "$ref": "#/components/parameters/invoice_state"
- "$ref": "#/components/parameters/limit"
- "$ref": "#/components/parameters/order"
- "$ref": "#/components/parameters/sort_dates"
@@ -16282,6 +16285,7 @@ paths:
parameters:
- "$ref": "#/components/parameters/business_entity_id"
- "$ref": "#/components/parameters/ids"
+ - "$ref": "#/components/parameters/invoice_state"
- "$ref": "#/components/parameters/limit"
- "$ref": "#/components/parameters/order"
- "$ref": "#/components/parameters/sort_dates"
@@ -16455,6 +16459,12 @@ components:
required: true
schema:
type: string
+ invoice_state:
+ name: state
+ in: query
+ description: Invoice state.
+ schema:
+ "$ref": "#/components/schemas/InvoiceStateQueryParamEnum"
measured_unit_id:
name: measured_unit_id
in: path
@@ -21069,7 +21079,6 @@ components:
title: Ending quantity
minimum: 1
maximum: 999999999
- default:
description: Ending quantity for the tier. This represents a unit amount
for unit-priced add ons. Must be left empty if it is the final tier.
usage_percentage:
@@ -21106,7 +21115,6 @@ components:
title: Ending amount
minimum: 0.01
maximum: 9999999999999.99
- default:
description: Ending amount for the tier. Allows up to 2 decimal places.
Must be left empty if it is the final tier.
usage_percentage:
@@ -22070,7 +22078,6 @@ components:
title: Ending quantity
minimum: 1
maximum: 999999999
- default:
description: Ending quantity for the tier. This represents a unit amount
for unit-priced add ons. Must be left empty if it is the final tier.
unit_amount:
@@ -22103,7 +22110,6 @@ components:
title: Ending amount
minimum: 1
maximum: 9999999999999.99
- default:
description: Ending amount for the tier. Allows up to 2 decimal places.
Must be left empty if it is the final tier.
usage_percentage:
@@ -25193,6 +25199,7 @@ components:
- write_off
InvoiceStateEnum:
type: string
+ default: all
enum:
- open
- pending
@@ -25202,6 +25209,14 @@ components:
- closed
- failed
- voided
+ InvoiceStateQueryParamEnum:
+ type: string
+ default: all
+ enum:
+ - pending
+ - past_due
+ - paid
+ - failed
CollectionMethodEnum:
type: string
enum: