Project

paperdrive

0.0
No commit activity in last 3 years
No release in over 3 years
Unofficial Ruby wrapper for the Pipedrive API
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 1.16
~> 10.0
~> 3.0
~> 0.62.0
>= 0

Runtime

 Project Readme

Paperdrive

Paperdrive is the unofficial Pipedrive API wrapper gem.

One day, when I was a kid, I was exploring an old disused outhouse. After a short time search, I found an old computer, which is coated with dust. As I was cleaning it with care, suddenly a ghost did appear from the computer. According to the ghost's statement, He was a programmer in his time, Heian period. And then he said, "You should develop a Pipedrive API wrapper library for Ruby." This is why I developed this.

Installation

Add this line to your application's Gemfile (Recommended):

gem 'paperdrive'
$ bundle install

Or install it on your global:

$ gem install paperdrive

Document

YARD doc

Usage

First, you should get API Token from Pipedrive dashboard.

Then,

require 'paperdrive'

client = Paperdrive::Client.new(token: 'your_token_here')
# or setting token to ENV['PAPERDRIVE_TOKEN'] and you can initialize with `Paperdrive::Client.new`.

response = client.all_activities(user_id: 1, done: 1)
# => #<Paperdrive::Response> 

pp response
# =>
# #<Paperdrive::Response:0x00007ff811221b70
# @body=
#   {"success"=>true,
#    "data"=>
#      [{"id"=>0,
#        "company_id"=>000000,
#        "user_id"=>000000,
#        "done"=>false,
#        "type"=>"call",
#        "reference_type"=>nil,
#        "reference_id"=>nil,
#        "due_date"=>"2019-01-08",
#        "due_time"=>"",
#        "duration"=>"",
#        "add_time"=>"2019-01-08 20:28:31",
#        "marked_as_done_time"=>"",
#        "last_notification_time"=>nil,
#        "last_notification_user_id"=>nil,
#        "notification_language_id"=>nil,
#        "subject"=>"Call",
#        ...

response.success? #=> true

See Paperdrive::Client instance methods list here (document)

Development

Now developing, I appreciate your help.

TODO

There are few APIs (mainly related to uploading files) still not wrapped.

  • Activities (implemented)

  • ActivityFields (implemented)

  • ActivityTypes (implemented)

  • Authorizations

  • Currencies (implemented)

  • Deals (implemented)

  • DealFields (implemented)

  • Files

  • Filters (implemented)

  • GlobalMessages (implemented)

  • MailMessages (implemented)

  • MailThreads (implemented)

  • Notes (implemented)

  • NoteFields (implemented)

  • OrganizationFields (implemented)

  • Organizations (implemented)

  • OrganizationRelationships (implemented)

  • PermissionSets (implemented)

  • Persons (almost implemented)

  • PersonFields (implemented)

  • Pipelines (implemented)

  • Products (implemented)

  • ProductFields (implemented)

  • Recents (implemented)

  • Roles (implemented)

  • SearchResults (implemented)

  • Stages (implemented)

  • Users (implemented)

  • UserConnections (implemented)

  • UserSettings (implemented)

  • Webhooks (implemented)

  • specs

Contributing

Issue/Pull Request Please