module PandaDoc::Document

Public Instance Methods

create(data) click to toggle source
# File lib/panda_doc/document.rb, line 15
def create(data)
  respond(ApiClient.request(:post, "/documents", **data))
end
details(uuid) click to toggle source
# File lib/panda_doc/document.rb, line 34
def details(uuid)
  respond(ApiClient.request(:get, "/documents/#{uuid}/details"))
end
download(uuid) click to toggle source
# File lib/panda_doc/document.rb, line 49
def download(uuid)
  stream(ApiClient.request(:get, "/documents/#{uuid}/download"))
end
find(uuid) click to toggle source
# File lib/panda_doc/document.rb, line 30
def find(uuid)
  respond(ApiClient.request(:get, "/documents/#{uuid}"))
end
list(**options) click to toggle source

@param options [Hash]

# File lib/panda_doc/document.rb, line 8
def list(**options)
  respond(
    ApiClient.request(:get, "/documents", **options),
    type: :documents_list
  )
end
move_to_draft(uuid) click to toggle source
# File lib/panda_doc/document.rb, line 38
def move_to_draft(uuid)
  respond(ApiClient.request(:post, "/documents/#{uuid}/draft"))
end
send(uuid, **data) click to toggle source
# File lib/panda_doc/document.rb, line 26
def send(uuid, **data)
  respond(ApiClient.request(:post, "/documents/#{uuid}/send", **data))
end
session(uuid, **data) click to toggle source
# File lib/panda_doc/document.rb, line 42
def session(uuid, **data)
  respond(
    ApiClient.request(:post, "/documents/#{uuid}/session", **data),
    type: :session
  )
end
update(uuid, **data) click to toggle source
# File lib/panda_doc/document.rb, line 19
def update(uuid, **data)
  respond(
    ApiClient.request(:patch, "/documents/#{uuid}", **data),
    type: :empty
  )
end

Private Instance Methods

failure(response) click to toggle source
# File lib/panda_doc/document.rb, line 69
def failure(response)
  raise FailureResult.new(response) unless response.success?
end
respond(response, type: :document) click to toggle source
# File lib/panda_doc/document.rb, line 55
def respond(response, type: :document)
  failure(response)

  SuccessResult.new(
    ResponseFactory.build(type).new(response.body)
  )
end
stream(response) click to toggle source
# File lib/panda_doc/document.rb, line 63
def stream(response)
  failure(response)

  SuccessResult.new(response)
end