Simple Wappsto Python user-interface to Wappsto Rest
Project description
python-wappsto-rest
Usecase Examples:
import uuid
from wappstorest import WappstoRest
from wappstorest import WappstoService
wrest = WappstoRest()
wrest.login(
username='the_user',
password='SuperSecurePasswordThatYouDoNotRemember'
)
the_network = wrest.service(WappstoService.NETWORK).service_id(
uuid.uuid4()
).read()
print(the_network.name)
print(the_network.meta.id)
wrest.logout()
from wappstorest import WappstoRest
from wappstorest import WappstoService
from wappstorest import WappstoPath
from wappstorest import WappstoSchema
wrest = WappstoRest()
wrest.login(
username='the_user',
password='SuperSecurePasswordThatYouDoNotRemember'
)
# Is this even possible?
device_list: WappstoSchema.response.IdList = wrest.service(
WappstoService.DEVICE
).filter(
WappstoPath.Device.meta.parent.name == "Production"
).read()
# Create a new device under an existing network
the_device: WappstoSchema.response.Device = wrest.service(
WappstoService.DEVICE
).parent(
parent_id=UUID("7b0cd39d-aa9a-487e-943e-e19b420e3396"),
parent_service=WappstoService.NETWORK
).create(
WappstoSchema.create.Device(
name='button'
)
)
wrest.logout()
import datetime
from wappstorest import WappstoRest
from wappstorest import WappstoService
from wappstorest import WappstoPath
from wappstorest import WappstoSchema
wrest = WappstoRest()
wrest.login(
username='the_user',
password='SuperSecurePasswordThatYouDoNotRemember',
admin=True,
)
user_list: list[WappstoSchema.response.User] = wrest.service(
WappstoService.USER
).filter(
WappstoPath.User.meta.created < datetime.datetime.now()
).filter(
"this.user.name~=test_"
).option(
fullsearch=True,
).admin().read(expand=3)
wrest.logout()
License
This project is licensed under the MIT License - see the LICENSE.md file for details.
Notes:
- update schema -> patch
- create schema -> post
- output schema -> response on anything.
- query schema -> Options
Known Bugs
...
TODO List
Schema
- Fix
constr
,conint
... to Field: Pydantic Schema. - There need to be a Create Schema & response schema (output).
Code base
- Add more/better logging logs.
- Push to pip.
Tests
- Add more test to get a 100%-ish testing coverage.
v0.0.1 (Febuary 21, 2023)
Added
- First Release.
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
wappstorest-0.1.0.tar.gz
(93.2 kB
view details)
Built Distribution
wappstorest-0.1.0-py3-none-any.whl
(359.9 kB
view details)
File details
Details for the file wappstorest-0.1.0.tar.gz
.
File metadata
- Download URL: wappstorest-0.1.0.tar.gz
- Upload date:
- Size: 93.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ce9ea2de364d60a189f8a9e45a1f8eba4a780616aa912a656885d29a4b7beb34 |
|
MD5 | e20c27b0cfc0300821ceb2e39d837e79 |
|
BLAKE2b-256 | 0f15a844101aa454237ea803b7dec63025ea15a61eee8e663dd8307f19a57171 |
File details
Details for the file wappstorest-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: wappstorest-0.1.0-py3-none-any.whl
- Upload date:
- Size: 359.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8d6b08e6b8ea207161091fa2207e896223a785e65bc4795f9fff8be85b29de23 |
|
MD5 | 05373a8b6539487c38f0cb31de938696 |
|
BLAKE2b-256 | 15ba0e2b9d2327043638484d4800582b0b8539e2d350566c48491c82fc90e21a |