I’ve been working on a custom integration of Fabman with my universities LMS and built out a Python API wrapper library for the Fabman API. It is very close to having complete coverage of the Fabman API, with exception of endpoints that require super user permissions to access.
You can check out the code here: GitHub - utexas-engr-tiw/fabman-api: Library for interfacing with the Fabman API. Contributions are 100% encouraged and welcome.
To use the API library in your project, simply install it using pip:
pip install fabman
To start interacting with the API, simply provide your API key:
from fabman import Fabman API_KEY = 'abcdef-123456789-a1b2c3d4e5f6a7b8' f = Fabman(API_KEY) ...
and go for there. The library does not enforce any schema except in the instances where an ID is required for a prompt. This is done to ensure forward compatibility with any API additions or changes. For example, to change someone’s name:
member = f.get_member(12345) member.update(firstName="Kira", lastName="Nerys")
Other objects and endpoints follow a similar pattern.
Hope this helps some people out there!