Sha256: 60e8058a8f66c6804a363a84ae6751a73872b54426bd76599a0d5ac892d62865

Contents?: true

Size: 617 Bytes

Versions: 5

Compression:

Stored size: 617 Bytes

Contents

require 'desk/connection'
require 'desk/request'
require 'desk/authentication'

module Desk
  # @private
  class API
    # @private
    attr_accessor *Configuration::VALID_OPTIONS_KEYS

    # Creates a new API
    def initialize(options={})
      options = Desk.options.merge(options)

      Configuration::VALID_OPTIONS_KEYS.each do |key|
        send("#{key}=", options[key])
      end
    end

    def endpoint
      "https://#{self.subdomain}.#{self.domain}"+api_path
    end

    def api_path
      "/api/#{self.version}/"
    end

    include Connection
    include Request
    include Authentication
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
desk-1.2.0 lib/desk/api.rb
desk-1.1.1 lib/desk/api.rb
desk-1.1.0 lib/desk/api.rb
desk-1.0.10 lib/desk/api.rb
desk-1.0.9 lib/desk/api.rb