Sha256: c5ea70916b5336888caf99494408111b377a49398e463febd68b1a0ca40785fa

Contents?: true

Size: 731 Bytes

Versions: 4

Compression:

Stored size: 731 Bytes

Contents

# frozen_string_literal: true

require 'faraday'

module CustomerioAPI
  class V2Client
    BASE_URL = 'https://track.customer.io/api/v2/'
    attr_reader :site_id, :track_api_key, :adapter

    def initialize(site_id:, track_api_key:, adapter: Faraday.default_adapter)
      @track_api_key = track_api_key
      @site_id = site_id
      @adapter = adapter
    end

    def track
      TrackResource.new(self)
    end

    def connection
      @connection ||= Faraday.new do |conn|
        conn.url_prefix = BASE_URL
        conn.request :json
        conn.response :json, content_type: 'application/json'
        conn.adapter adapter
        conn.request :authorization, :basic, site_id, track_api_key
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
customerio_api-0.5.0 lib/customerio_api/v2_client.rb
customerio_api-0.4.0 lib/customerio_api/v2_client.rb
customerio_api-0.3.0 lib/customerio_api/v2_client.rb
customerio_api-0.2.0 lib/customerio_api/v2_client.rb