acre_api 1.2.3
Acre Platform User API
License: MIT
Requires Python: <4.0,>=3.8
Keywords: OpenAPI, OpenAPI-Generator, Acre Platform User API

# acre-api
# CORS
CORS is implemented by all Acre API endpoints and only certain hostnames are allowed for each deployment of the API. If your use case requires calling the Acre User API from a browser, please contact Acre to arrange the appropriate configuration.
# API Authentication
The primary method of authentication for users of the Acre API is with the use of JSON Web Tokens (JWTs), which are suplemented by an application specific API Key.
The API key must be provided through the `X-API-KEY` HTTP header and will be provided by your Acre Customer Success Manager.
The JWT must be provided through a cookie with key of `authorization`. The JWT must be generated and signed as per the following section.
# Generating JWTs
JWT must either be generated by a third-party such as Azure ADB2C that has been configured for the appropriate service and/or user account, or alternatively can be generated locally and signed by an private key for which the public key has been made available to Acre via a JWKS URL.
In addition to being signed by your private key, the JWT will also need to contain at a minimum:
 * An issuer `iss`, which must be a valid URI previously agreed with Acre.
 * A subject `sub`, which must be a unique identifier for the user and/or service account previously agreed with Acre.
 * An expiry time `exp` which must not be more than four hours in the future.
 * A not before time `nbf` which must be in the past, but not greater than six hours in the past.
 The JWT should be signed using RS256.

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

- API version: 1.0
- Package version: 1.0.0
- Generator version: 7.12.0-SNAPSHOT
- Build package: org.openapitools.codegen.languages.PythonClientCodegen

## Requirements.

Python 3.8+

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

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

### Tests

Execute `pytest` to run the tests.

## Getting Started

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

```python

import acre_api
from acre_api.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 = acre_api.Configuration(
    host = "http://localhost"
)



# Enter a context with an instance of the API client
with acre_api.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = acre_api.AuthenticationApi(api_client)
    authentication_provider = acre_api.CdmAuthenticationProvider() # CdmAuthenticationProvider | Details of the authentication provider to be created. Required.

    try:
        # Create a new authentication provider.
        api_response = api_instance.create_authentication_provider(authentication_provider)
        print("The response of AuthenticationApi->create_authentication_provider:\n")
        pprint(api_response)
    except ApiException as e:
        print("Exception when calling AuthenticationApi->create_authentication_provider: %s\n" % e)

```

## Documentation for API Endpoints

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

Class | Method | HTTP request | Description
------------ | ------------- | ------------- | -------------
*AuthenticationApi* | [**create_authentication_provider**](docs/AuthenticationApi.md#create_authentication_provider) | **POST** /v1/acre/auth_provider | Create a new authentication provider.
*AuthenticationApi* | [**delete_authentication_provider**](docs/AuthenticationApi.md#delete_authentication_provider) | **DELETE** /v1/acre/auth_provider/{authentication_provider.authentication_provider_id} | Delete an authentication provider.
*AuthenticationApi* | [**get_authentication_provider**](docs/AuthenticationApi.md#get_authentication_provider) | **GET** /v1/acre/auth_provider | Get the authentication provider details.
*AuthenticationApi* | [**get_user_auth_url**](docs/AuthenticationApi.md#get_user_auth_url) | **GET** /v1/acre/user/auth_url | Get a user-specific URL for the user to authenticate.
*AuthenticationApi* | [**replace_authentication_provider**](docs/AuthenticationApi.md#replace_authentication_provider) | **PUT** /v1/acre/auth_provider/{authentication_provider.authentication_provider_id} | Replace replaces an authentication provider.
*AuthenticationApi* | [**update_authentication_provider**](docs/AuthenticationApi.md#update_authentication_provider) | **PATCH** /v1/acre/auth_provider/{authentication_provider.authentication_provider_id} | Update an existing authentication provider.
*CaseApi* | [**bulk_assign_case**](docs/CaseApi.md#bulk_assign_case) | **POST** /v1/acre/case/assign | Bulk assign case owner and bulk add related users
*CaseApi* | [**bulk_create_lead_cases**](docs/CaseApi.md#bulk_create_lead_cases) | **POST** /v1/acre/case/leads | Bulk create lead cases from complete cases.
*CaseApi* | [**create_case**](docs/CaseApi.md#create_case) | **POST** /v1/acre/case | Create a new case.
*CaseApi* | [**create_case_flag**](docs/CaseApi.md#create_case_flag) | **POST** /v1/acre/case/{flag.case_id}/flag | Create case flag.
*CaseApi* | [**create_case_flag_review**](docs/CaseApi.md#create_case_flag_review) | **POST** /v1/acre/case/{case_id}/flag/{flag_id}/review | Create case flag review.
*CaseApi* | [**create_case_referral**](docs/CaseApi.md#create_case_referral) | **POST** /v1/acre/case/referral | Create a new case from an existing one.
*CaseApi* | [**create_case_version**](docs/CaseApi.md#create_case_version) | **POST** /v1/acre/case/{case_id}/version | Create a case version.
*CaseApi* | [**describe_case_verification**](docs/CaseApi.md#describe_case_verification) | **GET** /v1/acre/case/verification | Describe all installed verifications for cases.
*CaseApi* | [**get_case**](docs/CaseApi.md#get_case) | **GET** /v1/acre/case | Get cases with their latest version.
*CaseApi* | [**get_case_survey**](docs/CaseApi.md#get_case_survey) | **GET** /v1/acre/case/{case_id}/survey | Get case survey.
*CaseApi* | [**get_case_verifications**](docs/CaseApi.md#get_case_verifications) | **GET** /v1/acre/case/{case_id}/verifications | Retrieve verifications of an existing case.
*CaseApi* | [**get_case_version**](docs/CaseApi.md#get_case_version) | **GET** /v1/acre/case/{case_id}/version/{version} | Get a case, specifying a version (use zero for latest).
*CaseApi* | [**get_hydrated_case**](docs/CaseApi.md#get_hydrated_case) | **GET** /v1/acre/case/{case_id}/hydrated | Get hydrated case.
*CaseApi* | [**list_case_version**](docs/CaseApi.md#list_case_version) | **GET** /v1/acre/case/{case_id}/version | List case versions.
*CaseApi* | [**replace_case**](docs/CaseApi.md#replace_case) | **PUT** /v1/acre/case/{case.case_id} | Replace (PUT) an existing case and current mutable version.
*CaseApi* | [**update_case**](docs/CaseApi.md#update_case) | **PATCH** /v1/acre/case/{case.case_id} | Update (PATCH) an existing case and current mutable version.
*CaseApi* | [**update_case_status**](docs/CaseApi.md#update_case_status) | **POST** /v1/acre/case/{case_id}/case_transition | Update a case&#39;s status.
*ClientApi* | [**create_client**](docs/ClientApi.md#create_client) | **POST** /v1/acre/client | Create a new client.
*ClientApi* | [**create_client_organisation_relationship**](docs/ClientApi.md#create_client_organisation_relationship) | **POST** /v1/acre/client/{client_id}/organisation_relationship/{organisation_id_or_ext} | Create a client organisation relationship.
*ClientApi* | [**create_client_version**](docs/ClientApi.md#create_client_version) | **POST** /v1/acre/client/{client_id}/version | Create a client version.
*ClientApi* | [**delete_client_data**](docs/ClientApi.md#delete_client_data) | **DELETE** /v1/acre/client/{client_id} | 
*ClientApi* | [**delete_client_health_data**](docs/ClientApi.md#delete_client_health_data) | **DELETE** /v1/acre/client/{client_id}/health_data | 
*ClientApi* | [**deprecated_get_client_organisation_relationship**](docs/ClientApi.md#deprecated_get_client_organisation_relationship) | **GET** /v1/acre/client/{client_id}/organisation_relationship | Deprecated - Get client organisation relationship.
*ClientApi* | [**get_client**](docs/ClientApi.md#get_client) | **GET** /v1/acre/client | Get clients with their latest version.
*ClientApi* | [**get_client_linked_data**](docs/ClientApi.md#get_client_linked_data) | **GET** /v1/acre/client/{client_id}/delete_data | 
*ClientApi* | [**get_client_organisation_relationship**](docs/ClientApi.md#get_client_organisation_relationship) | **GET** /v1/acre/client/{client_id}/organisation_relationship/{organisation_id_or_ext} | Get client organisation relationship.
*ClientApi* | [**get_client_verifications**](docs/ClientApi.md#get_client_verifications) | **GET** /v1/acre/client/{client_id}/verifications | Retrieve verifications of an existing client.
*ClientApi* | [**get_client_version**](docs/ClientApi.md#get_client_version) | **GET** /v1/acre/client/{client_id}/version/{version} | Get a client, specifying a version (use zero for latest).
*ClientApi* | [**list_client_version**](docs/ClientApi.md#list_client_version) | **GET** /v1/acre/client/{client_id}/version | List client versions.
*ClientApi* | [**replace_client**](docs/ClientApi.md#replace_client) | **PUT** /v1/acre/client/{client.client_id} | Replace (PUT) an existing client and current mutable version.
*ClientApi* | [**run_id_verification**](docs/ClientApi.md#run_id_verification) | **POST** /v1/acre/client/{client_id}/identity/request_verification | Request eIDV check of an existing client.
*ClientApi* | [**update_client**](docs/ClientApi.md#update_client) | **PATCH** /v1/acre/client/{client.client_id} | Update (PATCH) an existing client and current mutable version.
*ClientApi* | [**update_client_organisation_relationship**](docs/ClientApi.md#update_client_organisation_relationship) | **PATCH** /v1/acre/client/{client_id}/organisation_relationship/{organisation_id_or_ext} | Update (PATCH) an existing client organisation relationship.
*CommissionStructureApi* | [**create_commission_structure**](docs/CommissionStructureApi.md#create_commission_structure) | **POST** /v1/acre/commission_structure | Create Commission Structure.
*CommissionStructureApi* | [**get_commission_structure**](docs/CommissionStructureApi.md#get_commission_structure) | **GET** /v1/acre/commission_structure | Retrieve Commission Structure.
*CommissionStructureApi* | [**update_commission_structure**](docs/CommissionStructureApi.md#update_commission_structure) | **PATCH** /v1/acre/commission_structure/{commission_structure.commission_structure_id} | Update (PATCH) Commission Structure.
*DocumentApi* | [**add_case_document**](docs/DocumentApi.md#add_case_document) | **POST** /v1/acre/document/{document_id}/case | Add a document to an existing case.
*DocumentApi* | [**create_document_verification**](docs/DocumentApi.md#create_document_verification) | **POST** /v1/acre/document/{document_id}/verification | Create a document verification.
*DocumentApi* | [**delete_case_document**](docs/DocumentApi.md#delete_case_document) | **DELETE** /v1/acre/document/{document_id}/case/{case_id} | Delete (DELETE) document from an existing case.
*DocumentApi* | [**delete_document**](docs/DocumentApi.md#delete_document) | **DELETE** /v1/acre/document/{document_id} | Delete (DELETE) document.
*DocumentApi* | [**get_document**](docs/DocumentApi.md#get_document) | **GET** /v1/acre/document/{document.document_id} | Get a document.
*DocumentApi* | [**get_document_summaries**](docs/DocumentApi.md#get_document_summaries) | **GET** /v1/acre/document | Get summaries for multiple documents. No document details are returned.
*DocumentApi* | [**get_document_verification**](docs/DocumentApi.md#get_document_verification) | **GET** /v1/acre/document/{document_id}/verification | Get a document verification.
*DocumentApi* | [**render_template**](docs/DocumentApi.md#render_template) | **POST** /v1/acre/document/render_template | Render a template to generate a document and (optionally) store it.
*DocumentApi* | [**replace_document**](docs/DocumentApi.md#replace_document) | **PUT** /v1/acre/document/{document.document_id} | Replace (PUT) an existing document.
*DocumentApi* | [**template_ctx**](docs/DocumentApi.md#template_ctx) | **POST** /v1/acre/document/render_template/ctx | Return the context a given template would have been rendered with.
*DocumentApi* | [**test_render_template**](docs/DocumentApi.md#test_render_template) | **POST** /v1/acre/document/render_template/test | Test rendering a template without having to store it, by passing the code.
*DocumentApi* | [**update_document**](docs/DocumentApi.md#update_document) | **PATCH** /v1/acre/document/{document.document_id} | Update (PATCH) an existing document.
*DocumentApi* | [**upload_document**](docs/DocumentApi.md#upload_document) | **POST** /v1/acre/document | Upload a document.
*DocumentRequirementApi* | [**create_document_requirement**](docs/DocumentRequirementApi.md#create_document_requirement) | **POST** /v1/acre/requirement | Create a new document requirement.
*DocumentRequirementApi* | [**get_document_requirements**](docs/DocumentRequirementApi.md#get_document_requirements) | **GET** /v1/acre/requirement | Get document requirements.
*DocumentRequirementApi* | [**update_document_requirement**](docs/DocumentRequirementApi.md#update_document_requirement) | **PATCH** /v1/acre/requirement/{document_requirement.requirement_id} | Update document requirement.
*GeneralInsuranceProductApi* | [**add_general_insurance_product_case**](docs/GeneralInsuranceProductApi.md#add_general_insurance_product_case) | **POST** /v1/acre/general_insurance_product/{general_insurance_product_id}/case | Add a general insurance product to an existing case.
*GeneralInsuranceProductApi* | [**create_general_insurance_product**](docs/GeneralInsuranceProductApi.md#create_general_insurance_product) | **POST** /v1/acre/general_insurance_product | Create a general insurance product.
*GeneralInsuranceProductApi* | [**delete_general_insurance_product_case**](docs/GeneralInsuranceProductApi.md#delete_general_insurance_product_case) | **DELETE** /v1/acre/general_insurance_product/{general_insurance_product_id}/case/{case_id} | Delete a general insurance product from an existing case.
*GeneralInsuranceProductApi* | [**get_general_insurance_product**](docs/GeneralInsuranceProductApi.md#get_general_insurance_product) | **GET** /v1/acre/general_insurance_product | Get general insurance products.
*GeneralInsuranceProductApi* | [**update_general_insurance_product**](docs/GeneralInsuranceProductApi.md#update_general_insurance_product) | **PATCH** /v1/acre/general_insurance_product/{general_insurance_product.general_insurance_product_id} | Update (PATCH) an existing general insurance product.
*GroupApi* | [**create_group**](docs/GroupApi.md#create_group) | **POST** /v1/acre/group | Create a new group.
*GroupApi* | [**get_group**](docs/GroupApi.md#get_group) | **GET** /v1/acre/group | Get the group details.
*GroupApi* | [**replace_group**](docs/GroupApi.md#replace_group) | **PUT** /v1/acre/group/{group.group_id} | Replace (PUT) an existing group.
*GroupApi* | [**update_group**](docs/GroupApi.md#update_group) | **PATCH** /v1/acre/group/{group.group_id} | Update (PATCH) an existing group.
*InternalApi* | [**get_hydrated_case**](docs/InternalApi.md#get_hydrated_case) | **GET** /v1/acre/case/{case_id}/hydrated | Get hydrated case.
*MortgageSourcingApi* | [**get_mortgage_product_details**](docs/MortgageSourcingApi.md#get_mortgage_product_details) | **GET** /v1/acre/mortgage_product/source/{product_code} | Get mortgage product details for sourced product.
*MortgageSourcingApi* | [**run_source**](docs/MortgageSourcingApi.md#run_source) | **POST** /v1/acre/mortgage_product/source | Run mortgage product sourcing.
*MortgageMortgageProductApi* | [**add_mortgage_case**](docs/MortgageMortgageProductApi.md#add_mortgage_case) | **POST** /v1/acre/mortgage/{mortgage_id}/case | Add a mortgage to an existing case.
*MortgageMortgageProductApi* | [**add_mortgage_product**](docs/MortgageMortgageProductApi.md#add_mortgage_product) | **POST** /v1/acre/mortgage/{mortgage_id}/product | Add a mortgage product to an existing mortgage.
*MortgageMortgageProductApi* | [**create_acre_mortgage_product**](docs/MortgageMortgageProductApi.md#create_acre_mortgage_product) | **POST** /v1/acre/mortgage_product | Create a mortgage product stored within Acre.
*MortgageMortgageProductApi* | [**create_mortgage**](docs/MortgageMortgageProductApi.md#create_mortgage) | **POST** /v1/acre/mortgage | Create a new mortgage.
*MortgageMortgageProductApi* | [**create_mortgage_version**](docs/MortgageMortgageProductApi.md#create_mortgage_version) | **POST** /v1/acre/mortgage/{mortgage_id}/version | Create a Mortgage version.
*MortgageMortgageProductApi* | [**create_mortgage_with_product**](docs/MortgageMortgageProductApi.md#create_mortgage_with_product) | **POST** /v1/acre/mortgage_with_product | Create a new mortgage with a product and link it to a case.
*MortgageMortgageProductApi* | [**delete_mortgage_case**](docs/MortgageMortgageProductApi.md#delete_mortgage_case) | **DELETE** /v1/acre/mortgage/{mortgage_id}/case/{case_id} | Delete (DELETE) mortgage from an existing case.
*MortgageMortgageProductApi* | [**delete_mortgage_product**](docs/MortgageMortgageProductApi.md#delete_mortgage_product) | **DELETE** /v1/acre/mortgage/{mortgage_id}/product/{product_id} | Delete (DELETE) mortgage product from an existing mortgage.
*MortgageMortgageProductApi* | [**get_acre_mortgage_product**](docs/MortgageMortgageProductApi.md#get_acre_mortgage_product) | **GET** /v1/acre/mortgage_product/{product_id} | Get mortgage product details for a mortgage product stored in Acre.
*MortgageMortgageProductApi* | [**get_mortgage**](docs/MortgageMortgageProductApi.md#get_mortgage) | **GET** /v1/acre/mortgage | Get the details of existing mortgages.
*MortgageMortgageProductApi* | [**get_mortgage_version**](docs/MortgageMortgageProductApi.md#get_mortgage_version) | **GET** /v1/acre/mortgage/{mortgage_id}/version/{version} | Get a mortgage, specifying a version (use zero for latest).
*MortgageMortgageProductApi* | [**replace_mortgage**](docs/MortgageMortgageProductApi.md#replace_mortgage) | **PUT** /v1/acre/mortgage/{mortgage.mortgage_id} | Replace (PUT) an existing mortgage.
*MortgageMortgageProductApi* | [**update_mortgage**](docs/MortgageMortgageProductApi.md#update_mortgage) | **PATCH** /v1/acre/mortgage/{mortgage.mortgage_id} | Update (PATCH) an existing mortgage.
*MortgageMortgageProductApi* | [**update_mortgage_with_product**](docs/MortgageMortgageProductApi.md#update_mortgage_with_product) | **PATCH** /v1/acre/mortgage_with_product/{mortgage_with_product.mortgage.mortgage_id} | Update (PATCH) an existing mortgage and its product
*NoteApi* | [**create_note**](docs/NoteApi.md#create_note) | **POST** /v1/acre/note | Create a note.
*NoteApi* | [**get_note**](docs/NoteApi.md#get_note) | **GET** /v1/acre/note | Retrieve note.
*NoteApi* | [**update_note**](docs/NoteApi.md#update_note) | **PATCH** /v1/acre/note/{note.note_id} | Update a note.
*OrganisationApi* | [**create_organisation**](docs/OrganisationApi.md#create_organisation) | **POST** /v1/acre/organisation | Create a new organisation.
*OrganisationApi* | [**get_organisation**](docs/OrganisationApi.md#get_organisation) | **GET** /v1/acre/organisation | Get the details of existing organisations.
*OrganisationApi* | [**replace_organisation**](docs/OrganisationApi.md#replace_organisation) | **PUT** /v1/acre/organisation/{organisation_id_or_ext} | Replace (PUT) an existing organisation.
*OrganisationApi* | [**update_organisation**](docs/OrganisationApi.md#update_organisation) | **PATCH** /v1/acre/organisation/{organisation_id_or_ext} | Update (PATCH) an existing organisation.
*PermissionApi* | [**create_permission_assignment**](docs/PermissionApi.md#create_permission_assignment) | **POST** /v1/acre/permission_assignment | Create a new permission assignment.
*PermissionApi* | [**create_permission_assignments**](docs/PermissionApi.md#create_permission_assignments) | **POST** /v1/acre/permission_assignment/bulk | Create new permission assignments. If one fails the call, none will be applied. Note that this endpoint must be defined after /v1/acre/permission_assignment/{permission_assignment.permission_assignment_id}, otherwise requests to /v1/acre/permission_assignment/bulk will be handled as if &#x60;bulk&#x60; is permission_assignment_id
*PermissionApi* | [**get_permission**](docs/PermissionApi.md#get_permission) | **GET** /v1/acre/permission | Get permission details. Permissions are populated using a default configuration, and cannot be manipulated via API.
*PermissionApi* | [**get_permission_assignment**](docs/PermissionApi.md#get_permission_assignment) | **GET** /v1/acre/permission_assignment | Get the permission assignment details.
*PermissionApi* | [**replace_permission_assignment**](docs/PermissionApi.md#replace_permission_assignment) | **PUT** /v1/acre/permission_assignment/{permission_assignment.permission_assignment_id} | Replace (PUT) a permission assignment.
*PermissionApi* | [**resolve_permission**](docs/PermissionApi.md#resolve_permission) | **POST** /v1/acre/resolve_permission | Check permissions with the given scopes.
*PermissionApi* | [**update_permission_assignment**](docs/PermissionApi.md#update_permission_assignment) | **PATCH** /v1/acre/permission_assignment/{permission_assignment.permission_assignment_id} | Update (PATCH) a permission assignment. Note that this endpoint must be defined before /v1/acre/permission_assignment/bulk, otherwise requests to /v1/acre/permission_assignment/bulk will be handled as if &#x60;bulk&#x60; is permission_assignment_id
*PermissionApi* | [**update_permission_assignments**](docs/PermissionApi.md#update_permission_assignments) | **PATCH** /v1/acre/permission_assignment/bulk | Update (PATCH) permission assignments. If one fails the call, none will be applied.
*PropertyApi* | [**create_property**](docs/PropertyApi.md#create_property) | **POST** /v1/acre/property | Create a new property.
*PropertyApi* | [**create_property_version**](docs/PropertyApi.md#create_property_version) | **POST** /v1/acre/property/{property_id}/version | Create a property version.
*PropertyApi* | [**get_property**](docs/PropertyApi.md#get_property) | **GET** /v1/acre/property | Get properties with their latest version.
*PropertyApi* | [**get_property_version**](docs/PropertyApi.md#get_property_version) | **GET** /v1/acre/property/{property_id}/version/{version} | Get a property, specifying a version (use zero for latest).
*PropertyApi* | [**list_property_version**](docs/PropertyApi.md#list_property_version) | **GET** /v1/acre/property/{property_id}/version | List property versions. Only versions that the caller can view are returned.
*PropertyApi* | [**replace_property**](docs/PropertyApi.md#replace_property) | **PUT** /v1/acre/property/{property.property_id} | Replace (PUT) an existing property and current mutable version.
*PropertyApi* | [**update_property**](docs/PropertyApi.md#update_property) | **PATCH** /v1/acre/property/{property.property_id} | Update (PATCH) an existing property and current mutable version.
*ProtectionProductApi* | [**add_case_protection_product**](docs/ProtectionProductApi.md#add_case_protection_product) | **POST** /v1/acre/protection_product/{protection_id}/case | Add a protection product to an existing case.
*ProtectionProductApi* | [**create_protection_product**](docs/ProtectionProductApi.md#create_protection_product) | **POST** /v1/acre/protection_product | Create a protection product.
*ProtectionProductApi* | [**create_protection_product_version**](docs/ProtectionProductApi.md#create_protection_product_version) | **POST** /v1/acre/protection_product/{protection_id}/version | Create a protection product version.
*ProtectionProductApi* | [**delete_case_protection_product**](docs/ProtectionProductApi.md#delete_case_protection_product) | **DELETE** /v1/acre/protection_product/{protection_id}/case/{case_id} | Delete (DELETE) case from a protection product.
*ProtectionProductApi* | [**get_protection_product**](docs/ProtectionProductApi.md#get_protection_product) | **GET** /v1/acre/protection_product | Get protection product details.
*ProtectionProductApi* | [**get_protection_product_version**](docs/ProtectionProductApi.md#get_protection_product_version) | **GET** /v1/acre/protection_product/{protection_id}/version/{version} | Get a protection product, specifying a version (use zero for latest).
*ProtectionProductApi* | [**save_protection_solution_to_case**](docs/ProtectionProductApi.md#save_protection_solution_to_case) | **POST** /v1/acre/protection_solution | Create protection products which belong to a single solution and add to case.
*ProtectionProductApi* | [**update_protection_product**](docs/ProtectionProductApi.md#update_protection_product) | **PATCH** /v1/acre/protection_product/{protection_product.protection_id} | Update (PATCH) an existing protection product.
*ProtectionProductApi* | [**list_protection_product_version**](docs/ProtectionProductApi.md#list_protection_product_version) | **GET** /v1/acre/protection_product/{protection_id}/version | List protection product versions.
*RoleApi* | [**create_role**](docs/RoleApi.md#create_role) | **POST** /v1/acre/role | Create a new role.
*RoleApi* | [**get_role**](docs/RoleApi.md#get_role) | **GET** /v1/acre/role | Get the role details.
*RoleApi* | [**replace_role**](docs/RoleApi.md#replace_role) | **PUT** /v1/acre/role/{role.role_id} | Replace (PUT) an existing role.
*RoleApi* | [**update_role**](docs/RoleApi.md#update_role) | **PATCH** /v1/acre/role/{role.role_id} | Update (PATCH) an existing role.
*ServiceApi* | [**health_check**](docs/ServiceApi.md#health_check) | **GET** /v1/acre/health_check | Check the health of the acre processor. This is used by load balancers to check end-to-end service health.
*TemplateApi* | [**create_template**](docs/TemplateApi.md#create_template) | **POST** /v1/acre/template | Create a template.
*TemplateApi* | [**email_template**](docs/TemplateApi.md#email_template) | **POST** /v1/acre/email_template | Email Template.
*TemplateApi* | [**get_template**](docs/TemplateApi.md#get_template) | **GET** /v1/acre/template | Get the template details.
*UserApi* | [**create_user**](docs/UserApi.md#create_user) | **POST** /v1/acre/user | Create a new user.
*UserApi* | [**get_me**](docs/UserApi.md#get_me) | **GET** /v1/acre/user/me | Get the details of the currently logged in user.
*UserApi* | [**get_user**](docs/UserApi.md#get_user) | **GET** /v1/acre/user | Get the details of users.
*UserApi* | [**replace_user**](docs/UserApi.md#replace_user) | **PUT** /v1/acre/user/{user.user_id} | Replace (PUT) an existing user.
*UserApi* | [**update_user**](docs/UserApi.md#update_user) | **PATCH** /v1/acre/user/{user.user_id} | Update (PATCH) an existing user.


## Documentation For Models

 - [AcreProcessorAddCaseProtectionProductBody](docs/AcreProcessorAddCaseProtectionProductBody.md)
 - [AcreProcessorAddGeneralInsuranceProductCaseBody](docs/AcreProcessorAddGeneralInsuranceProductCaseBody.md)
 - [AcreProcessorCreateClientOrganisationRelationshipBody](docs/AcreProcessorCreateClientOrganisationRelationshipBody.md)
 - [AcreProcessorUpdateCaseStatusBody](docs/AcreProcessorUpdateCaseStatusBody.md)
 - [AdditionalLoanPurpose](docs/AdditionalLoanPurpose.md)
 - [ArrearCreditorType](docs/ArrearCreditorType.md)
 - [AuthenticationProviderAuthenticationMechanism](docs/AuthenticationProviderAuthenticationMechanism.md)
 - [CaseDetailsCancellationReason](docs/CaseDetailsCancellationReason.md)
 - [CaseDetailsClientIDAndVersion](docs/CaseDetailsClientIDAndVersion.md)
 - [CaseDetailsConveyancer](docs/CaseDetailsConveyancer.md)
 - [CaseDetailsConveyancingStatusType](docs/CaseDetailsConveyancingStatusType.md)
 - [CaseDetailsConveyancingType](docs/CaseDetailsConveyancingType.md)
 - [CaseDetailsConveyancingUpdate](docs/CaseDetailsConveyancingUpdate.md)
 - [CaseDetailsConveyancingUpdateMessageType](docs/CaseDetailsConveyancingUpdateMessageType.md)
 - [CaseDetailsConveyancingUpdateProperty](docs/CaseDetailsConveyancingUpdateProperty.md)
 - [CaseDetailsConveyancingUpdateSource](docs/CaseDetailsConveyancingUpdateSource.md)
 - [CaseDetailsENBSEvent](docs/CaseDetailsENBSEvent.md)
 - [CaseDetailsEidvResultOverride](docs/CaseDetailsEidvResultOverride.md)
 - [CaseDetailsLeadMetadata](docs/CaseDetailsLeadMetadata.md)
 - [CaseDetailsMortgageReason](docs/CaseDetailsMortgageReason.md)
 - [CaseProtectionLengthOfTime](docs/CaseProtectionLengthOfTime.md)
 - [CdmAddCaseDocumentResponse](docs/CdmAddCaseDocumentResponse.md)
 - [CdmAddCaseProtectionProductResponse](docs/CdmAddCaseProtectionProductResponse.md)
 - [CdmAddGeneralInsuranceProductCaseResponse](docs/CdmAddGeneralInsuranceProductCaseResponse.md)
 - [CdmAddMortgageCaseResponse](docs/CdmAddMortgageCaseResponse.md)
 - [CdmAddMortgageProductResponse](docs/CdmAddMortgageProductResponse.md)
 - [CdmAdditionalEidvInformation](docs/CdmAdditionalEidvInformation.md)
 - [CdmAdditionalLoan](docs/CdmAdditionalLoan.md)
 - [CdmAdditionalSupplementaryInformation](docs/CdmAdditionalSupplementaryInformation.md)
 - [CdmAddnMetadata](docs/CdmAddnMetadata.md)
 - [CdmAddress](docs/CdmAddress.md)
 - [CdmAffordability](docs/CdmAffordability.md)
 - [CdmAffordabilityLenders](docs/CdmAffordabilityLenders.md)
 - [CdmAnswer](docs/CdmAnswer.md)
 - [CdmAppointedRepresentativeMonitoring](docs/CdmAppointedRepresentativeMonitoring.md)
 - [CdmAreaForImprovement](docs/CdmAreaForImprovement.md)
 - [CdmArrearsSummary](docs/CdmArrearsSummary.md)
 - [CdmAsu](docs/CdmAsu.md)
 - [CdmAuthenticationProvider](docs/CdmAuthenticationProvider.md)
 - [CdmAutoSatisfy](docs/CdmAutoSatisfy.md)
 - [CdmAvailability](docs/CdmAvailability.md)
 - [CdmBoardPanel](docs/CdmBoardPanel.md)
 - [CdmBulkAssignCase](docs/CdmBulkAssignCase.md)
 - [CdmBulkAssignCaseRequest](docs/CdmBulkAssignCaseRequest.md)
 - [CdmBulkAssignCaseResponse](docs/CdmBulkAssignCaseResponse.md)
 - [CdmBulkCreateLeadCase](docs/CdmBulkCreateLeadCase.md)
 - [CdmBulkCreateLeadCasesRequest](docs/CdmBulkCreateLeadCasesRequest.md)
 - [CdmBulkCreateLeadCasesResponse](docs/CdmBulkCreateLeadCasesResponse.md)
 - [CdmCase](docs/CdmCase.md)
 - [CdmCaseCalculatedValues](docs/CdmCaseCalculatedValues.md)
 - [CdmCaseDetails](docs/CdmCaseDetails.md)
 - [CdmCaseDetailsFlag](docs/CdmCaseDetailsFlag.md)
 - [CdmCaseDetailsFlagReview](docs/CdmCaseDetailsFlagReview.md)
 - [CdmCaseDetailsFlagType](docs/CdmCaseDetailsFlagType.md)
 - [CdmCaseDetailsNote](docs/CdmCaseDetailsNote.md)
 - [CdmCaseDetailsNoteAssigneeType](docs/CdmCaseDetailsNoteAssigneeType.md)
 - [CdmCaseDetailsNoteNoteStatus](docs/CdmCaseDetailsNoteNoteStatus.md)
 - [CdmCaseDetailsNoteNoteType](docs/CdmCaseDetailsNoteNoteType.md)
 - [CdmCaseDetailsProductType](docs/CdmCaseDetailsProductType.md)
 - [CdmCaseDetailsStatus](docs/CdmCaseDetailsStatus.md)
 - [CdmCaseProtection](docs/CdmCaseProtection.md)
 - [CdmCaseStatusUpdateType](docs/CdmCaseStatusUpdateType.md)
 - [CdmClient](docs/CdmClient.md)
 - [CdmClientAccount](docs/CdmClientAccount.md)
 - [CdmClientAccountType](docs/CdmClientAccountType.md)
 - [CdmClientAddress](docs/CdmClientAddress.md)
 - [CdmClientCalculatedValues](docs/CdmClientCalculatedValues.md)
 - [CdmClientDependant](docs/CdmClientDependant.md)
 - [CdmClientDependantRelationshipType](docs/CdmClientDependantRelationshipType.md)
 - [CdmClientDeposit](docs/CdmClientDeposit.md)
 - [CdmClientDepositType](docs/CdmClientDepositType.md)
 - [CdmClientDetails](docs/CdmClientDetails.md)
 - [CdmClientDetailsDefaultEvent](docs/CdmClientDetailsDefaultEvent.md)
 - [CdmClientDetailsEmploymentStatus](docs/CdmClientDetailsEmploymentStatus.md)
 - [CdmClientEmploymentIncome](docs/CdmClientEmploymentIncome.md)
 - [CdmClientEmploymentIncomeEmploymentBasis](docs/CdmClientEmploymentIncomeEmploymentBasis.md)
 - [CdmClientIncome](docs/CdmClientIncome.md)
 - [CdmClientIncomeDetail](docs/CdmClientIncomeDetail.md)
 - [CdmClientOrganisationRelationship](docs/CdmClientOrganisationRelationship.md)
 - [CdmClientOutstandingDebt](docs/CdmClientOutstandingDebt.md)
 - [CdmClientOutstandingDebtDefaultEvent](docs/CdmClientOutstandingDebtDefaultEvent.md)
 - [CdmClientPensionIncome](docs/CdmClientPensionIncome.md)
 - [CdmClientRelationship](docs/CdmClientRelationship.md)
 - [CdmClientRelationshipRelationshipType](docs/CdmClientRelationshipRelationshipType.md)
 - [CdmClientSelfEmploymentIncome](docs/CdmClientSelfEmploymentIncome.md)
 - [CdmClientVerificationMetadata](docs/CdmClientVerificationMetadata.md)
 - [CdmCommissionDetails](docs/CdmCommissionDetails.md)
 - [CdmCommissionPaidOnCondition](docs/CdmCommissionPaidOnCondition.md)
 - [CdmCommissionStructure](docs/CdmCommissionStructure.md)
 - [CdmCommissionStructureStatus](docs/CdmCommissionStructureStatus.md)
 - [CdmCommissionType](docs/CdmCommissionType.md)
 - [CdmCompanyClass](docs/CdmCompanyClass.md)
 - [CdmComplianceProcessConfig](docs/CdmComplianceProcessConfig.md)
 - [CdmConditionalOnIntroducer](docs/CdmConditionalOnIntroducer.md)
 - [CdmConditionalOnRelatedUser](docs/CdmConditionalOnRelatedUser.md)
 - [CdmContactHistory](docs/CdmContactHistory.md)
 - [CdmCoverUnits](docs/CdmCoverUnits.md)
 - [CdmCreateAcreMortgageProductRequest](docs/CdmCreateAcreMortgageProductRequest.md)
 - [CdmCreateAcreMortgageProductResponse](docs/CdmCreateAcreMortgageProductResponse.md)
 - [CdmCreateAuthenticationProviderResponse](docs/CdmCreateAuthenticationProviderResponse.md)
 - [CdmCreateCaseFlagResponse](docs/CdmCreateCaseFlagResponse.md)
 - [CdmCreateCaseFlagReviewResponse](docs/CdmCreateCaseFlagReviewResponse.md)
 - [CdmCreateCaseReferralRequest](docs/CdmCreateCaseReferralRequest.md)
 - [CdmCreateCaseRequest](docs/CdmCreateCaseRequest.md)
 - [CdmCreateCaseResponse](docs/CdmCreateCaseResponse.md)
 - [CdmCreateCaseVersionResponse](docs/CdmCreateCaseVersionResponse.md)
 - [CdmCreateClientOrganisationRelationshipResponse](docs/CdmCreateClientOrganisationRelationshipResponse.md)
 - [CdmCreateClientRequest](docs/CdmCreateClientRequest.md)
 - [CdmCreateClientResponse](docs/CdmCreateClientResponse.md)
 - [CdmCreateClientVersionResponse](docs/CdmCreateClientVersionResponse.md)
 - [CdmCreateCommissionStructureResponse](docs/CdmCreateCommissionStructureResponse.md)
 - [CdmCreateDocumentRequirementRequest](docs/CdmCreateDocumentRequirementRequest.md)
 - [CdmCreateDocumentRequirementResponse](docs/CdmCreateDocumentRequirementResponse.md)
 - [CdmCreateDocumentVerificationResponse](docs/CdmCreateDocumentVerificationResponse.md)
 - [CdmCreateGeneralInsuranceProductRequest](docs/CdmCreateGeneralInsuranceProductRequest.md)
 - [CdmCreateGeneralInsuranceProductResponse](docs/CdmCreateGeneralInsuranceProductResponse.md)
 - [CdmCreateGroupResponse](docs/CdmCreateGroupResponse.md)
 - [CdmCreateMortgageResponse](docs/CdmCreateMortgageResponse.md)
 - [CdmCreateMortgageVersionResponse](docs/CdmCreateMortgageVersionResponse.md)
 - [CdmCreateMortgageWithProductRequest](docs/CdmCreateMortgageWithProductRequest.md)
 - [CdmCreateMortgageWithProductResponse](docs/CdmCreateMortgageWithProductResponse.md)
 - [CdmCreateNoteResponse](docs/CdmCreateNoteResponse.md)
 - [CdmCreateOrganisationResponse](docs/CdmCreateOrganisationResponse.md)
 - [CdmCreatePermissionAssignmentResponse](docs/CdmCreatePermissionAssignmentResponse.md)
 - [CdmCreatePermissionAssignmentsRequest](docs/CdmCreatePermissionAssignmentsRequest.md)
 - [CdmCreatePermissionAssignmentsResponse](docs/CdmCreatePermissionAssignmentsResponse.md)
 - [CdmCreatePropertyRequest](docs/CdmCreatePropertyRequest.md)
 - [CdmCreatePropertyResponse](docs/CdmCreatePropertyResponse.md)
 - [CdmCreatePropertyVersionResponse](docs/CdmCreatePropertyVersionResponse.md)
 - [CdmCreateProtectionProductRequest](docs/CdmCreateProtectionProductRequest.md)
 - [CdmCreateProtectionProductResponse](docs/CdmCreateProtectionProductResponse.md)
 - [CdmCreateProtectionProductVersionResponse](docs/CdmCreateProtectionProductVersionResponse.md)
 - [CdmCreateRoleResponse](docs/CdmCreateRoleResponse.md)
 - [CdmCreateTemplateResponse](docs/CdmCreateTemplateResponse.md)
 - [CdmCreateUserResponse](docs/CdmCreateUserResponse.md)
 - [CdmCredentials](docs/CdmCredentials.md)
 - [CdmCreditReportRetrievals](docs/CdmCreditReportRetrievals.md)
 - [CdmCreditSearchConsent](docs/CdmCreditSearchConsent.md)
 - [CdmCreditSearchConsentType](docs/CdmCreditSearchConsentType.md)
 - [CdmDay](docs/CdmDay.md)
 - [CdmDeductionType](docs/CdmDeductionType.md)
 - [CdmDeleteAuthenticationProvider](docs/CdmDeleteAuthenticationProvider.md)
 - [CdmDeleteAuthenticationProviderResponse](docs/CdmDeleteAuthenticationProviderResponse.md)
 - [CdmDeleteCaseDocumentResponse](docs/CdmDeleteCaseDocumentResponse.md)
 - [CdmDeleteCaseProtectionProductResponse](docs/CdmDeleteCaseProtectionProductResponse.md)
 - [CdmDeleteClientDataResponse](docs/CdmDeleteClientDataResponse.md)
 - [CdmDeleteClientHealthDataResponse](docs/CdmDeleteClientHealthDataResponse.md)
 - [CdmDeleteDocumentResponse](docs/CdmDeleteDocumentResponse.md)
 - [CdmDeleteGeneralInsuranceProductCaseResponse](docs/CdmDeleteGeneralInsuranceProductCaseResponse.md)
 - [CdmDeleteMortgageCaseResponse](docs/CdmDeleteMortgageCaseResponse.md)
 - [CdmDeleteMortgageProductResponse](docs/CdmDeleteMortgageProductResponse.md)
 - [CdmDeleteReason](docs/CdmDeleteReason.md)
 - [CdmDescribeCaseVerificationResponse](docs/CdmDescribeCaseVerificationResponse.md)
 - [CdmDocument](docs/CdmDocument.md)
 - [CdmDocumentMetadata](docs/CdmDocumentMetadata.md)
 - [CdmDocumentRequest](docs/CdmDocumentRequest.md)
 - [CdmDocumentRequirement](docs/CdmDocumentRequirement.md)
 - [CdmDocumentVerification](docs/CdmDocumentVerification.md)
 - [CdmEIDV](docs/CdmEIDV.md)
 - [CdmENBSMessage](docs/CdmENBSMessage.md)
 - [CdmEarlyRepaymentChargePeriods](docs/CdmEarlyRepaymentChargePeriods.md)
 - [CdmEditor](docs/CdmEditor.md)
 - [CdmEmailTemplateRequest](docs/CdmEmailTemplateRequest.md)
 - [CdmEmailTemplateResponse](docs/CdmEmailTemplateResponse.md)
 - [CdmEmploymentBasis](docs/CdmEmploymentBasis.md)
 - [CdmEnforcementLevel](docs/CdmEnforcementLevel.md)
 - [CdmEntity](docs/CdmEntity.md)
 - [CdmEntityType](docs/CdmEntityType.md)
 - [CdmEquityReleaseLifetime](docs/CdmEquityReleaseLifetime.md)
 - [CdmExportType](docs/CdmExportType.md)
 - [CdmExtendedDeviceDetails](docs/CdmExtendedDeviceDetails.md)
 - [CdmExternal](docs/CdmExternal.md)
 - [CdmExternalID](docs/CdmExternalID.md)
 - [CdmFee](docs/CdmFee.md)
 - [CdmFeeConfiguration](docs/CdmFeeConfiguration.md)
 - [CdmFeeFeeType](docs/CdmFeeFeeType.md)
 - [CdmFileType](docs/CdmFileType.md)
 - [CdmFingerprint](docs/CdmFingerprint.md)
 - [CdmFirstTimeAccess](docs/CdmFirstTimeAccess.md)
 - [CdmFirstTimeFeatures](docs/CdmFirstTimeFeatures.md)
 - [CdmFrequency](docs/CdmFrequency.md)
 - [CdmGender](docs/CdmGender.md)
 - [CdmGeneralInsuranceProduct](docs/CdmGeneralInsuranceProduct.md)
 - [CdmGeneralInsuranceProductDetails](docs/CdmGeneralInsuranceProductDetails.md)
 - [CdmGeneration](docs/CdmGeneration.md)
 - [CdmGetAcreMortgageProductResponse](docs/CdmGetAcreMortgageProductResponse.md)
 - [CdmGetAuthenticationProviderRequest](docs/CdmGetAuthenticationProviderRequest.md)
 - [CdmGetAuthenticationProviderResponse](docs/CdmGetAuthenticationProviderR