viam.gen.app.v1.billing_pb2 =========================== .. py:module:: viam.gen.app.v1.billing_pb2 .. autoapi-nested-parse:: @generated by mypy-protobuf. Do not edit manually! isort:skip_file Attributes ---------- .. autoapisummary:: viam.gen.app.v1.billing_pb2.DESCRIPTOR viam.gen.app.v1.billing_pb2.PAYMENT_METHOD_TYPE_UNSPECIFIED viam.gen.app.v1.billing_pb2.PAYMENT_METHOD_TYPE_CARD viam.gen.app.v1.billing_pb2.global___PaymentMethodType viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_UNSPECIFIED viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_DATA_UPLOAD viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_DATA_EGRESS viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_REMOTE_CONTROL viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_STANDARD_COMPUTE viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_CLOUD_STORAGE viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_BINARY_DATA_CLOUD_STORAGE viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_OTHER_CLOUD_STORAGE viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_PER_MACHINE viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_TRIGGER_NOTIFICATION viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_TABULAR_DATA_CLOUD_STORAGE viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_CONFIG_HISTORY_CLOUD_STORAGE viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_LOGS_CLOUD_STORAGE viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_TRAINING_LOGS_CLOUD_STORAGE viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_PACKAGES_CLOUD_STORAGE viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_BINARY_DATA_UPLOAD viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_TABULAR_DATA_UPLOAD viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_LOGS_UPLOAD viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_BINARY_DATA_EGRESS viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_TABULAR_DATA_EGRESS viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_LOGS_EGRESS viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_TRAINING_LOGS_EGRESS viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_TABULAR_DATA_DATABASE_CLOUD_STORAGE viam.gen.app.v1.billing_pb2.USAGE_COST_TYPE_TABULAR_DATA_DATABASE_COMPUTE viam.gen.app.v1.billing_pb2.global___UsageCostType viam.gen.app.v1.billing_pb2.SOURCE_TYPE_UNSPECIFIED viam.gen.app.v1.billing_pb2.SOURCE_TYPE_ORG viam.gen.app.v1.billing_pb2.SOURCE_TYPE_FRAGMENT viam.gen.app.v1.billing_pb2.global___SourceType viam.gen.app.v1.billing_pb2.global___InvoiceSummary viam.gen.app.v1.billing_pb2.global___PaymentMethodCard viam.gen.app.v1.billing_pb2.global___GetCurrentMonthUsageRequest viam.gen.app.v1.billing_pb2.global___UsageCost viam.gen.app.v1.billing_pb2.global___ResourceUsageCostsBySource viam.gen.app.v1.billing_pb2.global___ResourceUsageCosts viam.gen.app.v1.billing_pb2.global___GetCurrentMonthUsageResponse viam.gen.app.v1.billing_pb2.global___GetOrgBillingInformationRequest viam.gen.app.v1.billing_pb2.global___GetOrgBillingInformationResponse viam.gen.app.v1.billing_pb2.global___GetInvoicesSummaryRequest viam.gen.app.v1.billing_pb2.global___GetInvoicesSummaryResponse viam.gen.app.v1.billing_pb2.global___GetInvoicePdfRequest viam.gen.app.v1.billing_pb2.global___GetInvoicePdfResponse viam.gen.app.v1.billing_pb2.global___SendPaymentRequiredEmailRequest viam.gen.app.v1.billing_pb2.global___SendPaymentRequiredEmailResponse viam.gen.app.v1.billing_pb2.global___GetAvailableBillingTiersRequest viam.gen.app.v1.billing_pb2.global___GetAvailableBillingTiersResponse viam.gen.app.v1.billing_pb2.global___UpdateOrganizationBillingTierRequest viam.gen.app.v1.billing_pb2.global___UpdateOrganizationBillingTierResponse Classes ------- .. autoapisummary:: viam.gen.app.v1.billing_pb2.PaymentMethodType viam.gen.app.v1.billing_pb2.UsageCostType viam.gen.app.v1.billing_pb2.SourceType viam.gen.app.v1.billing_pb2.InvoiceSummary viam.gen.app.v1.billing_pb2.PaymentMethodCard viam.gen.app.v1.billing_pb2.GetCurrentMonthUsageRequest viam.gen.app.v1.billing_pb2.UsageCost viam.gen.app.v1.billing_pb2.ResourceUsageCostsBySource viam.gen.app.v1.billing_pb2.ResourceUsageCosts viam.gen.app.v1.billing_pb2.GetCurrentMonthUsageResponse viam.gen.app.v1.billing_pb2.GetOrgBillingInformationRequest viam.gen.app.v1.billing_pb2.GetOrgBillingInformationResponse viam.gen.app.v1.billing_pb2.GetInvoicesSummaryRequest viam.gen.app.v1.billing_pb2.GetInvoicesSummaryResponse viam.gen.app.v1.billing_pb2.GetInvoicePdfRequest viam.gen.app.v1.billing_pb2.GetInvoicePdfResponse viam.gen.app.v1.billing_pb2.SendPaymentRequiredEmailRequest viam.gen.app.v1.billing_pb2.SendPaymentRequiredEmailResponse viam.gen.app.v1.billing_pb2.GetAvailableBillingTiersRequest viam.gen.app.v1.billing_pb2.GetAvailableBillingTiersResponse viam.gen.app.v1.billing_pb2.UpdateOrganizationBillingTierRequest viam.gen.app.v1.billing_pb2.UpdateOrganizationBillingTierResponse Module Contents --------------- .. py:data:: DESCRIPTOR :type: google.protobuf.descriptor.FileDescriptor .. py:class:: PaymentMethodType Bases: :py:obj:`_PaymentMethodType` .. py:data:: PAYMENT_METHOD_TYPE_UNSPECIFIED :type: PaymentMethodType .. py:data:: PAYMENT_METHOD_TYPE_CARD :type: PaymentMethodType .. py:data:: global___PaymentMethodType .. py:class:: UsageCostType Bases: :py:obj:`_UsageCostType` .. py:data:: USAGE_COST_TYPE_UNSPECIFIED :type: UsageCostType .. py:data:: USAGE_COST_TYPE_DATA_UPLOAD :type: UsageCostType .. py:data:: USAGE_COST_TYPE_DATA_EGRESS :type: UsageCostType .. py:data:: USAGE_COST_TYPE_REMOTE_CONTROL :type: UsageCostType .. py:data:: USAGE_COST_TYPE_STANDARD_COMPUTE :type: UsageCostType .. py:data:: USAGE_COST_TYPE_CLOUD_STORAGE :type: UsageCostType .. py:data:: USAGE_COST_TYPE_BINARY_DATA_CLOUD_STORAGE :type: UsageCostType .. py:data:: USAGE_COST_TYPE_OTHER_CLOUD_STORAGE :type: UsageCostType .. py:data:: USAGE_COST_TYPE_PER_MACHINE :type: UsageCostType .. py:data:: USAGE_COST_TYPE_TRIGGER_NOTIFICATION :type: UsageCostType .. py:data:: USAGE_COST_TYPE_TABULAR_DATA_CLOUD_STORAGE :type: UsageCostType .. py:data:: USAGE_COST_TYPE_CONFIG_HISTORY_CLOUD_STORAGE :type: UsageCostType .. py:data:: USAGE_COST_TYPE_LOGS_CLOUD_STORAGE :type: UsageCostType .. py:data:: USAGE_COST_TYPE_TRAINING_LOGS_CLOUD_STORAGE :type: UsageCostType .. py:data:: USAGE_COST_TYPE_PACKAGES_CLOUD_STORAGE :type: UsageCostType .. py:data:: USAGE_COST_TYPE_BINARY_DATA_UPLOAD :type: UsageCostType .. py:data:: USAGE_COST_TYPE_TABULAR_DATA_UPLOAD :type: UsageCostType .. py:data:: USAGE_COST_TYPE_LOGS_UPLOAD :type: UsageCostType .. py:data:: USAGE_COST_TYPE_BINARY_DATA_EGRESS :type: UsageCostType .. py:data:: USAGE_COST_TYPE_TABULAR_DATA_EGRESS :type: UsageCostType .. py:data:: USAGE_COST_TYPE_LOGS_EGRESS :type: UsageCostType .. py:data:: USAGE_COST_TYPE_TRAINING_LOGS_EGRESS :type: UsageCostType .. py:data:: USAGE_COST_TYPE_TABULAR_DATA_DATABASE_CLOUD_STORAGE :type: UsageCostType .. py:data:: USAGE_COST_TYPE_TABULAR_DATA_DATABASE_COMPUTE :type: UsageCostType .. py:data:: global___UsageCostType .. py:class:: SourceType Bases: :py:obj:`_SourceType` .. py:data:: SOURCE_TYPE_UNSPECIFIED :type: SourceType .. py:data:: SOURCE_TYPE_ORG :type: SourceType .. py:data:: SOURCE_TYPE_FRAGMENT :type: SourceType .. py:data:: global___SourceType .. py:class:: InvoiceSummary(*, id: str = ..., invoice_date: google.protobuf.timestamp_pb2.Timestamp | None = ..., invoice_amount: float = ..., status: str = ..., due_date: google.protobuf.timestamp_pb2.Timestamp | None = ..., paid_date: google.protobuf.timestamp_pb2.Timestamp | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: id :type: str .. py:attribute:: invoice_amount :type: float .. py:attribute:: status :type: str .. py:property:: invoice_date :type: google.protobuf.timestamp_pb2.Timestamp .. py:property:: due_date :type: google.protobuf.timestamp_pb2.Timestamp .. py:property:: paid_date :type: google.protobuf.timestamp_pb2.Timestamp .. py:method:: HasField(field_name: Literal['due_date', b'due_date', 'invoice_date', b'invoice_date', 'paid_date', b'paid_date']) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:data:: global___InvoiceSummary .. py:class:: PaymentMethodCard(*, brand: str = ..., last_four_digits: str = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: brand :type: str .. py:attribute:: last_four_digits :type: str .. py:data:: global___PaymentMethodCard .. py:class:: GetCurrentMonthUsageRequest(*, org_id: str = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: org_id :type: str .. py:data:: global___GetCurrentMonthUsageRequest .. py:class:: UsageCost(*, resource_type: global___UsageCostType = ..., cost: float = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: resource_type :type: global___UsageCostType .. py:attribute:: cost :type: float .. py:data:: global___UsageCost .. py:class:: ResourceUsageCostsBySource(*, source_type: global___SourceType = ..., resource_usage_costs: global___ResourceUsageCosts | None = ..., tier_name: str = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: source_type :type: global___SourceType .. py:attribute:: tier_name :type: str .. py:property:: resource_usage_costs :type: global___ResourceUsageCosts .. py:method:: HasField(field_name: Literal['resource_usage_costs', b'resource_usage_costs']) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:data:: global___ResourceUsageCostsBySource .. py:class:: ResourceUsageCosts(*, usage_costs: collections.abc.Iterable[global___UsageCost] | None = ..., discount: float = ..., total_with_discount: float = ..., total_without_discount: float = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: discount :type: float .. py:attribute:: total_with_discount :type: float .. py:attribute:: total_without_discount :type: float .. py:property:: usage_costs :type: google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___UsageCost] .. py:data:: global___ResourceUsageCosts .. py:class:: GetCurrentMonthUsageResponse(*, start_date: google.protobuf.timestamp_pb2.Timestamp | None = ..., end_date: google.protobuf.timestamp_pb2.Timestamp | None = ..., resource_usage_costs_by_source: collections.abc.Iterable[global___ResourceUsageCostsBySource] | None = ..., subtotal: float = ..., cloud_storage_usage_cost: float = ..., data_upload_usage_cost: float = ..., data_egres_usage_cost: float = ..., remote_control_usage_cost: float = ..., standard_compute_usage_cost: float = ..., discount_amount: float = ..., total_usage_with_discount: float = ..., total_usage_without_discount: float = ..., per_machine_usage_cost: float = ..., binary_data_cloud_storage_usage_cost: float = ..., other_cloud_storage_usage_cost: float = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: subtotal :type: float .. py:attribute:: cloud_storage_usage_cost :type: float all fields below are deprecated .. py:attribute:: data_upload_usage_cost :type: float .. py:attribute:: data_egres_usage_cost :type: float .. py:attribute:: remote_control_usage_cost :type: float .. py:attribute:: standard_compute_usage_cost :type: float .. py:attribute:: discount_amount :type: float .. py:attribute:: total_usage_with_discount :type: float .. py:attribute:: total_usage_without_discount :type: float .. py:attribute:: per_machine_usage_cost :type: float .. py:attribute:: binary_data_cloud_storage_usage_cost :type: float .. py:attribute:: other_cloud_storage_usage_cost :type: float .. py:property:: start_date :type: google.protobuf.timestamp_pb2.Timestamp .. py:property:: end_date :type: google.protobuf.timestamp_pb2.Timestamp .. py:property:: resource_usage_costs_by_source :type: google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ResourceUsageCostsBySource] .. py:method:: HasField(field_name: Literal['end_date', b'end_date', 'start_date', b'start_date']) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:data:: global___GetCurrentMonthUsageResponse .. py:class:: GetOrgBillingInformationRequest(*, org_id: str = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: org_id :type: str .. py:data:: global___GetOrgBillingInformationRequest .. py:class:: GetOrgBillingInformationResponse(*, type: global___PaymentMethodType = ..., billing_email: str = ..., method: global___PaymentMethodCard | None = ..., billing_tier: str | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: type :type: global___PaymentMethodType .. py:attribute:: billing_email :type: str .. py:attribute:: billing_tier :type: str Only return billing_tier for billing dashboard admin users .. py:property:: method :type: global___PaymentMethodCard defined if type is PAYMENT_METHOD_TYPE_CARD .. py:method:: HasField(field_name: Literal['_billing_tier', b'_billing_tier', '_method', b'_method', 'billing_tier', b'billing_tier', 'method', b'method']) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:method:: WhichOneof(oneof_group: Literal['_billing_tier', b'_billing_tier']) -> Literal['billing_tier'] | None WhichOneof(oneof_group: Literal['_method', b'_method']) -> Literal['method'] | None Returns the name of the field that is set inside a oneof group. If no field is set, returns None. :param oneof_group: the name of the oneof group to check. :type oneof_group: str :returns: The name of the group that is set, or None. :rtype: str or None :raises ValueError: no group with the given name exists .. py:data:: global___GetOrgBillingInformationResponse .. py:class:: GetInvoicesSummaryRequest(*, org_id: str = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: org_id :type: str .. py:data:: global___GetInvoicesSummaryRequest .. py:class:: GetInvoicesSummaryResponse(*, outstanding_balance: float = ..., invoices: collections.abc.Iterable[global___InvoiceSummary] | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: outstanding_balance :type: float all unpaid balances at the end of the last billing cycle .. py:property:: invoices :type: google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___InvoiceSummary] all previous invoices .. py:data:: global___GetInvoicesSummaryResponse .. py:class:: GetInvoicePdfRequest(*, id: str = ..., org_id: str = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: id :type: str .. py:attribute:: org_id :type: str .. py:data:: global___GetInvoicePdfRequest .. py:class:: GetInvoicePdfResponse(*, chunk: bytes = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: chunk :type: bytes .. py:data:: global___GetInvoicePdfResponse .. py:class:: SendPaymentRequiredEmailRequest(*, customer_org_id: str = ..., billing_owner_org_id: str = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: customer_org_id :type: str .. py:attribute:: billing_owner_org_id :type: str .. py:data:: global___SendPaymentRequiredEmailRequest .. py:class:: SendPaymentRequiredEmailResponse Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:data:: global___SendPaymentRequiredEmailResponse .. py:class:: GetAvailableBillingTiersRequest Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:data:: global___GetAvailableBillingTiersRequest .. py:class:: GetAvailableBillingTiersResponse(*, tiers: collections.abc.Iterable[str] | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:property:: tiers :type: google.protobuf.internal.containers.RepeatedScalarFieldContainer[str] .. py:data:: global___GetAvailableBillingTiersResponse .. py:class:: UpdateOrganizationBillingTierRequest(*, organization_id: str = ..., billing_tier: str = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: organization_id :type: str .. py:attribute:: billing_tier :type: str .. py:data:: global___UpdateOrganizationBillingTierRequest .. py:class:: UpdateOrganizationBillingTierResponse Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:data:: global___UpdateOrganizationBillingTierResponse