Metadata-Version: 2.4
Name: surebase-sdk
Version: 0.1.0
Summary: Official Python SDK for the Surebase API
Author-email: Surebase <developers@surebase.it>
License: MIT
Project-URL: Homepage, https://developers.surebase.it
Project-URL: Repository, https://github.com/Stringify-Consulting/surebase-sdks
Keywords: surebase,insurance,openapi,sdk
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: urllib3<3.0.0,>=2.6.3
Requires-Dist: python-dateutil>=2.8.2
Requires-Dist: pydantic>=2.11
Requires-Dist: typing-extensions>=4.7.1
Provides-Extra: dev
Requires-Dist: pytest>=8.4.2; extra == "dev"
Requires-Dist: pytest-cov>=2.8.1; extra == "dev"
Requires-Dist: flake8>=4.0.0; extra == "dev"
Requires-Dist: mypy>=1.5; extra == "dev"
Requires-Dist: types-python-dateutil>=2.8.19.14; extra == "dev"

# surebase-sdk
Public, API-key-authenticated surface of the Surebase B2B insurance-as-a-service
platform. This spec covers exactly the resources published to third-party
developers via `X-Api-Key` — Products, Quotes, Policies, Claims, and Usage
reporting. It intentionally excludes internal-only endpoints (dashboard/admin
routes authenticated via JWT session, not API key).

This is the canonical source of truth for the official SDKs published under
`Stringify-Consulting/surebase-sdks`. Language SDKs are generated from this
spec via `openapi-generator` — do not hand-edit generated SDK request/response
shapes without first fixing them here.


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

- API version: 1.0.0
- Package version: 0.1.0
- Generator version: 7.24.0
- Build package: org.openapitools.codegen.languages.PythonClientCodegen
For more information, please visit [https://developers.surebase.it](https://developers.surebase.it)

## Requirements.

Python 3.9+

## Installation & Usage
### pip install

```sh
pip install surebase-sdk
```

Or install the latest commit directly from source:

```sh
pip install git+https://github.com/Stringify-Consulting/surebase-sdks.git#subdirectory=packages/python
```
(you may need to run `pip` with root permission: `sudo pip install ...`)

Then import the package:
```python
import surebase_sdk
```

### 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 surebase_sdk
```

### Tests

Execute `pytest` to run the tests.

## Getting Started

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

```python

import surebase_sdk
from surebase_sdk.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.surebase.it
# See configuration.py for a list of all supported configuration parameters.
configuration = surebase_sdk.Configuration(
    host = "https://api.surebase.it"
)

# 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: ApiKeyAuth
configuration.api_key['ApiKeyAuth'] = os.environ["API_KEY"]

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


# Enter a context with an instance of the API client
with surebase_sdk.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = surebase_sdk.ClaimsApi(api_client)
    claim_id = 56 # int | 
    add_claim_comment_request = surebase_sdk.AddClaimCommentRequest() # AddClaimCommentRequest | 

    try:
        # Post a message to a claim's shared communication thread
        api_response = api_instance.add_claim_comment(claim_id, add_claim_comment_request)
        print("The response of ClaimsApi->add_claim_comment:\n")
        pprint(api_response)
    except ApiException as e:
        print("Exception when calling ClaimsApi->add_claim_comment: %s\n" % e)

```

## Documentation for API Endpoints

All URIs are relative to *https://api.surebase.it*

Class | Method | HTTP request | Description
------------ | ------------- | ------------- | -------------
*ClaimsApi* | [**add_claim_comment**](docs/ClaimsApi.md#add_claim_comment) | **POST** /api/v1/claims/{claimId}/comments | Post a message to a claim&#39;s shared communication thread
*ClaimsApi* | [**add_claim_document**](docs/ClaimsApi.md#add_claim_document) | **POST** /api/v1/claims/{claimId}/document | Add a supporting document to a claim
*ClaimsApi* | [**approve_claim**](docs/ClaimsApi.md#approve_claim) | **POST** /api/v1/claims/{claimId}/approve | Approve a claim
*ClaimsApi* | [**create_claim**](docs/ClaimsApi.md#create_claim) | **POST** /api/v1/claims | File a new claim against a policy
*ClaimsApi* | [**list_claim_documents**](docs/ClaimsApi.md#list_claim_documents) | **GET** /api/v1/claims/{claimId}/document | List all supporting documents for a claim
*ClaimsApi* | [**reject_claim**](docs/ClaimsApi.md#reject_claim) | **POST** /api/v1/claims/{claimId}/reject | Reject a claim
*ClaimsApi* | [**update_claim**](docs/ClaimsApi.md#update_claim) | **PUT** /api/v1/claims/{claim_id} | Update an existing claim
*PoliciesApi* | [**cancel_policy**](docs/PoliciesApi.md#cancel_policy) | **POST** /api/v1/policies/{id}/cancel | Cancel a policy
*PoliciesApi* | [**create_policy**](docs/PoliciesApi.md#create_policy) | **POST** /api/v1/policies | Issue a new policy from an approved quote
*PoliciesApi* | [**export_policies**](docs/PoliciesApi.md#export_policies) | **GET** /api/v1/policies/export | Export policies (same filters as list) as CSV
*PoliciesApi* | [**get_policy**](docs/PoliciesApi.md#get_policy) | **GET** /api/v1/policies/{id} | Get a policy by ID
*PoliciesApi* | [**get_policy_document**](docs/PoliciesApi.md#get_policy_document) | **GET** /api/v1/policies/{id}/document | Generate and download the policy schedule/certificate as a PDF
*PoliciesApi* | [**get_policy_stats**](docs/PoliciesApi.md#get_policy_stats) | **GET** /api/v1/policies/stats | Return policy counts by status
*PoliciesApi* | [**list_policies**](docs/PoliciesApi.md#list_policies) | **GET** /api/v1/policies | List policies for the caller&#39;s own organization, paginated
*PoliciesApi* | [**renew_policy**](docs/PoliciesApi.md#renew_policy) | **POST** /api/v1/policies/{id}/renew | Renew a policy
*PoliciesApi* | [**set_policy_auto_renewal**](docs/PoliciesApi.md#set_policy_auto_renewal) | **PATCH** /api/v1/policies/{id}/auto-renewal | Enable or disable auto-renewal for a policy
*ProductsApi* | [**get_product**](docs/ProductsApi.md#get_product) | **GET** /api/v1/products/{productId} | Get a product by ID
*ProductsApi* | [**get_product_commission_settings**](docs/ProductsApi.md#get_product_commission_settings) | **GET** /api/v1/products/{productId}/commission-settings | Get a product&#39;s commission settings
*ProductsApi* | [**list_marketplace_products**](docs/ProductsApi.md#list_marketplace_products) | **GET** /api/v1/products/marketplace | Browse all active products across all insurers (marketplace listing)
*ProductsApi* | [**list_product_coverage**](docs/ProductsApi.md#list_product_coverage) | **GET** /api/v1/products/{productId}/coverage | List all coverage line items for a product
*QuotesApi* | [**approve_quote**](docs/QuotesApi.md#approve_quote) | **POST** /api/v1/quotes/{quoteId}/approve | Approve a quote
*QuotesApi* | [**create_quote**](docs/QuotesApi.md#create_quote) | **POST** /api/v1/quotes | Create a new quote for the caller&#39;s own broker organization
*QuotesApi* | [**list_quotes**](docs/QuotesApi.md#list_quotes) | **GET** /api/v1/quotes | List quotes for the caller&#39;s own broker organization, newest first
*QuotesApi* | [**reject_quote**](docs/QuotesApi.md#reject_quote) | **POST** /api/v1/quotes/{quoteId}/reject | Reject a quote
*QuotesApi* | [**submit_quote**](docs/QuotesApi.md#submit_quote) | **POST** /api/v1/quotes/{quoteId}/submit | Submit a draft quote for insurer review, moving it from Draft to Pending
*UsageApi* | [**get_api_usage**](docs/UsageApi.md#get_api_usage) | **GET** /api/v1/reports/api-usage | Get the caller&#39;s own organization&#39;s API usage over a given number of days


## Documentation For Models

 - [AddClaimCommentRequest](docs/AddClaimCommentRequest.md)
 - [AddClaimDocumentRequest](docs/AddClaimDocumentRequest.md)
 - [ApiKeyUsage](docs/ApiKeyUsage.md)
 - [ApiUsage](docs/ApiUsage.md)
 - [ApiUsageResponse](docs/ApiUsageResponse.md)
 - [Claim](docs/Claim.md)
 - [ClaimComment](docs/ClaimComment.md)
 - [ClaimCommentResponse](docs/ClaimCommentResponse.md)
 - [ClaimDocument](docs/ClaimDocument.md)
 - [ClaimDocumentListResponse](docs/ClaimDocumentListResponse.md)
 - [ClaimDocumentType](docs/ClaimDocumentType.md)
 - [ClaimResponse](docs/ClaimResponse.md)
 - [ClaimStatus](docs/ClaimStatus.md)
 - [CommissionModel](docs/CommissionModel.md)
 - [CommissionSettings](docs/CommissionSettings.md)
 - [CommissionSettingsResponse](docs/CommissionSettingsResponse.md)
 - [Coverage](docs/Coverage.md)
 - [CoverageListResponse](docs/CoverageListResponse.md)
 - [CreateClaimRequest](docs/CreateClaimRequest.md)
 - [CreatePolicyRequest](docs/CreatePolicyRequest.md)
 - [CreateQuoteRequest](docs/CreateQuoteRequest.md)
 - [DailyUsage](docs/DailyUsage.md)
 - [ErrorResponse](docs/ErrorResponse.md)
 - [MarketplaceProduct](docs/MarketplaceProduct.md)
 - [MarketplaceProductListResponse](docs/MarketplaceProductListResponse.md)
 - [MessageResponse](docs/MessageResponse.md)
 - [Policy](docs/Policy.md)
 - [PolicyPage](docs/PolicyPage.md)
 - [PolicyPageResponse](docs/PolicyPageResponse.md)
 - [PolicyResponse](docs/PolicyResponse.md)
 - [PolicyStats](docs/PolicyStats.md)
 - [PolicyStatsResponse](docs/PolicyStatsResponse.md)
 - [PolicyStatus](docs/PolicyStatus.md)
 - [Product](docs/Product.md)
 - [ProductResponse](docs/ProductResponse.md)
 - [ProductStatus](docs/ProductStatus.md)
 - [Quote](docs/Quote.md)
 - [QuoteListResponse](docs/QuoteListResponse.md)
 - [QuoteResponse](docs/QuoteResponse.md)
 - [QuoteStatus](docs/QuoteStatus.md)
 - [RenewPolicyRequest](docs/RenewPolicyRequest.md)
 - [UpdateClaimRequest](docs/UpdateClaimRequest.md)


<a id="documentation-for-authorization"></a>
## Documentation For Authorization


Authentication schemes defined for the API:
<a id="ApiKeyAuth"></a>
### ApiKeyAuth

- **Type**: API key
- **API key parameter name**: X-Api-Key
- **Location**: HTTP header


## Author




