Metadata-Version: 2.1
Name: PyBambooHR
Version: 0.8.1
Summary: A Python wrapper for the Bamboo HR API
Home-page: http://github.com/smeggingsmegger/PyBambooHR
Author: Scott Blevins
Author-email: sblevins@gmail.com
License: MIT
Description: # PyBambooHR
        
        [![Build Status](https://secure.travis-ci.org/smeggingsmegger/PyBambooHR.png)](https://travis-ci.org/smeggingsmegger/PyBambooHR)&nbsp;&nbsp;&nbsp;![Download Stats](https://pypip.in/download/PyBambooHR/badge.svg)
        
        This is an unofficial Python API for Bamboo HR. So far it is focusing on managing employee information but you can pretty much do anything you want with a little python.
        
        The library makes use of the [requests](http://docs.python-requests.org/en/latest/) library for Python and [HTTPretty](https://github.com/gabrielfalcao/HTTPretty) for testing. A huge thank you to both of those excellent projects.
        
        Using this library is very simple:
        
        ```python
        from PyBambooHR import PyBambooHR
        
        bamboo = PyBambooHR(subdomain='yoursub', api_key='yourapikeyhere')
        
        employees = bamboo.get_employee_directory()
        ```
        
        (Note that you have to enable sharing employee directory to use that method.)
        
        This will give you a list of employees with properties on each including their ID.
        
        
        ```python
        from PyBambooHR import PyBambooHR
        
        bamboo = PyBambooHR(subdomain='yoursub', api_key='yourapikeyhere')
        
        # Jim's employee ID is 123 and we are not specifying fields so this will get all of them.
        jim = bamboo.get_employee(123)
        
        # Pam's employee ID is 222 and we are specifying fields so this will get only the ones we request.
        pam = bamboo.get_employee(222, ['city', 'workPhone', 'workEmail'])
        
        ```
        
        Adding an employee
        
        ```python
        from PyBambooHR import PyBambooHR
        
        bamboo = PyBambooHR(subdomain='yoursub', api_key='yourapikeyhere')
        
        # The firstName and lastName keys are required...
        employee = {'firstName': 'Test', 'lastName': 'Person'}
        
        result = bamboo.add_employee(employee)
        
        The result dict will contain id and location. "id" is the numerical BambooHR employee ID. Location is a link to that employee.
        
        ```
        
        Updating an employee
        
        ```python
        from PyBambooHR import PyBambooHR
        
        bamboo = PyBambooHR(subdomain='yoursub', api_key='yourapikeyhere')
        
        # His name was test person...
        employee = {'firstName': 'Another', 'lastName': 'Namenow'}
        
        # Use the ID and then the dict with the new information
        result = bamboo.update_employee(333, employee)
        
        result will be True or False depending on if it succeeded.
        
        ```
        
        Requesting a Report
        
        ```python
        from PyBambooHR import PyBambooHR
        
        bamboo = PyBambooHR(subdomain='yoursub', api_key='yourapikeyhere')
        
        # Use the ID to request json information
        result = bamboo.request_company_report(1, format='json', filter_duplicates=True)
        
        # Now do stuff with your results (Will vary by report.)
        for employee in result['employees']:
            print(employee)
        
        # Use the ID and save a pdf:
        result = bamboo.request_company_report(1, format='pdf', output_file='/tmp/report.pdf', filter_duplicates=True)
        
        ```
        Getting information that is scheduled in the future
        ```python
        from PyBambooHR import PyBambooHR
        
        bamboo = PyBambooHR(subdomain='yoursub', api_key='yourapikeyhere', only_current=False)
        
        ```
        BambooHR has effective dates for when promotions are scheduled to happen or when new hires are going to join the organization. In order to see these events before they happen using the BambooHR API set `only_current` to `False`. As a note, this only works for pulling reports and getting employee information. This does not work on getting the employee directory.
        
        CHANGES
        =======
        Version 0.4.2 - 03 October 2014
        
          * Added row_id to row dictionary to keep track of them in case we need them.
        
        Version 0.3.6 - 03 October 2014
        
          * Improvements by Ng Zhi An
        
        Version 0.3.1 - 24 February 2014
        
          * Raise errors on non-200 statuses
        
        Version 0.3.0 - 23 February 2014
        
          * Company Reports
          * Custom Reports
        
        Version 0.2.0 - 05 October 2013
        
          * Underscore key support
          * Better test coverage
        
        Version 0.1.0 - 02 October 2013
        
          * Pre-Alpha version
          * Uses Bamboo HR API to get employee info.
        
Keywords: Bamboo,HR,BambooHR,API
Platform: OS Independent
Classifier: Development Status :: 3 - Alpha
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 2.7
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Description-Content-Type: text/markdown
