skillfed

requests-ntlm3

The HTTP NTLM proxy and/or server authentication library.

requests-ntlm3 v6.1.3b1 273.7K downloads/30d#8,198 on PyPI
Permissive license ISC Abandoned released

What it is and what it does

requests-ntlm3 is an authentication handler for the requests library that implements the NTLM (NT LAN Manager) protocol, used primarily by Windows-based servers and corporate proxies. It extends requests' AuthBase to provide transparent NTLM authentication, handling the multi-step NTLM handshake (the "NTLM Dance") automatically. The package supports configurable NTLM compatibility levels, session-based connection pooling for efficiency, and HTTP CONNECT tunneling through NTLM-authenticated proxies via its HttpNtlmAdapter.

The package depends on requests for HTTP operations, ntlm-auth for the NTLM protocol implementation, and cryptography for underlying cryptographic operations. It was designed to work with Python 2.7 and 3.5–3.8, though it has been abandoned since February 2020 with no subsequent maintenance or updates.

Use it for:

  • Authenticate requests against corporate Windows servers or Active Directory-protected endpoints that require NTLM.
  • Route HTTP/HTTPS traffic through an NTLM-authenticated corporate proxy without manual challenge-response handling.
  • Build connection pooling with session objects to avoid repeated NTLM handshakes for multiple requests to the same server.
  • Configure NTLM compatibility levels (LM, NTLMv1, NTLMv2) to match legacy or modern enterprise authentication policies.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides HTTP NTLM authentication for the requests library, enabling clients to authenticate against NTLM-protected servers and proxies.

Yes, if you have a specific, static NTLM authentication requirement and can accept the risk of an abandoned package. The low install friction and permissive license make it straightforward to add, but the lack of maintenance since 2020 means no bug fixes, security patches, or compatibility updates with newer Python or dependency versions. Suitable only for stable, isolated use cases where you control the environment and can tolerate no future support.

Install

requests-ntlm3 on PyPI

pip

pip install requests-ntlm3

uv

uv add requests-ntlm3

poetry

poetry add requests-ntlm3

Installing requests-ntlm3

Before you install

Low install friction with three stable runtime dependencies (requests, ntlm-auth, cryptography). However, the package is abandoned—last release was 2020-02-19 and no commits or maintenance activity since. Use only if your NTLM requirements are static and you can accept no future updates.

License in practice

ISC license is permissive and poses no restrictions on commercial or private use, modification, or redistribution.

Quickstart

pip install requests-ntlm3

import requests
from requests_ntlm3 import HttpNtlmAuth

auth = HttpNtlmAuth('domain\\username', 'password')
response = requests.get('http://ntlm_protected_site.com', auth=auth)

Verify before relying

  • Whether the package works reliably with modern versions of requests, ntlm-auth, and cryptography given its 2020 release date and abandoned status.
  • Whether NTLMv2 compatibility level 3 (the default) meets current security standards for your use case.
  • Whether the package has been tested against current Windows NTLM implementations or enterprise proxy configurations.

Package facts

License ISC (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies 3 — requests, ntlm-auth, cryptography
Maintenance abandoned — 2,368 days since the last release
First released
Downloads 273,653/month — #8,198 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: requests_ntlm3-6.1.3b1-py2.py3-none-any.whl

Keywords: NTLM, requests, proxy, authorization, NTLM dance

Development Status :: 4 - BetaIntended Audience :: DevelopersLicense :: OSI Approved :: ISC License (ISCL)Natural Language :: EnglishOperating System :: MacOSOperating System :: Microsoft :: WindowsOperating System :: POSIX :: LinuxProgramming Language :: PythonProgramming Language :: Python :: 2.7Programming Language :: Python :: 3.5Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: Implementation :: CPythonTopic :: Software Development :: Version Control :: Git

Tags

NTLM authentication requestsHTTP NTLM proxy authWindows NTLM requests libraryNTLM challenge responserequests NTLM adapterproxy authentication NTLMNTLMv2 requests
ntlm-authproxy-authwindows-integration

More Git packages