# Rust API client for tapis-sk

The Tapis Security API provides for management of Security Kernel (SK) role-based authorization
and secrets resources.


For more information, please visit [https://tapis-project.org](https://tapis-project.org)

## 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: 1.8.2
- Package version: 0.4.2
- Generator version: 7.18.0
- Build package: `org.openapitools.codegen.languages.RustClientCodegen`

## Installation

Put the package under your project folder in a directory named `tapis-sk` and add the following to `Cargo.toml` under `[dependencies]`:

```
tapis-sk = { path = "./tapis-sk" }
```

## Documentation for API Endpoints

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

Class | Method | HTTP request | Description
------------ | ------------- | ------------- | -------------
*AdminApi* | [**reinitialize_site**](docs/AdminApi.md#reinitialize_site) | **GET** /security/admin/reinitialize | 
*GeneralApi* | [**check_health**](docs/GeneralApi.md#check_health) | **GET** /security/healthcheck | 
*GeneralApi* | [**ready**](docs/GeneralApi.md#ready) | **GET** /security/ready | 
*GeneralApi* | [**readycheck**](docs/GeneralApi.md#readycheck) | **GET** /security/readycheck | 
*GeneralApi* | [**say_hello**](docs/GeneralApi.md#say_hello) | **GET** /security/hello | 
*RoleApi* | [**add_child_role**](docs/RoleApi.md#add_child_role) | **POST** /security/role/addChild | 
*RoleApi* | [**add_role_permission**](docs/RoleApi.md#add_role_permission) | **POST** /security/role/addPerm | 
*RoleApi* | [**create_role**](docs/RoleApi.md#create_role) | **POST** /security/role | 
*RoleApi* | [**delete_role_by_name**](docs/RoleApi.md#delete_role_by_name) | **DELETE** /security/role/{roleName} | 
*RoleApi* | [**get_default_user_role**](docs/RoleApi.md#get_default_user_role) | **GET** /security/role/defaultRole/{user} | 
*RoleApi* | [**get_role_by_name**](docs/RoleApi.md#get_role_by_name) | **GET** /security/role/{roleName} | 
*RoleApi* | [**get_role_names**](docs/RoleApi.md#get_role_names) | **GET** /security/role | 
*RoleApi* | [**get_role_permissions**](docs/RoleApi.md#get_role_permissions) | **GET** /security/role/{roleName}/perms | 
*RoleApi* | [**preview_path_prefix**](docs/RoleApi.md#preview_path_prefix) | **POST** /security/role/previewPathPrefix | 
*RoleApi* | [**remove_child_role**](docs/RoleApi.md#remove_child_role) | **POST** /security/role/removeChild | 
*RoleApi* | [**remove_path_permission_from_all_roles**](docs/RoleApi.md#remove_path_permission_from_all_roles) | **POST** /security/role/removePathPermFromAllRoles | 
*RoleApi* | [**remove_permission_from_all_roles**](docs/RoleApi.md#remove_permission_from_all_roles) | **POST** /security/role/removePermFromAllRoles | 
*RoleApi* | [**remove_role_permission**](docs/RoleApi.md#remove_role_permission) | **POST** /security/role/removePerm | 
*RoleApi* | [**replace_path_prefix**](docs/RoleApi.md#replace_path_prefix) | **POST** /security/role/replacePathPrefix | 
*RoleApi* | [**role_permits**](docs/RoleApi.md#role_permits) | **POST** /security/role/{roleName}/permits | 
*RoleApi* | [**update_role_description**](docs/RoleApi.md#update_role_description) | **POST** /security/role/updateDesc/{roleName} | 
*RoleApi* | [**update_role_name**](docs/RoleApi.md#update_role_name) | **POST** /security/role/updateName/{roleName} | 
*RoleApi* | [**update_role_owner**](docs/RoleApi.md#update_role_owner) | **POST** /security/role/updateOwner/{roleName} | 
*ShareApi* | [**delete_share**](docs/ShareApi.md#delete_share) | **DELETE** /security/share | 
*ShareApi* | [**delete_share_by_id**](docs/ShareApi.md#delete_share_by_id) | **DELETE** /security/share/{id} | 
*ShareApi* | [**get_share**](docs/ShareApi.md#get_share) | **GET** /security/share/{id} | 
*ShareApi* | [**get_shares**](docs/ShareApi.md#get_shares) | **GET** /security/share | 
*ShareApi* | [**has_privilege**](docs/ShareApi.md#has_privilege) | **GET** /security/share/hasPrivilege | 
*ShareApi* | [**share_resource**](docs/ShareApi.md#share_resource) | **POST** /security/share | 
*UserApi* | [**get_admins**](docs/UserApi.md#get_admins) | **GET** /security/user/admins/{tenant} | 
*UserApi* | [**get_default_user_role1**](docs/UserApi.md#get_default_user_role1) | **GET** /security/user/defaultRole/{user} | 
*UserApi* | [**get_user_names**](docs/UserApi.md#get_user_names) | **GET** /security/user | 
*UserApi* | [**get_user_perms**](docs/UserApi.md#get_user_perms) | **GET** /security/user/perms/{user} | 
*UserApi* | [**get_user_roles**](docs/UserApi.md#get_user_roles) | **GET** /security/user/roles/{user} | 
*UserApi* | [**get_users_with_permission**](docs/UserApi.md#get_users_with_permission) | **GET** /security/user/withPermission/{permSpec} | 
*UserApi* | [**get_users_with_role**](docs/UserApi.md#get_users_with_role) | **GET** /security/user/withRole/{roleName} | 
*UserApi* | [**grant_role**](docs/UserApi.md#grant_role) | **POST** /security/user/grantRole | 
*UserApi* | [**grant_role_with_permission**](docs/UserApi.md#grant_role_with_permission) | **POST** /security/user/grantRoleWithPerm | 
*UserApi* | [**grant_user_permission**](docs/UserApi.md#grant_user_permission) | **POST** /security/user/grantUserPermission | 
*UserApi* | [**has_role**](docs/UserApi.md#has_role) | **POST** /security/user/hasRole | 
*UserApi* | [**has_role_all**](docs/UserApi.md#has_role_all) | **POST** /security/user/hasRoleAll | 
*UserApi* | [**has_role_any**](docs/UserApi.md#has_role_any) | **POST** /security/user/hasRoleAny | 
*UserApi* | [**is_admin**](docs/UserApi.md#is_admin) | **POST** /security/user/isAdmin | 
*UserApi* | [**is_permitted**](docs/UserApi.md#is_permitted) | **POST** /security/user/isPermitted | 
*UserApi* | [**is_permitted_all**](docs/UserApi.md#is_permitted_all) | **POST** /security/user/isPermittedAll | 
*UserApi* | [**is_permitted_any**](docs/UserApi.md#is_permitted_any) | **POST** /security/user/isPermittedAny | 
*UserApi* | [**revoke_role**](docs/UserApi.md#revoke_role) | **POST** /security/user/revokeRole | 
*UserApi* | [**revoke_user_permission**](docs/UserApi.md#revoke_user_permission) | **POST** /security/user/revokeUserPermission | 
*VaultApi* | [**delete_secret**](docs/VaultApi.md#delete_secret) | **POST** /security/vault/secret/delete/{secretType}/{secretName} | 
*VaultApi* | [**destroy_secret**](docs/VaultApi.md#destroy_secret) | **POST** /security/vault/secret/destroy/{secretType}/{secretName} | 
*VaultApi* | [**destroy_secret_meta**](docs/VaultApi.md#destroy_secret_meta) | **DELETE** /security/vault/secret/destroy/meta/{secretType}/{secretName} | 
*VaultApi* | [**list_secret_meta**](docs/VaultApi.md#list_secret_meta) | **GET** /security/vault/secret/list/meta/{secretType} | 
*VaultApi* | [**read_secret**](docs/VaultApi.md#read_secret) | **GET** /security/vault/secret/{secretType}/{secretName} | 
*VaultApi* | [**read_secret_meta**](docs/VaultApi.md#read_secret_meta) | **GET** /security/vault/secret/read/meta/{secretType}/{secretName} | 
*VaultApi* | [**undelete_secret**](docs/VaultApi.md#undelete_secret) | **POST** /security/vault/secret/undelete/{secretType}/{secretName} | 
*VaultApi* | [**validate_service_password**](docs/VaultApi.md#validate_service_password) | **POST** /security/vault/secret/validateServicePassword/{secretName} | 
*VaultApi* | [**validate_site_admin_password**](docs/VaultApi.md#validate_site_admin_password) | **POST** /security/vault/secret/validateSiteAdminPassword/{secretName} | 
*VaultApi* | [**write_secret**](docs/VaultApi.md#write_secret) | **POST** /security/vault/secret/{secretType}/{secretName} | 


## Documentation For Models

 - [Options](docs/Options.md)
 - [ReqAddChildRole](docs/ReqAddChildRole.md)
 - [ReqAddRolePermission](docs/ReqAddRolePermission.md)
 - [ReqCreateRole](docs/ReqCreateRole.md)
 - [ReqGrantRole](docs/ReqGrantRole.md)
 - [ReqGrantRoleWithPermission](docs/ReqGrantRoleWithPermission.md)
 - [ReqGrantUserPermission](docs/ReqGrantUserPermission.md)
 - [ReqPreviewPathPrefix](docs/ReqPreviewPathPrefix.md)
 - [ReqRemoveChildRole](docs/ReqRemoveChildRole.md)
 - [ReqRemovePermissionFromAllRoles](docs/ReqRemovePermissionFromAllRoles.md)
 - [ReqRemoveRolePermission](docs/ReqRemoveRolePermission.md)
 - [ReqReplacePathPrefix](docs/ReqReplacePathPrefix.md)
 - [ReqRevokeRole](docs/ReqRevokeRole.md)
 - [ReqRevokeUserPermission](docs/ReqRevokeUserPermission.md)
 - [ReqRolePermits](docs/ReqRolePermits.md)
 - [ReqShareResource](docs/ReqShareResource.md)
 - [ReqUpdateRoleDescription](docs/ReqUpdateRoleDescription.md)
 - [ReqUpdateRoleName](docs/ReqUpdateRoleName.md)
 - [ReqUpdateRoleOwner](docs/ReqUpdateRoleOwner.md)
 - [ReqUserHasRole](docs/ReqUserHasRole.md)
 - [ReqUserHasRoleMulti](docs/ReqUserHasRoleMulti.md)
 - [ReqUserIsAdmin](docs/ReqUserIsAdmin.md)
 - [ReqUserIsPermitted](docs/ReqUserIsPermitted.md)
 - [ReqUserIsPermittedMulti](docs/ReqUserIsPermittedMulti.md)
 - [ReqValidatePwd](docs/ReqValidatePwd.md)
 - [ReqVersions](docs/ReqVersions.md)
 - [ReqWriteSecret](docs/ReqWriteSecret.md)
 - [RespAuthorized](docs/RespAuthorized.md)
 - [RespBasic](docs/RespBasic.md)
 - [RespBoolean](docs/RespBoolean.md)
 - [RespChangeCount](docs/RespChangeCount.md)
 - [RespName](docs/RespName.md)
 - [RespNameArray](docs/RespNameArray.md)
 - [RespPathPrefixes](docs/RespPathPrefixes.md)
 - [RespProbe](docs/RespProbe.md)
 - [RespResourceUrl](docs/RespResourceUrl.md)
 - [RespRole](docs/RespRole.md)
 - [RespSecret](docs/RespSecret.md)
 - [RespSecretList](docs/RespSecretList.md)
 - [RespSecretMeta](docs/RespSecretMeta.md)
 - [RespSecretVersionMetadata](docs/RespSecretVersionMetadata.md)
 - [RespShare](docs/RespShare.md)
 - [RespShareList](docs/RespShareList.md)
 - [RespVersions](docs/RespVersions.md)
 - [ResultAuthorized](docs/ResultAuthorized.md)
 - [ResultBoolean](docs/ResultBoolean.md)
 - [ResultChangeCount](docs/ResultChangeCount.md)
 - [ResultName](docs/ResultName.md)
 - [ResultNameArray](docs/ResultNameArray.md)
 - [ResultResourceUrl](docs/ResultResourceUrl.md)
 - [RoleTypeEnum](docs/RoleTypeEnum.md)
 - [SkProbe](docs/SkProbe.md)
 - [SkRole](docs/SkRole.md)
 - [SkSecret](docs/SkSecret.md)
 - [SkSecretList](docs/SkSecretList.md)
 - [SkSecretMetadata](docs/SkSecretMetadata.md)
 - [SkSecretVersion](docs/SkSecretVersion.md)
 - [SkSecretVersionMetadata](docs/SkSecretVersionMetadata.md)
 - [SkShare](docs/SkShare.md)
 - [SkShareList](docs/SkShareList.md)
 - [Transformation](docs/Transformation.md)


To get access to the crate's generated documentation, use:

```
cargo doc --open
```

## Author

cicsupport@tacc.utexas.edu

