[](https://github.com/OCHA-DAP/hdx-python-api/actions/workflows/run-python-tests.yaml)
[](https://coveralls.io/github/OCHA-DAP/hdx-python-api?branch=main)
[](https://github.com/astral-sh/ruff)
[](https://pypistats.org/packages/hdx-python-api)
The HDX Python API Library is designed to enable you to easily develop code that
interacts with the [Humanitarian Data Exchange](https://data.humdata.org/) (HDX)
platform. The major goal of the library is to make pushing and pulling data from HDX as
simple as possible for the end user.
For more information, please read the
[documentation](https://hdx-python-api.readthedocs.io/en/latest/).
This library is part of the [Humanitarian Data Exchange](https://data.humdata.org/)
(HDX) project. If you have humanitarian related data, please upload your datasets to
HDX.
Raw data
{
"_id": null,
"home_page": null,
"name": "hdx-python-api",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "API, CKAN, HDX, humanitarian data exchange",
"author": "Michael Rans",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/b9/0b/716c485ca6feb0cdd3e6135072d8421fa9683e71900d31455e3365e50671/hdx_python_api-6.5.1.tar.gz",
"platform": null,
"description": "[](https://github.com/OCHA-DAP/hdx-python-api/actions/workflows/run-python-tests.yaml)\n[](https://coveralls.io/github/OCHA-DAP/hdx-python-api?branch=main)\n[](https://github.com/astral-sh/ruff)\n[](https://pypistats.org/packages/hdx-python-api)\n\nThe HDX Python API Library is designed to enable you to easily develop code that\ninteracts with the [Humanitarian Data Exchange](https://data.humdata.org/) (HDX)\nplatform. The major goal of the library is to make pushing and pulling data from HDX as\nsimple as possible for the end user.\n\nFor more information, please read the\n[documentation](https://hdx-python-api.readthedocs.io/en/latest/).\n\nThis library is part of the [Humanitarian Data Exchange](https://data.humdata.org/)\n(HDX) project. If you have humanitarian related data, please upload your datasets to\nHDX.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "HDX Python API for interacting with the Humanitarian Data Exchange",
"version": "6.5.1",
"project_urls": {
"Homepage": "https://github.com/OCHA-DAP/hdx-python-api"
},
"split_keywords": [
"api",
" ckan",
" hdx",
" humanitarian data exchange"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "9e73b3316d295c1ce1474c44af8ad1e7876af4a4871014b37199e2d40e10a6d3",
"md5": "c02252bbf2d47b51aa0809513b830f39",
"sha256": "99173dc7655fda4e69c1d938ec9ebef3762a2d48d208b308e96ce7329fa56c98"
},
"downloads": -1,
"filename": "hdx_python_api-6.5.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c02252bbf2d47b51aa0809513b830f39",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 76932,
"upload_time": "2025-09-03T23:11:35",
"upload_time_iso_8601": "2025-09-03T23:11:35.611539Z",
"url": "https://files.pythonhosted.org/packages/9e/73/b3316d295c1ce1474c44af8ad1e7876af4a4871014b37199e2d40e10a6d3/hdx_python_api-6.5.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "b90b716c485ca6feb0cdd3e6135072d8421fa9683e71900d31455e3365e50671",
"md5": "41e75ad49e8695b3f1421ceddad5782a",
"sha256": "f1f6221cce2a17b764131ec5b759816d195c7d287d3c9a50f02fe3dde0709857"
},
"downloads": -1,
"filename": "hdx_python_api-6.5.1.tar.gz",
"has_sig": false,
"md5_digest": "41e75ad49e8695b3f1421ceddad5782a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 440479,
"upload_time": "2025-09-03T23:11:38",
"upload_time_iso_8601": "2025-09-03T23:11:38.213722Z",
"url": "https://files.pythonhosted.org/packages/b9/0b/716c485ca6feb0cdd3e6135072d8421fa9683e71900d31455e3365e50671/hdx_python_api-6.5.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-09-03 23:11:38",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "OCHA-DAP",
"github_project": "hdx-python-api",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"requirements": [
{
"name": "annotated-types",
"specs": [
[
"==",
"0.7.0"
]
]
},
{
"name": "astdoc",
"specs": [
[
"==",
"1.3.2"
]
]
},
{
"name": "attrs",
"specs": [
[
"==",
"25.3.0"
]
]
},
{
"name": "babel",
"specs": [
[
"==",
"2.17.0"
]
]
},
{
"name": "backrefs",
"specs": [
[
"==",
"5.9"
]
]
},
{
"name": "cachetools",
"specs": [
[
"==",
"5.5.2"
]
]
},
{
"name": "certifi",
"specs": [
[
"==",
"2025.8.3"
]
]
},
{
"name": "cfgv",
"specs": [
[
"==",
"3.4.0"
]
]
},
{
"name": "chardet",
"specs": [
[
"==",
"5.2.0"
]
]
},
{
"name": "charset-normalizer",
"specs": [
[
"==",
"3.4.3"
]
]
},
{
"name": "ckanapi",
"specs": [
[
"==",
"4.8"
]
]
},
{
"name": "click",
"specs": [
[
"==",
"8.2.1"
]
]
},
{
"name": "colorama",
"specs": [
[
"==",
"0.4.6"
]
]
},
{
"name": "coverage",
"specs": [
[
"==",
"7.10.6"
]
]
},
{
"name": "defopt",
"specs": [
[
"==",
"7.0.0"
]
]
},
{
"name": "distlib",
"specs": [
[
"==",
"0.4.0"
]
]
},
{
"name": "dnspython",
"specs": [
[
"==",
"2.7.0"
]
]
},
{
"name": "docopt",
"specs": [
[
"==",
"0.6.2"
]
]
},
{
"name": "docutils",
"specs": [
[
"==",
"0.22"
]
]
},
{
"name": "email-validator",
"specs": [
[
"==",
"2.3.0"
]
]
},
{
"name": "et-xmlfile",
"specs": [
[
"==",
"2.0.0"
]
]
},
{
"name": "filelock",
"specs": [
[
"==",
"3.19.1"
]
]
},
{
"name": "frictionless",
"specs": [
[
"==",
"5.18.1"
]
]
},
{
"name": "ghp-import",
"specs": [
[
"==",
"2.1.0"
]
]
},
{
"name": "google-auth",
"specs": [
[
"==",
"2.40.3"
]
]
},
{
"name": "google-auth-oauthlib",
"specs": [
[
"==",
"1.2.2"
]
]
},
{
"name": "gspread",
"specs": [
[
"==",
"6.2.1"
]
]
},
{
"name": "hdx-python-country",
"specs": [
[
"==",
"3.9.6"
]
]
},
{
"name": "hdx-python-utilities",
"specs": [
[
"==",
"3.9.1"
]
]
},
{
"name": "humanize",
"specs": [
[
"==",
"4.13.0"
]
]
},
{
"name": "identify",
"specs": [
[
"==",
"2.6.13"
]
]
},
{
"name": "idna",
"specs": [
[
"==",
"3.10"
]
]
},
{
"name": "ijson",
"specs": [
[
"==",
"3.4.0"
]
]
},
{
"name": "inflect",
"specs": [
[
"==",
"7.5.0"
]
]
},
{
"name": "iniconfig",
"specs": [
[
"==",
"2.1.0"
]
]
},
{
"name": "isodate",
"specs": [
[
"==",
"0.7.2"
]
]
},
{
"name": "jinja2",
"specs": [
[
"==",
"3.1.6"
]
]
},
{
"name": "jsonlines",
"specs": [
[
"==",
"4.0.0"
]
]
},
{
"name": "jsonpath-ng",
"specs": [
[
"==",
"1.7.0"
]
]
},
{
"name": "jsonschema",
"specs": [
[
"==",
"4.25.1"
]
]
},
{
"name": "jsonschema-specifications",
"specs": [
[
"==",
"2025.4.1"
]
]
},
{
"name": "libhxl",
"specs": [
[
"==",
"5.2.2"
]
]
},
{
"name": "loguru",
"specs": [
[
"==",
"0.7.3"
]
]
},
{
"name": "makefun",
"specs": [
[
"==",
"1.16.0"
]
]
},
{
"name": "markdown",
"specs": [
[
"==",
"3.8.2"
]
]
},
{
"name": "markdown-it-py",
"specs": [
[
"==",
"4.0.0"
]
]
},
{
"name": "marko",
"specs": [
[
"==",
"2.2.0"
]
]
},
{
"name": "markupsafe",
"specs": [
[
"==",
"3.0.2"
]
]
},
{
"name": "mdurl",
"specs": [
[
"==",
"0.1.2"
]
]
},
{
"name": "mergedeep",
"specs": [
[
"==",
"1.3.4"
]
]
},
{
"name": "mkapi",
"specs": [
[
"==",
"4.4.5"
]
]
},
{
"name": "mkdocs",
"specs": [
[
"==",
"1.6.1"
]
]
},
{
"name": "mkdocs-get-deps",
"specs": [
[
"==",
"0.2.0"
]
]
},
{
"name": "mkdocs-material",
"specs": [
[
"==",
"9.6.18"
]
]
},
{
"name": "mkdocs-material-extensions",
"specs": [
[
"==",
"1.3.1"
]
]
},
{
"name": "more-itertools",
"specs": [
[
"==",
"10.8.0"
]
]
},
{
"name": "nodeenv",
"specs": [
[
"==",
"1.9.1"
]
]
},
{
"name": "num2words",
"specs": [
[
"==",
"0.5.14"
]
]
},
{
"name": "oauthlib",
"specs": [
[
"==",
"3.3.1"
]
]
},
{
"name": "openpyxl",
"specs": [
[
"==",
"3.1.5"
]
]
},
{
"name": "packaging",
"specs": [
[
"==",
"25.0"
]
]
},
{
"name": "paginate",
"specs": [
[
"==",
"0.5.7"
]
]
},
{
"name": "pathspec",
"specs": [
[
"==",
"0.12.1"
]
]
},
{
"name": "petl",
"specs": [
[
"==",
"1.7.17"
]
]
},
{
"name": "platformdirs",
"specs": [
[
"==",
"4.4.0"
]
]
},
{
"name": "pluggy",
"specs": [
[
"==",
"1.6.0"
]
]
},
{
"name": "ply",
"specs": [
[
"==",
"3.11"
]
]
},
{
"name": "pockets",
"specs": [
[
"==",
"0.9.1"
]
]
},
{
"name": "pre-commit",
"specs": [
[
"==",
"4.3.0"
]
]
},
{
"name": "pyasn1",
"specs": [
[
"==",
"0.6.1"
]
]
},
{
"name": "pyasn1-modules",
"specs": [
[
"==",
"0.4.2"
]
]
},
{
"name": "pydantic",
"specs": [
[
"==",
"2.11.7"
]
]
},
{
"name": "pydantic-core",
"specs": [
[
"==",
"2.33.2"
]
]
},
{
"name": "pygments",
"specs": [
[
"==",
"2.19.2"
]
]
},
{
"name": "pymdown-extensions",
"specs": [
[
"==",
"10.16.1"
]
]
},
{
"name": "pyphonetics",
"specs": [
[
"==",
"0.5.3"
]
]
},
{
"name": "pytest",
"specs": [
[
"==",
"8.4.1"
]
]
},
{
"name": "pytest-check",
"specs": [
[
"==",
"2.5.3"
]
]
},
{
"name": "pytest-cov",
"specs": [
[
"==",
"6.2.1"
]
]
},
{
"name": "python-dateutil",
"specs": [
[
"==",
"2.9.0.post0"
]
]
},
{
"name": "python-io-wrapper",
"specs": [
[
"==",
"0.3.1"
]
]
},
{
"name": "python-slugify",
"specs": [
[
"==",
"8.0.4"
]
]
},
{
"name": "pyyaml",
"specs": [
[
"==",
"6.0.2"
]
]
},
{
"name": "pyyaml-env-tag",
"specs": [
[
"==",
"1.1"
]
]
},
{
"name": "quantulum3",
"specs": [
[
"==",
"0.9.2"
]
]
},
{
"name": "ratelimit",
"specs": [
[
"==",
"2.2.1"
]
]
},
{
"name": "referencing",
"specs": [
[
"==",
"0.36.2"
]
]
},
{
"name": "requests",
"specs": [
[
"==",
"2.32.5"
]
]
},
{
"name": "requests-file",
"specs": [
[
"==",
"2.1.0"
]
]
},
{
"name": "requests-oauthlib",
"specs": [
[
"==",
"2.0.0"
]
]
},
{
"name": "rfc3986",
"specs": [
[
"==",
"2.0.0"
]
]
},
{
"name": "rich",
"specs": [
[
"==",
"14.1.0"
]
]
},
{
"name": "rpds-py",
"specs": [
[
"==",
"0.27.1"
]
]
},
{
"name": "rsa",
"specs": [
[
"==",
"4.9.1"
]
]
},
{
"name": "ruamel-yaml",
"specs": [
[
"==",
"0.18.15"
]
]
},
{
"name": "ruamel-yaml-clib",
"specs": [
[
"==",
"0.2.12"
]
]
},
{
"name": "setuptools",
"specs": [
[
"==",
"80.9.0"
]
]
},
{
"name": "shellingham",
"specs": [
[
"==",
"1.5.4"
]
]
},
{
"name": "simpleeval",
"specs": [
[
"==",
"1.0.3"
]
]
},
{
"name": "simplejson",
"specs": [
[
"==",
"3.20.1"
]
]
},
{
"name": "six",
"specs": [
[
"==",
"1.17.0"
]
]
},
{
"name": "sphinxcontrib-napoleon",
"specs": [
[
"==",
"0.7"
]
]
},
{
"name": "structlog",
"specs": [
[
"==",
"25.4.0"
]
]
},
{
"name": "tableschema-to-template",
"specs": [
[
"==",
"0.0.13"
]
]
},
{
"name": "tabulate",
"specs": [
[
"==",
"0.9.0"
]
]
},
{
"name": "tenacity",
"specs": [
[
"==",
"9.1.2"
]
]
},
{
"name": "text-unidecode",
"specs": [
[
"==",
"1.3"
]
]
},
{
"name": "typeguard",
"specs": [
[
"==",
"4.4.4"
]
]
},
{
"name": "typer",
"specs": [
[
"==",
"0.17.3"
]
]
},
{
"name": "typing-extensions",
"specs": [
[
"==",
"4.15.0"
]
]
},
{
"name": "typing-inspection",
"specs": [
[
"==",
"0.4.1"
]
]
},
{
"name": "unidecode",
"specs": [
[
"==",
"1.4.0"
]
]
},
{
"name": "urllib3",
"specs": [
[
"==",
"2.5.0"
]
]
},
{
"name": "validators",
"specs": [
[
"==",
"0.35.0"
]
]
},
{
"name": "virtualenv",
"specs": [
[
"==",
"20.34.0"
]
]
},
{
"name": "watchdog",
"specs": [
[
"==",
"6.0.0"
]
]
},
{
"name": "wheel",
"specs": [
[
"==",
"0.45.1"
]
]
},
{
"name": "xlrd",
"specs": [
[
"==",
"2.0.2"
]
]
},
{
"name": "xlrd3",
"specs": [
[
"==",
"1.1.0"
]
]
},
{
"name": "xlsx2csv",
"specs": [
[
"==",
"0.8.4"
]
]
},
{
"name": "xlsxwriter",
"specs": [
[
"==",
"3.2.5"
]
]
},
{
"name": "xlwt",
"specs": [
[
"==",
"1.3.0"
]
]
}
],
"lcname": "hdx-python-api"
}