Sha256: 54a14e73b13f541e29679b32f5befa51fe3be6a8d07d0860c045ab7e1ae40ca0

Contents?: true

Size: 1.86 KB

Versions: 6

Compression:

Stored size: 1.86 KB

Contents

# frozen_string_literal: true

require_relative "base_client"

module PortalConnectors
  class SsoClient < BaseClient
    def intercom_id_by_team
      params = {
        nonce: next_nonce
      }
      url = "#{host}/api/v1/admin_users/intercom_id_by_team"
      res = get_with_signature(url, params)
      [JSON.parse(res.body_str), [200, 201].include?(res.response_code)]
    rescue StandardError => e
      return_error e
    end

    def disable_admin(email, reason=nil)
      params = {
        nonce: next_nonce,
        admin_user_email: email,
        reason: reason
      }
      url = "#{host}/api/v1/admin_users/disable"
      res = post_with_signature(url, params)
      [JSON.parse(res.body_str), [200, 201].include?(res.response_code)]
    rescue StandardError => e
      return_error e
    end

    def enable_admin(email, reason=nil)
      params = {
        nonce: next_nonce,
        admin_user_email: email,
        reason: reason
      }
      url = "#{host}/api/v1/admin_users/enable"
      res = post_with_signature(url, params)
      [JSON.parse(res.body_str), [200, 201].include?(res.response_code)]
    rescue StandardError => e
      return_error e
    end

    def verify_otp(email, token)
      params = {
        nonce: next_nonce,
        admin_user_email: email,
        token: token
      }
      url = "#{host}/api/v1/admin_users/verify_otp"
      res = post_with_signature(url, params)
      [JSON.parse(res.body_str), [200, 201].include?(res.response_code)]
    rescue StandardError => e
      return_error e
    end

    def slack_username2vivifyscrum_id
      params = {
        nonce: next_nonce
      }
      url = "#{host}/api/v1/admin_users/slack_username2vivifyscrum_id"
      res = get_with_signature(url, params)
      [JSON.parse(res.body_str), [200, 201].include?(res.response_code)]
    rescue StandardError => e
      return_error e
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
portal-connectors-0.58.39xc lib/portal-connectors/sso_client.rb
portal-connectors-0.58.39xb lib/portal-connectors/sso_client.rb
portal-connectors-0.58.39xa lib/portal-connectors/sso_client.rb
portal-connectors-0.58.39fj lib/portal-connectors/sso_client.rb
portal-connectors-0.58.39fg lib/portal-connectors/sso_client.rb
portal-connectors-0.58.38xn lib/portal-connectors/sso_client.rb