kinde-python-sdk 1.2.9__tar.gz → 2.0.0b2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- kinde_python_sdk-2.0.0b2/PKG-INFO +557 -0
- kinde_python_sdk-2.0.0b2/README.md +516 -0
- kinde_python_sdk-2.0.0b2/kinde_fastapi/__init__.py +10 -0
- kinde_python_sdk-2.0.0b2/kinde_flask/__init__.py +10 -0
- kinde_python_sdk-2.0.0b2/kinde_python_sdk.egg-info/PKG-INFO +557 -0
- kinde_python_sdk-2.0.0b2/kinde_python_sdk.egg-info/SOURCES.txt +11 -0
- kinde_python_sdk-2.0.0b2/kinde_python_sdk.egg-info/requires.txt +22 -0
- kinde_python_sdk-2.0.0b2/kinde_python_sdk.egg-info/top_level.txt +3 -0
- kinde_python_sdk-2.0.0b2/kinde_sdk/__init__.py +22 -0
- kinde_python_sdk-2.0.0b2/pyproject.toml +72 -0
- kinde_python_sdk-1.2.9/PKG-INFO +0 -48
- kinde_python_sdk-1.2.9/README.md +0 -23
- kinde_python_sdk-1.2.9/kinde_python_sdk.egg-info/PKG-INFO +0 -48
- kinde_python_sdk-1.2.9/kinde_python_sdk.egg-info/SOURCES.txt +0 -592
- kinde_python_sdk-1.2.9/kinde_python_sdk.egg-info/requires.txt +0 -8
- kinde_python_sdk-1.2.9/kinde_python_sdk.egg-info/top_level.txt +0 -1
- kinde_python_sdk-1.2.9/kinde_sdk/__init__.py +0 -29
- kinde_python_sdk-1.2.9/kinde_sdk/api_client.py +0 -1500
- kinde_python_sdk-1.2.9/kinde_sdk/apis/__init__.py +0 -3
- kinde_python_sdk-1.2.9/kinde_sdk/apis/path_to_api.py +0 -200
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/__init__.py +0 -3
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_apis.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_apis_api_id.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_apis_api_id_applications.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_applications.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_applications_app_id_auth_logout_urls.py +0 -13
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_applications_app_id_auth_redirect_urls.py +0 -13
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_applications_application_id.py +0 -11
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_applications_application_id_connections.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_applications_application_id_connections_connection_id.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_business.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_connected_apps_auth_url.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_connected_apps_revoke.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_connected_apps_token.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_connections.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_connections_connection_id.py +0 -11
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_environment_feature_flags.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_environment_feature_flags_feature_flag_key.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_event_types.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_events_event_id.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_feature_flags.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_feature_flags_feature_flag_key.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_industries.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_organization.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_organization_org_code.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_organization_org_code_handle.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_organizations.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_organizations_org_code_feature_flags.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_organizations_org_code_feature_flags_feature_flag_key.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_organizations_org_code_properties.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_organizations_org_code_properties_property_key.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_organizations_org_code_users.py +0 -11
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_organizations_org_code_users_user_id.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_organizations_org_code_users_user_id_permissions.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_organizations_org_code_users_user_id_permissions_permission_id.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_organizations_org_code_users_user_id_roles.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_organizations_org_code_users_user_id_roles_role_id.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_permissions.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_permissions_permission_id.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_properties.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_properties_property_id.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_property_categories.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_property_categories_category_id.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_roles.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_roles_role_id.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_roles_role_id_permissions.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_roles_role_id_permissions_permission_id.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_subscribers.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_subscribers_subscriber_id.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_timezones.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_user.py +0 -13
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_users.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_users_user_id_feature_flags_feature_flag_key.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_users_user_id_password.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_users_user_id_properties.py +0 -9
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_users_user_id_properties_property_key.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_users_user_id_refresh_claims.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_webhooks.py +0 -11
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/api_v1_webhooks_webhook_id.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/oauth2_introspect.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/oauth2_revoke.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/oauth2_user_profile.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/paths/oauth2_v2_user_profile.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/apis/tag_to_api.py +0 -71
- kinde_python_sdk-1.2.9/kinde_sdk/apis/tags/__init__.py +0 -27
- kinde_python_sdk-1.2.9/kinde_sdk/apis/tags/apis_api.py +0 -32
- kinde_python_sdk-1.2.9/kinde_sdk/apis/tags/applications_api.py +0 -38
- kinde_python_sdk-1.2.9/kinde_sdk/apis/tags/business_api.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/apis/tags/callbacks_api.py +0 -38
- kinde_python_sdk-1.2.9/kinde_sdk/apis/tags/connected_apps_api.py +0 -28
- kinde_python_sdk-1.2.9/kinde_sdk/apis/tags/connections_api.py +0 -32
- kinde_python_sdk-1.2.9/kinde_sdk/apis/tags/environments_api.py +0 -30
- kinde_python_sdk-1.2.9/kinde_sdk/apis/tags/feature_flags_api.py +0 -28
- kinde_python_sdk-1.2.9/kinde_sdk/apis/tags/industries_api.py +0 -24
- kinde_python_sdk-1.2.9/kinde_sdk/apis/tags/o_auth_api.py +0 -30
- kinde_python_sdk-1.2.9/kinde_sdk/apis/tags/organizations_api.py +0 -68
- kinde_python_sdk-1.2.9/kinde_sdk/apis/tags/permissions_api.py +0 -30
- kinde_python_sdk-1.2.9/kinde_sdk/apis/tags/properties_api.py +0 -30
- kinde_python_sdk-1.2.9/kinde_sdk/apis/tags/property_categories_api.py +0 -28
- kinde_python_sdk-1.2.9/kinde_sdk/apis/tags/roles_api.py +0 -36
- kinde_python_sdk-1.2.9/kinde_sdk/apis/tags/subscribers_api.py +0 -28
- kinde_python_sdk-1.2.9/kinde_sdk/apis/tags/timezones_api.py +0 -24
- kinde_python_sdk-1.2.9/kinde_sdk/apis/tags/users_api.py +0 -44
- kinde_python_sdk-1.2.9/kinde_sdk/apis/tags/webhooks_api.py +0 -34
- kinde_python_sdk-1.2.9/kinde_sdk/configuration.py +0 -438
- kinde_python_sdk-1.2.9/kinde_sdk/exceptions.py +0 -164
- kinde_python_sdk-1.2.9/kinde_sdk/kinde_api_client.py +0 -479
- kinde_python_sdk-1.2.9/kinde_sdk/model/__init__.py +0 -5
- kinde_python_sdk-1.2.9/kinde_sdk/model/add_organization_users_response.py +0 -121
- kinde_python_sdk-1.2.9/kinde_sdk/model/add_organization_users_response.pyi +0 -121
- kinde_python_sdk-1.2.9/kinde_sdk/model/api.py +0 -230
- kinde_python_sdk-1.2.9/kinde_sdk/model/api.pyi +0 -230
- kinde_python_sdk-1.2.9/kinde_sdk/model/api_result.py +0 -79
- kinde_python_sdk-1.2.9/kinde_sdk/model/api_result.pyi +0 -79
- kinde_python_sdk-1.2.9/kinde_sdk/model/apis.py +0 -109
- kinde_python_sdk-1.2.9/kinde_sdk/model/apis.pyi +0 -109
- kinde_python_sdk-1.2.9/kinde_sdk/model/applications.py +0 -99
- kinde_python_sdk-1.2.9/kinde_sdk/model/applications.pyi +0 -99
- kinde_python_sdk-1.2.9/kinde_sdk/model/category.py +0 -89
- kinde_python_sdk-1.2.9/kinde_sdk/model/category.pyi +0 -89
- kinde_python_sdk-1.2.9/kinde_sdk/model/connected_apps_access_token.py +0 -89
- kinde_python_sdk-1.2.9/kinde_sdk/model/connected_apps_access_token.pyi +0 -89
- kinde_python_sdk-1.2.9/kinde_sdk/model/connected_apps_auth_url.py +0 -89
- kinde_python_sdk-1.2.9/kinde_sdk/model/connected_apps_auth_url.pyi +0 -89
- kinde_python_sdk-1.2.9/kinde_sdk/model/connection.py +0 -109
- kinde_python_sdk-1.2.9/kinde_sdk/model/connection.pyi +0 -109
- kinde_python_sdk-1.2.9/kinde_sdk/model/create_application_response.py +0 -168
- kinde_python_sdk-1.2.9/kinde_sdk/model/create_application_response.pyi +0 -168
- kinde_python_sdk-1.2.9/kinde_sdk/model/create_category_response.py +0 -148
- kinde_python_sdk-1.2.9/kinde_sdk/model/create_category_response.pyi +0 -148
- kinde_python_sdk-1.2.9/kinde_sdk/model/create_connection_response.py +0 -148
- kinde_python_sdk-1.2.9/kinde_sdk/model/create_connection_response.pyi +0 -148
- kinde_python_sdk-1.2.9/kinde_sdk/model/create_organization_response.py +0 -148
- kinde_python_sdk-1.2.9/kinde_sdk/model/create_organization_response.pyi +0 -148
- kinde_python_sdk-1.2.9/kinde_sdk/model/create_property_response.py +0 -146
- kinde_python_sdk-1.2.9/kinde_sdk/model/create_property_response.pyi +0 -146
- kinde_python_sdk-1.2.9/kinde_sdk/model/create_subscriber_success_response.py +0 -128
- kinde_python_sdk-1.2.9/kinde_sdk/model/create_subscriber_success_response.pyi +0 -128
- kinde_python_sdk-1.2.9/kinde_sdk/model/create_user_response.py +0 -126
- kinde_python_sdk-1.2.9/kinde_sdk/model/create_user_response.pyi +0 -126
- kinde_python_sdk-1.2.9/kinde_sdk/model/create_webhook_response.py +0 -158
- kinde_python_sdk-1.2.9/kinde_sdk/model/create_webhook_response.pyi +0 -158
- kinde_python_sdk-1.2.9/kinde_sdk/model/delete_webhook_response.py +0 -89
- kinde_python_sdk-1.2.9/kinde_sdk/model/delete_webhook_response.pyi +0 -89
- kinde_python_sdk-1.2.9/kinde_sdk/model/error.py +0 -89
- kinde_python_sdk-1.2.9/kinde_sdk/model/error.pyi +0 -89
- kinde_python_sdk-1.2.9/kinde_sdk/model/error_response.py +0 -106
- kinde_python_sdk-1.2.9/kinde_sdk/model/error_response.pyi +0 -106
- kinde_python_sdk-1.2.9/kinde_sdk/model/event_type.py +0 -119
- kinde_python_sdk-1.2.9/kinde_sdk/model/event_type.pyi +0 -119
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_application_response.py +0 -188
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_application_response.pyi +0 -188
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_applications_response.py +0 -136
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_applications_response.pyi +0 -136
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_categories_response.py +0 -136
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_categories_response.pyi +0 -136
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_connections_response.py +0 -136
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_connections_response.pyi +0 -136
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_environment_feature_flags_response.py +0 -221
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_environment_feature_flags_response.pyi +0 -213
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_event_response.py +0 -188
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_event_response.pyi +0 -188
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_event_types_response.py +0 -126
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_event_types_response.pyi +0 -126
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_organization_feature_flags_response.py +0 -211
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_organization_feature_flags_response.pyi +0 -203
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_organization_users_response.py +0 -136
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_organization_users_response.pyi +0 -136
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_organizations_response.py +0 -136
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_organizations_response.pyi +0 -136
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_organizations_user_permissions_response.py +0 -126
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_organizations_user_permissions_response.pyi +0 -126
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_organizations_user_roles_response.py +0 -136
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_organizations_user_roles_response.pyi +0 -136
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_permissions_response.py +0 -136
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_permissions_response.pyi +0 -136
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_properties_response.py +0 -136
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_properties_response.pyi +0 -136
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_property_values_response.py +0 -136
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_property_values_response.pyi +0 -136
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_redirect_callback_urls_response.py +0 -106
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_redirect_callback_urls_response.pyi +0 -106
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_roles_response.py +0 -136
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_roles_response.pyi +0 -136
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_subscriber_response.py +0 -126
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_subscriber_response.pyi +0 -126
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_subscribers_response.py +0 -136
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_subscribers_response.pyi +0 -136
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_webhooks_response.py +0 -126
- kinde_python_sdk-1.2.9/kinde_sdk/model/get_webhooks_response.pyi +0 -126
- kinde_python_sdk-1.2.9/kinde_sdk/model/logout_redirect_urls.py +0 -101
- kinde_python_sdk-1.2.9/kinde_sdk/model/logout_redirect_urls.pyi +0 -101
- kinde_python_sdk-1.2.9/kinde_sdk/model/model_property.py +0 -129
- kinde_python_sdk-1.2.9/kinde_sdk/model/model_property.pyi +0 -129
- kinde_python_sdk-1.2.9/kinde_sdk/model/organization.py +0 -109
- kinde_python_sdk-1.2.9/kinde_sdk/model/organization.pyi +0 -109
- kinde_python_sdk-1.2.9/kinde_sdk/model/organization_user.py +0 -161
- kinde_python_sdk-1.2.9/kinde_sdk/model/organization_user.pyi +0 -161
- kinde_python_sdk-1.2.9/kinde_sdk/model/organization_user_permission.py +0 -200
- kinde_python_sdk-1.2.9/kinde_sdk/model/organization_user_permission.pyi +0 -200
- kinde_python_sdk-1.2.9/kinde_sdk/model/organization_user_role.py +0 -99
- kinde_python_sdk-1.2.9/kinde_sdk/model/organization_user_role.pyi +0 -99
- kinde_python_sdk-1.2.9/kinde_sdk/model/organization_user_role_permissions.py +0 -148
- kinde_python_sdk-1.2.9/kinde_sdk/model/organization_user_role_permissions.pyi +0 -148
- kinde_python_sdk-1.2.9/kinde_sdk/model/organization_users.py +0 -57
- kinde_python_sdk-1.2.9/kinde_sdk/model/organization_users.pyi +0 -57
- kinde_python_sdk-1.2.9/kinde_sdk/model/permissions.py +0 -109
- kinde_python_sdk-1.2.9/kinde_sdk/model/permissions.pyi +0 -109
- kinde_python_sdk-1.2.9/kinde_sdk/model/property_value.py +0 -119
- kinde_python_sdk-1.2.9/kinde_sdk/model/property_value.pyi +0 -119
- kinde_python_sdk-1.2.9/kinde_sdk/model/redirect_callback_urls.py +0 -101
- kinde_python_sdk-1.2.9/kinde_sdk/model/redirect_callback_urls.pyi +0 -101
- kinde_python_sdk-1.2.9/kinde_sdk/model/role.py +0 -109
- kinde_python_sdk-1.2.9/kinde_sdk/model/role.pyi +0 -109
- kinde_python_sdk-1.2.9/kinde_sdk/model/roles.py +0 -109
- kinde_python_sdk-1.2.9/kinde_sdk/model/roles.pyi +0 -109
- kinde_python_sdk-1.2.9/kinde_sdk/model/roles_permission_response.py +0 -131
- kinde_python_sdk-1.2.9/kinde_sdk/model/roles_permission_response.pyi +0 -131
- kinde_python_sdk-1.2.9/kinde_sdk/model/subscriber.py +0 -109
- kinde_python_sdk-1.2.9/kinde_sdk/model/subscriber.pyi +0 -109
- kinde_python_sdk-1.2.9/kinde_sdk/model/subscribers_subscriber.py +0 -119
- kinde_python_sdk-1.2.9/kinde_sdk/model/subscribers_subscriber.pyi +0 -119
- kinde_python_sdk-1.2.9/kinde_sdk/model/success_response.py +0 -89
- kinde_python_sdk-1.2.9/kinde_sdk/model/success_response.pyi +0 -89
- kinde_python_sdk-1.2.9/kinde_sdk/model/token_error_response.py +0 -89
- kinde_python_sdk-1.2.9/kinde_sdk/model/token_error_response.pyi +0 -89
- kinde_python_sdk-1.2.9/kinde_sdk/model/token_introspect.py +0 -141
- kinde_python_sdk-1.2.9/kinde_sdk/model/token_introspect.pyi +0 -141
- kinde_python_sdk-1.2.9/kinde_sdk/model/update_organization_users_response.py +0 -175
- kinde_python_sdk-1.2.9/kinde_sdk/model/update_organization_users_response.pyi +0 -175
- kinde_python_sdk-1.2.9/kinde_sdk/model/update_role_permissions_response.py +0 -153
- kinde_python_sdk-1.2.9/kinde_sdk/model/update_role_permissions_response.pyi +0 -153
- kinde_python_sdk-1.2.9/kinde_sdk/model/update_user_response.py +0 -139
- kinde_python_sdk-1.2.9/kinde_sdk/model/update_user_response.pyi +0 -139
- kinde_python_sdk-1.2.9/kinde_sdk/model/update_webhook_response.py +0 -148
- kinde_python_sdk-1.2.9/kinde_sdk/model/update_webhook_response.pyi +0 -148
- kinde_python_sdk-1.2.9/kinde_sdk/model/user.py +0 -388
- kinde_python_sdk-1.2.9/kinde_sdk/model/user.pyi +0 -388
- kinde_python_sdk-1.2.9/kinde_sdk/model/user_identity.py +0 -138
- kinde_python_sdk-1.2.9/kinde_sdk/model/user_identity.pyi +0 -138
- kinde_python_sdk-1.2.9/kinde_sdk/model/user_profile.py +0 -158
- kinde_python_sdk-1.2.9/kinde_sdk/model/user_profile.pyi +0 -158
- kinde_python_sdk-1.2.9/kinde_sdk/model/user_profile_v2.py +0 -178
- kinde_python_sdk-1.2.9/kinde_sdk/model/user_profile_v2.pyi +0 -178
- kinde_python_sdk-1.2.9/kinde_sdk/model/users.py +0 -59
- kinde_python_sdk-1.2.9/kinde_sdk/model/users.pyi +0 -59
- kinde_python_sdk-1.2.9/kinde_sdk/model/users_response.py +0 -489
- kinde_python_sdk-1.2.9/kinde_sdk/model/users_response.pyi +0 -489
- kinde_python_sdk-1.2.9/kinde_sdk/model/webhook.py +0 -151
- kinde_python_sdk-1.2.9/kinde_sdk/model/webhook.pyi +0 -151
- kinde_python_sdk-1.2.9/kinde_sdk/models/__init__.py +0 -84
- kinde_python_sdk-1.2.9/kinde_sdk/paths/__init__.py +0 -70
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_apis/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_apis/get.py +0 -310
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_apis/get.pyi +0 -299
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_apis/post.py +0 -470
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_apis/post.pyi +0 -459
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_apis_api_id/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_apis_api_id/delete.py +0 -364
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_apis_api_id/delete.pyi +0 -353
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_apis_api_id/get.py +0 -364
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_apis_api_id/get.pyi +0 -353
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_apis_api_id_applications/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_apis_api_id_applications/patch.py +0 -601
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_apis_api_id_applications/patch.pyi +0 -590
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications/get.py +0 -419
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications/get.pyi +0 -409
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications/post.py +0 -474
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications/post.pyi +0 -455
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_app_id_auth_logout_urls/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_app_id_auth_logout_urls/delete.py +0 -415
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_app_id_auth_logout_urls/delete.pyi +0 -404
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_app_id_auth_logout_urls/get.py +0 -353
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_app_id_auth_logout_urls/get.pyi +0 -342
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_app_id_auth_logout_urls/post.py +0 -519
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_app_id_auth_logout_urls/post.pyi +0 -508
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_app_id_auth_logout_urls/put.py +0 -512
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_app_id_auth_logout_urls/put.pyi +0 -501
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_app_id_auth_redirect_urls/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_app_id_auth_redirect_urls/delete.py +0 -415
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_app_id_auth_redirect_urls/delete.pyi +0 -404
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_app_id_auth_redirect_urls/get.py +0 -353
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_app_id_auth_redirect_urls/get.pyi +0 -342
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_app_id_auth_redirect_urls/post.py +0 -519
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_app_id_auth_redirect_urls/post.pyi +0 -508
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_app_id_auth_redirect_urls/put.py +0 -512
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_app_id_auth_redirect_urls/put.pyi +0 -501
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_application_id/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_application_id/delete.py +0 -360
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_application_id/delete.pyi +0 -349
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_application_id/get.py +0 -353
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_application_id/get.pyi +0 -342
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_application_id/patch.py +0 -558
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_application_id/patch.pyi +0 -547
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_application_id_connections/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_application_id_connections/get.py +0 -353
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_application_id_connections/get.pyi +0 -342
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_application_id_connections_connection_id/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_application_id_connections_connection_id/delete.py +0 -369
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_application_id_connections_connection_id/delete.pyi +0 -358
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_application_id_connections_connection_id/post.py +0 -350
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_applications_application_id_connections_connection_id/post.pyi +0 -339
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_business/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_business/get.py +0 -446
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_business/get.pyi +0 -436
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_business/patch.py +0 -541
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_business/patch.pyi +0 -530
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_connected_apps_auth_url/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_connected_apps_auth_url/get.py +0 -405
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_connected_apps_auth_url/get.pyi +0 -393
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_connected_apps_revoke/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_connected_apps_revoke/post.py +0 -378
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_connected_apps_revoke/post.pyi +0 -366
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_connected_apps_token/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_connected_apps_token/get.py +0 -365
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_connected_apps_token/get.pyi +0 -354
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_connections/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_connections/get.py +0 -439
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_connections/get.pyi +0 -428
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_connections/post.py +0 -613
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_connections/post.pyi +0 -579
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_connections_connection_id/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_connections_connection_id/delete.py +0 -360
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_connections_connection_id/delete.pyi +0 -349
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_connections_connection_id/get.py +0 -353
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_connections_connection_id/get.pyi +0 -342
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_connections_connection_id/patch.py +0 -551
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_connections_connection_id/patch.pyi +0 -540
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_environment_feature_flags/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_environment_feature_flags/delete.py +0 -299
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_environment_feature_flags/delete.pyi +0 -288
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_environment_feature_flags/get.py +0 -299
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_environment_feature_flags/get.pyi +0 -288
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_environment_feature_flags_feature_flag_key/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_environment_feature_flags_feature_flag_key/delete.py +0 -353
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_environment_feature_flags_feature_flag_key/delete.pyi +0 -342
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_environment_feature_flags_feature_flag_key/patch.py +0 -504
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_environment_feature_flags_feature_flag_key/patch.pyi +0 -493
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_event_types/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_event_types/get.py +0 -310
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_event_types/get.pyi +0 -299
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_events_event_id/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_events_event_id/get.py +0 -364
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_events_event_id/get.pyi +0 -353
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_feature_flags/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_feature_flags/post.py +0 -553
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_feature_flags/post.pyi +0 -526
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_feature_flags_feature_flag_key/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_feature_flags_feature_flag_key/delete.py +0 -353
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_feature_flags_feature_flag_key/delete.pyi +0 -342
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_feature_flags_feature_flag_key/put.py +0 -493
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_feature_flags_feature_flag_key/put.pyi +0 -467
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_industries/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_industries/get.py +0 -332
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_industries/get.pyi +0 -322
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organization/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organization/get.py +0 -353
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organization/get.pyi +0 -342
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organization/post.py +0 -639
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organization/post.pyi +0 -619
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organization_org_code/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organization_org_code/delete.py +0 -341
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organization_org_code/delete.pyi +0 -330
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organization_org_code/patch.py +0 -616
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organization_org_code/patch.pyi +0 -605
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organization_org_code_handle/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organization_org_code_handle/delete.py +0 -353
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organization_org_code_handle/delete.pyi +0 -342
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations/get.py +0 -429
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations/get.pyi +0 -419
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_feature_flags/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_feature_flags/delete.py +0 -353
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_feature_flags/delete.pyi +0 -342
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_feature_flags/get.py +0 -353
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_feature_flags/get.pyi +0 -342
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_feature_flags_feature_flag_key/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_feature_flags_feature_flag_key/delete.py +0 -362
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_feature_flags_feature_flag_key/delete.pyi +0 -351
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_feature_flags_feature_flag_key/patch.py +0 -417
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_feature_flags_feature_flag_key/patch.pyi +0 -406
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_properties/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_properties/get.py +0 -353
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_properties/get.pyi +0 -342
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_properties/patch.py +0 -504
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_properties/patch.pyi +0 -493
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_properties_property_key/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_properties_property_key/put.py +0 -417
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_properties_property_key/put.pyi +0 -406
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users/get.py +0 -536
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users/get.pyi +0 -525
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users/patch.py +0 -641
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users/patch.pyi +0 -630
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users/post.py +0 -653
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users/post.pyi +0 -641
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users_user_id/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users_user_id/delete.py +0 -362
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users_user_id/delete.pyi +0 -351
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users_user_id_permissions/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users_user_id_permissions/get.py +0 -410
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users_user_id_permissions/get.pyi +0 -400
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users_user_id_permissions/post.py +0 -483
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users_user_id_permissions/post.pyi +0 -473
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users_user_id_permissions_permission_id/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users_user_id_permissions_permission_id/delete.py +0 -371
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users_user_id_permissions_permission_id/delete.pyi +0 -360
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users_user_id_roles/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users_user_id_roles/get.py +0 -337
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users_user_id_roles/get.pyi +0 -327
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users_user_id_roles/post.py +0 -483
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users_user_id_roles/post.pyi +0 -473
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users_user_id_roles_role_id/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users_user_id_roles_role_id/delete.py +0 -371
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_organizations_org_code_users_user_id_roles_role_id/delete.pyi +0 -360
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_permissions/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_permissions/get.py +0 -441
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_permissions/get.pyi +0 -431
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_permissions/post.py +0 -457
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_permissions/post.pyi +0 -446
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_permissions_permission_id/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_permissions_permission_id/delete.py +0 -353
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_permissions_permission_id/delete.pyi +0 -342
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_permissions_permission_id/patch.py +0 -514
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_permissions_permission_id/patch.pyi +0 -503
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_properties/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_properties/get.py +0 -483
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_properties/get.pyi +0 -472
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_properties/post.py +0 -557
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_properties/post.pyi +0 -532
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_properties_property_id/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_properties_property_id/delete.py +0 -353
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_properties_property_id/delete.pyi +0 -342
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_properties_property_id/put.py +0 -538
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_properties_property_id/put.pyi +0 -527
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_property_categories/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_property_categories/get.py +0 -483
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_property_categories/get.pyi +0 -472
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_property_categories/post.py +0 -479
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_property_categories/post.pyi +0 -461
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_property_categories_category_id/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_property_categories_category_id/put.py +0 -499
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_property_categories_category_id/put.pyi +0 -488
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_roles/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_roles/get.py +0 -441
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_roles/get.pyi +0 -431
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_roles/post.py +0 -467
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_roles/post.pyi +0 -457
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_roles_role_id/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_roles_role_id/delete.py +0 -353
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_roles_role_id/delete.pyi +0 -342
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_roles_role_id/patch.py +0 -531
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_roles_role_id/patch.pyi +0 -520
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_roles_role_id_permissions/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_roles_role_id_permissions/get.py +0 -508
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_roles_role_id_permissions/get.pyi +0 -497
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_roles_role_id_permissions/patch.py +0 -567
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_roles_role_id_permissions/patch.pyi +0 -557
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_roles_role_id_permissions_permission_id/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_roles_role_id_permissions_permission_id/delete.py +0 -362
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_roles_role_id_permissions_permission_id/delete.pyi +0 -351
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_subscribers/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_subscribers/get.py +0 -432
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_subscribers/get.pyi +0 -422
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_subscribers/post.py +0 -410
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_subscribers/post.pyi +0 -399
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_subscribers_subscriber_id/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_subscribers_subscriber_id/get.py +0 -351
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_subscribers_subscriber_id/get.pyi +0 -340
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_timezones/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_timezones/get.py +0 -332
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_timezones/get.pyi +0 -322
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_user/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_user/delete.py +0 -363
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_user/delete.pyi +0 -352
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_user/get.py +0 -382
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_user/get.pyi +0 -371
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_user/patch.py +0 -530
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_user/patch.pyi +0 -519
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_user/post.py +0 -693
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_user/post.pyi +0 -674
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_users/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_users/get.py +0 -487
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_users/get.pyi +0 -477
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_users_user_id_feature_flags_feature_flag_key/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_users_user_id_feature_flags_feature_flag_key/patch.py +0 -417
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_users_user_id_feature_flags_feature_flag_key/patch.pyi +0 -406
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_users_user_id_password/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_users_user_id_password/put.py +0 -594
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_users_user_id_password/put.pyi +0 -567
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_users_user_id_properties/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_users_user_id_properties/get.py +0 -353
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_users_user_id_properties/get.pyi +0 -342
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_users_user_id_properties/patch.py +0 -504
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_users_user_id_properties/patch.pyi +0 -493
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_users_user_id_properties_property_key/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_users_user_id_properties_property_key/put.py +0 -417
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_users_user_id_properties_property_key/put.pyi +0 -406
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_users_user_id_refresh_claims/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_users_user_id_refresh_claims/post.py +0 -364
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_users_user_id_refresh_claims/post.pyi +0 -353
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_webhooks/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_webhooks/get.py +0 -310
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_webhooks/get.pyi +0 -299
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_webhooks/patch.py +0 -514
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_webhooks/patch.pyi +0 -503
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_webhooks/post.py +0 -533
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_webhooks/post.pyi +0 -522
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_webhooks_webhook_id/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_webhooks_webhook_id/delete.py +0 -364
- kinde_python_sdk-1.2.9/kinde_sdk/paths/api_v1_webhooks_webhook_id/delete.pyi +0 -353
- kinde_python_sdk-1.2.9/kinde_sdk/paths/oauth2_introspect/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/oauth2_introspect/post.py +0 -449
- kinde_python_sdk-1.2.9/kinde_sdk/paths/oauth2_introspect/post.pyi +0 -438
- kinde_python_sdk-1.2.9/kinde_sdk/paths/oauth2_revoke/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/oauth2_revoke/post.py +0 -447
- kinde_python_sdk-1.2.9/kinde_sdk/paths/oauth2_revoke/post.pyi +0 -436
- kinde_python_sdk-1.2.9/kinde_sdk/paths/oauth2_user_profile/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/oauth2_user_profile/get.py +0 -256
- kinde_python_sdk-1.2.9/kinde_sdk/paths/oauth2_user_profile/get.pyi +0 -247
- kinde_python_sdk-1.2.9/kinde_sdk/paths/oauth2_v2_user_profile/__init__.py +0 -7
- kinde_python_sdk-1.2.9/kinde_sdk/paths/oauth2_v2_user_profile/get.py +0 -269
- kinde_python_sdk-1.2.9/kinde_sdk/paths/oauth2_v2_user_profile/get.pyi +0 -259
- kinde_python_sdk-1.2.9/kinde_sdk/rest.py +0 -255
- kinde_python_sdk-1.2.9/kinde_sdk/schemas.py +0 -2476
- kinde_python_sdk-1.2.9/kinde_sdk/test/__init__.py +0 -0
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_kinde_api_client.py +0 -293
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/__init__.py +0 -0
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_add_organization_users_response.py +0 -37
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_api.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_api_result.py +0 -36
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_apis.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_applications.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_category.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_connected_apps_access_token.py +0 -36
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_connected_apps_auth_url.py +0 -37
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_connection.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_create_application_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_create_category_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_create_connection_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_create_organization_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_create_property_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_create_subscriber_success_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_create_user_response.py +0 -37
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_create_webhook_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_delete_webhook_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_error.py +0 -37
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_error_response.py +0 -36
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_event_type.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_get_application_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_get_applications_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_get_categories_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_get_connections_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_get_environment_feature_flags_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_get_event_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_get_event_types_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_get_organization_feature_flags_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_get_organization_users_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_get_organizations_response.py +0 -37
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_get_organizations_user_permissions_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_get_organizations_user_roles_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_get_permissions_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_get_properties_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_get_property_values_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_get_redirect_callback_urls_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_get_roles_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_get_subscriber_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_get_subscribers_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_get_webhooks_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_logout_redirect_urls.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_model_property.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_organization.py +0 -37
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_organization_user.py +0 -37
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_organization_user_permission.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_organization_user_role.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_organization_user_role_permissions.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_organization_users.py +0 -27
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_permissions.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_property_value.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_redirect_callback_urls.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_role.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_roles.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_roles_permission_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_subscriber.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_subscribers_subscriber.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_success_response.py +0 -36
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_token_error_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_token_introspect.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_update_organization_users_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_update_role_permissions_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_update_user_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_update_webhook_response.py +0 -26
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_user.py +0 -37
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_user_identity.py +0 -37
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_user_profile.py +0 -37
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_user_profile_v2.py +0 -37
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_users.py +0 -27
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_users_response.py +0 -36
- kinde_python_sdk-1.2.9/kinde_sdk/test/test_models/test_webhook.py +0 -26
- kinde_python_sdk-1.2.9/pyproject.toml +0 -33
- {kinde_python_sdk-1.2.9 → kinde_python_sdk-2.0.0b2}/LICENSE +0 -0
- {kinde_python_sdk-1.2.9 → kinde_python_sdk-2.0.0b2}/kinde_python_sdk.egg-info/dependency_links.txt +0 -0
- {kinde_python_sdk-1.2.9 → kinde_python_sdk-2.0.0b2}/setup.cfg +0 -0
|
@@ -0,0 +1,557 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: kinde-python-sdk
|
|
3
|
+
Version: 2.0.0b2
|
|
4
|
+
Summary: Connect your app to the Kinde platform
|
|
5
|
+
Author-email: Kinde Engineering <engineering@kinde.com>
|
|
6
|
+
Project-URL: Homepage, https://github.com/kinde-oss/kinde-python-sdk
|
|
7
|
+
Classifier: Development Status :: 4 - Beta
|
|
8
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
9
|
+
Classifier: Natural Language :: English
|
|
10
|
+
Classifier: Operating System :: OS Independent
|
|
11
|
+
Classifier: Programming Language :: Python
|
|
12
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
17
|
+
Requires-Python: >=3.9
|
|
18
|
+
Description-Content-Type: text/markdown
|
|
19
|
+
License-File: LICENSE
|
|
20
|
+
Requires-Dist: urllib3<3.0,>=2.2.0
|
|
21
|
+
Requires-Dist: python-dateutil<3.0,>=2.9.0
|
|
22
|
+
Requires-Dist: Authlib<2.0,>=1.3.0
|
|
23
|
+
Requires-Dist: pyjwt<3.0,>=2.10.0
|
|
24
|
+
Requires-Dist: requests<3.0,>=2.32.0
|
|
25
|
+
Requires-Dist: typing-extensions<5.0,>=4.11.0
|
|
26
|
+
Requires-Dist: frozendict<3.0,>=2.4.3
|
|
27
|
+
Requires-Dist: certifi<2025.0.0,>=2024.2.2
|
|
28
|
+
Requires-Dist: PyYAML<7.0.0,>=6.0.1
|
|
29
|
+
Requires-Dist: cryptography<42.0.0,>=41.0.0
|
|
30
|
+
Requires-Dist: python-dotenv<2.0.0,>=1.0.0
|
|
31
|
+
Requires-Dist: itsdangerous<3.0.0,>=2.2.0
|
|
32
|
+
Requires-Dist: nest-asyncio<2.0.0,>=1.5.8
|
|
33
|
+
Requires-Dist: httpx<0.26.0,>=0.25.0
|
|
34
|
+
Provides-Extra: fastapi
|
|
35
|
+
Requires-Dist: fastapi<1.0.0,>=0.110.0; extra == "fastapi"
|
|
36
|
+
Requires-Dist: python-multipart<1.0.0,>=0.0.6; extra == "fastapi"
|
|
37
|
+
Requires-Dist: uvicorn<0.26.0,>=0.25.0; extra == "fastapi"
|
|
38
|
+
Provides-Extra: flask
|
|
39
|
+
Requires-Dist: flask<4.0.0,>=3.0.0; extra == "flask"
|
|
40
|
+
Dynamic: license-file
|
|
41
|
+
|
|
42
|
+
# Kinde Python SDK
|
|
43
|
+
|
|
44
|
+
The Kinde SDK for Python.
|
|
45
|
+
|
|
46
|
+
You can also use the [Python starter kit here](https://github.com/kinde-starter-kits/python-starter-kit).
|
|
47
|
+
|
|
48
|
+
[](https://makeapullrequest.com) [](https://kinde.com/docs/developer-tools) [](https://thekindecommunity.slack.com)
|
|
49
|
+
|
|
50
|
+
## Documentation
|
|
51
|
+
|
|
52
|
+
For details on integrating this SDK into your project, head over to the [Kinde docs](https://kinde.com/docs/) and see the [Python SDK](https://kinde.com/docs/developer-tools/python-sdk/) doc 👍🏼.
|
|
53
|
+
|
|
54
|
+
## Storage Usage Examples
|
|
55
|
+
|
|
56
|
+
### Basic Usage
|
|
57
|
+
```python
|
|
58
|
+
from kinde_sdk.auth import OAuth
|
|
59
|
+
from kinde_sdk.core.storage import StorageManager
|
|
60
|
+
|
|
61
|
+
# Basic initialization via OAuth
|
|
62
|
+
# This is the recommended way to initialize the storage system
|
|
63
|
+
# OAuth automatically initializes the StorageManager with the provided config
|
|
64
|
+
oauth = OAuth(
|
|
65
|
+
client_id="your_client_id",
|
|
66
|
+
client_secret="your_client_secret",
|
|
67
|
+
redirect_uri="your_redirect_uri"
|
|
68
|
+
)
|
|
69
|
+
|
|
70
|
+
# Direct access to the storage manager
|
|
71
|
+
# This is safe to use after OAuth initialization
|
|
72
|
+
storage_manager = StorageManager()
|
|
73
|
+
|
|
74
|
+
# Store authentication data
|
|
75
|
+
storage_manager.set("user_tokens", {
|
|
76
|
+
"access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
|
|
77
|
+
"refresh_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
|
|
78
|
+
"expires_at": 1678901234
|
|
79
|
+
})
|
|
80
|
+
|
|
81
|
+
# Retrieve tokens
|
|
82
|
+
tokens = storage_manager.get("user_tokens")
|
|
83
|
+
if tokens:
|
|
84
|
+
access_token = tokens.get("access_token")
|
|
85
|
+
# Use the access token for API requests
|
|
86
|
+
|
|
87
|
+
# Delete tokens when logging out
|
|
88
|
+
storage_manager.delete("user_tokens")
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
### Using a Custom Storage Backend
|
|
92
|
+
```python
|
|
93
|
+
oauth = OAuth(
|
|
94
|
+
client_id="your_client_id",
|
|
95
|
+
storage_config={
|
|
96
|
+
"type": "local_storage",
|
|
97
|
+
"options": {
|
|
98
|
+
# backend-specific options
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
)
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
### Handling Multi-Device Usage
|
|
105
|
+
The StorageManager automatically assigns a unique device ID to each client instance, ensuring that
|
|
106
|
+
the same user logged in on different devices won't experience session clashes. Keys are namespaced
|
|
107
|
+
with the device ID by default.
|
|
108
|
+
|
|
109
|
+
```python
|
|
110
|
+
# Get the current device ID
|
|
111
|
+
device_id = storage_manager.get_device_id()
|
|
112
|
+
print(f"Current device ID: {device_id}")
|
|
113
|
+
|
|
114
|
+
# Clear all data for the current device (useful for logout)
|
|
115
|
+
storage_manager.clear_device_data()
|
|
116
|
+
|
|
117
|
+
# For data that should be shared across all devices for the same user
|
|
118
|
+
# Use the "user:" prefix
|
|
119
|
+
storage_manager.set("user:shared_preferences", {"theme": "dark"})
|
|
120
|
+
|
|
121
|
+
# For data that should be global across all users and devices
|
|
122
|
+
# Use the "global:" prefix
|
|
123
|
+
storage_manager.set("global:app_settings", {"version": "1.0.0"})
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
## Best Practices for Storage Management
|
|
127
|
+
|
|
128
|
+
1. **Always initialize OAuth first**: The OAuth constructor initializes the StorageManager, so create your OAuth instance before accessing the storage.
|
|
129
|
+
|
|
130
|
+
2. **Manual initialization (if needed)**: If you need to use StorageManager before creating an OAuth instance, explicitly initialize it first:
|
|
131
|
+
```python
|
|
132
|
+
# Manual initialization
|
|
133
|
+
storage_manager = StorageManager()
|
|
134
|
+
storage_manager.initialize({"type": "memory"}) # or your preferred storage config
|
|
135
|
+
|
|
136
|
+
# You can also provide a specific device ID
|
|
137
|
+
storage_manager.initialize(
|
|
138
|
+
config={"type": "memory"},
|
|
139
|
+
device_id="custom-device-identifier"
|
|
140
|
+
)
|
|
141
|
+
|
|
142
|
+
# Now safe to use
|
|
143
|
+
storage_manager.set("some_key", {"some": "value"})
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
3. **Safe access pattern**: If you're unsure about initialization status, you can use this pattern:
|
|
147
|
+
```python
|
|
148
|
+
storage_manager = StorageManager()
|
|
149
|
+
if not storage_manager._initialized:
|
|
150
|
+
storage_manager.initialize()
|
|
151
|
+
|
|
152
|
+
# Now safe to use
|
|
153
|
+
data = storage_manager.get("some_key")
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
4. **Single configuration**: Configure the storage only once at application startup. Changing storage configuration mid-operation may lead to data inconsistency.
|
|
157
|
+
|
|
158
|
+
5. **Access from anywhere**: After initialization, you can safely access the StorageManager from any part of your application without passing it around.
|
|
159
|
+
|
|
160
|
+
6. **Device-specific data**: Understand that by default, data is stored with device-specific namespacing. To share data across devices, use the appropriate prefixes.
|
|
161
|
+
|
|
162
|
+
7. **Complete logout**: To ensure all device-specific data is cleared during logout, call `storage_manager.clear_device_data()`.
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
# After initializing both OAuth and KindeApiClient use the following fn to get proper urls
|
|
167
|
+
api_client.fetch_openid_configuration(oauth)
|
|
168
|
+
|
|
169
|
+
# Kinde Management API Module
|
|
170
|
+
|
|
171
|
+
This module provides a client for the Kinde Management API, allowing you to manage users, organizations, roles, permissions, and feature flags programmatically.
|
|
172
|
+
|
|
173
|
+
## Installation
|
|
174
|
+
|
|
175
|
+
No additional installation is required if you already have the Kinde Python SDK installed. The Management API module is included as part of the SDK.
|
|
176
|
+
|
|
177
|
+
## Usage
|
|
178
|
+
|
|
179
|
+
The Management API client requires:
|
|
180
|
+
- Your Kinde domain
|
|
181
|
+
- Client ID
|
|
182
|
+
- Client secret
|
|
183
|
+
|
|
184
|
+
### Initializing the client
|
|
185
|
+
|
|
186
|
+
You can access the Management API through the existing `KindeApiClient`:
|
|
187
|
+
|
|
188
|
+
```python
|
|
189
|
+
from kinde_sdk.kinde_api_client import KindeApiClient
|
|
190
|
+
from kinde_sdk.enums import GrantType
|
|
191
|
+
|
|
192
|
+
# Initialize the client with client credentials
|
|
193
|
+
client = KindeApiClient(
|
|
194
|
+
domain="your-domain.kinde.com",
|
|
195
|
+
callback_url="https://your-app.com/callback",
|
|
196
|
+
client_id="your-client-id",
|
|
197
|
+
client_secret="your-client-secret", # Required for management API
|
|
198
|
+
grant_type=GrantType.CLIENT_CREDENTIALS,
|
|
199
|
+
)
|
|
200
|
+
|
|
201
|
+
# Get the management client
|
|
202
|
+
management = client.get_management()
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
### Managing Users
|
|
206
|
+
|
|
207
|
+
```python
|
|
208
|
+
# List users
|
|
209
|
+
users = management.get_users(page_size=10)
|
|
210
|
+
|
|
211
|
+
# Get a specific user
|
|
212
|
+
user = management.get_user(user_id="user_id")
|
|
213
|
+
|
|
214
|
+
# Create a new user
|
|
215
|
+
new_user = management.create_user(
|
|
216
|
+
first_name="John",
|
|
217
|
+
last_name="Doe",
|
|
218
|
+
email="john.doe@example.com"
|
|
219
|
+
)
|
|
220
|
+
|
|
221
|
+
# Update a user
|
|
222
|
+
updated_user = management.update_user(
|
|
223
|
+
user_id="user_id",
|
|
224
|
+
first_name="John",
|
|
225
|
+
last_name="Smith"
|
|
226
|
+
)
|
|
227
|
+
|
|
228
|
+
# Delete a user
|
|
229
|
+
result = management.delete_user(user_id="user_id")
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
### Managing Organizations
|
|
233
|
+
|
|
234
|
+
```python
|
|
235
|
+
# List organizations
|
|
236
|
+
organizations = management.get_organizations(page_size=10)
|
|
237
|
+
|
|
238
|
+
# Get a specific organization
|
|
239
|
+
org = management.get_organization(org_code="org_code")
|
|
240
|
+
|
|
241
|
+
# Create a new organization
|
|
242
|
+
new_org = management.create_organization(
|
|
243
|
+
name="Example Organization"
|
|
244
|
+
)
|
|
245
|
+
|
|
246
|
+
# Update an organization
|
|
247
|
+
updated_org = management.update_organization(
|
|
248
|
+
org_code="org_code",
|
|
249
|
+
name="Updated Organization Name"
|
|
250
|
+
)
|
|
251
|
+
|
|
252
|
+
# Delete an organization
|
|
253
|
+
result = management.delete_organization(org_code="org_code")
|
|
254
|
+
```
|
|
255
|
+
|
|
256
|
+
### Managing Roles
|
|
257
|
+
|
|
258
|
+
```python
|
|
259
|
+
# List roles
|
|
260
|
+
roles = management.get_roles(page_size=10)
|
|
261
|
+
|
|
262
|
+
# Get a specific role
|
|
263
|
+
role = management.get_role(role_id="role_id")
|
|
264
|
+
|
|
265
|
+
# Create a new role
|
|
266
|
+
new_role = management.create_role(
|
|
267
|
+
name="Admin",
|
|
268
|
+
description="Administrator role",
|
|
269
|
+
key="admin_role"
|
|
270
|
+
)
|
|
271
|
+
|
|
272
|
+
# Update a role
|
|
273
|
+
updated_role = management.update_role(
|
|
274
|
+
role_id="role_id",
|
|
275
|
+
name="Super Admin",
|
|
276
|
+
description="Super administrator role"
|
|
277
|
+
)
|
|
278
|
+
|
|
279
|
+
# Delete a role
|
|
280
|
+
result = management.delete_role(role_id="role_id")
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
### Managing Feature Flags
|
|
284
|
+
|
|
285
|
+
```python
|
|
286
|
+
# List feature flags
|
|
287
|
+
flags = management.get_feature_flags(page_size=10)
|
|
288
|
+
|
|
289
|
+
# Create a new feature flag
|
|
290
|
+
new_flag = management.create_feature_flag(
|
|
291
|
+
name="Dark Mode",
|
|
292
|
+
key="dark_mode",
|
|
293
|
+
description="Enable dark mode theme",
|
|
294
|
+
type="boolean",
|
|
295
|
+
default_value=False
|
|
296
|
+
)
|
|
297
|
+
|
|
298
|
+
# Update a feature flag
|
|
299
|
+
updated_flag = management.update_feature_flag(
|
|
300
|
+
feature_flag_id="flag_id",
|
|
301
|
+
name="Dark Theme",
|
|
302
|
+
description="Enable dark theme for the application"
|
|
303
|
+
)
|
|
304
|
+
|
|
305
|
+
# Delete a feature flag
|
|
306
|
+
result = management.delete_feature_flag(feature_flag_id="flag_id")
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
## Token Management
|
|
310
|
+
|
|
311
|
+
The Management API client automatically handles token management using client credentials:
|
|
312
|
+
|
|
313
|
+
- Tokens are automatically obtained when needed
|
|
314
|
+
- Tokens are cached to avoid unnecessary requests
|
|
315
|
+
- Tokens are refreshed when they expire
|
|
316
|
+
- Multiple instances of the client with the same domain and client ID share the same token
|
|
317
|
+
|
|
318
|
+
## Error Handling
|
|
319
|
+
|
|
320
|
+
All API methods can raise exceptions for HTTP errors. It's recommended to wrap calls in try/except blocks:
|
|
321
|
+
|
|
322
|
+
```python
|
|
323
|
+
try:
|
|
324
|
+
user = management.get_user(user_id="non_existent_id")
|
|
325
|
+
except Exception as e:
|
|
326
|
+
print(f"Error: {e}")
|
|
327
|
+
```
|
|
328
|
+
|
|
329
|
+
Complete example given below
|
|
330
|
+
|
|
331
|
+
```python
|
|
332
|
+
from kinde_sdk.kinde_api_client import KindeApiClient
|
|
333
|
+
from kinde_sdk.enums import GrantType
|
|
334
|
+
|
|
335
|
+
def main():
|
|
336
|
+
"""Main function demonstrating Management API usage."""
|
|
337
|
+
# Initialize the Kinde client with management capabilities
|
|
338
|
+
client = KindeApiClient(
|
|
339
|
+
domain="your-domain.kinde.com", # Replace with your Kinde domain
|
|
340
|
+
callback_url="https://your-app.com/callback", # Your auth callback URL
|
|
341
|
+
client_id="your-client-id", # Your client ID
|
|
342
|
+
client_secret="your-client-secret", # Required for management API
|
|
343
|
+
grant_type=GrantType.CLIENT_CREDENTIALS, # Use client credentials for management API
|
|
344
|
+
)
|
|
345
|
+
|
|
346
|
+
# Get the management client
|
|
347
|
+
management = client.get_management()
|
|
348
|
+
|
|
349
|
+
# Example 1: List users
|
|
350
|
+
print("Example 1: List users")
|
|
351
|
+
print("-" * 50)
|
|
352
|
+
users_result = management.get_users(page_size=10)
|
|
353
|
+
if users_result and "users" in users_result:
|
|
354
|
+
users = users_result["users"]
|
|
355
|
+
print(f"Total users: {len(users)}")
|
|
356
|
+
for user in users:
|
|
357
|
+
print(f"User: {user.get('first_name', '')} {user.get('last_name', '')} ({user.get('email', '')})")
|
|
358
|
+
else:
|
|
359
|
+
print("No users found or error occurred")
|
|
360
|
+
print()
|
|
361
|
+
|
|
362
|
+
# Example 2: Create a new user
|
|
363
|
+
print("Example 2: Create a new user")
|
|
364
|
+
print("-" * 50)
|
|
365
|
+
try:
|
|
366
|
+
new_user = management.create_user(
|
|
367
|
+
first_name="Test",
|
|
368
|
+
last_name="User",
|
|
369
|
+
email="testuser@example.com",
|
|
370
|
+
)
|
|
371
|
+
print(f"User created: {new_user}")
|
|
372
|
+
|
|
373
|
+
# Store the user ID for later examples
|
|
374
|
+
user_id = new_user.get("id")
|
|
375
|
+
print(f"User ID: {user_id}")
|
|
376
|
+
except Exception as e:
|
|
377
|
+
print(f"Error creating user: {e}")
|
|
378
|
+
print()
|
|
379
|
+
|
|
380
|
+
# Example 3: Update a user
|
|
381
|
+
print("Example 3: Update a user")
|
|
382
|
+
print("-" * 50)
|
|
383
|
+
try:
|
|
384
|
+
# Use the user ID from Example 2
|
|
385
|
+
if 'user_id' in locals():
|
|
386
|
+
updated_user = management.update_user(user_id,
|
|
387
|
+
first_name="Updated",
|
|
388
|
+
last_name="User"
|
|
389
|
+
)
|
|
390
|
+
print(f"User updated: {updated_user}")
|
|
391
|
+
else:
|
|
392
|
+
print("No user ID available for update")
|
|
393
|
+
except Exception as e:
|
|
394
|
+
print(f"Error updating user: {e}")
|
|
395
|
+
print()
|
|
396
|
+
|
|
397
|
+
# Example 4: List organizations
|
|
398
|
+
print("Example 4: List organizations")
|
|
399
|
+
print("-" * 50)
|
|
400
|
+
orgs_result = management.get_organizations(page_size=10)
|
|
401
|
+
if orgs_result and "organizations" in orgs_result:
|
|
402
|
+
orgs = orgs_result["organizations"]
|
|
403
|
+
print(f"Total organizations: {len(orgs)}")
|
|
404
|
+
for org in orgs:
|
|
405
|
+
print(f"Organization: {org.get('name', '')} (Code: {org.get('code', '')})")
|
|
406
|
+
else:
|
|
407
|
+
print("No organizations found or error occurred")
|
|
408
|
+
print()
|
|
409
|
+
|
|
410
|
+
# Example 5: Create a new organization
|
|
411
|
+
print("Example 5: Create a new organization")
|
|
412
|
+
print("-" * 50)
|
|
413
|
+
try:
|
|
414
|
+
new_org = management.create_organization(
|
|
415
|
+
name="Test Organization"
|
|
416
|
+
)
|
|
417
|
+
print(f"Organization created: {new_org}")
|
|
418
|
+
|
|
419
|
+
# Store the org code for later examples
|
|
420
|
+
org_code = new_org.get("code")
|
|
421
|
+
print(f"Organization Code: {org_code}")
|
|
422
|
+
except Exception as e:
|
|
423
|
+
print(f"Error creating organization: {e}")
|
|
424
|
+
print()
|
|
425
|
+
|
|
426
|
+
# Example 6: Update an organization
|
|
427
|
+
print("Example 6: Update an organization")
|
|
428
|
+
print("-" * 50)
|
|
429
|
+
try:
|
|
430
|
+
# Use the org code from Example 5
|
|
431
|
+
if 'org_code' in locals():
|
|
432
|
+
updated_org = management.update_organization(org_code,
|
|
433
|
+
name="Updated Organization"
|
|
434
|
+
)
|
|
435
|
+
print(f"Organization updated: {updated_org}")
|
|
436
|
+
else:
|
|
437
|
+
print("No organization code available for update")
|
|
438
|
+
except Exception as e:
|
|
439
|
+
print(f"Error updating organization: {e}")
|
|
440
|
+
print()
|
|
441
|
+
|
|
442
|
+
# Example 7: List roles
|
|
443
|
+
print("Example 7: List roles")
|
|
444
|
+
print("-" * 50)
|
|
445
|
+
roles_result = management.get_roles(page_size=10)
|
|
446
|
+
if roles_result and "roles" in roles_result:
|
|
447
|
+
roles = roles_result["roles"]
|
|
448
|
+
print(f"Total roles: {len(roles)}")
|
|
449
|
+
for role in roles:
|
|
450
|
+
print(f"Role: {role.get('name', '')} (Key: {role.get('key', '')})")
|
|
451
|
+
else:
|
|
452
|
+
print("No roles found or error occurred")
|
|
453
|
+
print()
|
|
454
|
+
|
|
455
|
+
# Example 8: Create a new role
|
|
456
|
+
print("Example 8: Create a new role")
|
|
457
|
+
print("-" * 50)
|
|
458
|
+
try:
|
|
459
|
+
new_role = management.create_role(
|
|
460
|
+
name="Test Role",
|
|
461
|
+
description="A test role created via the Management API",
|
|
462
|
+
key="test_role"
|
|
463
|
+
)
|
|
464
|
+
print(f"Role created: {new_role}")
|
|
465
|
+
|
|
466
|
+
# Store the role ID for later examples
|
|
467
|
+
role_id = new_role.get("id")
|
|
468
|
+
print(f"Role ID: {role_id}")
|
|
469
|
+
except Exception as e:
|
|
470
|
+
print(f"Error creating role: {e}")
|
|
471
|
+
print()
|
|
472
|
+
|
|
473
|
+
# Example 9: Get feature flags
|
|
474
|
+
print("Example 9: Get feature flags")
|
|
475
|
+
print("-" * 50)
|
|
476
|
+
flags_result = management.get_feature_flags(page_size=10)
|
|
477
|
+
if flags_result and "feature_flags" in flags_result:
|
|
478
|
+
flags = flags_result["feature_flags"]
|
|
479
|
+
print(f"Total feature flags: {len(flags)}")
|
|
480
|
+
for flag in flags:
|
|
481
|
+
print(f"Flag: {flag.get('name', '')} (Key: {flag.get('key', '')})")
|
|
482
|
+
else:
|
|
483
|
+
print("No feature flags found or error occurred")
|
|
484
|
+
print()
|
|
485
|
+
|
|
486
|
+
# Example 10: Create a new feature flag
|
|
487
|
+
print("Example 10: Create a new feature flag")
|
|
488
|
+
print("-" * 50)
|
|
489
|
+
try:
|
|
490
|
+
new_flag = management.create_feature_flag(
|
|
491
|
+
name="Test Flag",
|
|
492
|
+
key="test_flag",
|
|
493
|
+
description="A test feature flag created via the Management API",
|
|
494
|
+
type="boolean",
|
|
495
|
+
default_value=False
|
|
496
|
+
)
|
|
497
|
+
print(f"Feature flag created: {new_flag}")
|
|
498
|
+
|
|
499
|
+
# Store the flag ID for later examples
|
|
500
|
+
flag_id = new_flag.get("id")
|
|
501
|
+
print(f"Flag ID: {flag_id}")
|
|
502
|
+
except Exception as e:
|
|
503
|
+
print(f"Error creating feature flag: {e}")
|
|
504
|
+
print()
|
|
505
|
+
|
|
506
|
+
# Example 11: Clean up (delete created resources)
|
|
507
|
+
print("Example 11: Clean up")
|
|
508
|
+
print("-" * 50)
|
|
509
|
+
|
|
510
|
+
# Delete the feature flag (if created)
|
|
511
|
+
if 'flag_id' in locals():
|
|
512
|
+
try:
|
|
513
|
+
result = management.delete_feature_flag(flag_id)
|
|
514
|
+
print(f"Feature flag deleted: {result}")
|
|
515
|
+
except Exception as e:
|
|
516
|
+
print(f"Error deleting feature flag: {e}")
|
|
517
|
+
|
|
518
|
+
# Delete the role (if created)
|
|
519
|
+
if 'role_id' in locals():
|
|
520
|
+
try:
|
|
521
|
+
result = management.delete_role(role_id)
|
|
522
|
+
print(f"Role deleted: {result}")
|
|
523
|
+
except Exception as e:
|
|
524
|
+
print(f"Error deleting role: {e}")
|
|
525
|
+
|
|
526
|
+
# Delete the organization (if created)
|
|
527
|
+
if 'org_code' in locals():
|
|
528
|
+
try:
|
|
529
|
+
result = management.delete_organization(org_code)
|
|
530
|
+
print(f"Organization deleted: {result}")
|
|
531
|
+
except Exception as e:
|
|
532
|
+
print(f"Error deleting organization: {e}")
|
|
533
|
+
|
|
534
|
+
# Delete the user (if created)
|
|
535
|
+
if 'user_id' in locals():
|
|
536
|
+
try:
|
|
537
|
+
result = management.delete_user(user_id)
|
|
538
|
+
print(f"User deleted: {result}")
|
|
539
|
+
except Exception as e:
|
|
540
|
+
print(f"Error deleting user: {e}")
|
|
541
|
+
|
|
542
|
+
if __name__ == "__main__":
|
|
543
|
+
main()
|
|
544
|
+
|
|
545
|
+
```
|
|
546
|
+
|
|
547
|
+
## Publishing
|
|
548
|
+
|
|
549
|
+
The core team handles publishing.
|
|
550
|
+
|
|
551
|
+
## Contributing
|
|
552
|
+
|
|
553
|
+
Please refer to Kinde’s [contributing guidelines](https://github.com/kinde-oss/.github/blob/489e2ca9c3307c2b2e098a885e22f2239116394a/CONTRIBUTING.md).
|
|
554
|
+
|
|
555
|
+
## License
|
|
556
|
+
|
|
557
|
+
By contributing to Kinde, you agree that your contributions will be licensed under its MIT License.
|