Sha256: ee763ce7fbe2255ac9dad9e6d6db0c378348ade624a72b9085b652190b6fec3a

Contents?: true

Size: 971 Bytes

Versions: 3

Compression:

Stored size: 971 Bytes

Contents

module PaylocityWebService
  class Client
    module Companies
      CodeResources = %W(costCenter1 costCenter2 costCenter3 deductions earnings taxes paygrade positions)

      def company_schema
        get("/api/v2/companies/#{company_id}/openapi")
      end

      # Available Code Resources:
      # - costCenter1
      # - costCenter2
      # - costCenter3
      # - deductions
      # - earnings
      # - taxes
      # - paygrade
      # - positions
      def company_codes(code_resource)
        get("/api/v2/companies/#{company_id}/codes/#{code_resource}")
      end

      def code_resources
        CodeResources
      end

      # Paylocity hasn't provide a way to check the connectivity of the API, we have to fire a request to check it.
      def company_connected?
        return true if company_codes('costCenter1').status == 200
        return true if company_schema.code == 200
        false
      rescue => e
        false 
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
paylocity_web_service-0.2.4 lib/paylocity_web_service/client/companies.rb
paylocity_web_service-0.2.3 lib/paylocity_web_service/client/companies.rb
paylocity_web_service-0.2.1 lib/paylocity_web_service/client/companies.rb