| Type: | integer | 
| Default: | 0 (0ms) | 
| Min: | 0 (0ms) | 
| Max: | 2147483647 (2147483647ms) | 
| Unit: | milliseconds (ms) | 
| Context: | user | 
| Restart: | false | 
| Since: | 14 | 
Terminate any session that has been idle (that is, waiting for a client query), but not within an open transaction, for longer than the specified amount of time. If this value is specified without units, it is taken as milliseconds. A value of zero (the default) disables the timeout.
Unlike the case with an open transaction, an idle session without a transaction imposes no large costs on the server, so there is less need to enable this timeout than idle_in_transaction_session_timeout.
Be wary of enforcing this timeout on connections made through connection-pooling software or other middleware, as such a layer may not react well to unexpected connection closure. It may be helpful to enable this timeout only for interactive sessions, perhaps by applying it only to particular users.
