Skip to main content

ORCID service client

Project description

[![Build Status](https://travis-ci.org/puntonim/inspire-service-orcid.svg?branch=master)](https://travis-ci.org/puntonim/inspire-service-orcid)

# Inspire ORCID service client

This package is service client for ORCID API used in inspire-next.

## Client usage

```python
# Configure settings.
import inspire_service_orcid.conf
d = dict(
DO_USE_SANDBOX=False,
CONSUMER_KEY='myorcidappkey',
CONSUMER_SECRET='myorcidappsecret',
REQUEST_TIMEOUT=30,
)
inspire_service_orcid.conf.settings.configure(**d)

# Use the client.
from inspire_service_orcid.client import OrcidClient
client = OrcidClient('mytoken', '0000-0002-0942-3697')
response = client.get_all_works_summary()
response.raise_for_result()
putcode = response['group'][0]['work-summary'][0]['put-code']
```

In order to use time_execution to collect metrics, configure it first:
```python
import time_execution
from inspire_service_orcid import hooks

hooks = [
hooks.status_code_hook,
hooks.orcid_error_code_hook,
hooks.orcid_service_exception_hook,
]
time_execution.settings.configure(
backends=[mybackend],
hooks=hooks,
origin='inspire_next'
)
```

## Development

```bash
# Create a venv and install the requirements:
$ make venv

# Run isort and lint:
$ make isort
$ make lint

# Run all the tests:
$ make test # tox against Python27 and Python36.
$ tox -e py27 # tox against a specific Python version.
$ pytest # pytest against the active venv.

# Run a specific test:
$ make test/tests/test_client.py # tox against Python27 and Python36.
$ tox -e py27 -- tests/test_client.py # tox against a specific Python version.
$ pytest tests/test_client.py # pytest against the active venv.
```

To publish on PyPi, first set the PyPi credentials:

```bash
# Edit .pypirc:
$ cat $HOME/.pypirc
[pypi]
username: myuser
password: mypass
```

```bash
# Tag the new version:
$ git tag 1.1.1
# Then generate setup.py and publish:
$ make setup.py
$ make publish
# Commit the setup.py file:
$ git add .
$ git commit -m '1.1.1 released'
$ git push origin master --tags
```

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

inspire-service-orcid-9.0.0.tar.gz (10.0 kB view details)

Uploaded Source

File details

Details for the file inspire-service-orcid-9.0.0.tar.gz.

File metadata

  • Download URL: inspire-service-orcid-9.0.0.tar.gz
  • Upload date:
  • Size: 10.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/2.7.10

File hashes

Hashes for inspire-service-orcid-9.0.0.tar.gz
Algorithm Hash digest
SHA256 cacee4fb19224ea2eb8a0e7e943479ef628c47f4b8b51f271263c2816a6814a1
MD5 89be90418d02040ac1766c0e45facbe7
BLAKE2b-256 3b37a6a18bc4c829dfdf908ca0918a2a7ce46420cddafe583b293f251a95194b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page