$npx skillfedfor your agent

rets-python

rets-python

With conditionsPyPI WWW/HTTPReleased Oct 2024104.2K downloads / moMIT LicensePure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — rets_python-0.4.12-py3-none-any.whl
v0.4.12 · released 2024-10-15 · 4 runtime deps: requests, requests-toolbelt, udatetime, lxml

Yes, if you are integrating with an established RETS server and need a stable, low-friction Python client. The library is permissively licensed, has no known vulnerabilities, and handles the RETS protocol and data decoding well. However, maintenance is dormant—last release was 668 days ago—so do not expect bug fixes, security patches, or support for new RETS features. Use only for stable, production integrations with known RETS endpoints, not for new development or experimental work.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires a working RETS server endpoint with valid credentials; no public test server is documented in the fact sheet.
  • Low install friction with four standard dependencies.
  • Maintenance is dormant—last release was 668 days ago and the repository shows no recent commits, though it remains unarchived.

License · maintenance · safety

MIT License (permissive) — MIT License (permissive) allows use, modification, and distribution with minimal restrictions, making it safe for commercial and private projects.

last release 2024-10-15 (668 days) · last repo commit 2024-10-15 · 90 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 104,154 downloads/mo, #12,765 on PyPI

Verify before relying

pip install rets-python

from rets.client import RetsClient

client = RetsClient(
    login_url='http://my.rets.server/rets/login',
    username='username',
    password='password'
)

resource = client.get_resource('Property')
resource_class = resource.get_class('A')
search_result = resource_class.search(query='(LIST_87=2017-01-01+)', limit=10)
  • Whether the package works with RETS servers beyond Version 1.7.2 or if it is strictly limited to that version.
  • Current compatibility with Python versions beyond 3.6 (classifiers list 3.5 and 3.6 explicitly).
  • Whether dormant maintenance status means critical bugs or security issues would be addressed.
Same gist for agents: .md · .json

What it is and what it does

rets-python is a client library that connects to Real Estate Transaction Standard (RETS) servers to retrieve property listings, metadata, and media. It abstracts the low-level RETS HTTP protocol into a higher-level API where you instantiate a client with server credentials, then navigate resources (like Property), classes (like A), and object types (like HiRes photos) to search listings and fetch associated data. The library automatically decodes RETS responses into Python native types—dates become datetime objects, numbers become integers—and handles bulk photo retrieval by resource key.

The package depends on requests, requests-toolbelt, udatetime, and lxml to handle HTTP communication, multipart responses, fast datetime parsing, and XML parsing. It targets real estate professionals, MLS integrators, and property data platforms that need programmatic access to RETS-compliant servers. The library is stable and has been in use since 2017, but development has stalled; it is best suited for integrations with established RETS infrastructure rather than new feature development.

Use it for

  • Retrieve recent property listings from an MLS RETS server and filter by date or price range for downstream analysis.
  • Bulk-download high-resolution photos for property listings using resource keys and store them locally.
  • Query RETS metadata to discover available resources, classes, and object types supported by a specific MLS server.
  • Build a real estate data aggregation tool that pulls listings from multiple RETS servers and normalizes them into a common schema.
  • Automate property listing imports into a CRM or property management system by polling a RETS server on a schedule.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

With conditions

Yes, if you are integrating with an established RETS server and need a stable, low-friction Python client.

The library is permissively licensed, has no known vulnerabilities, and handles the RETS protocol and data decoding well. However, maintenance is dormant—last release was 668 days ago—so do not expect bug fixes, security patches, or support for new RETS features. Use only for stable, production integrations with known RETS endpoints, not for new development or experimental work.

Install

rets-python on PyPI

Before you install

Low install friction with four standard dependencies. Maintenance is dormant—last release was 668 days ago and the repository shows no recent commits, though it remains unarchived. Suitable for stable integrations but not for active development or new feature requests.

Requires a working RETS server endpoint with valid credentials; no public test server is documented in the fact sheet.

License in practice

MIT License (permissive) allows use, modification, and distribution with minimal restrictions, making it safe for commercial and private projects.

Quickstart

pip install rets-python

from rets.client import RetsClient

client = RetsClient(
    login_url='http://my.rets.server/rets/login',
    username='username',
    password='password'
)

resource = client.get_resource('Property')
resource_class = resource.get_class('A')
search_result = resource_class.search(query='(LIST_87=2017-01-01+)', limit=10)

Verify before relying

  • Whether the package works with RETS servers beyond Version 1.7.2 or if it is strictly limited to that version.
  • Current compatibility with Python versions beyond 3.6 (classifiers list 3.5 and 3.6 explicitly).
  • Whether dormant maintenance status means critical bugs or security issues would be addressed.

Package facts

LicenseMIT License permissive
Python supportNot specified
Install frictionLow. Pure-Python wheel
Runtime dependencies
4 packages
requestsrequests-toolbeltudatetimelxml
MaintenanceDormant 668 days since the last release
Last repo commit
First released
Downloads104,154 / month, #12,765 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Intended Audience :: DevelopersIntended Audience :: Financial and Insurance IndustryIntended Audience :: Information TechnologyIntended Audience :: Other AudienceLicense :: OSI Approved :: MIT LicenseNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.5Programming Language :: Python :: 3.6Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPyTopic :: Internet :: WWW/HTTPTopic :: Internet :: WWW/HTTP :: Indexing/Search

Evidence: rets_python-0.4.12-py3-none-any.whl

Tags

Capabilities
rets client pythonreal estate transaction standard apimls property data retrievalrets server integrationproperty listing search pythonreal estate data api client
Topics
real-estaterets-protocolmls-integration

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “rets client python”

  • rets-pythonPython 3 client library for querying and retrieving real estate data…
  • codewords-clientA Python client library for the Codewords API with built-in FastAPI…
  • openapi-python-clientGenerates type-annotated Python HTTP clients from OpenAPI 3.0 and 3.1…

Give your agent the search over MCP, or paste the wish link into any chat.

More WWW/HTTP packages

urllib3 Worth it
PyPI · Libraries · released May 2026

urllib3 is an HTTP client library that provides thread-safe connection pooling, SSL/TLS verification, multipart file uploads, request retries, compression support, and proxy handling for Python applications.

MITpure Python · 3.10+
1.8Bdownloads / mo
requests Worth it
PyPI · Libraries · released May 2026

Requests is a Python HTTP library that simplifies sending HTTP/1.1 requests with automatic handling of headers, authentication, cookies, and response parsing.

Apache-2.0pure Python · 3.10+
1.8Bdownloads / mo
h11 With conditions
PyPI · WWW/HTTP · released Apr 2025

h11 is a pure-Python HTTP/1.1 protocol implementation that handles parsing and serializing HTTP messages without any built-in I/O, letting you integrate it with any network layer you choose.

MITpure Python · 3.8+aging
894.9Mdownloads / mo
httpx Worth it
PyPI · WWW/HTTP · released Dec 2024

HTTPX is a fully featured HTTP client library for Python that provides both sync and async APIs, with support for HTTP/1.1 and HTTP/2, plus an integrated command-line client.

Install it if you are building new projects or modernizing existing ones that rely on HTTP.

BSD-3-Clausepure Python · 3.8+
797.0Mdownloads / mo
httpcore With conditions
PyPI · WWW/HTTP · released Apr 2025

A minimal low-level HTTP client library that sends HTTP requests with thread-safe and task-safe connection pooling, supporting HTTP/1.1, HTTP/2, proxies, and both sync and async interfaces.

BSD-3-Clausepure Python · 3.8+aging
783.6Mdownloads / mo
aiohttp Worth it
PyPI · WWW/HTTP · released Jul 2026

aiohttp is an async HTTP client and server framework built on asyncio, supporting both WebSockets and middleware-based routing for building concurrent web applications.

Install it if you need async HTTP client or server capabilities in asyncio-based applications.

permissive licensecompiled wheel · 3.10+
643.6Mdownloads / mo

See also metal-sdk · numpy-financial · dbs3-pycurl · rangehttpserver · wapi-python · osfclient · DataProperty · needle-python · taxjar · backports.cached-property