{"library":"sodapy","title":"sodapy: Python client for Socrata Open Data API","type":"library","description":"sodapy is a Python client for the Socrata Open Data API (SODA), enabling programmatic access to datasets from Socrata-powered platforms. While the library is functional, it has been unmaintained since August 31, 2022, with no new features or bug fixes planned. The current version is 2.2.0, and it is compatible with Python 3.5-3.10.","language":"python","status":"deprecated","last_verified":"Sun May 17","install":{"commands":["pip install sodapy"],"cli":null},"imports":["from sodapy import Socrata"],"auth":{"required":false,"env_vars":[]},"links":{"homepage":null,"github":"https://github.com/xmunoz/sodapy","docs":null,"changelog":null,"pypi":"https://pypi.org/project/sodapy/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null},"quickstart":{"code":"import os\nfrom sodapy import Socrata\n\n# Get credentials from environment variables or provide directly\nAPP_TOKEN = os.environ.get('SOCRATA_APP_TOKEN', None) # Recommended for higher rate limits\nUSERNAME = os.environ.get('SOCRATA_USERNAME', None) # Only required for creating/modifying data\nPASSWORD = os.environ.get('SOCRATA_PASSWORD', None) # Only required for creating/modifying data\n\n# Example: Connect to a public dataset (e.g., NYC Open Data - 311 Service Requests)\n# Replace 'data.cityofnewyork.us' with your Socrata domain\n# Replace 'erm2-nwe9' with your dataset identifier\ndomain = 'data.cityofnewyork.us'\ndataset_identifier = 'erm2-nwe9'\n\nwith Socrata(domain, APP_TOKEN, username=USERNAME, password=PASSWORD) as client:\n    # Increase timeout for large datasets if needed\n    # client.timeout = 50\n\n    # Example: Retrieve the first 5 records\n    print(f\"Retrieving the first 5 records from {dataset_identifier} on {domain}...\")\n    results = client.get(dataset_identifier, limit=5)\n\n    # Results are returned as a list of dictionaries\n    for item in results:\n        print(item)\n\n    print(f\"\\nRetrieved {len(results)} records.\")\n\n    # Example: Retrieve metadata for the dataset\n    print(f\"\\nRetrieving metadata for {dataset_identifier}...\")\n    metadata = client.get_metadata(dataset_identifier)\n    print(f\"Dataset Name: {metadata.get('name')}\")\n    print(f\"Description: {metadata.get('description', '')[:100]}...\")\n\n","lang":"python","description":"Initializes a Socrata client, retrieves the first 5 records from a public dataset (e.g., NYC 311 Service Requests), and fetches its metadata. It demonstrates setting up the client with an optional application token and credentials, and performing a basic data retrieval. Environment variables are used for secure credential handling.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-17","installed_version":"2.2.0","pypi_latest":"2.2.0","is_stale":false,"summary":{"python_range":"3.10–3.9","success_rate":100,"avg_install_s":2.1,"avg_import_s":0.59,"wheel_type":"wheel"},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"sodapy","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.55,"mem_mb":9.8,"disk_size":"21.3M"},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"sodapy","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":2.2,"import_time_s":0.4,"mem_mb":9.8,"disk_size":"22M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"sodapy","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.74,"mem_mb":10.8,"disk_size":"23.3M"},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"sodapy","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":2.2,"import_time_s":0.63,"mem_mb":10.8,"disk_size":"24M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"sodapy","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.7,"mem_mb":11.3,"disk_size":"15.1M"},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"sodapy","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":1.9,"import_time_s":0.67,"mem_mb":11.3,"disk_size":"16M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"sodapy","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.63,"mem_mb":11.7,"disk_size":"14.8M"},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"sodapy","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":1.9,"import_time_s":0.63,"mem_mb":11.7,"disk_size":"15M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"sodapy","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.51,"mem_mb":9.4,"disk_size":"20.5M"},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"sodapy","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":2.4,"import_time_s":0.46,"mem_mb":9.4,"disk_size":"21M"}]}}