# decentro-in-kyc-python-sdk
KYC & Onboarding

This Python package is automatically generated by the [Konfig](https://konfigthis.com):

- API version: 1.0.0
- Package version: 1.1.0

## Requirements.

Python >=3.6

## 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/decentro-in/decentro-in-kyc-sdk/tree/master/python.git
```
(you may need to run `pip` with root permission: `sudo pip install git+https://github.com/decentro-in/decentro-in-kyc-sdk/tree/master/python.git`)

Then import the package:
```python
import decentro_in_kyc_client
```

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

## Getting Started

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

```python

import time
import decentro_in_kyc_client
from pprint import pprint
from decentro_in_kyc_client.api import kyc_api
from decentro_in_kyc_client.model.check_image_quality_response import CheckImageQualityResponse
from decentro_in_kyc_client.model.check_photocopy_response import CheckPhotocopyResponse
from decentro_in_kyc_client.model.check_video_liveness_response import CheckVideoLivenessResponse
from decentro_in_kyc_client.model.classify_document_response import ClassifyDocumentResponse
from decentro_in_kyc_client.model.extract_text_response import ExtractTextResponse
from decentro_in_kyc_client.model.mask_aadhaar_response import MaskAadhaarResponse
from decentro_in_kyc_client.model.match_face_response import MatchFaceResponse
from decentro_in_kyc_client.model.validate_response import ValidateResponse
# 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: client_id
configuration = decentro_in_kyc_client.Configuration(api_key={'client_id': 'YOUR_API_KEY'})

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

# Configure API key authorization: client_secret
configuration.api_key['client_secret'] = 'YOUR_API_KEY'

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

# Configure API key authorization: module_secret
configuration.api_key['module_secret'] = 'YOUR_API_KEY'

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


# Enter a context with an instance of the API client
with decentro_in_kyc_client.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = kyc_api.KYCApi(api_client)
    reference_id = "ManishGuptaIsTesting3" # str |  (optional)
    consent = True # bool |  (optional)
    consent_purpose = "for bank account purpose only" # str |  (optional)
    image = open('/path/to/file', 'rb') # file_type |  (optional)
    quality_parameter = "all" # str |  (optional)
    image_url = "image_url_example" # str |  (optional)

    try:
        # Image Quality Check
        api_response = api_instance.check_image_quality(reference_id=reference_id, consent=consent, consent_purpose=consent_purpose, image=image, quality_parameter=quality_parameter, image_url=image_url)
        pprint(api_response)
    except decentro_in_kyc_client.ApiException as e:
        print("Exception when calling KYCApi->check_image_quality: %s\n" % e)
```

## Documentation for API Endpoints

All URIs are relative to *https://in.staging.decentro.tech*

Class | Method | HTTP request | Description
------------ | ------------- | ------------- | -------------
*KYCApi* | [**check_image_quality**](docs/KYCApi.md#check_image_quality) | **POST** /v2/kyc/forensics/image_quality | Image Quality Check
*KYCApi* | [**check_photocopy**](docs/KYCApi.md#check_photocopy) | **POST** /v2/kyc/forensics/photocopy_check | Photocopy Check
*KYCApi* | [**check_video_liveness**](docs/KYCApi.md#check_video_liveness) | **POST** /v2/kyc/forensics/video_liveness | Liveness Check
*KYCApi* | [**classify_document**](docs/KYCApi.md#classify_document) | **POST** /v2/kyc/document_classification | ID Classification
*KYCApi* | [**extract_text**](docs/KYCApi.md#extract_text) | **POST** /kyc/scan_extract/ocr | Scan &amp; Extract
*KYCApi* | [**mask_aadhaar_uid**](docs/KYCApi.md#mask_aadhaar_uid) | **POST** /v2/kyc/identities/mask_aadhaar_uid | Aadhaar Masking
*KYCApi* | [**match_face**](docs/KYCApi.md#match_face) | **POST** /v2/kyc/forensics/face_match | Face Match
*KYCApi* | [**validate**](docs/KYCApi.md#validate) | **POST** /kyc/public_registry/validate | Validate


## Documentation For Models

 - [CheckImageQualityResponse](docs/CheckImageQualityResponse.md)
 - [CheckImageQualityResponseData](docs/CheckImageQualityResponseData.md)
 - [CheckImageQualityResponseDataImageQuality](docs/CheckImageQualityResponseDataImageQuality.md)
 - [CheckImageQualityResponseDataImageQualityQualityScores](docs/CheckImageQualityResponseDataImageQualityQualityScores.md)
 - [CheckImageQualityResponseDataImageQualityQualityScoresCompressionQuality](docs/CheckImageQualityResponseDataImageQualityQualityScoresCompressionQuality.md)
 - [CheckImageQualityResponseDataImageQualityQualityScoresTextQuality](docs/CheckImageQualityResponseDataImageQualityQualityScoresTextQuality.md)
 - [CheckPhotocopyResponse](docs/CheckPhotocopyResponse.md)
 - [CheckPhotocopyResponseData](docs/CheckPhotocopyResponseData.md)
 - [CheckVideoLivenessResponse](docs/CheckVideoLivenessResponse.md)
 - [CheckVideoLivenessResponseData](docs/CheckVideoLivenessResponseData.md)
 - [ClassifyDocumentResponse](docs/ClassifyDocumentResponse.md)
 - [ClassifyDocumentResponseData](docs/ClassifyDocumentResponseData.md)
 - [ExtractTextResponse](docs/ExtractTextResponse.md)
 - [ExtractTextResponseOcrResult](docs/ExtractTextResponseOcrResult.md)
 - [MaskAadhaarResponse](docs/MaskAadhaarResponse.md)
 - [MaskAadhaarResponseData](docs/MaskAadhaarResponseData.md)
 - [MatchFaceResponse](docs/MatchFaceResponse.md)
 - [MatchFaceResponseData](docs/MatchFaceResponseData.md)
 - [ValidateResponse](docs/ValidateResponse.md)
 - [ValidateResponseKycResult](docs/ValidateResponseKycResult.md)


## Documentation For Authorization


## client_id

- **Type**: API key
- **API key parameter name**: client_id
- **Location**: HTTP header


## client_secret

- **Type**: API key
- **API key parameter name**: client_secret
- **Location**: HTTP header


## module_secret

- **Type**: API key
- **API key parameter name**: module_secret
- **Location**: HTTP header


## Author




## Notes for Large OpenAPI documents
If the OpenAPI document is large, imports in decentro_in_kyc_client.apis and decentro_in_kyc_client.models may fail with a
RecursionError indicating the maximum recursion limit has been exceeded. In that case, there are a couple of solutions:

Solution 1:
Use specific imports for apis and models like:
- `from decentro_in_kyc_client.api.default_api import DefaultApi`
- `from decentro_in_kyc_client.model.pet import Pet`

Solution 2:
Before importing the package, adjust the maximum recursion limit as shown below:
```
import sys
sys.setrecursionlimit(1500)
import decentro_in_kyc_client
from decentro_in_kyc_client.apis import *
from decentro_in_kyc_client.models import *
```

