dribba (Python)
Official SDK and CLI for the Dribba public API.
No API key, no OAuth, no account. Every read endpoint is public. If you were looking for the credentials page, there isn't one — see dribba.com/auth.md.
- Reference: https://dribba.com/docs
- Contract: https://dribba.com/openapi.json (OpenAPI 3.1)
- Developer portal: https://dribba.com/developers
Zero dependencies: the client is urllib and json from the standard library.
The JavaScript package (npm i dribba) mirrors this API method for method, so a
team using both does not have to learn two vocabularies.
Install
pip install dribba
CLI
dribba services --table
dribba case cityxerpa
dribba estimate --platforms ios,android --complexity complex
dribba ask "flutter migration"
dribba markdown /servicios
dribba --help
Add --sandbox to hit the frozen fixtures instead of production. Without
installing anything: python -m dribba services.
SDK
from dribba import Dribba, DribbaError
dribba = Dribba()
page = dribba.services(limit=5)
print(page["total"], page["next_cursor"])
study = dribba.case("cityxerpa")
budget = dribba.estimate(platforms=["ios", "android"])
Every item of a collection, following the cursor for you:
for service in dribba.paginate("/api/v1/services"):
print(service["slug"])
Errors are RFC 9457 problem details. Branch on code — it is stable; detail
is prose and may be reworded:
try:
dribba.case("does-not-exist")
except DribbaError as err:
print(err.status, err.code, err.resolution)
The quota advertised by the last response, from the IETF RateLimit fields:
dribba.rate_limit # {"limit": 120, "remaining": 118, "reset": 47}
Sandbox
dribba = Dribba(sandbox=True)
Frozen fixtures with the same response shapes, so your tests do not break the
day we publish a tenth service. The data is fictional on purpose (acme-*).
What this package does not do
- No writes. The public API is read-only; the site's forms require a
same-origin request. For an agent that needs to contact us there is the
submit_contact_requesttool of the MCP server, which asks for confirmation first. - No auth. There is nothing to configure. See auth.md for why, and what that means for you.
Licence
MIT — see LICENSE.
Metadata
Release files for dribba 1.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| dribba-1.0.1.tar.gz | 8.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| dribba-1.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 19.1 kB
Release files / dribba-1.0.1.tar.gz
| Download URL | dribba-1.0.1.tar.gz |
|---|---|
| Size | 8.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
33de0661c860f34b23be743e1a35419599827be935d4c3e3ca0a6dfd407c4eaf
|
|
BLAKE2b-256 checksum How to use checksums |
c7effdf63ec02da93e917d3bfcaea45cbfa33f0d9b93cfc818b8e0928c2e120b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.1
|
Release files / dribba-1.0.1-py3-none-any.whl
| Download URL | dribba-1.0.1-py3-none-any.whl |
|---|---|
| Size | 10.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1acc035f07603ace792b19ad9be0516a64237bacb8765434a8aeb50dd9d9bba1
|
|
BLAKE2b-256 checksum How to use checksums |
f647f6b1b7082d5034c4c3f0667c6597bc50c07217fc58959d7289336b78f13d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.1
|