Matt Whisenhunt | 3c2c805 | 2018-04-13 10:03:46 -0700 | [diff] [blame] | 1 | # Google API Client |
Dan O'Meara | 9c203d3 | 2017-07-07 09:03:31 -0700 | [diff] [blame] | 2 | |
Sander Brauwers | 729d9ae | 2018-12-13 19:28:04 +0100 | [diff] [blame] | 3 | [](https://badge.fury.io/py/google-api-python-client) |
| 4 | |
Bu Sun Kim | c977304 | 2019-07-17 14:03:17 -0700 | [diff] [blame] | 5 | This is the Python client library for Google's discovery based APIs. To get started, please see the [docs folder](docs/README.md). |
John Asmuth | 2fefc4c | 2014-04-24 16:13:05 -0400 | [diff] [blame] | 6 | |
Matt Whisenhunt | 3c2c805 | 2018-04-13 10:03:46 -0700 | [diff] [blame] | 7 | These client libraries are officially supported by Google. However, the libraries are considered complete and are in maintenance mode. This means that we will address critical bugs and security issues but will not add any new features. |
| 8 | |
Grant Timmerman | 5c11b0a | 2019-06-26 07:39:48 -0700 | [diff] [blame] | 9 | ## Documentation |
| 10 | |
| 11 | See the [docs folder](docs/README.md) for more detailed instructions and additional documentation. |
| 12 | |
Kamil Breguła | 4114485 | 2020-03-20 22:42:50 +0100 | [diff] [blame] | 13 | ## Other Google API libraries |
Matt Whisenhunt | 3c2c805 | 2018-04-13 10:03:46 -0700 | [diff] [blame] | 14 | |
Kamil Breguła | 4c84c2c | 2020-01-27 18:10:19 +0100 | [diff] [blame] | 15 | For Google Cloud Platform APIs such as Datastore, Cloud Storage or Pub/Sub, we recommend using [Cloud Client Libraries for Python](https://github.com/GoogleCloudPlatform/google-cloud-python). |
| 16 | |
| 17 | For Google Ads API, we recommend using [Google Ads API Client Library for Python](https://github.com/googleads/google-ads-python/). |
Joe Gregorio | 8097e2a | 2011-05-17 11:11:34 -0400 | [diff] [blame] | 18 | |
Kamil Breguła | 4114485 | 2020-03-20 22:42:50 +0100 | [diff] [blame] | 19 | For Google Firebase Admin API, we recommend using [Firebase Admin Python SDK](https://github.com/firebase/firebase-admin-python). |
| 20 | |
Grant Timmerman | 5c11b0a | 2019-06-26 07:39:48 -0700 | [diff] [blame] | 21 | ## Installation |
| 22 | |
Bu Sun Kim | e85af68 | 2019-10-22 13:45:38 -0700 | [diff] [blame] | 23 | Install this library in a [virtualenv](https://virtualenv.pypa.io/en/latest/) using pip. virtualenv is a tool to |
| 24 | create isolated Python environments. The basic problem it addresses is one of |
| 25 | dependencies and versions, and indirectly permissions. |
Joe Gregorio | 46675d2 | 2012-06-20 12:15:24 -0400 | [diff] [blame] | 26 | |
Bu Sun Kim | e85af68 | 2019-10-22 13:45:38 -0700 | [diff] [blame] | 27 | With virtualenv, it's possible to install this library without needing system |
| 28 | install permissions, and without clashing with the installed system |
| 29 | dependencies. |
| 30 | |
| 31 | ### Mac/Linux |
| 32 | |
| 33 | ``` |
| 34 | pip install virtualenv |
| 35 | virtualenv <your-env> |
| 36 | source <your-env>/bin/activate |
| 37 | <your-env>/bin/pip install google-api-python-client |
Michael Mattioli | b2b518f | 2014-07-14 00:48:04 -0400 | [diff] [blame] | 38 | ``` |
Grant Timmerman | 5c11b0a | 2019-06-26 07:39:48 -0700 | [diff] [blame] | 39 | |
Bu Sun Kim | e85af68 | 2019-10-22 13:45:38 -0700 | [diff] [blame] | 40 | ### Windows |
Grant Timmerman | 5c11b0a | 2019-06-26 07:39:48 -0700 | [diff] [blame] | 41 | |
Bu Sun Kim | e85af68 | 2019-10-22 13:45:38 -0700 | [diff] [blame] | 42 | ``` |
| 43 | pip install virtualenv |
| 44 | virtualenv <your-env> |
| 45 | <your-env>\Scripts\activate |
| 46 | <your-env>\Scripts\pip.exe install google-api-python-client |
Michael Mattioli | b2b518f | 2014-07-14 00:48:04 -0400 | [diff] [blame] | 47 | ``` |
Tom Miller | 7c95d81 | 2010-10-11 11:50:52 -0700 | [diff] [blame] | 48 | |
Grant Timmerman | 5c11b0a | 2019-06-26 07:39:48 -0700 | [diff] [blame] | 49 | ## Supported Python Versions |
Joe Gregorio | 48d361f | 2010-08-18 13:19:21 -0400 | [diff] [blame] | 50 | |
Bu Sun Kim | a1d6998 | 2020-04-21 10:36:51 -0700 | [diff] [blame] | 51 | Python 3.5, 3.6 and 3.7, and 3.8 are fully supported and tested. This library may work on later versions of 3, but we do not currently run tests against those versions |
Christopher Wilcox | 8f4a530 | 2018-12-14 12:24:44 -0800 | [diff] [blame] | 52 | |
Grant Timmerman | 5c11b0a | 2019-06-26 07:39:48 -0700 | [diff] [blame] | 53 | ## Deprecated Python Versions |
| 54 | |
Christopher Wilcox | 8f4a530 | 2018-12-14 12:24:44 -0800 | [diff] [blame] | 55 | Python == 2.7 |
Jay Lee | 9cd0eb0 | 2014-09-12 07:15:11 -0400 | [diff] [blame] | 56 | |
Grant Timmerman | 5c11b0a | 2019-06-26 07:39:48 -0700 | [diff] [blame] | 57 | ## Third Party Libraries and Dependencies |
| 58 | |
Michael Mattioli | b2b518f | 2014-07-14 00:48:04 -0400 | [diff] [blame] | 59 | The following libraries will be installed when you install the client library: |
Luis Nell | 4859b14 | 2016-08-01 18:43:35 +0200 | [diff] [blame] | 60 | * [httplib2](https://github.com/httplib2/httplib2) |
Simon Weber | c952fd0 | 2016-10-13 12:48:44 -0400 | [diff] [blame] | 61 | * [uritemplate](https://github.com/sigmavirus24/uritemplate) |
Joe Gregorio | 8097e2a | 2011-05-17 11:11:34 -0400 | [diff] [blame] | 62 | |
Michael Mattioli | 460a4ad | 2014-08-01 21:37:56 -0400 | [diff] [blame] | 63 | For development you will also need the following libraries: |
andrewnester | 3167781 | 2017-03-31 16:39:30 +0300 | [diff] [blame] | 64 | * [WebTest](http://webtest.pythonpaste.org/en/latest/index.html) |
Michael Mattioli | 460a4ad | 2014-08-01 21:37:56 -0400 | [diff] [blame] | 65 | * [pyopenssl](https://pypi.python.org/pypi/pyOpenSSL) |
Craig Citro | 3f8dc78 | 2014-05-19 15:00:07 -0700 | [diff] [blame] | 66 | |
Grant Timmerman | 5c11b0a | 2019-06-26 07:39:48 -0700 | [diff] [blame] | 67 | ## Contributing |
| 68 | |
Dmitry Frenkel | 63f97f3 | 2020-07-09 10:14:02 -0700 | [diff] [blame^] | 69 | Please see our [Contribution Guide](CONTRIBUTING.rst). |
| 70 | In particular, we love pull requests - but please make sure to sign |
| 71 | the contributor license agreement. |