procurement-tools


Nameprocurement-tools JSON
Version 0.2.2 PyPI version JSON
download
home_pagehttps://pypi.org/project/procurement-tools/
SummaryPython tools for navigating federal contracting
upload_time2024-01-13 13:54:08
maintainer
docs_urlNone
authorV. David Zvenyach
requires_python>=3.8,<4.0
licenseApache-2.0
keywords packaging poetry
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # procurement-tools

[![PyPI version](https://img.shields.io/pypi/v/procurement-tools.svg)](https://pypi.org/project/procurement-tools/)

A handy collection of python utilities and tools to navigate federal contracting.

## Features

- [x] UEI validation
- [x] Get a URL for an entity from USASpending
- [x] Get recent award data for an entity from USASpending
- [x] Lookup a FAR provision by citation
- [x] Get entity information from the SAM entity
- [x] Access innovations from the Periodic Table of Acquisition Innovations

## Usage

For full documentation, head to [the docs](https://procurement-tools.readthedocs.io/en/latest/).

```py
from procurement_tools import FAR, UEI, USASpending, PeriodicTable
print(UEI.is_valid("J7M9HPTGJ1S9"))
# True

print(USASpending.get_usaspending_URL("J7M9HPTGJ1S9"))
# 'https://www.usaspending.gov/recipient/bf1220c1-2373-042a-e8e1-33d5a29639d0-P/latest'

print(FAR.get_section("17.502-2"))
# Returns a pydantic model with the title, section number, url, and text of the section

print(PeriodicTable.get_random_innovation())
# Returns a dict with an innovation from the FAI Periodic Table of Acquisition Innovations
```

Additionally, we have the beginning of a SAM API client:

```python
from procurement_tools import SAM
res = SAM.get_entity({"ueiSAM":"XRVFU3YRA2U5"})
print(res)
# Returns a pydantic model with the latest SAM data for a given Entity
```

## CLI Usage

Out of the box, there is a simple CLI, called `fargo`. You can use it to do things like:

```sh
fargo sam entity [UEI]
# Dumps a json of an entity's information

fargo sam opportunities --q "machine"
# Dumps a json of active opportunities that match the keyword "machine"

fargo usaspending [UEI] --awards
# Dumps a json of an entity's 10 most recent awards (in the last 90 days)
```

Check out [the docs](https://procurement-tools.readthedocs.io/en/latest/cli.html) for all of the CLI options

## Installation

```sh
pip install procurement-tools
```

## License

Apache 2.0

            

Raw data

            {
    "_id": null,
    "home_page": "https://pypi.org/project/procurement-tools/",
    "name": "procurement-tools",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.8,<4.0",
    "maintainer_email": "",
    "keywords": "packaging,poetry",
    "author": "V. David Zvenyach",
    "author_email": "dave@tandemgov.com",
    "download_url": "https://files.pythonhosted.org/packages/99/d5/2e877ab75b91aa1aa8a8f25bd942833c48062a98e8812f93c4400b8ae6eb/procurement_tools-0.2.2.tar.gz",
    "platform": null,
    "description": "# procurement-tools\n\n[![PyPI version](https://img.shields.io/pypi/v/procurement-tools.svg)](https://pypi.org/project/procurement-tools/)\n\nA handy collection of python utilities and tools to navigate federal contracting.\n\n## Features\n\n- [x] UEI validation\n- [x] Get a URL for an entity from USASpending\n- [x] Get recent award data for an entity from USASpending\n- [x] Lookup a FAR provision by citation\n- [x] Get entity information from the SAM entity\n- [x] Access innovations from the Periodic Table of Acquisition Innovations\n\n## Usage\n\nFor full documentation, head to [the docs](https://procurement-tools.readthedocs.io/en/latest/).\n\n```py\nfrom procurement_tools import FAR, UEI, USASpending, PeriodicTable\nprint(UEI.is_valid(\"J7M9HPTGJ1S9\"))\n# True\n\nprint(USASpending.get_usaspending_URL(\"J7M9HPTGJ1S9\"))\n# 'https://www.usaspending.gov/recipient/bf1220c1-2373-042a-e8e1-33d5a29639d0-P/latest'\n\nprint(FAR.get_section(\"17.502-2\"))\n# Returns a pydantic model with the title, section number, url, and text of the section\n\nprint(PeriodicTable.get_random_innovation())\n# Returns a dict with an innovation from the FAI Periodic Table of Acquisition Innovations\n```\n\nAdditionally, we have the beginning of a SAM API client:\n\n```python\nfrom procurement_tools import SAM\nres = SAM.get_entity({\"ueiSAM\":\"XRVFU3YRA2U5\"})\nprint(res)\n# Returns a pydantic model with the latest SAM data for a given Entity\n```\n\n## CLI Usage\n\nOut of the box, there is a simple CLI, called `fargo`. You can use it to do things like:\n\n```sh\nfargo sam entity [UEI]\n# Dumps a json of an entity's information\n\nfargo sam opportunities --q \"machine\"\n# Dumps a json of active opportunities that match the keyword \"machine\"\n\nfargo usaspending [UEI] --awards\n# Dumps a json of an entity's 10 most recent awards (in the last 90 days)\n```\n\nCheck out [the docs](https://procurement-tools.readthedocs.io/en/latest/cli.html) for all of the CLI options\n\n## Installation\n\n```sh\npip install procurement-tools\n```\n\n## License\n\nApache 2.0\n",
    "bugtrack_url": null,
    "license": "Apache-2.0",
    "summary": "Python tools for navigating federal contracting",
    "version": "0.2.2",
    "project_urls": {
        "Documentation": "https://procurement-tools.readthedocs.io/en/latest/",
        "Homepage": "https://pypi.org/project/procurement-tools/",
        "Repository": "https://github.com/tandemgov/procurement-tools"
    },
    "split_keywords": [
        "packaging",
        "poetry"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a17e398fc1a5bd8819e09f8822148a69d8375876e7377cbd5ecb04671f9e1750",
                "md5": "80e674f33d6fcc65866be6b746535af1",
                "sha256": "ef53147015e7cb71514b5c74c68b49e84830d1439925a70eb794d34616e40c31"
            },
            "downloads": -1,
            "filename": "procurement_tools-0.2.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "80e674f33d6fcc65866be6b746535af1",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8,<4.0",
            "size": 43132,
            "upload_time": "2024-01-13T13:54:04",
            "upload_time_iso_8601": "2024-01-13T13:54:04.595449Z",
            "url": "https://files.pythonhosted.org/packages/a1/7e/398fc1a5bd8819e09f8822148a69d8375876e7377cbd5ecb04671f9e1750/procurement_tools-0.2.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "99d52e877ab75b91aa1aa8a8f25bd942833c48062a98e8812f93c4400b8ae6eb",
                "md5": "ea0fee357c192ee0855e79f0ad0ff245",
                "sha256": "d36c372ef0904088de7dc82fc0bfc2cd67a2d795817a5a790fc37a490b040d82"
            },
            "downloads": -1,
            "filename": "procurement_tools-0.2.2.tar.gz",
            "has_sig": false,
            "md5_digest": "ea0fee357c192ee0855e79f0ad0ff245",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8,<4.0",
            "size": 39253,
            "upload_time": "2024-01-13T13:54:08",
            "upload_time_iso_8601": "2024-01-13T13:54:08.341853Z",
            "url": "https://files.pythonhosted.org/packages/99/d5/2e877ab75b91aa1aa8a8f25bd942833c48062a98e8812f93c4400b8ae6eb/procurement_tools-0.2.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-01-13 13:54:08",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "tandemgov",
    "github_project": "procurement-tools",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "procurement-tools"
}
        
Elapsed time: 0.16567s