Last updated:
0 purchases
apiorm 0.0.0.dev1
=======api-orm=======Interact with API endpoints as Python objects and manage resources in an ORMy wayInstallation============Python version supported: 3.6+.. code-block:: pip install api-ormAbout=====We have written many small clients to different APIs. It usually becomes acouple of functions like:.. code-block:: python client.get_customers() client.new_customer() # etcWhen writing our client for our accounting API we wanted a more declarative wayof accessing our data. Also the API supported OData which allows for filteringon all parameters. This made request look more like database access thansimple REST endpoints. So we wanted an interface more like a database ORM.We use django a lot so we would like something we are used to.This library is an attempt to extract the ORM parts of our Visma client so thatwe can reuse the framework for a bunch of other API clients.We want an api very alike the Django ORM:.. code-block:: python all_customers = Customer.api.all() a = Customer(**customer_data) a.save() some_customers = Customer.api.filter(name='Dave').exclude(invoice_postal_code__startswith='25')Before we have to write alot of custom validation but in this framework we usethe awesome serializer library marshmallow to transform python objects toHTTP-request data and back. This gives us a declarative way of defining ourmodels and it comes included with validation of schemas and fields.There are also tools available to generate models from and API specificationwhich greatly reduces the implementation time.=========Changelog=========The format is based on `Keep a Changelog: https://keepachangelog.com/en/1.0.0/`,and this project adheres to `Semantic Versioning: https://semver.org/spec/v2.0.0.html`Unreleased----------Added^^^^^Changed^^^^^^^Deprecated^^^^^^^^^^Removed^^^^^^^Fixed^^^^^Security^^^^^^^^
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.