Metadata-Version: 2.4
Name: bxb_portal
Version: 0.3.2
Summary: BXB Customer Portal API
Home-page: 
Author: OpenAPI Generator community
Author-email: OpenAPI Generator Community <team@openapitools.org>
Project-URL: Repository, https://github.com/GIT_USER_ID/GIT_REPO_ID
Keywords: OpenAPI,OpenAPI-Generator,BXB Customer Portal API
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: urllib3<3.0.0,>=2.1.0
Requires-Dist: python-dateutil>=2.8.2
Requires-Dist: pydantic>=2
Requires-Dist: typing-extensions>=4.7.1
Dynamic: author

# bxb-portal
Customer self-service portal API. Authenticate using a JWT token passed as a query parameter.

This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:

- API version: 0.3.1
- Package version: 0.3.2
- Generator version: 7.20.0
- Build package: org.openapitools.codegen.languages.PythonClientCodegen

## Requirements.

Python 3.9+

## Installation & Usage
### pip install

If the python package is hosted on a repository, you can install directly using:

```sh
pip install git+https://github.com/GIT_USER_ID/GIT_REPO_ID.git
```
(you may need to run `pip` with root permission: `sudo pip install git+https://github.com/GIT_USER_ID/GIT_REPO_ID.git`)

Then import the package:
```python
import bxb_portal
```

### Setuptools

Install via [Setuptools](http://pypi.python.org/pypi/setuptools).

```sh
python setup.py install --user
```
(or `sudo python setup.py install` to install the package for all users)

Then import the package:
```python
import bxb_portal
```

### Tests

Execute `pytest` to run the tests.

## Getting Started

Please follow the [installation procedure](#installation--usage) and then run the following:

```python

import bxb_portal
from bxb_portal.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to http://localhost
# See configuration.py for a list of all supported configuration parameters.
configuration = bxb_portal.Configuration(
    host = "http://localhost"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: PortalJWT
configuration.api_key['PortalJWT'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['PortalJWT'] = 'Bearer'


# Enter a context with an instance of the API client
with bxb_portal.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = bxb_portal.PortalApi(api_client)
    token = 'token_example' # str | 
    payment_method_create = bxb_portal.PaymentMethodCreate() # PaymentMethodCreate | 

    try:
        # Add a payment method
        api_response = api_instance.add_portal_payment_method(token, payment_method_create)
        print("The response of PortalApi->add_portal_payment_method:\n")
        pprint(api_response)
    except ApiException as e:
        print("Exception when calling PortalApi->add_portal_payment_method: %s\n" % e)

```

## Documentation for API Endpoints

All URIs are relative to *http://localhost*

Class | Method | HTTP request | Description
------------ | ------------- | ------------- | -------------
*PortalApi* | [**add_portal_payment_method**](docs/PortalApi.md#add_portal_payment_method) | **POST** /portal/payment_methods | Add a payment method
*PortalApi* | [**download_portal_invoice_pdf**](docs/PortalApi.md#download_portal_invoice_pdf) | **GET** /portal/invoices/{invoice_id}/download_pdf | Download invoice PDF
*PortalApi* | [**get_portal_branding**](docs/PortalApi.md#get_portal_branding) | **GET** /portal/branding | Get organization branding for portal
*PortalApi* | [**get_portal_current_usage**](docs/PortalApi.md#get_portal_current_usage) | **GET** /portal/current_usage | Get current usage
*PortalApi* | [**get_portal_customer**](docs/PortalApi.md#get_portal_customer) | **GET** /portal/customer | Get customer profile
*PortalApi* | [**get_portal_dashboard_summary**](docs/PortalApi.md#get_portal_dashboard_summary) | **GET** /portal/dashboard_summary | Get portal dashboard summary
*PortalApi* | [**get_portal_invoice**](docs/PortalApi.md#get_portal_invoice) | **GET** /portal/invoices/{invoice_id} | Get invoice detail
*PortalApi* | [**get_portal_projected_usage**](docs/PortalApi.md#get_portal_projected_usage) | **GET** /portal/usage/projected | Get projected end-of-period usage
*PortalApi* | [**get_portal_subscription**](docs/PortalApi.md#get_portal_subscription) | **GET** /portal/subscriptions/{subscription_id} | Get subscription detail
*PortalApi* | [**get_portal_usage_limits**](docs/PortalApi.md#get_portal_usage_limits) | **GET** /portal/usage/limits | Get plan limits vs current usage
*PortalApi* | [**get_portal_usage_trend**](docs/PortalApi.md#get_portal_usage_trend) | **GET** /portal/usage/trend | Get usage trend for a subscription
*PortalApi* | [**get_portal_wallet**](docs/PortalApi.md#get_portal_wallet) | **GET** /portal/wallet | Get wallet balance and transactions
*PortalApi* | [**get_portal_wallet_balance_timeline**](docs/PortalApi.md#get_portal_wallet_balance_timeline) | **GET** /portal/wallet/{wallet_id}/balance_timeline | Get wallet balance timeline
*PortalApi* | [**list_portal_add_ons**](docs/PortalApi.md#list_portal_add_ons) | **GET** /portal/add_ons | List available add-ons
*PortalApi* | [**list_portal_coupons**](docs/PortalApi.md#list_portal_coupons) | **GET** /portal/coupons | List applied coupons
*PortalApi* | [**list_portal_invoice_payments**](docs/PortalApi.md#list_portal_invoice_payments) | **GET** /portal/invoices/{invoice_id}/payments | List payments for an invoice
*PortalApi* | [**list_portal_invoices**](docs/PortalApi.md#list_portal_invoices) | **GET** /portal/invoices | List customer invoices
*PortalApi* | [**list_portal_payment_methods**](docs/PortalApi.md#list_portal_payment_methods) | **GET** /portal/payment_methods | List customer payment methods
*PortalApi* | [**list_portal_payments**](docs/PortalApi.md#list_portal_payments) | **GET** /portal/payments | List customer payments
*PortalApi* | [**list_portal_plans**](docs/PortalApi.md#list_portal_plans) | **GET** /portal/plans | List available plans
*PortalApi* | [**list_portal_purchased_add_ons**](docs/PortalApi.md#list_portal_purchased_add_ons) | **GET** /portal/add_ons/purchased | List purchased add-ons
*PortalApi* | [**list_portal_subscriptions**](docs/PortalApi.md#list_portal_subscriptions) | **GET** /portal/subscriptions | List customer subscriptions
*PortalApi* | [**list_portal_wallet_transactions**](docs/PortalApi.md#list_portal_wallet_transactions) | **GET** /portal/wallet/{wallet_id}/transactions | List wallet transactions
*PortalApi* | [**pay_portal_invoice**](docs/PortalApi.md#pay_portal_invoice) | **POST** /portal/invoices/{invoice_id}/pay | Pay an outstanding invoice
*PortalApi* | [**portal_change_plan**](docs/PortalApi.md#portal_change_plan) | **POST** /portal/subscriptions/{subscription_id}/change_plan | Change subscription plan
*PortalApi* | [**portal_change_plan_preview**](docs/PortalApi.md#portal_change_plan_preview) | **POST** /portal/subscriptions/{subscription_id}/change_plan_preview | Preview plan change with proration
*PortalApi* | [**portal_purchase_add_on**](docs/PortalApi.md#portal_purchase_add_on) | **POST** /portal/add_ons/{add_on_id}/purchase | Purchase an add-on
*PortalApi* | [**portal_redeem_coupon**](docs/PortalApi.md#portal_redeem_coupon) | **POST** /portal/coupons/redeem | Redeem a coupon code
*PortalApi* | [**portal_wallet_top_up**](docs/PortalApi.md#portal_wallet_top_up) | **POST** /portal/wallet/{wallet_id}/top_up | Request a wallet top-up
*PortalApi* | [**preview_portal_invoice_pdf**](docs/PortalApi.md#preview_portal_invoice_pdf) | **GET** /portal/invoices/{invoice_id}/pdf_preview | Preview invoice PDF inline
*PortalApi* | [**remove_portal_payment_method**](docs/PortalApi.md#remove_portal_payment_method) | **DELETE** /portal/payment_methods/{payment_method_id} | Remove a payment method
*PortalApi* | [**set_portal_default_payment_method**](docs/PortalApi.md#set_portal_default_payment_method) | **POST** /portal/payment_methods/{payment_method_id}/set_default | Set default payment method
*PortalApi* | [**update_portal_profile**](docs/PortalApi.md#update_portal_profile) | **PATCH** /portal/profile | Update customer profile

## Documentation For Models

 - [AppSchemasUsageCurrentUsageResponse](docs/AppSchemasUsageCurrentUsageResponse.md)
 - [BalanceTimelinePoint](docs/BalanceTimelinePoint.md)
 - [BalanceTimelineResponse](docs/BalanceTimelineResponse.md)
 - [BillableMetricUsage](docs/BillableMetricUsage.md)
 - [ChangePlanPreviewResponse](docs/ChangePlanPreviewResponse.md)
 - [ChargeUsage](docs/ChargeUsage.md)
 - [Credits](docs/Credits.md)
 - [CustomerResponse](docs/CustomerResponse.md)
 - [HTTPValidationError](docs/HTTPValidationError.md)
 - [InvoiceResponse](docs/InvoiceResponse.md)
 - [LocationInner](docs/LocationInner.md)
 - [PaymentMethodCreate](docs/PaymentMethodCreate.md)
 - [PaymentMethodResponse](docs/PaymentMethodResponse.md)
 - [PaymentResponse](docs/PaymentResponse.md)
 - [PlanSummary](docs/PlanSummary.md)
 - [PortalAddOnResponse](docs/PortalAddOnResponse.md)
 - [PortalAppliedCouponResponse](docs/PortalAppliedCouponResponse.md)
 - [PortalBrandingResponse](docs/PortalBrandingResponse.md)
 - [PortalChangePlanRequest](docs/PortalChangePlanRequest.md)
 - [PortalDashboardSummaryResponse](docs/PortalDashboardSummaryResponse.md)
 - [PortalNextBillingInfo](docs/PortalNextBillingInfo.md)
 - [PortalPayNowRequest](docs/PortalPayNowRequest.md)
 - [PortalPayNowResponse](docs/PortalPayNowResponse.md)
 - [PortalPlanResponse](docs/PortalPlanResponse.md)
 - [PortalProfileUpdate](docs/PortalProfileUpdate.md)
 - [PortalProjectedUsageItem](docs/PortalProjectedUsageItem.md)
 - [PortalProjectedUsageResponse](docs/PortalProjectedUsageResponse.md)
 - [PortalPurchaseAddOnResponse](docs/PortalPurchaseAddOnResponse.md)
 - [PortalPurchasedAddOnResponse](docs/PortalPurchasedAddOnResponse.md)
 - [PortalQuickActions](docs/PortalQuickActions.md)
 - [PortalRedeemCouponRequest](docs/PortalRedeemCouponRequest.md)
 - [PortalSubscriptionResponse](docs/PortalSubscriptionResponse.md)
 - [PortalTopUpRequest](docs/PortalTopUpRequest.md)
 - [PortalTopUpResponse](docs/PortalTopUpResponse.md)
 - [PortalUpcomingCharge](docs/PortalUpcomingCharge.md)
 - [PortalUsageLimitItem](docs/PortalUsageLimitItem.md)
 - [PortalUsageLimitsResponse](docs/PortalUsageLimitsResponse.md)
 - [PortalUsageProgress](docs/PortalUsageProgress.md)
 - [PortalUsageTrendPoint](docs/PortalUsageTrendPoint.md)
 - [PortalUsageTrendResponse](docs/PortalUsageTrendResponse.md)
 - [ProrationDetail](docs/ProrationDetail.md)
 - [SubscriptionResponse](docs/SubscriptionResponse.md)
 - [SubscriptionStatus](docs/SubscriptionStatus.md)
 - [ValidationError](docs/ValidationError.md)
 - [WalletResponse](docs/WalletResponse.md)
 - [WalletTransactionResponse](docs/WalletTransactionResponse.md)

## Documentation For Authorization

Authentication schemes defined for the API:

### PortalJWT

- **Type**: API key
- **API key parameter name**: token
- **Location**: URL query string

## Author

