Metadata-Version: 2.1
Name: affinidi_tdk_consumer_iam_client
Version: 1.3.0
Summary: ConsumerIam
Home-page: https://github.com/affinidi/affinidi-tdk
License: Apache-2.0
Keywords: OpenAPI,OpenAPI-Generator,ConsumerIam
Author: Affinidi
Author-email: info@affinidi.com
Requires-Python: >=3.8,<4.0
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Dist: aenum (>=3.1.11)
Requires-Dist: pydantic (>=1.10.5,<2.0.0)
Requires-Dist: python-dateutil (>=2.8.2)
Requires-Dist: urllib3 (>=1.25.3)
Project-URL: Repository, https://github.com/affinidi/affinidi-tdk
Description-Content-Type: text/markdown

# affinidi_tdk_consumer_iam_client

No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)

For more information, please visit [https://www.affinidi.com](https://www.affinidi.com)

Documentation is available at [https://docs.affinidi.com/dev-tools/affinidi-tdk/clients/consumer-iam](https://docs.affinidi.com/dev-tools/affinidi-tdk/clients/consumer-iam)

## Requirements.

Python 3.7+

## Installation & Usage

### pip install

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

```sh
pip install affinidi_tdk_consumer_iam_client
```

Then import the package:

```python
import affinidi_tdk_consumer_iam_client
```

### Setuptools

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

```sh
python setup.py install --user
```

Then import the package:

```python
import affinidi_tdk_consumer_iam_client
```

### Tests

Execute `pytest` to run the tests.

## Getting Started

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

```python

import time
import affinidi_tdk_consumer_iam_client
from affinidi_tdk_consumer_iam_client.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://apse1.api.affinidi.io/cid
# See configuration.py for a list of all supported configuration parameters.
configuration = affinidi_tdk_consumer_iam_client.Configuration(
    host = "https://apse1.api.affinidi.io/cid"
)

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

# Configure a hook to auto-refresh API key for your personal access token (PAT), if expired
import affinidi_tdk_auth_provider

stats = {
  apiGatewayUrl,
  keyId,
  passphrase,
  privateKey,
  projectId,
  tokenEndpoint,
  tokenId,
}
authProvider = affinidi_tdk_auth_provider.AuthProvider(stats)
configuration.refresh_api_key_hook = lambda api_client: authProvider.fetch_project_scoped_token()

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


# Enter a context with an instance of the API client
with affinidi_tdk_consumer_iam_client.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = affinidi_tdk_consumer_iam_client.AuthzApi(api_client)
    grantee_did = 'grantee_did_example' # str |

    try:
        # delete access of granteeDid
        api_instance.delete_access_vfs(grantee_did)
    except ApiException as e:
        print("Exception when calling AuthzApi->delete_access_vfs: %s\n" % e)

```

## Documentation for API Endpoints

All URIs are relative to *https://apse1.api.affinidi.io/cid*

| Class             | Method                                                                                   | HTTP request                                 | Description                                              |
| ----------------- | ---------------------------------------------------------------------------------------- | -------------------------------------------- | -------------------------------------------------------- |
| _AuthzApi_        | [**delete_access_vfs**](docs/AuthzApi.md#delete_access_vfs)                              | **DELETE** /v1/authz/vfs/access/{granteeDid} | delete access of granteeDid                              |
| _AuthzApi_        | [**get_access_vfs**](docs/AuthzApi.md#get_access_vfs)                                    | **GET** /v1/authz/vfs/access/{granteeDid}    | Get permissions to the virtual file system for a subject |
| _AuthzApi_        | [**grant_access_vfs**](docs/AuthzApi.md#grant_access_vfs)                                | **POST** /v1/authz/vfs/access/{granteeDid}   | Grant access to the virtual file system                  |
| _AuthzApi_        | [**update_access_vfs**](docs/AuthzApi.md#update_access_vfs)                              | **PUT** /v1/authz/vfs/access/{granteeDid}    | Update access of granteeDid                              |
| _ConsumerAuthApi_ | [**consumer_auth_token_endpoint**](docs/ConsumerAuthApi.md#consumer_auth_token_endpoint) | **POST** /v1/consumer/oauth2/token           | The Consumer OAuth 2.0 Token Endpoint                    |
| _WellKnownApi_    | [**get_well_known_jwks**](docs/WellKnownApi.md#get_well_known_jwks)                      | **GET** /.well-known/jwks.json               |

## Documentation For Models

- [ConsumerAuthTokenEndpointInput](docs/ConsumerAuthTokenEndpointInput.md)
- [ConsumerAuthTokenEndpointOutput](docs/ConsumerAuthTokenEndpointOutput.md)
- [GetAccessOutput](docs/GetAccessOutput.md)
- [GrantAccessInput](docs/GrantAccessInput.md)
- [GrantAccessOutput](docs/GrantAccessOutput.md)
- [InvalidDIDError](docs/InvalidDIDError.md)
- [InvalidJwtTokenError](docs/InvalidJwtTokenError.md)
- [InvalidJwtTokenErrorDetailsInner](docs/InvalidJwtTokenErrorDetailsInner.md)
- [JsonWebKeyDto](docs/JsonWebKeyDto.md)
- [JsonWebKeySetDto](docs/JsonWebKeySetDto.md)
- [Permission](docs/Permission.md)
- [RightsEnum](docs/RightsEnum.md)
- [UnauthorizedError](docs/UnauthorizedError.md)
- [UnexpectedError](docs/UnexpectedError.md)
- [UpdateAccessInput](docs/UpdateAccessInput.md)
- [UpdateAccessOutput](docs/UpdateAccessOutput.md)

<a id="documentation-for-authorization"></a>

## Documentation For Authorization

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

### ConsumerTokenAuth

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

## Author

info@affinidi.com

