Simple, extendable base rest client for python
Project description
Rest Wrapper
Simple, extendable base rest client for python. I've rewritten this pattern time after time, figured I would just package it and install when necessary.
- GitHub repo: https://github.com/nat5142/rest-wrapper.git
- Documentation: https://rest-wrapper.readthedocs.io
- Free software: MIT
Features
Rest Wrapper provides a simple exposure of the requests
module. Just provide a base_url
to target and go from there:
from rest_wrapper import RestClient
client = RestClient('https://example.com/')
# make a GET request. just provide an endpoint to append it to your base_url
resp = client.get('users/1/info')
# POST request
resp = client.post('users', json={'name': 'nick', 'username': 'nat5142'}) # kwargs are passed directly to the request itself
# don't append, just request any full URL:
resp = client.get('https://www.google.com/search?q=cats', append_url=False)
Or, use the client to make constructing your own API Wrappers easier:
import os
from rest_wrapper import RestClient
class SomeApiWrapper(RestClient):
base_url = 'https://some-api.com/'
def authenticate(self):
# authenticate method is invoked at the end of the object intialization.
self.session.headers.update({
'X-Api-Key': os.environ['API_KEY']
})
client = SomeApiWrapper()
resp = client.get('/api/v1/users') # will request https://some-api.com/api/v1/users
Credits
This package was created with Cookiecutter and the fedejaure/cookiecutter-modern-pypackage project template.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
rest_wrapper-0.0.3.tar.gz
(5.6 kB
view details)
Built Distribution
File details
Details for the file rest_wrapper-0.0.3.tar.gz
.
File metadata
- Download URL: rest_wrapper-0.0.3.tar.gz
- Upload date:
- Size: 5.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.6.1 CPython/3.8.12 Darwin/22.1.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d9025677ece84a7120ccc6ae20cb61a16572ca6b3f144c65904a3e2b996784aa |
|
MD5 | 8413c62f1a04be52d8841929221c4d10 |
|
BLAKE2b-256 | 7c8726b14734e8c9ff234a436269697310f9aebb907fb04cc8de25c484f74f1b |
File details
Details for the file rest_wrapper-0.0.3-py3-none-any.whl
.
File metadata
- Download URL: rest_wrapper-0.0.3-py3-none-any.whl
- Upload date:
- Size: 5.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.6.1 CPython/3.8.12 Darwin/22.1.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9601063bf23c4d453d06acf84c0be463a0c0944bbe6999b58c9ab0ad44bb8649 |
|
MD5 | 8a11a76edbc3420044dd544c2873d0cd |
|
BLAKE2b-256 | 6ad078548750830ec294eaffe6dd87cfdd03c35b857b7b962d53683342647087 |