com.stripe.param.InvoiceItemListParams Maven / Gradle / Ivy
// Generated by com.stripe.generator.entity.SdkBuilder
package com.stripe.param;
import com.google.gson.annotations.SerializedName;
import com.stripe.net.ApiRequestParams;
import java.util.ArrayList;
import java.util.List;
public class InvoiceItemListParams extends ApiRequestParams {
@SerializedName("created")
Object created;
/**
* The identifier of the customer whose invoice items to return. If none is provided, all invoice
* items will be returned.
*/
@SerializedName("customer")
String customer;
/**
* A cursor for use in pagination. `ending_before` is an object ID that defines your place in the
* list. For instance, if you make a list request and receive 100 objects, starting with
* `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the
* previous page of the list.
*/
@SerializedName("ending_before")
String endingBefore;
/** Specifies which fields in the response should be expanded. */
@SerializedName("expand")
List expand;
/**
* Only return invoice items belonging to this invoice. If none is provided, all invoice items
* will be returned. If specifying an invoice, no customer identifier is needed.
*/
@SerializedName("invoice")
String invoice;
/**
* A limit on the number of objects to be returned. Limit can range between 1 and 100, and the
* default is 10.
*/
@SerializedName("limit")
Long limit;
/**
* Set to `true` to only show pending invoice items, which are not yet attached to any invoices.
* Set to `false` to only show invoice items already attached to invoices. If unspecified, no
* filter is applied.
*/
@SerializedName("pending")
Boolean pending;
/**
* A cursor for use in pagination. `starting_after` is an object ID that defines your place in the
* list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`,
* your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of
* the list.
*/
@SerializedName("starting_after")
String startingAfter;
private InvoiceItemListParams(
Object created,
String customer,
String endingBefore,
List expand,
String invoice,
Long limit,
Boolean pending,
String startingAfter) {
this.created = created;
this.customer = customer;
this.endingBefore = endingBefore;
this.expand = expand;
this.invoice = invoice;
this.limit = limit;
this.pending = pending;
this.startingAfter = startingAfter;
}
public static Builder builder() {
return new com.stripe.param.InvoiceItemListParams.Builder();
}
public static class Builder {
private Object created;
private String customer;
private String endingBefore;
private List expand;
private String invoice;
private Long limit;
private Boolean pending;
private String startingAfter;
/** Finalize and obtain parameter instance from this builder. */
public InvoiceItemListParams build() {
return new InvoiceItemListParams(
this.created,
this.customer,
this.endingBefore,
this.expand,
this.invoice,
this.limit,
this.pending,
this.startingAfter);
}
public Builder setCreated(Created created) {
this.created = created;
return this;
}
public Builder setCreated(Long created) {
this.created = created;
return this;
}
/**
* The identifier of the customer whose invoice items to return. If none is provided, all
* invoice items will be returned.
*/
public Builder setCustomer(String customer) {
this.customer = customer;
return this;
}
/**
* A cursor for use in pagination. `ending_before` is an object ID that defines your place in
* the list. For instance, if you make a list request and receive 100 objects, starting with
* `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the
* previous page of the list.
*/
public Builder setEndingBefore(String endingBefore) {
this.endingBefore = endingBefore;
return this;
}
/**
* Add an element to `expand` list. A list is initialized for the first `add/addAll` call, and
* subsequent calls adds additional elements to the original list. See {@link
* InvoiceItemListParams#expand} for the field documentation.
*/
public Builder addExpand(String element) {
if (this.expand == null) {
this.expand = new ArrayList<>();
}
this.expand.add(element);
return this;
}
/**
* Add all elements to `expand` list. A list is initialized for the first `add/addAll` call, and
* subsequent calls adds additional elements to the original list. See {@link
* InvoiceItemListParams#expand} for the field documentation.
*/
public Builder addAllExpand(List elements) {
if (this.expand == null) {
this.expand = new ArrayList<>();
}
this.expand.addAll(elements);
return this;
}
/**
* Only return invoice items belonging to this invoice. If none is provided, all invoice items
* will be returned. If specifying an invoice, no customer identifier is needed.
*/
public Builder setInvoice(String invoice) {
this.invoice = invoice;
return this;
}
/**
* A limit on the number of objects to be returned. Limit can range between 1 and 100, and the
* default is 10.
*/
public Builder setLimit(Long limit) {
this.limit = limit;
return this;
}
/**
* Set to `true` to only show pending invoice items, which are not yet attached to any invoices.
* Set to `false` to only show invoice items already attached to invoices. If unspecified, no
* filter is applied.
*/
public Builder setPending(Boolean pending) {
this.pending = pending;
return this;
}
/**
* A cursor for use in pagination. `starting_after` is an object ID that defines your place in
* the list. For instance, if you make a list request and receive 100 objects, ending with
* `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the
* next page of the list.
*/
public Builder setStartingAfter(String startingAfter) {
this.startingAfter = startingAfter;
return this;
}
}
public static class Created {
/** Minimum value to filter by (exclusive). */
@SerializedName("gt")
Long gt;
/** Minimum value to filter by (inclusive). */
@SerializedName("gte")
Long gte;
/** Maximum value to filter by (exclusive). */
@SerializedName("lt")
Long lt;
/** Maximum value to filter by (inclusive). */
@SerializedName("lte")
Long lte;
private Created(Long gt, Long gte, Long lt, Long lte) {
this.gt = gt;
this.gte = gte;
this.lt = lt;
this.lte = lte;
}
public static Builder builder() {
return new com.stripe.param.InvoiceItemListParams.Created.Builder();
}
public static class Builder {
private Long gt;
private Long gte;
private Long lt;
private Long lte;
/** Finalize and obtain parameter instance from this builder. */
public Created build() {
return new Created(this.gt, this.gte, this.lt, this.lte);
}
/** Minimum value to filter by (exclusive). */
public Builder setGt(Long gt) {
this.gt = gt;
return this;
}
/** Minimum value to filter by (inclusive). */
public Builder setGte(Long gte) {
this.gte = gte;
return this;
}
/** Maximum value to filter by (exclusive). */
public Builder setLt(Long lt) {
this.lt = lt;
return this;
}
/** Maximum value to filter by (inclusive). */
public Builder setLte(Long lte) {
this.lte = lte;
return this;
}
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy