[![build-status-image]][build-status] [![coverage-status-image]][codecov] [![pypi-version]][pypi]
Awesome web-browsable Web APIs.
Full documentation for the project is available at [https://www.django-rest-framework.org/][docs].
REST framework is a collaboratively funded project. If you use REST framework commercially we strongly encourage you to invest in its continued development by [signing up for a paid plan][funding].
The initial aim is to provide a single full-time position on REST framework. Every single sign-up makes a significant impact towards making that possible.
[![][sentry-img]][sentry-url] [![][stream-img]][stream-url] [![][spacinov-img]][spacinov-url] [![][retool-img]][retool-url] [![][bitio-img]][bitio-url] [![][posthog-img]][posthog-url] [![][cryptapi-img]][cryptapi-url] [![][fezto-img]][fezto-url]
Many thanks to all our [wonderful sponsors][sponsors], and in particular to our premium backers, [Sentry][sentry-url], [Stream][stream-url], [Spacinov][spacinov-url], [Retool][retool-url], [bit.io][bitio-url], [PostHog][posthog-url], [CryptAPI][cryptapi-url], and [FEZTO][fezto-url].
Django REST framework is a powerful and flexible toolkit for building Web APIs.
Some reasons you might want to use REST framework:
- The [Web browsable API][sandbox] is a huge usability win for your developers.
- [Authentication policies][authentication] including optional packages for [OAuth1a][oauth1-section] and [OAuth2][oauth2-section].
- [Serialization][serializers] that supports both [ORM][modelserializer-section] and [non-ORM][serializer-section] data sources.
- Customizable all the way down - just use [regular function-based views][functionview-section] if you don't need the [more][generic-views] [powerful][viewsets] [features][routers].
- [Extensive documentation][docs], and [great community support][group].
There is a live example API for testing purposes, [available here][sandbox].
Below: Screenshot from the browsable API
![Screenshot][image]
- Python (3.6, 3.7, 3.8, 3.9, 3.10)
- Django (2.2, 3.0, 3.1, 3.2, 4.0, 4.1)