Settings

Use the following options to configure Uvicorn, when running from the command line.

If you're running using programmatically, using uvicorn.run(...), then use equivalent keyword arguments, eg. uvicorn.run("example:app", port=5000, reload=True, access_log=False).

Application

Socket Binding

Development

By default Uvicorn uses simple changes detection strategy that compares python files modification times few times a second. If this approach doesn't work for your project (eg. because of its complexity), you can install Uvicorn with optional watchgod dependency to use filesystem events instead:

$ pip install uvicorn[watchgodreload]

Production

Logging

Implementation

Application Interface

HTTP

HTTPS

Resource Limits

Timeouts