v1

package
v0.89.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 8, 2024 License: Apache-2.0 Imports: 22 Imported by: 0

Documentation

Overview

Package v1 is a reverse proxy.

It translates gRPC into RESTful JSON APIs.

Package v1 contains the API of Billing services.

Index

Constants

View Source
const (

	// PermissionConfigGet is needed for getting the billing configuration of an organization
	PermissionConfigGet = "billing.config.get"
	// PermissionConfigSet is needed for setting the billing configuration of an organization
	PermissionConfigSet = "billing.config.set"
)
View Source
const (

	// PermissionInvoiceList is needed for listing invoices in an organization
	PermissionInvoiceList = "billing.invoice.list"
	// PermissionInvoiceGet is needed for getting indivual invoices in an organization
	PermissionInvoiceGet = "billing.invoice.get"
	// PermissionInvoiceGetPremiminary is needed for getting the preliminary invoice in an organization
	PermissionInvoiceGetPremiminary = "billing.invoice.get-preliminary"
)
View Source
const (

	// PermissionPaymentMethodList is needed for listing payment methods created for an organization
	PermissionPaymentMethodList = "billing.paymentmethod.list"
	// PermissionPaymentMethodGet is needed for getting individual payment methods created for an organization
	PermissionPaymentMethodGet = "billing.paymentmethod.get"
	// PermissionPaymentMethodDelete is needed for deleting individual payment methods
	PermissionPaymentMethodDelete = "billing.paymentmethod.delete"
	// PermissionPaymentMethodCreate is needed for creating individual payment methods
	PermissionPaymentMethodCreate = "billing.paymentmethod.create"
	// PermissionPaymentMethodUpdate is needed for updating individual payment methods
	PermissionPaymentMethodUpdate = "billing.paymentmethod.update"
	// PermissionPaymentMethodGetDefault is needed for getting the default payment method for an organization
	PermissionPaymentMethodGetDefault = "billing.paymentmethod.get-default"
	// PermissionPaymentMethodSetDefault is needed for changing the default payment method for an organization
	PermissionPaymentMethodSetDefault = "billing.paymentmethod.set-default"
)
View Source
const (

	// PaymentMethodTypeCreditCard indicates that the payment method
	// is of type creditcard.
	PaymentMethodTypeCreditCard = "creditcard"
	// PaymentMethodTypeInternalCredit indicates that the payment method
	// is of type credit.
	PaymentMethodTypeInternalCredit = "credit"
)
View Source
const (

	// CardTypeVisa indicates a VISA creditcard
	CardTypeVisa = "visa"
	// CardTypeMastercard indicates a Mastercard creditcard
	CardTypeMastercard = "mastercard"
)
View Source
const (
	// APIID contains identifier of this API
	APIID = "billing/v1"
	// APIMajorVersion contains major version of this API
	APIMajorVersion = 1
	// APIMinorVersion contains minor version of this API
	APIMinorVersion = 5
	// APIPatchVersion contains patch version of this API
	APIPatchVersion = 0
)
View Source
const (
	// KindInvoice is a constants for the kind of Invoice resources.
	KindInvoice = "Invoice"
)
View Source
const (
	// PermissionGetAvailableCredits is needed to get credits available to organization
	PermissionGetAvailableCredits = "billing.credits.get_available"
)
View Source
const (

	// PermissionOrganizationGet is needed for getting the billing flags of an organization
	PermissionOrganizationGet = "billing.organization.get"
)
View Source
const (

	// PermissionPaymentProviderList is needed for listing payment providers in the context of an organization
	PermissionPaymentProviderList = "billing.paymentprovider.list"
)

Variables

View Source
var File_billing_proto protoreflect.FileDescriptor

Functions

func ForEachInvoice

func ForEachInvoice(ctx context.Context, listFunc func(ctx context.Context, req *ListInvoicesRequest) (*InvoiceList, error),
	req *ListInvoicesRequest, cb InvoiceCallback) error

ForEachInvoice iterates over all invoices that match the given request, invoking the given callback for each invoice.

func ForEachPaymentMethod

ForEachPaymentMethod iterates over all payment methods that match the given request, invoking the given callback for each method.

func ForEachPaymentProvider

ForEachPaymentProvider iterates over all payment providers that match the given request, invoking the given callback for each provider.

func InvoiceURL

func InvoiceURL(organizationID, invoiceID string) string

InvoiceURL creates a resource URL for the Invoice with given ID in given context.

func RegisterBillingServiceHandler

func RegisterBillingServiceHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error

RegisterBillingServiceHandler registers the http handlers for service BillingService to "mux". The handlers forward requests to the grpc endpoint over "conn".

func RegisterBillingServiceHandlerClient

func RegisterBillingServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client BillingServiceClient) error

RegisterBillingServiceHandlerClient registers the http handlers for service BillingService to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "BillingServiceClient". Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "BillingServiceClient" doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in "BillingServiceClient" to call the correct interceptors.

func RegisterBillingServiceHandlerFromEndpoint

func RegisterBillingServiceHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error)

RegisterBillingServiceHandlerFromEndpoint is same as RegisterBillingServiceHandler but automatically dials to "endpoint" and closes the connection when "ctx" gets done.

func RegisterBillingServiceHandlerServer

func RegisterBillingServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, server BillingServiceServer) error

RegisterBillingServiceHandlerServer registers the http handlers for service BillingService to "mux". UnaryRPC :call BillingServiceServer directly. StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterBillingServiceHandlerFromEndpoint instead.

func RegisterBillingServiceServer

func RegisterBillingServiceServer(s *grpc.Server, srv BillingServiceServer)

Types

type Address

type Address struct {

	// Address lines
	Address []string `protobuf:"bytes,1,rep,name=address,proto3" json:"address,omitempty"`
	// ZIP code (if any)
	Zipcode string `protobuf:"bytes,2,opt,name=zipcode,proto3" json:"zipcode,omitempty"`
	// City
	City string `protobuf:"bytes,3,opt,name=city,proto3" json:"city,omitempty"`
	// State
	// For US, this must be an ISO 3166-2 2-letter state code
	// See https://en.wikipedia.org/wiki/List_of_U.S._state_abbreviations
	State string `protobuf:"bytes,4,opt,name=state,proto3" json:"state,omitempty"`
	// Country code
	CountryCode string `protobuf:"bytes,5,opt,name=country_code,json=countryCode,proto3" json:"country_code,omitempty"`
	// contains filtered or unexported fields
}

Address of organization

func (*Address) Descriptor deprecated

func (*Address) Descriptor() ([]byte, []int)

Deprecated: Use Address.ProtoReflect.Descriptor instead.

func (*Address) GetAddress

func (x *Address) GetAddress() []string

func (*Address) GetCity

func (x *Address) GetCity() string

func (*Address) GetCountryCode

func (x *Address) GetCountryCode() string

func (*Address) GetState

func (x *Address) GetState() string

func (*Address) GetZipcode

func (x *Address) GetZipcode() string

func (*Address) ProtoMessage

func (*Address) ProtoMessage()

func (*Address) ProtoReflect added in v0.89.0

func (x *Address) ProtoReflect() protoreflect.Message

func (*Address) Reset

func (x *Address) Reset()

func (*Address) String

func (x *Address) String() string

type AvailableCredits added in v0.74.3

type AvailableCredits struct {

	// contains information about credits in different currencies
	Credits []*AvailableCredits_CreditCurrencyAmount `protobuf:"bytes,1,rep,name=credits,proto3" json:"credits,omitempty"`
	// contains filtered or unexported fields
}

func (*AvailableCredits) Descriptor deprecated added in v0.74.3

func (*AvailableCredits) Descriptor() ([]byte, []int)

Deprecated: Use AvailableCredits.ProtoReflect.Descriptor instead.

func (*AvailableCredits) GetCredits added in v0.74.3

func (*AvailableCredits) ProtoMessage added in v0.74.3

func (*AvailableCredits) ProtoMessage()

func (*AvailableCredits) ProtoReflect added in v0.89.0

func (x *AvailableCredits) ProtoReflect() protoreflect.Message

func (*AvailableCredits) Reset added in v0.74.3

func (x *AvailableCredits) Reset()

func (*AvailableCredits) String added in v0.74.3

func (x *AvailableCredits) String() string

type AvailableCredits_CreditCurrencyAmount added in v0.74.3

type AvailableCredits_CreditCurrencyAmount struct {

	// amount of credit
	Amount float32 `protobuf:"fixed32,1,opt,name=amount,proto3" json:"amount,omitempty"`
	// identifier of the currency for this credit
	CurrencyId string `protobuf:"bytes,2,opt,name=currency_id,json=currencyId,proto3" json:"currency_id,omitempty"`
	// contains filtered or unexported fields
}

information abou Credit in a given currency

func (*AvailableCredits_CreditCurrencyAmount) Descriptor deprecated added in v0.74.3

func (*AvailableCredits_CreditCurrencyAmount) Descriptor() ([]byte, []int)

Deprecated: Use AvailableCredits_CreditCurrencyAmount.ProtoReflect.Descriptor instead.

func (*AvailableCredits_CreditCurrencyAmount) GetAmount added in v0.74.3

func (*AvailableCredits_CreditCurrencyAmount) GetCurrencyId added in v0.74.3

func (x *AvailableCredits_CreditCurrencyAmount) GetCurrencyId() string

func (*AvailableCredits_CreditCurrencyAmount) ProtoMessage added in v0.74.3

func (*AvailableCredits_CreditCurrencyAmount) ProtoMessage()

func (*AvailableCredits_CreditCurrencyAmount) ProtoReflect added in v0.89.0

func (*AvailableCredits_CreditCurrencyAmount) Reset added in v0.74.3

func (*AvailableCredits_CreditCurrencyAmount) String added in v0.74.3

type BillingConfig

type BillingConfig struct {

	// Address of the organization
	Address *Address `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	// EU VAT number of the organization (if any)
	VatNumber string `protobuf:"bytes,2,opt,name=vat_number,json=vatNumber,proto3" json:"vat_number,omitempty"`
	// Email address(es) to send emails related to billing (mostly invoices) to.
	EmailAddresses []string `protobuf:"bytes,3,rep,name=email_addresses,json=emailAddresses,proto3" json:"email_addresses,omitempty"`
	// US sales tax number of the organization (if any)
	UsTaxNumber string `protobuf:"bytes,4,opt,name=us_tax_number,json=usTaxNumber,proto3" json:"us_tax_number,omitempty"`
	// Legal name of the organization
	CompanyLegalName string `protobuf:"bytes,5,opt,name=company_legal_name,json=companyLegalName,proto3" json:"company_legal_name,omitempty"`
	// contains filtered or unexported fields
}

Billing configuration for an organization

func (*BillingConfig) Descriptor deprecated

func (*BillingConfig) Descriptor() ([]byte, []int)

Deprecated: Use BillingConfig.ProtoReflect.Descriptor instead.

func (*BillingConfig) GetAddress

func (x *BillingConfig) GetAddress() *Address

func (*BillingConfig) GetCompanyLegalName added in v0.72.1

func (x *BillingConfig) GetCompanyLegalName() string

func (*BillingConfig) GetEmailAddresses

func (x *BillingConfig) GetEmailAddresses() []string

func (*BillingConfig) GetUsTaxNumber

func (x *BillingConfig) GetUsTaxNumber() string

func (*BillingConfig) GetVatNumber

func (x *BillingConfig) GetVatNumber() string

func (*BillingConfig) ProtoMessage

func (*BillingConfig) ProtoMessage()

func (*BillingConfig) ProtoReflect added in v0.89.0

func (x *BillingConfig) ProtoReflect() protoreflect.Message

func (*BillingConfig) Reset

func (x *BillingConfig) Reset()

func (*BillingConfig) String

func (x *BillingConfig) String() string

type BillingServiceClient

type BillingServiceClient interface {
	// Get the current API version of this service.
	// Required permissions:
	// - None
	GetAPIVersion(ctx context.Context, in *v1.Empty, opts ...grpc.CallOption) (*v1.Version, error)
	// Fetch the billing specific flags for the organization identified by the given ID.
	// Required permissions:
	// - billing.organization.get
	GetOrganizationBillingFlags(ctx context.Context, in *v1.IDOptions, opts ...grpc.CallOption) (*OrganizationBillingFlags, error)
	// Fetch all Invoice resources for the organization identified by the given
	// organization ID that match the given criteria.
	// Required permissions:
	// - billing.invoice.list on the organization identified by the given organization ID
	ListInvoices(ctx context.Context, in *ListInvoicesRequest, opts ...grpc.CallOption) (*InvoiceList, error)
	// Fetch a specific Invoice identified by the given ID.
	// Required permissions:
	//   - billing.invoice.get on the organization that owns the invoice
	//     with given ID.
	GetInvoice(ctx context.Context, in *v1.IDOptions, opts ...grpc.CallOption) (*Invoice, error)
	// Fetch a preliminary Invoice identified by the given organization ID.
	// The preliminary invoice contains all costs from the last invoice (if any, otherwise the creation date of the organization) until last night (midnight UTC).
	// Required permissions:
	// - billing.invoice.get-preliminary on the organization identified by the given organization ID
	GetPreliminaryInvoice(ctx context.Context, in *GetPreliminaryInvoiceRequest, opts ...grpc.CallOption) (*Invoice, error)
	// Fetch a specific Invoice identified by the given ID as PDF document.
	// Required permissions:
	//   - billing.invoice.get on the organization that owns the invoice
	//     with given ID.
	GetInvoicePDF(ctx context.Context, in *v1.IDOptions, opts ...grpc.CallOption) (*PDFDocument, error)
	// Fetch all payment providers that are usable for the organization identified
	// by the given context ID.
	// Required permissions:
	// - billing.paymentprovider.list on the organization identified by the given context ID
	ListPaymentProviders(ctx context.Context, in *ListPaymentProvidersRequest, opts ...grpc.CallOption) (*PaymentProviderList, error)
	// Fetch a specific payment provider identified by the given ID.
	// Required permissions:
	// - None
	GetPaymentProvider(ctx context.Context, in *v1.IDOptions, opts ...grpc.CallOption) (*PaymentProvider, error)
	// Fetch all payment methods that are configured for the organization identified
	// by the given context ID.
	// Required permissions:
	// - billing.paymentmethod.list on the organization identified by the given context ID
	ListPaymentMethods(ctx context.Context, in *ListPaymentMethodsRequest, opts ...grpc.CallOption) (*PaymentMethodList, error)
	// Fetch a specific payment method identified by the given ID.
	// Required permissions:
	//   - billing.paymentmethod.get on the organization that owns the payment method
	//     which is identified by the given ID
	GetPaymentMethod(ctx context.Context, in *v1.IDOptions, opts ...grpc.CallOption) (*PaymentMethod, error)
	// Prepare the payment provider for creating a new payment method.
	// Required permissions:
	// - billing.paymentmethod.create on the organization that owns future payment method.
	PreparePaymentMethod(ctx context.Context, in *PreparePaymentMethodRequest, opts ...grpc.CallOption) (*PreparedPaymentMethod, error)
	// Create a new payment method.
	// Required permissions:
	// - billing.paymentmethod.create on the organization that owns the given payment method.
	CreatePaymentMethod(ctx context.Context, in *CreatePaymentMethodRequest, opts ...grpc.CallOption) (*PaymentMethod, error)
	// Update a specific payment method.
	// Note that only name, description & valid period are updated.
	// Required permissions:
	// - billing.paymentmethod.update on the organization that owns the given payment method.
	UpdatePaymentMethod(ctx context.Context, in *PaymentMethod, opts ...grpc.CallOption) (*PaymentMethod, error)
	// Delete a specific payment method identified by the given ID.
	// Required permissions:
	//   - billing.paymentmethod.delete on the organization that owns the given payment method
	//     which is identified by the given ID.
	DeletePaymentMethod(ctx context.Context, in *v1.IDOptions, opts ...grpc.CallOption) (*v1.Empty, error)
	// Fetch the default PaymentMethod for an organization identified by the given ID.
	// Required permissions:
	// - billing.paymentmethod.get-default on the organization that is identified by the given ID
	GetDefaultPaymentMethod(ctx context.Context, in *v1.IDOptions, opts ...grpc.CallOption) (*PaymentMethod, error)
	// Update the default PaymentMethod for an organization identified by the
	// given organization ID, to the payment method identified by the given payment method ID.
	// Required permissions:
	// - billing.paymentmethod.set-default on the organization identified by the given organization ID
	SetDefaultPaymentMethod(ctx context.Context, in *SetDefaultPaymentMethodRequest, opts ...grpc.CallOption) (*v1.Empty, error)
	// Fetch the billing configuration of an organization identified by the given ID.
	// Required permissions:
	// - billing.config.get on the organization that is identified by the given ID
	GetBillingConfig(ctx context.Context, in *v1.IDOptions, opts ...grpc.CallOption) (*BillingConfig, error)
	// Update the billing configuration for an organization identified by the
	// given organization ID.
	// Required permissions:
	// - billing.config.set on the organization identified by the given organization ID
	SetBillingConfig(ctx context.Context, in *SetBillingConfigRequest, opts ...grpc.CallOption) (*v1.Empty, error)
	// Get available credits for an organization identified by organization_id
	// Required permissions:
	// - billing.credits.get_available on the organization identified by the given organization ID
	GetAvailableCredits(ctx context.Context, in *GetAvailableCreditsRequest, opts ...grpc.CallOption) (*AvailableCredits, error)
}

BillingServiceClient is the client API for BillingService service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.

type BillingServiceServer

type BillingServiceServer interface {
	// Get the current API version of this service.
	// Required permissions:
	// - None
	GetAPIVersion(context.Context, *v1.Empty) (*v1.Version, error)
	// Fetch the billing specific flags for the organization identified by the given ID.
	// Required permissions:
	// - billing.organization.get
	GetOrganizationBillingFlags(context.Context, *v1.IDOptions) (*OrganizationBillingFlags, error)
	// Fetch all Invoice resources for the organization identified by the given
	// organization ID that match the given criteria.
	// Required permissions:
	// - billing.invoice.list on the organization identified by the given organization ID
	ListInvoices(context.Context, *ListInvoicesRequest) (*InvoiceList, error)
	// Fetch a specific Invoice identified by the given ID.
	// Required permissions:
	//   - billing.invoice.get on the organization that owns the invoice
	//     with given ID.
	GetInvoice(context.Context, *v1.IDOptions) (*Invoice, error)
	// Fetch a preliminary Invoice identified by the given organization ID.
	// The preliminary invoice contains all costs from the last invoice (if any, otherwise the creation date of the organization) until last night (midnight UTC).
	// Required permissions:
	// - billing.invoice.get-preliminary on the organization identified by the given organization ID
	GetPreliminaryInvoice(context.Context, *GetPreliminaryInvoiceRequest) (*Invoice, error)
	// Fetch a specific Invoice identified by the given ID as PDF document.
	// Required permissions:
	//   - billing.invoice.get on the organization that owns the invoice
	//     with given ID.
	GetInvoicePDF(context.Context, *v1.IDOptions) (*PDFDocument, error)
	// Fetch all payment providers that are usable for the organization identified
	// by the given context ID.
	// Required permissions:
	// - billing.paymentprovider.list on the organization identified by the given context ID
	ListPaymentProviders(context.Context, *ListPaymentProvidersRequest) (*PaymentProviderList, error)
	// Fetch a specific payment provider identified by the given ID.
	// Required permissions:
	// - None
	GetPaymentProvider(context.Context, *v1.IDOptions) (*PaymentProvider, error)
	// Fetch all payment methods that are configured for the organization identified
	// by the given context ID.
	// Required permissions:
	// - billing.paymentmethod.list on the organization identified by the given context ID
	ListPaymentMethods(context.Context, *ListPaymentMethodsRequest) (*PaymentMethodList, error)
	// Fetch a specific payment method identified by the given ID.
	// Required permissions:
	//   - billing.paymentmethod.get on the organization that owns the payment method
	//     which is identified by the given ID
	GetPaymentMethod(context.Context, *v1.IDOptions) (*PaymentMethod, error)
	// Prepare the payment provider for creating a new payment method.
	// Required permissions:
	// - billing.paymentmethod.create on the organization that owns future payment method.
	PreparePaymentMethod(context.Context, *PreparePaymentMethodRequest) (*PreparedPaymentMethod, error)
	// Create a new payment method.
	// Required permissions:
	// - billing.paymentmethod.create on the organization that owns the given payment method.
	CreatePaymentMethod(context.Context, *CreatePaymentMethodRequest) (*PaymentMethod, error)
	// Update a specific payment method.
	// Note that only name, description & valid period are updated.
	// Required permissions:
	// - billing.paymentmethod.update on the organization that owns the given payment method.
	UpdatePaymentMethod(context.Context, *PaymentMethod) (*PaymentMethod, error)
	// Delete a specific payment method identified by the given ID.
	// Required permissions:
	//   - billing.paymentmethod.delete on the organization that owns the given payment method
	//     which is identified by the given ID.
	DeletePaymentMethod(context.Context, *v1.IDOptions) (*v1.Empty, error)
	// Fetch the default PaymentMethod for an organization identified by the given ID.
	// Required permissions:
	// - billing.paymentmethod.get-default on the organization that is identified by the given ID
	GetDefaultPaymentMethod(context.Context, *v1.IDOptions) (*PaymentMethod, error)
	// Update the default PaymentMethod for an organization identified by the
	// given organization ID, to the payment method identified by the given payment method ID.
	// Required permissions:
	// - billing.paymentmethod.set-default on the organization identified by the given organization ID
	SetDefaultPaymentMethod(context.Context, *SetDefaultPaymentMethodRequest) (*v1.Empty, error)
	// Fetch the billing configuration of an organization identified by the given ID.
	// Required permissions:
	// - billing.config.get on the organization that is identified by the given ID
	GetBillingConfig(context.Context, *v1.IDOptions) (*BillingConfig, error)
	// Update the billing configuration for an organization identified by the
	// given organization ID.
	// Required permissions:
	// - billing.config.set on the organization identified by the given organization ID
	SetBillingConfig(context.Context, *SetBillingConfigRequest) (*v1.Empty, error)
	// Get available credits for an organization identified by organization_id
	// Required permissions:
	// - billing.credits.get_available on the organization identified by the given organization ID
	GetAvailableCredits(context.Context, *GetAvailableCreditsRequest) (*AvailableCredits, error)
}

BillingServiceServer is the server API for BillingService service.

type CreatePaymentMethodRequest

type CreatePaymentMethodRequest struct {

	// The result of PreparePaymentMethod.
	PreparedPaymentMethod *PreparedPaymentMethod `` /* 126-byte string literal not displayed */
	// First name of owner of payment method
	FirstName string `protobuf:"bytes,2,opt,name=first_name,json=firstName,proto3" json:"first_name,omitempty"`
	// Last name of owner of payment method
	LastName string `protobuf:"bytes,3,opt,name=last_name,json=lastName,proto3" json:"last_name,omitempty"`
	// contains filtered or unexported fields
}

Request arguments for CreatePaymentMethod

func (*CreatePaymentMethodRequest) Descriptor deprecated

func (*CreatePaymentMethodRequest) Descriptor() ([]byte, []int)

Deprecated: Use CreatePaymentMethodRequest.ProtoReflect.Descriptor instead.

func (*CreatePaymentMethodRequest) GetFirstName

func (x *CreatePaymentMethodRequest) GetFirstName() string

func (*CreatePaymentMethodRequest) GetLastName

func (x *CreatePaymentMethodRequest) GetLastName() string

func (*CreatePaymentMethodRequest) GetPreparedPaymentMethod

func (x *CreatePaymentMethodRequest) GetPreparedPaymentMethod() *PreparedPaymentMethod

func (*CreatePaymentMethodRequest) ProtoMessage

func (*CreatePaymentMethodRequest) ProtoMessage()

func (*CreatePaymentMethodRequest) ProtoReflect added in v0.89.0

func (*CreatePaymentMethodRequest) Reset

func (x *CreatePaymentMethodRequest) Reset()

func (*CreatePaymentMethodRequest) String

func (x *CreatePaymentMethodRequest) String() string

type GetAvailableCreditsRequest added in v0.74.3

type GetAvailableCreditsRequest struct {
	OrganizationId string `protobuf:"bytes,1,opt,name=organization_id,json=organizationId,proto3" json:"organization_id,omitempty"`
	// contains filtered or unexported fields
}

func (*GetAvailableCreditsRequest) Descriptor deprecated added in v0.74.3

func (*GetAvailableCreditsRequest) Descriptor() ([]byte, []int)

Deprecated: Use GetAvailableCreditsRequest.ProtoReflect.Descriptor instead.

func (*GetAvailableCreditsRequest) GetOrganizationId added in v0.74.3

func (x *GetAvailableCreditsRequest) GetOrganizationId() string

func (*GetAvailableCreditsRequest) ProtoMessage added in v0.74.3

func (*GetAvailableCreditsRequest) ProtoMessage()

func (*GetAvailableCreditsRequest) ProtoReflect added in v0.89.0

func (*GetAvailableCreditsRequest) Reset added in v0.74.3

func (x *GetAvailableCreditsRequest) Reset()

func (*GetAvailableCreditsRequest) String added in v0.74.3

func (x *GetAvailableCreditsRequest) String() string

type GetPreliminaryInvoiceRequest added in v0.63.9

type GetPreliminaryInvoiceRequest struct {

	// Identifier of the organization
	// This is a required field.
	OrganizationId string `protobuf:"bytes,1,opt,name=organization_id,json=organizationId,proto3" json:"organization_id,omitempty"`
	// contains filtered or unexported fields
}

Request argument for GetPreliminaryInvoice

func (*GetPreliminaryInvoiceRequest) Descriptor deprecated added in v0.63.9

func (*GetPreliminaryInvoiceRequest) Descriptor() ([]byte, []int)

Deprecated: Use GetPreliminaryInvoiceRequest.ProtoReflect.Descriptor instead.

func (*GetPreliminaryInvoiceRequest) GetOrganizationId added in v0.63.9

func (x *GetPreliminaryInvoiceRequest) GetOrganizationId() string

func (*GetPreliminaryInvoiceRequest) ProtoMessage added in v0.63.9

func (*GetPreliminaryInvoiceRequest) ProtoMessage()

func (*GetPreliminaryInvoiceRequest) ProtoReflect added in v0.89.0

func (*GetPreliminaryInvoiceRequest) Reset added in v0.63.9

func (x *GetPreliminaryInvoiceRequest) Reset()

func (*GetPreliminaryInvoiceRequest) String added in v0.63.9

type Invoice

type Invoice struct {

	// System identifier of the invoice.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// URL of this resource
	Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url,omitempty"`
	// Identifier of the organization that is responsible for the payment of this invoice.
	OrganizationId string `protobuf:"bytes,3,opt,name=organization_id,json=organizationId,proto3" json:"organization_id,omitempty"`
	// Name of the organization that is responsible for the payment of this invoice.
	OrganizationName string `protobuf:"bytes,4,opt,name=organization_name,json=organizationName,proto3" json:"organization_name,omitempty"`
	// Identifier of the legal entity that is the sender of this invoice.
	EntityId string `protobuf:"bytes,5,opt,name=entity_id,json=entityId,proto3" json:"entity_id,omitempty"`
	// Name of the legal entity that is the sender of this invoice.
	EntityName string `protobuf:"bytes,6,opt,name=entity_name,json=entityName,proto3" json:"entity_name,omitempty"`
	// Invoice number (used by accounting)
	InvoiceNumber string `protobuf:"bytes,7,opt,name=invoice_number,json=invoiceNumber,proto3" json:"invoice_number,omitempty"`
	// The creation date of the invoice
	CreatedAt *timestamppb.Timestamp `protobuf:"bytes,10,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	// If set, this invoice must be manually verified
	// before payment can be initiated.
	RequiresManualVerification bool `` /* 143-byte string literal not displayed */
	// The last update date of the invoice.
	// This applies to 'specification' only and doesn't apply to status or payments changes.
	LastUpdatedAt *timestamppb.Timestamp `protobuf:"bytes,12,opt,name=last_updated_at,json=lastUpdatedAt,proto3" json:"last_updated_at,omitempty"`
	// The list of email addresses that this invoice (and payments related to this invoice) will be send to.
	EmailAddresses []string `protobuf:"bytes,13,rep,name=email_addresses,json=emailAddresses,proto3" json:"email_addresses,omitempty"`
	// If set, this invoice is generated for an organization that is configured to use purchase orders.
	PurchaseOrderBased bool `protobuf:"varint,14,opt,name=purchase_order_based,json=purchaseOrderBased,proto3" json:"purchase_order_based,omitempty"`
	// The version of the invoice-builder who created the invoice.
	InvoiceBuilderVersion string `` /* 127-byte string literal not displayed */
	// All items of the invoice
	Items []*Invoice_Item `protobuf:"bytes,100,rep,name=items,proto3" json:"items,omitempty"`
	// Currency for all amounts
	CurrencyId string `protobuf:"bytes,110,opt,name=currency_id,json=currencyId,proto3" json:"currency_id,omitempty"`
	// Sum all amount for all items (excluding VAT and sales tax)
	TotalAmountExclTaxes float32 `` /* 129-byte string literal not displayed */
	// VAT amount for all items (applicable for Entity GmbH)
	TotalVat float32 `protobuf:"fixed32,112,opt,name=total_vat,json=totalVat,proto3" json:"total_vat,omitempty"`
	// If set, the VAT reverse charge rule is applied for this invoice.
	VatReverseCharge bool `protobuf:"varint,114,opt,name=vat_reverse_charge,json=vatReverseCharge,proto3" json:"vat_reverse_charge,omitempty"`
	// The VAT percentage used
	VatPercentageUsed float32 `protobuf:"fixed32,115,opt,name=vat_percentage_used,json=vatPercentageUsed,proto3" json:"vat_percentage_used,omitempty"`
	// Sales tax amount for all items (applicable for Entity Inc.)
	TotalSalesTax float32 `protobuf:"fixed32,116,opt,name=total_sales_tax,json=totalSalesTax,proto3" json:"total_sales_tax,omitempty"`
	// The sales tax percentage used
	SalesTaxPercentageUsed float32 `` /* 135-byte string literal not displayed */
	// Sum of total_amount_excl_taxes + total_vat + total_sales_tax.
	// This is the amount that the customer will be charged for.
	TotalAmountInclTaxes float32         `` /* 129-byte string literal not displayed */
	Status               *Invoice_Status `protobuf:"bytes,200,opt,name=status,proto3" json:"status,omitempty"`
	// All payment attempts for this invoice, ordered by created_at.
	Payments []*Invoice_Payment `protobuf:"bytes,201,rep,name=payments,proto3" json:"payments,omitempty"`
	// contains filtered or unexported fields
}

An Invoice message describes a transaction for usage of ArangoGraph Insights Platform.

func (*Invoice) Descriptor deprecated

func (*Invoice) Descriptor() ([]byte, []int)

Deprecated: Use Invoice.ProtoReflect.Descriptor instead.

func (*Invoice) GetCreatedAt

func (x *Invoice) GetCreatedAt() *timestamppb.Timestamp

func (*Invoice) GetCurrencyId

func (x *Invoice) GetCurrencyId() string

func (*Invoice) GetEmailAddresses

func (x *Invoice) GetEmailAddresses() []string

func (*Invoice) GetEntityId

func (x *Invoice) GetEntityId() string

func (*Invoice) GetEntityName

func (x *Invoice) GetEntityName() string

func (*Invoice) GetId

func (x *Invoice) GetId() string

func (*Invoice) GetInvoiceBuilderVersion

func (x *Invoice) GetInvoiceBuilderVersion() string

func (*Invoice) GetInvoiceNumber

func (x *Invoice) GetInvoiceNumber() string

func (*Invoice) GetItems

func (x *Invoice) GetItems() []*Invoice_Item

func (*Invoice) GetLastUpdatedAt

func (x *Invoice) GetLastUpdatedAt() *timestamppb.Timestamp

func (*Invoice) GetOrganizationId

func (x *Invoice) GetOrganizationId() string

func (*Invoice) GetOrganizationName

func (x *Invoice) GetOrganizationName() string

func (*Invoice) GetPayments

func (x *Invoice) GetPayments() []*Invoice_Payment

func (*Invoice) GetPurchaseOrderBased

func (x *Invoice) GetPurchaseOrderBased() bool

func (*Invoice) GetRequiresManualVerification

func (x *Invoice) GetRequiresManualVerification() bool

func (*Invoice) GetSalesTaxPercentageUsed

func (x *Invoice) GetSalesTaxPercentageUsed() float32

func (*Invoice) GetStatus

func (x *Invoice) GetStatus() *Invoice_Status

func (*Invoice) GetTotalAmountExclTaxes

func (x *Invoice) GetTotalAmountExclTaxes() float32

func (*Invoice) GetTotalAmountInclTaxes

func (x *Invoice) GetTotalAmountInclTaxes() float32

func (*Invoice) GetTotalSalesTax

func (x *Invoice) GetTotalSalesTax() float32

func (*Invoice) GetTotalVat

func (x *Invoice) GetTotalVat() float32

func (*Invoice) GetUrl

func (x *Invoice) GetUrl() string

func (*Invoice) GetVatPercentageUsed

func (x *Invoice) GetVatPercentageUsed() float32

func (*Invoice) GetVatReverseCharge

func (x *Invoice) GetVatReverseCharge() bool

func (*Invoice) ProtoMessage

func (*Invoice) ProtoMessage()

func (*Invoice) ProtoReflect added in v0.89.0

func (x *Invoice) ProtoReflect() protoreflect.Message

func (*Invoice) Reset

func (x *Invoice) Reset()

func (*Invoice) String

func (x *Invoice) String() string

type InvoiceCallback

type InvoiceCallback func(context.Context, *Invoice) error

InvoiceCallback is a callback for individual invoices.

type InvoiceList

type InvoiceList struct {
	Items []*Invoice `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	// contains filtered or unexported fields
}

List of Invoices.

func (*InvoiceList) Descriptor deprecated

func (*InvoiceList) Descriptor() ([]byte, []int)

Deprecated: Use InvoiceList.ProtoReflect.Descriptor instead.

func (*InvoiceList) GetItems

func (x *InvoiceList) GetItems() []*Invoice

func (*InvoiceList) ProtoMessage

func (*InvoiceList) ProtoMessage()

func (*InvoiceList) ProtoReflect added in v0.89.0

func (x *InvoiceList) ProtoReflect() protoreflect.Message

func (*InvoiceList) Reset

func (x *InvoiceList) Reset()

func (*InvoiceList) String

func (x *InvoiceList) String() string

type Invoice_Item

type Invoice_Item struct {

	// Identifiers of the UsageItems that this item covers.
	UsageitemIds []string `protobuf:"bytes,4,rep,name=usageitem_ids,json=usageitemIds,proto3" json:"usageitem_ids,omitempty"`
	// Amount of money (ex VAT) for this item
	Amount float32 `protobuf:"fixed32,2,opt,name=amount,proto3" json:"amount,omitempty"`
	// Human readable description of this item
	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	// If set, this invoice item is already prepaid
	IsPrepaid bool `protobuf:"varint,5,opt,name=is_prepaid,json=isPrepaid,proto3" json:"is_prepaid,omitempty"`
	// If set, this invoice item is already prepaid in credits.
	IsPrepaidCredits bool `protobuf:"varint,6,opt,name=is_prepaid_credits,json=isPrepaidCredits,proto3" json:"is_prepaid_credits,omitempty"`
	// contains filtered or unexported fields
}

A single item of the invoice

func (*Invoice_Item) Descriptor deprecated

func (*Invoice_Item) Descriptor() ([]byte, []int)

Deprecated: Use Invoice_Item.ProtoReflect.Descriptor instead.

func (*Invoice_Item) GetAmount

func (x *Invoice_Item) GetAmount() float32

func (*Invoice_Item) GetDescription

func (x *Invoice_Item) GetDescription() string

func (*Invoice_Item) GetIsPrepaid added in v0.70.0

func (x *Invoice_Item) GetIsPrepaid() bool

func (*Invoice_Item) GetIsPrepaidCredits added in v0.81.3

func (x *Invoice_Item) GetIsPrepaidCredits() bool

func (*Invoice_Item) GetUsageitemIds

func (x *Invoice_Item) GetUsageitemIds() []string

func (*Invoice_Item) ProtoMessage

func (*Invoice_Item) ProtoMessage()

func (*Invoice_Item) ProtoReflect added in v0.89.0

func (x *Invoice_Item) ProtoReflect() protoreflect.Message

func (*Invoice_Item) Reset

func (x *Invoice_Item) Reset()

func (*Invoice_Item) String

func (x *Invoice_Item) String() string

type Invoice_Payment

type Invoice_Payment struct {

	// The timestamp of the start of the payment attempt.
	CreatedAt *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	// Identifier of the payment provider that is used for this payment.
	PaymentProviderId string `protobuf:"bytes,2,opt,name=payment_provider_id,json=paymentProviderId,proto3" json:"payment_provider_id,omitempty"`
	// Identifier of this payment (created by payment provider)
	PaymentId string `protobuf:"bytes,3,opt,name=payment_id,json=paymentId,proto3" json:"payment_id,omitempty"`
	// Identifier of the payment method that is used for this payment.
	PaymentMethodId string `protobuf:"bytes,4,opt,name=payment_method_id,json=paymentMethodId,proto3" json:"payment_method_id,omitempty"`
	// If set, this payment is still being processed.
	IsPending bool `protobuf:"varint,10,opt,name=is_pending,json=isPending,proto3" json:"is_pending,omitempty"`
	// If set, this payment has been payed for succesfully.
	IsCompleted bool `protobuf:"varint,11,opt,name=is_completed,json=isCompleted,proto3" json:"is_completed,omitempty"`
	// If set, this payment has been rejected.
	IsRejected bool `protobuf:"varint,12,opt,name=is_rejected,json=isRejected,proto3" json:"is_rejected,omitempty"`
	// The timestamp of succesfull completion of the payment.
	CompletedAt *timestamppb.Timestamp `protobuf:"bytes,20,opt,name=completed_at,json=completedAt,proto3" json:"completed_at,omitempty"`
	// The timestamp of rejected completion of the payment.
	RejectedAt *timestamppb.Timestamp `protobuf:"bytes,21,opt,name=rejected_at,json=rejectedAt,proto3" json:"rejected_at,omitempty"`
	// Human readable reason for the rejection.
	RejectionReason string `protobuf:"bytes,22,opt,name=rejection_reason,json=rejectionReason,proto3" json:"rejection_reason,omitempty"`
	// If the currency of the payment method differs from the currency of the
	// invoice, the amount is converted from the currency of the invoice
	// to the currency of the payment method.
	// If such a converted was needed, this field is set to the currency
	// of the payment method.
	ConvertedCurrencyId string `protobuf:"bytes,30,opt,name=converted_currency_id,json=convertedCurrencyId,proto3" json:"converted_currency_id,omitempty"`
	// If the converted_currency_id is non-empty, this field it set to the
	// the amount (in converted currency) that the customer is charged for.
	// This is the total_amount_incl_taxes converted into the payment
	// method currency.
	ConvertedAmount float32 `protobuf:"fixed32,31,opt,name=converted_amount,json=convertedAmount,proto3" json:"converted_amount,omitempty"`
	// Amount in the invoice currency that was paid with this payment
	// If it's 0, it is assumed that this is a full amount of the invoice
	Amount float32 `protobuf:"fixed32,32,opt,name=amount,proto3" json:"amount,omitempty"`
	// contains filtered or unexported fields
}

Payment (attempt) of the invoice

func (*Invoice_Payment) Descriptor deprecated

func (*Invoice_Payment) Descriptor() ([]byte, []int)

Deprecated: Use Invoice_Payment.ProtoReflect.Descriptor instead.

func (*Invoice_Payment) GetAmount added in v0.74.3

func (x *Invoice_Payment) GetAmount() float32

func (*Invoice_Payment) GetCompletedAt

func (x *Invoice_Payment) GetCompletedAt() *timestamppb.Timestamp

func (*Invoice_Payment) GetConvertedAmount added in v0.51.0

func (x *Invoice_Payment) GetConvertedAmount() float32

func (*Invoice_Payment) GetConvertedCurrencyId added in v0.51.0

func (x *Invoice_Payment) GetConvertedCurrencyId() string

func (*Invoice_Payment) GetCreatedAt

func (x *Invoice_Payment) GetCreatedAt() *timestamppb.Timestamp

func (*Invoice_Payment) GetIsCompleted

func (x *Invoice_Payment) GetIsCompleted() bool

func (*Invoice_Payment) GetIsPending

func (x *Invoice_Payment) GetIsPending() bool

func (*Invoice_Payment) GetIsRejected

func (x *Invoice_Payment) GetIsRejected() bool

func (*Invoice_Payment) GetPaymentId

func (x *Invoice_Payment) GetPaymentId() string

func (*Invoice_Payment) GetPaymentMethodId

func (x *Invoice_Payment) GetPaymentMethodId() string

func (*Invoice_Payment) GetPaymentProviderId

func (x *Invoice_Payment) GetPaymentProviderId() string

func (*Invoice_Payment) GetRejectedAt

func (x *Invoice_Payment) GetRejectedAt() *timestamppb.Timestamp

func (*Invoice_Payment) GetRejectionReason

func (x *Invoice_Payment) GetRejectionReason() string

func (*Invoice_Payment) ProtoMessage

func (*Invoice_Payment) ProtoMessage()

func (*Invoice_Payment) ProtoReflect added in v0.89.0

func (x *Invoice_Payment) ProtoReflect() protoreflect.Message

func (*Invoice_Payment) Reset

func (x *Invoice_Payment) Reset()

func (*Invoice_Payment) String

func (x *Invoice_Payment) String() string

type Invoice_Status

type Invoice_Status struct {

	// If set, this invoice is still being processed.
	IsPending bool `protobuf:"varint,1,opt,name=is_pending,json=isPending,proto3" json:"is_pending,omitempty"`
	// If set, a successful payment has been made for this invoice.
	IsCompleted bool `protobuf:"varint,2,opt,name=is_completed,json=isCompleted,proto3" json:"is_completed,omitempty"`
	// If set, all payment attempts for this invoice have been rejected.
	IsRejected bool `protobuf:"varint,3,opt,name=is_rejected,json=isRejected,proto3" json:"is_rejected,omitempty"`
	// If set, this invoice has been verified manually.
	IsVerified bool `protobuf:"varint,4,opt,name=is_verified,json=isVerified,proto3" json:"is_verified,omitempty"`
	// If set, this payment needs to be rebuild (by the invoice-builder service).
	// If set, is_completed & is_rejected must be false.
	NeedsRebuild bool `protobuf:"varint,5,opt,name=needs_rebuild,json=needsRebuild,proto3" json:"needs_rebuild,omitempty"`
	// The timestamp of succesfull completion of the payment.
	// This field equals the completed_at field of the last payment if
	// that payment succeeded, nil otherwise.
	CompletedAt *timestamppb.Timestamp `protobuf:"bytes,10,opt,name=completed_at,json=completedAt,proto3" json:"completed_at,omitempty"`
	// The timestamp of rejected completion of the payment.
	// This field equals the rejected_at field of the last payment if
	// that payment failed, nil otherwise.
	RejectedAt *timestamppb.Timestamp `protobuf:"bytes,11,opt,name=rejected_at,json=rejectedAt,proto3" json:"rejected_at,omitempty"`
	// Human readable reason for the completion.
	CompletionReason string `protobuf:"bytes,12,opt,name=completion_reason,json=completionReason,proto3" json:"completion_reason,omitempty"`
	// Human readable reason for the rejection.
	RejectionReason string `protobuf:"bytes,13,opt,name=rejection_reason,json=rejectionReason,proto3" json:"rejection_reason,omitempty"`
	// Identifier of user who completed this invoice.
	CompletedBy string `protobuf:"bytes,14,opt,name=completed_by,json=completedBy,proto3" json:"completed_by,omitempty"`
	// Identifier of user who rejected this invoice.
	RejectedBy string `protobuf:"bytes,15,opt,name=rejected_by,json=rejectedBy,proto3" json:"rejected_by,omitempty"`
	// contains filtered or unexported fields
}

Status of the invoice

func (*Invoice_Status) Descriptor deprecated

func (*Invoice_Status) Descriptor() ([]byte, []int)

Deprecated: Use Invoice_Status.ProtoReflect.Descriptor instead.

func (*Invoice_Status) GetCompletedAt

func (x *Invoice_Status) GetCompletedAt() *timestamppb.Timestamp

func (*Invoice_Status) GetCompletedBy

func (x *Invoice_Status) GetCompletedBy() string

func (*Invoice_Status) GetCompletionReason

func (x *Invoice_Status) GetCompletionReason() string

func (*Invoice_Status) GetIsCompleted

func (x *Invoice_Status) GetIsCompleted() bool

func (*Invoice_Status) GetIsPending

func (x *Invoice_Status) GetIsPending() bool

func (*Invoice_Status) GetIsRejected

func (x *Invoice_Status) GetIsRejected() bool

func (*Invoice_Status) GetIsVerified

func (x *Invoice_Status) GetIsVerified() bool

func (*Invoice_Status) GetNeedsRebuild

func (x *Invoice_Status) GetNeedsRebuild() bool

func (*Invoice_Status) GetRejectedAt

func (x *Invoice_Status) GetRejectedAt() *timestamppb.Timestamp

func (*Invoice_Status) GetRejectedBy

func (x *Invoice_Status) GetRejectedBy() string

func (*Invoice_Status) GetRejectionReason

func (x *Invoice_Status) GetRejectionReason() string

func (*Invoice_Status) ProtoMessage

func (*Invoice_Status) ProtoMessage()

func (*Invoice_Status) ProtoReflect added in v0.89.0

func (x *Invoice_Status) ProtoReflect() protoreflect.Message

func (*Invoice_Status) Reset

func (x *Invoice_Status) Reset()

func (*Invoice_Status) String

func (x *Invoice_Status) String() string

type ListInvoicesRequest

type ListInvoicesRequest struct {

	// Request invoices for the organization with this id.
	// This is a required field.
	OrganizationId string `protobuf:"bytes,1,opt,name=organization_id,json=organizationId,proto3" json:"organization_id,omitempty"`
	// Request invoices that are created at or after this timestamp.
	// This is an optional field.
	From *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=from,proto3" json:"from,omitempty"`
	// Request invoices that are created before this timestamp.
	// This is an optional field.
	To *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=to,proto3" json:"to,omitempty"`
	// Standard list options
	// This is an optional field.
	Options *v1.ListOptions `protobuf:"bytes,10,opt,name=options,proto3" json:"options,omitempty"`
	// Whether or not to include the usage item IDs on every Invoice_Item in the returned Invoices.
	// This is an optional field; usage item IDs are not included by default.
	IncludeUsageitemIds bool `protobuf:"varint,20,opt,name=include_usageitem_ids,json=includeUsageitemIds,proto3" json:"include_usageitem_ids,omitempty"`
	// contains filtered or unexported fields
}

Request arguments for ListInvoices

func (*ListInvoicesRequest) Descriptor deprecated

func (*ListInvoicesRequest) Descriptor() ([]byte, []int)

Deprecated: Use ListInvoicesRequest.ProtoReflect.Descriptor instead.

func (*ListInvoicesRequest) GetFrom

func (*ListInvoicesRequest) GetIncludeUsageitemIds added in v0.73.13

func (x *ListInvoicesRequest) GetIncludeUsageitemIds() bool

func (*ListInvoicesRequest) GetOptions

func (x *ListInvoicesRequest) GetOptions() *v1.ListOptions

func (*ListInvoicesRequest) GetOrganizationId

func (x *ListInvoicesRequest) GetOrganizationId() string

func (*ListInvoicesRequest) GetTo

func (*ListInvoicesRequest) ProtoMessage

func (*ListInvoicesRequest) ProtoMessage()

func (*ListInvoicesRequest) ProtoReflect added in v0.89.0

func (x *ListInvoicesRequest) ProtoReflect() protoreflect.Message

func (*ListInvoicesRequest) Reset

func (x *ListInvoicesRequest) Reset()

func (*ListInvoicesRequest) String

func (x *ListInvoicesRequest) String() string

type ListPaymentMethodsRequest

type ListPaymentMethodsRequest struct {

	// Identifier of the organization for which payment methods are requested.
	OrganizationId string `protobuf:"bytes,1,opt,name=organization_id,json=organizationId,proto3" json:"organization_id,omitempty"`
	// Optional common list options. (Context ID is ignored)
	Options *v1.ListOptions `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"`
	// contains filtered or unexported fields
}

Request arguments for ListPaymentMethods

func (*ListPaymentMethodsRequest) Descriptor deprecated

func (*ListPaymentMethodsRequest) Descriptor() ([]byte, []int)

Deprecated: Use ListPaymentMethodsRequest.ProtoReflect.Descriptor instead.

func (*ListPaymentMethodsRequest) GetOptions

func (x *ListPaymentMethodsRequest) GetOptions() *v1.ListOptions

func (*ListPaymentMethodsRequest) GetOrganizationId

func (x *ListPaymentMethodsRequest) GetOrganizationId() string

func (*ListPaymentMethodsRequest) ProtoMessage

func (*ListPaymentMethodsRequest) ProtoMessage()

func (*ListPaymentMethodsRequest) ProtoReflect added in v0.89.0

func (*ListPaymentMethodsRequest) Reset

func (x *ListPaymentMethodsRequest) Reset()

func (*ListPaymentMethodsRequest) String

func (x *ListPaymentMethodsRequest) String() string

type ListPaymentProvidersRequest

type ListPaymentProvidersRequest struct {

	// Identifier of the organization for which payment providers are requested.
	OrganizationId string `protobuf:"bytes,1,opt,name=organization_id,json=organizationId,proto3" json:"organization_id,omitempty"`
	// Optional common list options. (Context ID is ignored)
	Options *v1.ListOptions `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"`
	// If set to true, also return include internal payment providers, for whom users can't create payment methods.
	IncludeInternal bool `protobuf:"varint,3,opt,name=include_internal,json=includeInternal,proto3" json:"include_internal,omitempty"`
	// contains filtered or unexported fields
}

Request arguments for ListPaymentProviders

func (*ListPaymentProvidersRequest) Descriptor deprecated

func (*ListPaymentProvidersRequest) Descriptor() ([]byte, []int)

Deprecated: Use ListPaymentProvidersRequest.ProtoReflect.Descriptor instead.

func (*ListPaymentProvidersRequest) GetIncludeInternal added in v0.74.5

func (x *ListPaymentProvidersRequest) GetIncludeInternal() bool

func (*ListPaymentProvidersRequest) GetOptions

func (x *ListPaymentProvidersRequest) GetOptions() *v1.ListOptions

func (*ListPaymentProvidersRequest) GetOrganizationId

func (x *ListPaymentProvidersRequest) GetOrganizationId() string

func (*ListPaymentProvidersRequest) ProtoMessage

func (*ListPaymentProvidersRequest) ProtoMessage()

func (*ListPaymentProvidersRequest) ProtoReflect added in v0.89.0

func (*ListPaymentProvidersRequest) Reset

func (x *ListPaymentProvidersRequest) Reset()

func (*ListPaymentProvidersRequest) String

func (x *ListPaymentProvidersRequest) String() string

type OrganizationBillingFlags

type OrganizationBillingFlags struct {

	// If set, this organization is allowed to list invoices.
	IsAllowedToListInvoices bool `` /* 137-byte string literal not displayed */
	// If set, this organization is allowed to create/list/update payment methods.
	IsAllowedToAccessPaymentMethods bool `` /* 163-byte string literal not displayed */
	// contains filtered or unexported fields
}

Billing specific organization flags

func (*OrganizationBillingFlags) Descriptor deprecated

func (*OrganizationBillingFlags) Descriptor() ([]byte, []int)

Deprecated: Use OrganizationBillingFlags.ProtoReflect.Descriptor instead.

func (*OrganizationBillingFlags) GetIsAllowedToAccessPaymentMethods

func (x *OrganizationBillingFlags) GetIsAllowedToAccessPaymentMethods() bool

func (*OrganizationBillingFlags) GetIsAllowedToListInvoices

func (x *OrganizationBillingFlags) GetIsAllowedToListInvoices() bool

func (*OrganizationBillingFlags) ProtoMessage

func (*OrganizationBillingFlags) ProtoMessage()

func (*OrganizationBillingFlags) ProtoReflect added in v0.89.0

func (x *OrganizationBillingFlags) ProtoReflect() protoreflect.Message

func (*OrganizationBillingFlags) Reset

func (x *OrganizationBillingFlags) Reset()

func (*OrganizationBillingFlags) String

func (x *OrganizationBillingFlags) String() string

type PDFDocument

type PDFDocument struct {

	// Content of the document
	Content []byte `protobuf:"bytes,1,opt,name=content,proto3" json:"content,omitempty"`
	// Filename of the document
	Filename string `protobuf:"bytes,2,opt,name=filename,proto3" json:"filename,omitempty"`
	// contains filtered or unexported fields
}

func (*PDFDocument) Descriptor deprecated

func (*PDFDocument) Descriptor() ([]byte, []int)

Deprecated: Use PDFDocument.ProtoReflect.Descriptor instead.

func (*PDFDocument) GetContent

func (x *PDFDocument) GetContent() []byte

func (*PDFDocument) GetFilename

func (x *PDFDocument) GetFilename() string

func (*PDFDocument) ProtoMessage

func (*PDFDocument) ProtoMessage()

func (*PDFDocument) ProtoReflect added in v0.89.0

func (x *PDFDocument) ProtoReflect() protoreflect.Message

func (*PDFDocument) Reset

func (x *PDFDocument) Reset()

func (*PDFDocument) String

func (x *PDFDocument) String() string

type PaymentMethod

type PaymentMethod struct {

	// System identifier of this payment method.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// Name of the payment method
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// Description of the payment method
	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	// Identifier of the payment provider used for this payment method
	// This is a read-only field.
	PaymentProviderId string `protobuf:"bytes,4,opt,name=payment_provider_id,json=paymentProviderId,proto3" json:"payment_provider_id,omitempty"`
	// Identifier of the organization that owns this payment method
	// This is a read-only field.
	OrganizationId string `protobuf:"bytes,5,opt,name=organization_id,json=organizationId,proto3" json:"organization_id,omitempty"`
	// Creation timestamp of this payment method
	// This is a read-only field.
	CreatedAt *timestamppb.Timestamp `protobuf:"bytes,10,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	// Deletion timestamp of this payment method
	// This is a read-only field.
	DeletedAt *timestamppb.Timestamp `protobuf:"bytes,11,opt,name=deleted_at,json=deletedAt,proto3" json:"deleted_at,omitempty"`
	// Set if the payment method is deleted.
	// This is a read-only field.
	IsDeleted bool `protobuf:"varint,12,opt,name=is_deleted,json=isDeleted,proto3" json:"is_deleted,omitempty"`
	// If set, this timestamp specifies when the payment method is no longer valid.
	// If not set, there is no (known) end date for this payment method.
	ValidUntil *timestamppb.Timestamp `protobuf:"bytes,13,opt,name=valid_until,json=validUntil,proto3" json:"valid_until,omitempty"`
	// Token for this payment method, provided by the payment provider.
	// This is a read-only field.
	Token string `protobuf:"bytes,14,opt,name=token,proto3" json:"token,omitempty"`
	// Type of payment method
	Type string `protobuf:"bytes,15,opt,name=type,proto3" json:"type,omitempty"`
	// If set, this payment method is the default for its organization.
	// This is a read-only field.
	IsDefault bool `protobuf:"varint,16,opt,name=is_default,json=isDefault,proto3" json:"is_default,omitempty"`
	// Currency for invoices using this payment method
	CurrencyId     string                        `protobuf:"bytes,17,opt,name=currency_id,json=currencyId,proto3" json:"currency_id,omitempty"`
	CreditCardInfo *PaymentMethod_CreditCardInfo `protobuf:"bytes,101,opt,name=credit_card_info,json=creditCardInfo,proto3" json:"credit_card_info,omitempty"`
	// contains filtered or unexported fields
}

Payment methods are specific methods for paying at a specific payment provider such as a specific credit card.

func (*PaymentMethod) Descriptor deprecated

func (*PaymentMethod) Descriptor() ([]byte, []int)

Deprecated: Use PaymentMethod.ProtoReflect.Descriptor instead.

func (*PaymentMethod) GetCreatedAt

func (x *PaymentMethod) GetCreatedAt() *timestamppb.Timestamp

func (*PaymentMethod) GetCreditCardInfo

func (x *PaymentMethod) GetCreditCardInfo() *PaymentMethod_CreditCardInfo

func (*PaymentMethod) GetCurrencyId added in v0.51.0

func (x *PaymentMethod) GetCurrencyId() string

func (*PaymentMethod) GetDeletedAt

func (x *PaymentMethod) GetDeletedAt() *timestamppb.Timestamp

func (*PaymentMethod) GetDescription

func (x *PaymentMethod) GetDescription() string

func (*PaymentMethod) GetId

func (x *PaymentMethod) GetId() string

func (*PaymentMethod) GetIsDefault

func (x *PaymentMethod) GetIsDefault() bool

func (*PaymentMethod) GetIsDeleted

func (x *PaymentMethod) GetIsDeleted() bool

func (*PaymentMethod) GetName

func (x *PaymentMethod) GetName() string

func (*PaymentMethod) GetOrganizationId

func (x *PaymentMethod) GetOrganizationId() string

func (*PaymentMethod) GetPaymentProviderId

func (x *PaymentMethod) GetPaymentProviderId() string

func (*PaymentMethod) GetToken

func (x *PaymentMethod) GetToken() string

func (*PaymentMethod) GetType

func (x *PaymentMethod) GetType() string

func (*PaymentMethod) GetValidUntil

func (x *PaymentMethod) GetValidUntil() *timestamppb.Timestamp

func (*PaymentMethod) ProtoMessage

func (*PaymentMethod) ProtoMessage()

func (*PaymentMethod) ProtoReflect added in v0.89.0

func (x *PaymentMethod) ProtoReflect() protoreflect.Message

func (*PaymentMethod) Reset

func (x *PaymentMethod) Reset()

func (*PaymentMethod) String

func (x *PaymentMethod) String() string

type PaymentMethodCallback

type PaymentMethodCallback func(context.Context, *PaymentMethod) error

PaymentMethodCallback is a callback for individual payment methods.

type PaymentMethodList

type PaymentMethodList struct {
	Items []*PaymentMethod `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	// contains filtered or unexported fields
}

List of Payment methods

func (*PaymentMethodList) Descriptor deprecated

func (*PaymentMethodList) Descriptor() ([]byte, []int)

Deprecated: Use PaymentMethodList.ProtoReflect.Descriptor instead.

func (*PaymentMethodList) GetItems

func (x *PaymentMethodList) GetItems() []*PaymentMethod

func (*PaymentMethodList) ProtoMessage

func (*PaymentMethodList) ProtoMessage()

func (*PaymentMethodList) ProtoReflect added in v0.89.0

func (x *PaymentMethodList) ProtoReflect() protoreflect.Message

func (*PaymentMethodList) Reset

func (x *PaymentMethodList) Reset()

func (*PaymentMethodList) String

func (x *PaymentMethodList) String() string

type PaymentMethod_CreditCardInfo

type PaymentMethod_CreditCardInfo struct {

	// Last 4 digits of the CC number.
	LastDigits string `protobuf:"bytes,1,opt,name=last_digits,json=lastDigits,proto3" json:"last_digits,omitempty"`
	// Type of creditcard
	CardType string `protobuf:"bytes,2,opt,name=card_type,json=cardType,proto3" json:"card_type,omitempty"`
	// contains filtered or unexported fields
}

Information of the creditcard. Only set when type == "creditcard"

func (*PaymentMethod_CreditCardInfo) Descriptor deprecated

func (*PaymentMethod_CreditCardInfo) Descriptor() ([]byte, []int)

Deprecated: Use PaymentMethod_CreditCardInfo.ProtoReflect.Descriptor instead.

func (*PaymentMethod_CreditCardInfo) GetCardType

func (x *PaymentMethod_CreditCardInfo) GetCardType() string

func (*PaymentMethod_CreditCardInfo) GetLastDigits

func (x *PaymentMethod_CreditCardInfo) GetLastDigits() string

func (*PaymentMethod_CreditCardInfo) ProtoMessage

func (*PaymentMethod_CreditCardInfo) ProtoMessage()

func (*PaymentMethod_CreditCardInfo) ProtoReflect added in v0.89.0

func (*PaymentMethod_CreditCardInfo) Reset

func (x *PaymentMethod_CreditCardInfo) Reset()

func (*PaymentMethod_CreditCardInfo) String

type PaymentProvider

type PaymentProvider struct {

	// System identifier of this payment provider.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// Name of the payment provider
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// Description of the payment provider
	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	// Type of payment method supported by this provider
	Type string `protobuf:"bytes,4,opt,name=type,proto3" json:"type,omitempty"`
	// contains filtered or unexported fields
}

Payment providers are services that handle payments.

func (*PaymentProvider) Descriptor deprecated

func (*PaymentProvider) Descriptor() ([]byte, []int)

Deprecated: Use PaymentProvider.ProtoReflect.Descriptor instead.

func (*PaymentProvider) GetDescription

func (x *PaymentProvider) GetDescription() string

func (*PaymentProvider) GetId

func (x *PaymentProvider) GetId() string

func (*PaymentProvider) GetName

func (x *PaymentProvider) GetName() string

func (*PaymentProvider) GetType

func (x *PaymentProvider) GetType() string

func (*PaymentProvider) ProtoMessage

func (*PaymentProvider) ProtoMessage()

func (*PaymentProvider) ProtoReflect added in v0.89.0

func (x *PaymentProvider) ProtoReflect() protoreflect.Message

func (*PaymentProvider) Reset

func (x *PaymentProvider) Reset()

func (*PaymentProvider) String

func (x *PaymentProvider) String() string

type PaymentProviderCallback

type PaymentProviderCallback func(context.Context, *PaymentProvider) error

PaymentProviderCallback is a callback for individual payment providers.

type PaymentProviderList

type PaymentProviderList struct {
	Items []*PaymentProvider `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	// contains filtered or unexported fields
}

List of Payment providers

func (*PaymentProviderList) Descriptor deprecated

func (*PaymentProviderList) Descriptor() ([]byte, []int)

Deprecated: Use PaymentProviderList.ProtoReflect.Descriptor instead.

func (*PaymentProviderList) GetItems

func (x *PaymentProviderList) GetItems() []*PaymentProvider

func (*PaymentProviderList) ProtoMessage

func (*PaymentProviderList) ProtoMessage()

func (*PaymentProviderList) ProtoReflect added in v0.89.0

func (x *PaymentProviderList) ProtoReflect() protoreflect.Message

func (*PaymentProviderList) Reset

func (x *PaymentProviderList) Reset()

func (*PaymentProviderList) String

func (x *PaymentProviderList) String() string

type PreparePaymentMethodRequest

type PreparePaymentMethodRequest struct {

	// ID of the provider to prepare
	ProviderId string `protobuf:"bytes,1,opt,name=provider_id,json=providerId,proto3" json:"provider_id,omitempty"`
	// ID of the organization that will own the future payment method
	OrganizationId string `protobuf:"bytes,2,opt,name=organization_id,json=organizationId,proto3" json:"organization_id,omitempty"`
	// Currency for the future payment payment method
	CurrencyId string `protobuf:"bytes,3,opt,name=currency_id,json=currencyId,proto3" json:"currency_id,omitempty"`
	// contains filtered or unexported fields
}

Request arguments for PreparePaymentMethod.

func (*PreparePaymentMethodRequest) Descriptor deprecated

func (*PreparePaymentMethodRequest) Descriptor() ([]byte, []int)

Deprecated: Use PreparePaymentMethodRequest.ProtoReflect.Descriptor instead.

func (*PreparePaymentMethodRequest) GetCurrencyId added in v0.51.0

func (x *PreparePaymentMethodRequest) GetCurrencyId() string

func (*PreparePaymentMethodRequest) GetOrganizationId

func (x *PreparePaymentMethodRequest) GetOrganizationId() string

func (*PreparePaymentMethodRequest) GetProviderId

func (x *PreparePaymentMethodRequest) GetProviderId() string

func (*PreparePaymentMethodRequest) ProtoMessage

func (*PreparePaymentMethodRequest) ProtoMessage()

func (*PreparePaymentMethodRequest) ProtoReflect added in v0.89.0

func (*PreparePaymentMethodRequest) Reset

func (x *PreparePaymentMethodRequest) Reset()

func (*PreparePaymentMethodRequest) String

func (x *PreparePaymentMethodRequest) String() string

type PreparedPaymentMethod

type PreparedPaymentMethod struct {

	// ID of the provider of the future payment method
	ProviderId string `protobuf:"bytes,1,opt,name=provider_id,json=providerId,proto3" json:"provider_id,omitempty"`
	// ID of the organization that will own the future payment method
	OrganizationId string `protobuf:"bytes,2,opt,name=organization_id,json=organizationId,proto3" json:"organization_id,omitempty"`
	// Currency for this payment method
	CurrencyId string `protobuf:"bytes,3,opt,name=currency_id,json=currencyId,proto3" json:"currency_id,omitempty"`
	// Token (semantics depends on payment provider)
	Token string `protobuf:"bytes,11,opt,name=token,proto3" json:"token,omitempty"`
	// URL of custom script to load to create the payment method
	ScriptUrl string `protobuf:"bytes,12,opt,name=script_url,json=scriptUrl,proto3" json:"script_url,omitempty"`
	// Signature used to verify the consistency of the data in this message.
	Signature string `protobuf:"bytes,101,opt,name=signature,proto3" json:"signature,omitempty"`
	// contains filtered or unexported fields
}

Response data for PreparePaymentMethod.

func (*PreparedPaymentMethod) Descriptor deprecated

func (*PreparedPaymentMethod) Descriptor() ([]byte, []int)

Deprecated: Use PreparedPaymentMethod.ProtoReflect.Descriptor instead.

func (*PreparedPaymentMethod) GetCurrencyId added in v0.51.0

func (x *PreparedPaymentMethod) GetCurrencyId() string

func (*PreparedPaymentMethod) GetOrganizationId

func (x *PreparedPaymentMethod) GetOrganizationId() string

func (*PreparedPaymentMethod) GetProviderId

func (x *PreparedPaymentMethod) GetProviderId() string

func (*PreparedPaymentMethod) GetScriptUrl

func (x *PreparedPaymentMethod) GetScriptUrl() string

func (*PreparedPaymentMethod) GetSignature

func (x *PreparedPaymentMethod) GetSignature() string

func (*PreparedPaymentMethod) GetToken

func (x *PreparedPaymentMethod) GetToken() string

func (*PreparedPaymentMethod) ProtoMessage

func (*PreparedPaymentMethod) ProtoMessage()

func (*PreparedPaymentMethod) ProtoReflect added in v0.89.0

func (x *PreparedPaymentMethod) ProtoReflect() protoreflect.Message

func (*PreparedPaymentMethod) Reset

func (x *PreparedPaymentMethod) Reset()

func (*PreparedPaymentMethod) String

func (x *PreparedPaymentMethod) String() string

type SetBillingConfigRequest

type SetBillingConfigRequest struct {

	// Identifier of the organization for which billing address is to be set.
	OrganizationId string `protobuf:"bytes,1,opt,name=organization_id,json=organizationId,proto3" json:"organization_id,omitempty"`
	// Billing configuration to set.
	Config *BillingConfig `protobuf:"bytes,2,opt,name=config,proto3" json:"config,omitempty"`
	// contains filtered or unexported fields
}

Request arguments for SetBillingConfig.

func (*SetBillingConfigRequest) Descriptor deprecated

func (*SetBillingConfigRequest) Descriptor() ([]byte, []int)

Deprecated: Use SetBillingConfigRequest.ProtoReflect.Descriptor instead.

func (*SetBillingConfigRequest) GetConfig

func (x *SetBillingConfigRequest) GetConfig() *BillingConfig

func (*SetBillingConfigRequest) GetOrganizationId

func (x *SetBillingConfigRequest) GetOrganizationId() string

func (*SetBillingConfigRequest) ProtoMessage

func (*SetBillingConfigRequest) ProtoMessage()

func (*SetBillingConfigRequest) ProtoReflect added in v0.89.0

func (x *SetBillingConfigRequest) ProtoReflect() protoreflect.Message

func (*SetBillingConfigRequest) Reset

func (x *SetBillingConfigRequest) Reset()

func (*SetBillingConfigRequest) String

func (x *SetBillingConfigRequest) String() string

type SetDefaultPaymentMethodRequest

type SetDefaultPaymentMethodRequest struct {

	// Identifier of the organization for which the default payment method will be set.
	OrganizationId string `protobuf:"bytes,1,opt,name=organization_id,json=organizationId,proto3" json:"organization_id,omitempty"`
	// Identifier of the new default payment method for the organization.
	PaymentMethodId string `protobuf:"bytes,2,opt,name=payment_method_id,json=paymentMethodId,proto3" json:"payment_method_id,omitempty"`
	// contains filtered or unexported fields
}

Request argument for SetDefaultPaymentMethod

func (*SetDefaultPaymentMethodRequest) Descriptor deprecated

func (*SetDefaultPaymentMethodRequest) Descriptor() ([]byte, []int)

Deprecated: Use SetDefaultPaymentMethodRequest.ProtoReflect.Descriptor instead.

func (*SetDefaultPaymentMethodRequest) GetOrganizationId

func (x *SetDefaultPaymentMethodRequest) GetOrganizationId() string

func (*SetDefaultPaymentMethodRequest) GetPaymentMethodId

func (x *SetDefaultPaymentMethodRequest) GetPaymentMethodId() string

func (*SetDefaultPaymentMethodRequest) ProtoMessage

func (*SetDefaultPaymentMethodRequest) ProtoMessage()

func (*SetDefaultPaymentMethodRequest) ProtoReflect added in v0.89.0

func (*SetDefaultPaymentMethodRequest) Reset

func (x *SetDefaultPaymentMethodRequest) Reset()

func (*SetDefaultPaymentMethodRequest) String

type UnimplementedBillingServiceServer

type UnimplementedBillingServiceServer struct {
}

UnimplementedBillingServiceServer can be embedded to have forward compatible implementations.

func (*UnimplementedBillingServiceServer) CreatePaymentMethod

func (*UnimplementedBillingServiceServer) DeletePaymentMethod

func (*UnimplementedBillingServiceServer) GetAPIVersion

func (*UnimplementedBillingServiceServer) GetAvailableCredits added in v0.74.3

func (*UnimplementedBillingServiceServer) GetBillingConfig

func (*UnimplementedBillingServiceServer) GetDefaultPaymentMethod

func (*UnimplementedBillingServiceServer) GetInvoice

func (*UnimplementedBillingServiceServer) GetInvoicePDF

func (*UnimplementedBillingServiceServer) GetOrganizationBillingFlags

func (*UnimplementedBillingServiceServer) GetPaymentMethod

func (*UnimplementedBillingServiceServer) GetPaymentProvider

func (*UnimplementedBillingServiceServer) GetPreliminaryInvoice added in v0.63.9

func (*UnimplementedBillingServiceServer) ListInvoices

func (*UnimplementedBillingServiceServer) ListPaymentMethods

func (*UnimplementedBillingServiceServer) ListPaymentProviders

func (*UnimplementedBillingServiceServer) PreparePaymentMethod

func (*UnimplementedBillingServiceServer) SetBillingConfig

func (*UnimplementedBillingServiceServer) SetDefaultPaymentMethod

func (*UnimplementedBillingServiceServer) UpdatePaymentMethod

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL