Django Rentals API
A Django REST API for vehicle/gear rental operators, listings, availability, and bookings — the sibling package to django-trips, part of the DestinationPak platform.
Installation
pip install django-rentals
Usage
Add the app to your installed apps:
INSTALLED_APPS = [
...
'django_rentals',
]
Migrate
python manage.py migrate
Mount its urls under a namespace of your choosing:
urlpatterns = [
...
path('rentals/', include('django_rentals.urls')),
]
This mounts the whole app under your own chosen prefix (rentals/ above) with the lib's
own v1/ version underneath it, e.g. rentals/v1/listings/,
rentals/v1/schema/redoc/. The app versions itself independently of your project's own
API version.
Domain model
RentalOperator (the tenant/owner entity, mirrors django_trips.Host) → RentalListing
(one bookable vehicle or gear kit, mirrors Trip) → RentalAvailability (a bookable date,
mirrors TripSchedule) → RentalBooking (mirrors TripBooking, but books a
start_date/end_date range rather than a single departure date).
There is deliberately no separate tier/package model the way django_trips has
TripPackage — a distinct RentalListing per vehicle/kit already serves that purpose.
Like django_trips, this package is tenancy-oblivious: it has no concept of which user is
allowed to manage a given RentalOperator. That authorization layer belongs to whichever
project installs this app (see destipak's docs/multi-tenancy-design.md for the pattern
this is meant to plug into).
Development
All development happens inside Docker (make dev.up, make update_db, make test,
make random_rentals) — see the Makefile (make help lists every target).
Release files for django-rentals 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| django_rentals-0.1.0.tar.gz | 16.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| django_rentals-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 35.7 kB
Release files / django_rentals-0.1.0.tar.gz
| Download URL | django_rentals-0.1.0.tar.gz |
|---|---|
| Size | 16.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b39ed1f64912cd94d5c75e0f31b4b4fb148ce2628dacee6d238fc8f53914657d
|
|
BLAKE2b-256 checksum How to use checksums |
87b717598f1d05f9f51bfa8f7319f3d1a9cb985eeb9b7bc8517927e6c83665b5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 15, 2026.
Transparency logRelease files / django_rentals-0.1.0-py3-none-any.whl
| Download URL | django_rentals-0.1.0-py3-none-any.whl |
|---|---|
| Size | 19.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7101cb560e871b8ac3ae0d0445f592977e9df34931cdde5e3059f9f7e2a155e8
|
|
BLAKE2b-256 checksum How to use checksums |
05e3b828e42bf44e27095a1a5e7de431bf73740203a2b8d6b6e81106c3d576e1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 15, 2026.
Transparency log