class StytchB2B::Organizations::Members

def create(

def create(
  organization_id:,
  email_address:,
  name: nil,
  trusted_metadata: nil,
  untrusted_metadata: nil,
  create_member_as_pending: nil,
  is_breakglass: nil
)
  request = {
    organization_id: organization_id,
    email_address: email_address
  }
  request[:name] = name unless name.nil?
  request[:trusted_metadata] = trusted_metadata unless trusted_metadata.nil?
  request[:untrusted_metadata] = untrusted_metadata unless untrusted_metadata.nil?
  request[:create_member_as_pending] = create_member_as_pending unless create_member_as_pending.nil?
  request[:is_breakglass] = is_breakglass unless is_breakglass.nil?
  post_request("/v1/b2b/organizations/#{organization_id}/members", request)
end

def delete(

def delete(
  organization_id:,
  member_id:
)
  delete_request("/v1/b2b/organizations/#{organization_id}/members/#{member_id}")
end

def get(

def get(
  organization_id:,
  member_id: nil,
  email_address: nil
)
  query_params = {
    organization_id: organization_id,
    member_id: member_id,
    email_address: email_address
  }
  request = request_with_query_params("/v1/b2b/organizations/#{organization_id}/member", query_params)
  get_request(request)
end

def initialize(connection)

def initialize(connection)
  @connection = connection
end

def organizations_delete_password(

def organizations_delete_password(
  organization_id:,
  member_password_id:
)
  delete_request("/v1/b2b/organizations/#{organization_id}/members/passwords/#{member_password_id}")
end

def search(

def search(
  organization_ids:,
  cursor: nil,
  limit: nil,
  query: nil
)
  request = {
    organization_ids: organization_ids
  }
  request[:cursor] = cursor unless cursor.nil?
  request[:limit] = limit unless limit.nil?
  request[:query] = query unless query.nil?
  post_request('/v1/b2b/organizations/members/search', request)
end

def update(

def update(
  organization_id:,
  member_id:,
  name: nil,
  trusted_metadata: nil,
  untrusted_metadata: nil,
  is_breakglass: nil
)
  request = {
    organization_id: organization_id,
    member_id: member_id
  }
  request[:name] = name unless name.nil?
  request[:trusted_metadata] = trusted_metadata unless trusted_metadata.nil?
  request[:untrusted_metadata] = untrusted_metadata unless untrusted_metadata.nil?
  request[:is_breakglass] = is_breakglass unless is_breakglass.nil?
  put_request("/v1/b2b/organizations/#{organization_id}/members/#{member_id}", request)
end