async def delete_factor( self, userId, factorId ): """ Unenrolls an existing factor for the specified user, al lowing the user to enroll a new factor. Args: user_id {str} factor_id {str} """ http_method = "delete".upper() api_url = format_url(f""" {self._base_url} /api/v1/users/{userId}/factors/{factorId} """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers ) if error: return (None, error) response, error = await self._request_executor\ .execute(request) if error: return (response, error) return (response, None)
async def delete_inline_hook(self, inlineHookId): """ Deletes the Inline Hook matching the provided id. Once deleted, the Inline Hook is unrecoverable. As a safety precaution, only Inline Hooks with a status of INACTIVE are eligible for deletion. Args: inline_hook_id {str} """ http_method = "delete".upper() api_url = format_url(f""" {self._base_url} /api/v1/inlineHooks/{inlineHookId} """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers) if error: return (None, error) response, error = await self._request_executor\ .execute(request) if error: return (response, error) return (response, None)
async def deactivate_inline_hook(self, inlineHookId): """ Deactivates the Inline Hook matching the provided id Args: inline_hook_id {str} Returns: InlineHook """ http_method = "post".upper() api_url = format_url(f""" {self._base_url} /api/v1/inlineHooks/{inlineHookId}/lifecycle /deactivate """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers) if error: return (None, None, error) response, error = await self._request_executor\ .execute(request, InlineHook) if error: return (None, response, error) try: result = InlineHook(self.form_response_body(response.get_body())) except Exception as error: return (None, response, error) return (result, response, None)
async def deactivate_policy(self, policyId, keep_empty_params=False): """ Deactivates a policy. Args: policy_id {str} """ http_method = "post".upper() api_url = format_url(f""" {self._base_url} /api/v1/policies/{policyId}/lifecycle/deactivate """) body = {} headers = {} form = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers, form, keep_empty_params=keep_empty_params) if error: return (None, error) response, error = await self._request_executor\ .execute(request) if error: return (response, error) return (response, None)
async def list_event_hooks(self): """ Args: Returns: list: Collection of EventHook instances. """ http_method = "get".upper() api_url = format_url(f""" {self._base_url} /api/v1/eventHooks """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers) if error: return (None, None, error) response, error = await self._request_executor\ .execute(request, EventHook) if error: return (None, response, error) try: result = [] for item in response.get_body(): result.append(EventHook(self.form_response_body(item))) except Exception as error: return (None, response, error) return (result, response, None)
async def add_app_instance_target_to_app_admin_role_given_to_group( self, groupId, roleId, appName, applicationId): """ Add App Instance Target to App Administrator Role given to a Group Args: group_id {str} role_id {str} app_name {str} application_id {str} """ http_method = "put".upper() api_url = format_url(f""" {self._base_url} /api/v1/groups/{groupId}/roles/{roleId}/targets /catalog/apps/{appName}/{applicationId} """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers) if error: return (None, error) response, error = await self._request_executor\ .execute(request) if error: return (response, error) return (response, None)
async def refresh_session(self, sessionId): """ Method for /api/v1/sessions/{sessionId}/lifecycle/refresh Args: session_id {str} Returns: Session """ http_method = "post".upper() api_url = format_url(f""" {self._base_url} /api/v1/sessions/{sessionId}/lifecycle/refresh """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers) if error: return (None, None, error) response, error = await self._request_executor\ .execute(request, Session) if error: return (None, response, error) try: result = Session(self.form_response_body(response.get_body())) except Exception as error: return (None, response, error) return (result, response, None)
async def deactivate_origin(self, trustedOriginId): """ Args: trusted_origin_id {str} Returns: TrustedOrigin """ http_method = "post".upper() api_url = format_url(f""" {self._base_url} /api/v1/trustedOrigins/{trustedOriginId}/lifecycle /deactivate """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers) if error: return (None, None, error) response, error = await self._request_executor\ .execute(request, TrustedOrigin) if error: return (None, response, error) try: result = TrustedOrigin(self.form_response_body( response.get_body())) except Exception as error: return (None, response, error) return (result, response, None)
async def delete_identity_provider(self, idpId, keep_empty_params=False): """ Removes an IdP from your organization. Args: idp_id {str} """ http_method = "delete".upper() api_url = format_url(f""" {self._base_url} /api/v1/idps/{idpId} """) body = {} headers = {} form = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers, form, keep_empty_params=keep_empty_params) if error: return (None, error) response, error = await self._request_executor\ .execute(request) if error: return (response, error) return (response, None)
async def revoke_csr_for_identity_provider( self, idpId, csrId ): """ Revoke a Certificate Signing Request and delete the key pair from the IdP Args: idp_id {str} csr_id {str} """ http_method = "delete".upper() api_url = format_url(f""" {self._base_url} /api/v1/idps/{idpId}/credentials/csrs/{csrId} """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers ) if error: return (None, error) response, error = await self._request_executor\ .execute(request) if error: return (response, error) return (response, None)
async def delete_origin(self, trustedOriginId): """ Args: trusted_origin_id {str} """ http_method = "delete".upper() api_url = format_url(f""" {self._base_url} /api/v1/trustedOrigins/{trustedOriginId} """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers) if error: return (None, error) response, error = await self._request_executor\ .execute(request) if error: return (response, error) return (response, None)
async def delete_identity_provider_key( self, keyId ): """ Deletes a specific IdP Key Credential by `kid` if it is not currently being used by an Active or Inactive IdP. Args: key_id {str} """ http_method = "delete".upper() api_url = format_url(f""" {self._base_url} /api/v1/idps/credentials/keys/{keyId} """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers ) if error: return (None, error) response, error = await self._request_executor\ .execute(request) if error: return (response, error) return (response, None)
async def unlink_user_from_identity_provider( self, idpId, userId ): """ Removes the link between the Okta user and the IdP user . Args: idp_id {str} user_id {str} """ http_method = "delete".upper() api_url = format_url(f""" {self._base_url} /api/v1/idps/{idpId}/users/{userId} """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers ) if error: return (None, error) response, error = await self._request_executor\ .execute(request) if error: return (response, error) return (response, None)
async def update_org_logo(self, file, keep_empty_params=False): """ Updates the logo for your organization. Args: """ http_method = "post".upper() api_url = format_url(f""" {self._base_url} /api/v1/org/logo """) body = {} headers = {} form = { "file": file, } request, error = await self._request_executor.create_request( http_method, api_url, body, headers, form, keep_empty_params=keep_empty_params) if error: return (None, error) response, error = await self._request_executor\ .execute(request) if error: return (response, error) return (response, None)
async def get_role(self, groupId, roleId): """ Args: group_id {str} role_id {str} Returns: Role """ http_method = "get".upper() api_url = format_url(f""" {self._base_url} /api/v1/groups/{groupId}/roles/{roleId} """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers) if error: return (None, None, error) response, error = await self._request_executor\ .execute(request, Role) if error: return (None, response, error) try: result = Role(self.form_response_body(response.get_body())) except Exception as error: return (None, response, error) return (result, response, None)
async def delete_policy(self, policyId): """ Removes a policy. Args: policy_id {str} """ http_method = "delete".upper() api_url = format_url(f""" {self._base_url} /api/v1/policies/{policyId} """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers) if error: return (None, error) response, error = await self._request_executor\ .execute(request) if error: return (response, error) return (response, None)
async def remove_app_target_from_application_admin_role_given_to_group( self, groupId, roleId, appName): """ Args: group_id {str} role_id {str} app_name {str} """ http_method = "delete".upper() api_url = format_url(f""" {self._base_url} /api/v1/groups/{groupId}/roles/{roleId}/targets /catalog/apps/{appName} """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers) if error: return (None, error) response, error = await self._request_executor\ .execute(request) if error: return (response, error) return (response, None)
async def deactivate_policy_rule(self, policyId, ruleId): """ Deactivates a policy rule. Args: policy_id {str} rule_id {str} """ http_method = "post".upper() api_url = format_url(f""" {self._base_url} /api/v1/policies/{policyId}/rules/{ruleId} /lifecycle/deactivate """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers) if error: return (None, error) response, error = await self._request_executor\ .execute(request) if error: return (response, error) return (response, None)
async def add_group_target_to_group_administrator_role_for_group( self, groupId, roleId, targetGroupId): """ Method for /api/v1/groups/{groupId}/roles/{roleId}/targets/groups/ {targetGroupId} Args: group_id {str} role_id {str} target_group_id {str} """ http_method = "put".upper() api_url = format_url(f""" {self._base_url} /api/v1/groups/{groupId}/roles/{roleId}/targets /groups/{targetGroupId} """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers) if error: return (None, error) response, error = await self._request_executor\ .execute(request) if error: return (response, error) return (response, None)
async def add_user_to_group(self, groupId, userId): """ Adds a user to a group with 'OKTA_GROUP' type. Args: group_id {str} user_id {str} """ http_method = "put".upper() api_url = format_url(f""" {self._base_url} /api/v1/groups/{groupId}/users/{userId} """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers) if error: return (None, error) response, error = await self._request_executor\ .execute(request) if error: return (response, error) return (response, None)
async def end_session(self, sessionId): """ Method for /api/v1/sessions/{sessionId} Args: session_id {str} """ http_method = "delete".upper() api_url = format_url(f""" {self._base_url} /api/v1/sessions/{sessionId} """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers) if error: return (None, error) response, error = await self._request_executor\ .execute(request) if error: return (response, error) return (response, None)
async def deactivate_group_rule(self, ruleId): """ Deactivates a specific group rule by id from your organ ization Args: rule_id {str} """ http_method = "post".upper() api_url = format_url(f""" {self._base_url} /api/v1/groups/rules/{ruleId}/lifecycle/deactivate """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers) if error: return (None, error) response, error = await self._request_executor\ .execute(request) if error: return (response, error) return (response, None)
async def verify_event_hook(self, eventHookId): """ Args: event_hook_id {str} Returns: EventHook """ http_method = "post".upper() api_url = format_url(f""" {self._base_url} /api/v1/eventHooks/{eventHookId}/lifecycle/verify """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers) if error: return (None, None, error) response, error = await self._request_executor\ .execute(request, EventHook) if error: return (None, response, error) try: result = EventHook(self.form_response_body(response.get_body())) except Exception as error: return (None, response, error) return (result, response, None)
async def delete_group(self, groupId): """ Removes a group with `OKTA_GROUP` type from your organi zation. Args: group_id {str} """ http_method = "delete".upper() api_url = format_url(f""" {self._base_url} /api/v1/groups/{groupId} """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers) if error: return (None, error) response, error = await self._request_executor\ .execute(request) if error: return (response, error) return (response, None)
async def get_application_user_schema(self, appInstanceId): """ Fetches the Schema for an App User Args: app_instance_id {str} Returns: UserSchema """ http_method = "get".upper() api_url = format_url(f""" {self._base_url} /api/v1/meta/schemas/apps/{appInstanceId}/default """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers, keep_empty_params=True) if error: return (None, None, error) response, error = await self._request_executor\ .execute(request, UserSchema) if error: return (None, response, error) try: result = UserSchema(self.form_response_body(response.get_body())) except Exception as error: return (None, response, error) return (result, response, None)
async def get_group(self, groupId): """ Lists all group rules for your organization. Args: group_id {str} Returns: Group """ http_method = "get".upper() api_url = format_url(f""" {self._base_url} /api/v1/groups/{groupId} """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers) if error: return (None, None, error) response, error = await self._request_executor\ .execute(request, Group) if error: return (None, response, error) try: result = Group(self.form_response_body(response.get_body())) except Exception as error: return (None, response, error) return (result, response, None)
async def get_inline_hook(self, inlineHookId): """ Gets an inline hook by ID Args: inline_hook_id {str} Returns: InlineHook """ http_method = "get".upper() api_url = format_url(f""" {self._base_url} /api/v1/inlineHooks/{inlineHookId} """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers) if error: return (None, None, error) response, error = await self._request_executor\ .execute(request, InlineHook) if error: return (None, response, error) try: result = InlineHook(self.form_response_body(response.get_body())) except Exception as error: return (None, response, error) return (result, response, None)
async def remove_role_from_group(self, groupId, roleId): """ Unassigns a Role from a Group Args: group_id {str} role_id {str} """ http_method = "delete".upper() api_url = format_url(f""" {self._base_url} /api/v1/groups/{groupId}/roles/{roleId} """) body = {} headers = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers) if error: return (None, error) response, error = await self._request_executor\ .execute(request) if error: return (response, error) return (response, None)
async def delete_event_hook( self, eventHookId, keep_empty_params=False ): """ Args: event_hook_id {str} """ http_method = "delete".upper() api_url = format_url(f""" {self._base_url} /api/v1/eventHooks/{eventHookId} """) body = {} headers = {} form = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers, form, keep_empty_params=keep_empty_params ) if error: return (None, error) response, error = await self._request_executor\ .execute(request) if error: return (response, error) return (response, None)
async def delete_domain(self, domainId, keep_empty_params=False): """ Deletes a Domain by `id`. Args: domain_id {str} """ http_method = "delete".upper() api_url = format_url(f""" {self._base_url} /api/v1/domains/{domainId} """) body = {} headers = {} form = {} request, error = await self._request_executor.create_request( http_method, api_url, body, headers, form, keep_empty_params=keep_empty_params) if error: return (None, error) response, error = await self._request_executor\ .execute(request) if error: return (response, error) return (response, None)