Sha256: 75a9e491babab301e21d77c5761180e08372c16b5f006b8d2cc255531825925a
Contents?: true
Size: 711 Bytes
Versions: 13
Compression:
Stored size: 711 Bytes
Contents
# frozen_string_literal: true require "dry/monads" module Tana module API # A low-level API client for making basic HTTP requests. class Client include Import[:configuration, :http] include Dry::Monads[:result] def post path, body = nil, **parameters call __method__, path, json: body, params: parameters end private def call method, path, **options http.auth("Bearer #{configuration.token}") .headers(accept: configuration.accept) .public_send(method, "#{configuration.url}/#{path}", options) .then { |response| response.status.success? ? Success(response) : Failure(response) } end end end end
Version data entries
13 entries across 13 versions & 1 rubygems