Sha256: 1dc7686aff9d4cd49722232e8b7853694dd7a935cd4f11cc9708b29b19126bbd

Contents?: true

Size: 611 Bytes

Versions: 9

Compression:

Stored size: 611 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}.desk.com"+api_path
    end

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

    include Connection
    include Request
    include Authentication
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
desk-1.0.8 lib/desk/api.rb
desk-1.0.7 lib/desk/api.rb
desk-1.0.6 lib/desk/api.rb
desk-1.0.5 lib/desk/api.rb
desk-1.0.4 lib/desk/api.rb
desk-1.0.3 lib/desk/api.rb
desk-1.0.2 lib/desk/api.rb
desk-1.0.1 lib/desk/api.rb
desk-1.0.0 lib/desk/api.rb