Module: Descope::Api::V1::Management::Tenant
- Includes:
- Common, Mixins::Validation
- Included in:
- Descope::Api::V1::Management
- Defined in:
- lib/descope/api/v1/management/tenant.rb
Overview
Management API calls
Constant Summary
Constants included from Common
Common::ACCESS_KEYS_SEARCH_PATH, Common::ACCESS_KEY_ACTIVATE_PATH, Common::ACCESS_KEY_CREATE_PATH, Common::ACCESS_KEY_DEACTIVATE_PATH, Common::ACCESS_KEY_DELETE_PATH, Common::ACCESS_KEY_LOAD_PATH, Common::ACCESS_KEY_UPDATE_PATH, Common::AUDIT_CREATE_EVENT, Common::AUDIT_SEARCH, Common::AUTHZ_NS_DELETE, Common::AUTHZ_NS_SAVE, Common::AUTHZ_RD_DELETE, Common::AUTHZ_RD_SAVE, Common::AUTHZ_RE_CREATE, Common::AUTHZ_RE_DELETE, Common::AUTHZ_RE_DELETE_RESOURCES, Common::AUTHZ_RE_HAS_RELATIONS, Common::AUTHZ_RE_RESOURCE, Common::AUTHZ_RE_TARGETS, Common::AUTHZ_RE_TARGET_ALL, Common::AUTHZ_RE_WHO, Common::AUTHZ_SCHEMA_DELETE, Common::AUTHZ_SCHEMA_LOAD, Common::AUTHZ_SCHEMA_SAVE, Common::FLOW_EXPORT_PATH, Common::FLOW_IMPORT_PATH, Common::FLOW_LIST_PATH, Common::GROUP_LOAD_ALL_FOR_MEMBER_PATH, Common::GROUP_LOAD_ALL_GROUP_MEMBERS_PATH, Common::GROUP_LOAD_ALL_PATH, Common::PASSWORD_SETTINGS_PATH, Common::PERMISSION_CREATE_PATH, Common::PERMISSION_DELETE_PATH, Common::PERMISSION_LOAD_ALL_PATH, Common::PERMISSION_UPDATE_PATH, Common::PROJECT_CLONE, Common::PROJECT_DELETE_PATH, Common::PROJECT_EXPORT_PATH, Common::PROJECT_IMPORT_PATH, Common::PROJECT_UPDATE_NAME, Common::ROLE_CREATE_PATH, Common::ROLE_DELETE_PATH, Common::ROLE_LOAD_ALL_PATH, Common::ROLE_SEARCH_PATH, Common::ROLE_UPDATE_PATH, Common::SCIM_GROUPS_PATH, Common::SCIM_RESOURCE_TYPES_PATH, Common::SCIM_SERVICE_PROVIDER_CONFIG_PATH, Common::SCIM_USERS_PATH, Common::SSO_APPLICATION_DELETE_PATH, Common::SSO_APPLICATION_LOAD_ALL_PATH, Common::SSO_APPLICATION_LOAD_PATH, Common::SSO_APPLICATION_OIDC_CREATE_PATH, Common::SSO_APPLICATION_OIDC_UPDATE_PATH, Common::SSO_APPLICATION_SAML_CREATE_PATH, Common::SSO_APPLICATION_SAML_UPDATE_PATH, Common::SSO_CONFIGURE_OIDC_SETTINGS_PATH, Common::SSO_CONFIGURE_SAML_METADATA_PATH, Common::SSO_CONFIGURE_SAML_SETTINGS_PATH, Common::SSO_LOAD_SETTINGS_PATH, Common::SSO_MAPPING_PATH, Common::SSO_METADATA_PATH, Common::SSO_OIDC_PATH, Common::SSO_SETTINGS_PATH, Common::TENANT_CREATE_PATH, Common::TENANT_DELETE_PATH, Common::TENANT_LOAD_ALL_PATH, Common::TENANT_LOAD_PATH, Common::TENANT_SEARCH_ALL_PATH, Common::TENANT_UPDATE_PATH, Common::TEST_USERS_SEARCH_PATH, Common::TEST_USER_CREATE_PATH, Common::THEME_EXPORT_PATH, Common::THEME_IMPORT_PATH, Common::UPDATE_JWT_PATH, Common::USERS_SEARCH_PATH, Common::USER_ADD_ROLE_PATH, Common::USER_ADD_TENANT_PATH, Common::USER_CREATE_BATCH_PATH, Common::USER_CREATE_PATH, Common::USER_DELETE_ALL_TEST_USERS_PATH, Common::USER_DELETE_PATH, Common::USER_EXPIRE_PASSWORD_PATH, Common::USER_GENERATE_EMBEDDED_LINK_PATH, Common::USER_GENERATE_ENCHANTED_LINK_FOR_TEST_PATH, Common::USER_GENERATE_MAGIC_LINK_FOR_TEST_PATH, Common::USER_GENERATE_OTP_FOR_TEST_PATH, Common::USER_GET_PROVIDER_TOKEN, Common::USER_LOAD_PATH, Common::USER_LOGOUT_PATH, Common::USER_PATCH_PATH, Common::USER_REMOVE_ROLE_PATH, Common::USER_REMOVE_TENANT_PATH, Common::USER_SEARCH_PATH, Common::USER_SET_ACTIVE_PASSWORD_PATH, Common::USER_SET_PASSWORD_PATH, Common::USER_SET_TEMPORARY_PASSWORD_PATH, Common::USER_UPDATE_CUSTOM_ATTRIBUTE_PATH, Common::USER_UPDATE_EMAIL_PATH, Common::USER_UPDATE_LOGIN_ID_PATH, Common::USER_UPDATE_NAME_PATH, Common::USER_UPDATE_PATH, Common::USER_UPDATE_PHONE_PATH, Common::USER_UPDATE_PICTURE_PATH, Common::USER_UPDATE_STATUS_PATH
Constants included from Mixins::Common
Mixins::Common::COOKIE_DATA_NAME, Mixins::Common::DEFAULT_BASE_URL, Mixins::Common::DEFAULT_JWT_VALIDATION_LEEWAY, Mixins::Common::DEFAULT_TIMEOUT_SECONDS, Mixins::Common::PHONE_REGEX, Mixins::Common::REDIRECT_LOCATION_COOKIE_NAME, Mixins::Common::REFRESH_SESSION_COOKIE_NAME, Mixins::Common::REFRESH_SESSION_TOKEN_NAME, Mixins::Common::SESSION_COOKIE_NAME, Mixins::Common::SESSION_TOKEN_NAME
Instance Method Summary collapse
- #create_tenant(name: nil, id: nil, self_provisioning_domains: nil, custom_attributes: nil) ⇒ Object
- #delete_tenant(id = nil) ⇒ Object
- #load_all_tenants ⇒ Object
- #load_tenant(id = nil) ⇒ Object
- #search_all_tenants(ids: nil, names: nil, self_provisioning_domains: nil, custom_attributes: nil) ⇒ Object
- #update_tenant(name: nil, id: nil, self_provisioning_domains: nil, custom_attributes: nil) ⇒ Object
Methods included from Common
#associated_tenants_to_hash_array
Methods included from Mixins::Validation
#validate_code, #validate_email, #validate_login_id, #validate_password, #validate_phone, #validate_redirect_url, #validate_refresh_token_not_nil, #validate_scim_group_id, #validate_tenant, #validate_tenants, #validate_token_not_empty, #validate_user_id, #verify_provider
Methods included from Mixins::Common
#deep_copy, #get_method_string
Instance Method Details
#create_tenant(name: nil, id: nil, self_provisioning_domains: nil, custom_attributes: nil) ⇒ Object
13 14 15 16 17 18 19 20 21 |
# File 'lib/descope/api/v1/management/tenant.rb', line 13 def create_tenant(name: nil, id: nil, self_provisioning_domains: nil, custom_attributes: nil) # Create a new tenant with the given name. Tenant IDs are provisioned automatically, but can be provided # explicitly if needed. Both the name and ID must be unique per project. # @see https://docs.descope.com/api/openapi/tenantmanagement/operation/CreateTenant/ self_provisioning_domains ||= [] custom_attributes ||= {} post(TENANT_CREATE_PATH, compose_tenant_create_update_body(name, id, self_provisioning_domains, custom_attributes)) end |
#delete_tenant(id = nil) ⇒ Object
32 33 34 35 |
# File 'lib/descope/api/v1/management/tenant.rb', line 32 def delete_tenant(id = nil) # Delete an existing tenant. IMPORTANT: This action is irreversible. Use carefully. post(TENANT_DELETE_PATH, { id: }) end |
#load_all_tenants ⇒ Object
42 43 44 45 |
# File 'lib/descope/api/v1/management/tenant.rb', line 42 def load_all_tenants # Load all tenants. get(TENANT_LOAD_ALL_PATH) end |
#load_tenant(id = nil) ⇒ Object
37 38 39 40 |
# File 'lib/descope/api/v1/management/tenant.rb', line 37 def load_tenant(id = nil) # Load tenant by id. get(TENANT_LOAD_PATH, { id: }) end |
#search_all_tenants(ids: nil, names: nil, self_provisioning_domains: nil, custom_attributes: nil) ⇒ Object
47 48 49 50 51 52 53 54 55 56 |
# File 'lib/descope/api/v1/management/tenant.rb', line 47 def search_all_tenants(ids: nil, names: nil, self_provisioning_domains: nil, custom_attributes: nil) # Search all tenants. request_params = { ids:, names:, selfProvisioningDomains: self_provisioning_domains, customAttributes: custom_attributes } post(TENANT_SEARCH_ALL_PATH, request_params) end |
#update_tenant(name: nil, id: nil, self_provisioning_domains: nil, custom_attributes: nil) ⇒ Object
23 24 25 26 27 28 29 30 |
# File 'lib/descope/api/v1/management/tenant.rb', line 23 def update_tenant(name: nil, id: nil, self_provisioning_domains: nil, custom_attributes: nil) # Update an existing tenant with the given name and domains. IMPORTANT: All parameters are used as overrides # to the existing tenant. Empty fields will override populated fields. Use carefully. # @see https://docs.descope.com/api/openapi/tenantmanagement/operation/UpdateTenant/ self_provisioning_domains ||= [] custom_attributes ||= {} post(TENANT_UPDATE_PATH, compose_tenant_create_update_body(name, id, self_provisioning_domains, custom_attributes)) end |