module Bigcommerce::Connection

Constants

HEADERS

Public Class Methods

build(config) click to toggle source
# File lib/bigcommerce/connection.rb, line 10
def self.build(config)
  ssl_options = config.ssl || {}
  Faraday.new(url: config.api_url, ssl: ssl_options) do |conn|
    conn.request :json
    conn.headers = HEADERS
    if config.auth == 'legacy'
      conn.use Faraday::Request::BasicAuthentication, config.username, config.api_key
    else
      conn.use Bigcommerce::Middleware::Auth, config
    end
    conn.use Bigcommerce::Middleware::HttpException
    conn.use FaradayMiddleware::Gzip
    conn.adapter Faraday.default_adapter
  end
end