Plan of having API wrappers

As passing through request for Python can be troublesome for large databases, I wonder is there’s already people making wrappers of the Baserow API in Python or other languages. It might help a lot for developers seeking to implement Baserow as a persistence service but still wanting to code the back and front of applications.

Hi @dynnammo, why do you think requests is problematic?

If you want to code agains a client library, you could try to generate one from the OpenAPI spec (https://api.baserow.io/api/schema.json). I haven’t tried this myself, but it could work.

Not at all, the specs are great, and the auto-generated documentation is also a great help. But for lazy-developing folks (like me :rofl: ), it could be great to have a wrapper that ease the process of getting objects and modify them.

I think about this library made for Airtable as instance : python-airtable · PyPI.
I just found something that approach that here : https://github.com/NiklasRosenstein/python-baserow-client/, but still too difficult to me:
what would be awesome could be a library that allows this :

import baserow

client = baserow.login(token='MY_SECRET_TOKEN')
db = client.get_database(name='Baserow Inc.')
db.get(table='Employee', attrs={'name':'Bram'})
# return a dictionary object like 
# { 'name':'Bram', 'function':'CEO', 'teams':['development','finance'], 'resume': 'https://link-to-file.com/bram-resume.pdf}

Since I’m working with Baserow, I could give some time to build something that looks like it.

EDIT : I found this Python projects that uses Baserow as backends, and they go the “traditional way” with requests, as you suggests.

I agree. We just don’t have anything at the moment and no plans for creating it yet.

Since I’m working with Baserow, I could give some time to build something that looks like it.

That’s a good point, we have plenty of users who are also devs and use our API. I can imagine that at least some of them build themselves smth that could resemble such a client, maybe one of those devs is happy to release their code open source and we would have something people can use? I am thinking this could be something community driven.

But if that would be the way forward we wouldn’t be able to guarantee they stay up to date and are up to our standards.

All clear, you’re building a really great and stable tool, I completely agree on the “non-priorityness” of this feature yet :+1: .

Just saw that this question was part of the AMA session : Baserow AMA Recap: real-time talk with the Baserow co-founders Bram Wiepjes and Olivier Maes on Reddit // Baserow, so I’ll try to RTFM more before :smile:

1 Like