# Rust API client for dtz-identity
a generated client for the DTZ Identity API
## Overview
This API client was generated by the [OpenAPI Generator](https://openapi-generator.tech) project. By using the [openapi-spec](https://openapis.org) from a remote server, you can easily generate an API client.
- API version: 2.0.2
- Package version: 2.0.2
- Generator version: 7.14.0
- Build package: `org.openapitools.codegen.languages.RustClientCodegen`
## Installation
Put the package under your project folder in a directory named `dtz-identity` and add the following to `Cargo.toml` under `[dependencies]`:
```
dtz-identity = { path = "./dtz-identity" }
```
## Documentation for API Endpoints
All URIs are relative to *https://identity.dtz.rocks/api/2021-02-21*
*DefaultApi* | [**assign_role**](docs/DefaultApi.md#assign_role) | **POST** /me/roles/{roleId} | create role assignment
*DefaultApi* | [**assume_identity**](docs/DefaultApi.md#assume_identity) | **POST** /identity/assume | assume identity
*DefaultApi* | [**authenticate_apikey**](docs/DefaultApi.md#authenticate_apikey) | **POST** /auth/apikey | authenticate with apikey
*DefaultApi* | [**change_authentication**](docs/DefaultApi.md#change_authentication) | **POST** /authentication | update the user authentication, aka change you password or default context
*DefaultApi* | [**check_identity**](docs/DefaultApi.md#check_identity) | **POST** /identity/check | checks whether an identity exists
*DefaultApi* | [**create_api_key**](docs/DefaultApi.md#create_api_key) | **POST** /me/identity/apikey | create api key
*DefaultApi* | [**create_role_for_context**](docs/DefaultApi.md#create_role_for_context) | **POST** /roles/context/{contextId} | create role from abstract role (template)
*DefaultApi* | [**delete_api_key**](docs/DefaultApi.md#delete_api_key) | **DELETE** /me/identity/apikey/{apikey} | delete api key
*DefaultApi* | [**delete_context_roles**](docs/DefaultApi.md#delete_context_roles) | **DELETE** /context/{context_id} | delete all roles attached to this context
*DefaultApi* | [**delete_identity**](docs/DefaultApi.md#delete_identity) | **DELETE** /me/identity | delete current identity
*DefaultApi* | [**get_abstract_roles**](docs/DefaultApi.md#get_abstract_roles) | **GET** /roles | get roles which are abstract - not assigned to any context or identity
*DefaultApi* | [**get_account_email**](docs/DefaultApi.md#get_account_email) | **GET** /me/email | Get account email
*DefaultApi* | [**get_account_stats**](docs/DefaultApi.md#get_account_stats) | **GET** /me | get account stats
*DefaultApi* | [**get_roles_for_context**](docs/DefaultApi.md#get_roles_for_context) | **GET** /roles/context/{contextId} | get roles for a certain context id
*DefaultApi* | [**get_roles_for_identity**](docs/DefaultApi.md#get_roles_for_identity) | **GET** /roles/identity/{identityId} | get roles for a certain identity id
*DefaultApi* | [**list_authentication**](docs/DefaultApi.md#list_authentication) | **GET** /authentication | list user authentications
*DefaultApi* | [**list_available_contexts**](docs/DefaultApi.md#list_available_contexts) | **GET** /context | get a list of contexts that the user has access to
*DefaultApi* | [**list_identity**](docs/DefaultApi.md#list_identity) | **GET** /identity | get a list of all available identities
*DefaultApi* | [**new_context**](docs/DefaultApi.md#new_context) | **POST** /context/{context_id}/new | create identity requirements for a new context
*DefaultApi* | [**new_identity**](docs/DefaultApi.md#new_identity) | **POST** /identity | creates a new identity
*DefaultApi* | [**oauth_authorize**](docs/DefaultApi.md#oauth_authorize) | **GET** /oauth/authorize | oauth authorize
*DefaultApi* | [**oauth_token**](docs/DefaultApi.md#oauth_token) | **POST** /oauth/token | oauth token request
*DefaultApi* | [**remove_role_assignment**](docs/DefaultApi.md#remove_role_assignment) | **DELETE** /me/roles/{roleId} | remove role assignment from identity
*DefaultApi* | [**share_role**](docs/DefaultApi.md#share_role) | **POST** /roles/context/{contextId}/{roleId}/share | sharing a role with another identity
*DefaultApi* | [**token_refresh**](docs/DefaultApi.md#token_refresh) | **POST** /token/refresh | token refresh
*DefaultApi* | [**update_api_key_alias**](docs/DefaultApi.md#update_api_key_alias) | **PATCH** /me/identity/apikey/{apikey} | update the api key alias
*DefaultApi* | [**user_login**](docs/DefaultApi.md#user_login) | **POST** /token/auth | user login
*DefaultApi* | [**user_signup**](docs/DefaultApi.md#user_signup) | **POST** /signup | create a new identity with the given email as account email, also create an authentication with the given credentials to allow a login, creates a default context
## Documentation For Models
- [AbstractRole](docs/AbstractRole.md)
- [ApikeyRequest](docs/ApikeyRequest.md)
- [AssumeIdentityRequest](docs/AssumeIdentityRequest.md)
- [AuthRequest](docs/AuthRequest.md)
- [ChangeAuthenticationRequest](docs/ChangeAuthenticationRequest.md)
- [ChangeContextRequest](docs/ChangeContextRequest.md)
- [CheckIdentity200Response](docs/CheckIdentity200Response.md)
- [CheckIdentityRequest](docs/CheckIdentityRequest.md)
- [ContextRole](docs/ContextRole.md)
- [CreateApiKeyRequest](docs/CreateApiKeyRequest.md)
- [CreateRoleForContextRequest](docs/CreateRoleForContextRequest.md)
- [ErrorResponse](docs/ErrorResponse.md)
- [GetAbstractRoles200Response](docs/GetAbstractRoles200Response.md)
- [GetAccountEmail200Response](docs/GetAccountEmail200Response.md)
- [GetAccountStats200Response](docs/GetAccountStats200Response.md)
- [GetAccountStats200ResponseRolesInner](docs/GetAccountStats200ResponseRolesInner.md)
- [GetRolesForContext200Response](docs/GetRolesForContext200Response.md)
- [GetRolesForIdentity200Response](docs/GetRolesForIdentity200Response.md)
- [IdentityRole](docs/IdentityRole.md)
- [ListAuthentication200Response](docs/ListAuthentication200Response.md)
- [ListAuthentication200ResponseApiKeyAuthInner](docs/ListAuthentication200ResponseApiKeyAuthInner.md)
- [ListAuthentication200ResponseUserAuthInner](docs/ListAuthentication200ResponseUserAuthInner.md)
- [ListAvailableContexts200ResponseInner](docs/ListAvailableContexts200ResponseInner.md)
- [ListIdentity200Response](docs/ListIdentity200Response.md)
- [ListIdentity200ResponseIdentitiesInner](docs/ListIdentity200ResponseIdentitiesInner.md)
- [NewContextRequest](docs/NewContextRequest.md)
- [NewIdentityRequest](docs/NewIdentityRequest.md)
- [Role](docs/Role.md)
- [SignupRequest](docs/SignupRequest.md)
- [TokenResponse](docs/TokenResponse.md)
- [UpdateApiKeyAliasRequest](docs/UpdateApiKeyAliasRequest.md)
To get access to the crate's generated documentation, use:
```
cargo doc --open
```
## Author
jens@apimeister.com