{"bomFormat":"CycloneDX","specVersion":"1.5","version":1,"serialNumber":"urn:uuid:f20620ec-3f51-45c6-b2a4-1512c46187ca","metadata":{"timestamp":"2026-10-22T12:42:19Z","tools":[{"vendor":"Ecosystems","name":"Ecosystems SBOM Generator"}],"component":{"type":"application","name":"benchling/openapi-python-client"}},"components":[{"type":"library","name":"actions/checkout","version":"v2","purl":"pkg:githubactions/actions/checkout","properties":[{"name":"filePath","value":".github/workflows/codeql-analysis.yml"}]},{"type":"library","name":"github/codeql-action/init","version":"v1","purl":"pkg:githubactions/github/codeql-action/init","properties":[{"name":"filePath","value":".github/workflows/codeql-analysis.yml"}]},{"type":"library","name":"github/codeql-action/analyze","version":"v1","purl":"pkg:githubactions/github/codeql-action/analyze","properties":[{"name":"filePath","value":".github/workflows/codeql-analysis.yml"}]},{"type":"library","name":"actions/checkout","version":"v2","purl":"pkg:githubactions/actions/checkout","properties":[{"name":"filePath","value":".github/workflows/pythonpublish.yml"}]},{"type":"library","name":"actions/setup-python","version":"v1","purl":"pkg:githubactions/actions/setup-python","properties":[{"name":"filePath","value":".github/workflows/pythonpublish.yml"}]},{"type":"library","name":"python","version":"^3.6","purl":"pkg:pypi/python","properties":[{"name":"filePath","value":"end_to_end_tests/golden-record/pyproject.toml"}]},{"type":"library","name":"httpx","version":"\u003e=0.15.0, \u003c=0.22.0","purl":"pkg:pypi/httpx","properties":[{"name":"filePath","value":"end_to_end_tests/golden-record/pyproject.toml"}]},{"type":"library","name":"attrs","version":"\u003e=20.1.0, \u003c22.0","purl":"pkg:pypi/attrs","properties":[{"name":"filePath","value":"end_to_end_tests/golden-record/pyproject.toml"}]},{"type":"library","name":"python-dateutil","version":"^2.8.0","purl":"pkg:pypi/python-dateutil","properties":[{"name":"filePath","value":"end_to_end_tests/golden-record/pyproject.toml"}]},{"type":"library","name":"python","version":"^3.6","purl":"pkg:pypi/python","properties":[{"name":"filePath","value":"end_to_end_tests/golden-record-custom/pyproject.toml"}]},{"type":"library","name":"httpx","version":"\u003e=0.15.0, \u003c=0.22.0","purl":"pkg:pypi/httpx","properties":[{"name":"filePath","value":"end_to_end_tests/golden-record-custom/pyproject.toml"}]},{"type":"library","name":"attrs","version":"\u003e=20.1.0, \u003c22.0","purl":"pkg:pypi/attrs","properties":[{"name":"filePath","value":"end_to_end_tests/golden-record-custom/pyproject.toml"}]},{"type":"library","name":"python-dateutil","version":"^2.8.0","purl":"pkg:pypi/python-dateutil","properties":[{"name":"filePath","value":"end_to_end_tests/golden-record-custom/pyproject.toml"}]},{"type":"library","name":"python","version":"^3.6","purl":"pkg:pypi/python","properties":[{"name":"filePath","value":"openapi_python_client/templates/pyproject.toml"}]},{"type":"library","name":"httpx","version":"\u003e=0.23.0","purl":"pkg:pypi/httpx","properties":[{"name":"filePath","value":"openapi_python_client/templates/pyproject.toml"}]},{"type":"library","name":"attrs","version":"\u003e=20.1.0, \u003c22.0","purl":"pkg:pypi/attrs","properties":[{"name":"filePath","value":"openapi_python_client/templates/pyproject.toml"}]},{"type":"library","name":"python-dateutil","version":"^2.8.0","purl":"pkg:pypi/python-dateutil","properties":[{"name":"filePath","value":"openapi_python_client/templates/pyproject.toml"}]},{"type":"library","name":"httpx","version":"*","purl":"pkg:pypi/httpx","properties":[{"name":"filePath","value":"openapi_python_client/templates/setup.py"}]},{"type":"library","name":"anyio","version":"3.6.1","purl":"pkg:pypi/anyio","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"appdirs","version":"1.4.4","purl":"pkg:pypi/appdirs","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"attrs","version":"22.1.0","purl":"pkg:pypi/attrs","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"autoflake","version":"1.7.5","purl":"pkg:pypi/autoflake","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"black","version":"21.6b0","purl":"pkg:pypi/black","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"certifi","version":"2022.9.24","purl":"pkg:pypi/certifi","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"charset-normalizer","version":"2.1.1","purl":"pkg:pypi/charset-normalizer","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"click","version":"7.1.2","purl":"pkg:pypi/click","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"colorama","version":"0.4.5","purl":"pkg:pypi/colorama","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"coverage","version":"6.5.0","purl":"pkg:pypi/coverage","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"dparse","version":"0.6.2","purl":"pkg:pypi/dparse","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"flake8","version":"2.3.0","purl":"pkg:pypi/flake8","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"h11","version":"0.12.0","purl":"pkg:pypi/h11","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"httpcore","version":"0.15.0","purl":"pkg:pypi/httpcore","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"httpx","version":"0.23.0","purl":"pkg:pypi/httpx","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"idna","version":"3.4","purl":"pkg:pypi/idna","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"importlib-metadata","version":"5.0.0","purl":"pkg:pypi/importlib-metadata","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"iniconfig","version":"1.1.1","purl":"pkg:pypi/iniconfig","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"isort","version":"5.10.1","purl":"pkg:pypi/isort","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"jinja2","version":"3.1.2","purl":"pkg:pypi/jinja2","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"markupsafe","version":"2.1.1","purl":"pkg:pypi/markupsafe","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"mccabe","version":"0.7.0","purl":"pkg:pypi/mccabe","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"mslex","version":"0.3.0","purl":"pkg:pypi/mslex","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"mypy","version":"0.982","purl":"pkg:pypi/mypy","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"mypy-extensions","version":"0.4.3","purl":"pkg:pypi/mypy-extensions","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"packaging","version":"21.3","purl":"pkg:pypi/packaging","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"pathspec","version":"0.10.1","purl":"pkg:pypi/pathspec","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"pep8","version":"1.7.1","purl":"pkg:pypi/pep8","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"pluggy","version":"1.0.0","purl":"pkg:pypi/pluggy","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"psutil","version":"5.9.2","purl":"pkg:pypi/psutil","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"py","version":"1.11.0","purl":"pkg:pypi/py","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"pydantic","version":"1.10.2","purl":"pkg:pypi/pydantic","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"pyflakes","version":"2.5.0","purl":"pkg:pypi/pyflakes","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"pyparsing","version":"3.0.9","purl":"pkg:pypi/pyparsing","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"pytest","version":"7.1.3","purl":"pkg:pypi/pytest","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"pytest-cov","version":"4.0.0","purl":"pkg:pypi/pytest-cov","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"pytest-mock","version":"3.10.0","purl":"pkg:pypi/pytest-mock","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"python-dateutil","version":"2.8.2","purl":"pkg:pypi/python-dateutil","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"python-multipart","version":"0.0.5","purl":"pkg:pypi/python-multipart","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"pyyaml","version":"5.4.1","purl":"pkg:pypi/pyyaml","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"regex","version":"2022.9.13","purl":"pkg:pypi/regex","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"requests","version":"2.28.1","purl":"pkg:pypi/requests","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"rfc3986","version":"1.5.0","purl":"pkg:pypi/rfc3986","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"safety","version":"1.10.3","purl":"pkg:pypi/safety","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"shellingham","version":"1.5.0","purl":"pkg:pypi/shellingham","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"six","version":"1.16.0","purl":"pkg:pypi/six","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"sniffio","version":"1.3.0","purl":"pkg:pypi/sniffio","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"stringcase","version":"1.2.0","purl":"pkg:pypi/stringcase","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"taskipy","version":"1.10.3","purl":"pkg:pypi/taskipy","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"toml","version":"0.10.2","purl":"pkg:pypi/toml","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"tomli","version":"2.0.1","purl":"pkg:pypi/tomli","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"typed-ast","version":"1.5.4","purl":"pkg:pypi/typed-ast","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"typer","version":"0.3.2","purl":"pkg:pypi/typer","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"typing-extensions","version":"4.4.0","purl":"pkg:pypi/typing-extensions","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"urllib3","version":"1.26.12","purl":"pkg:pypi/urllib3","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"zipp","version":"3.9.0","purl":"pkg:pypi/zipp","properties":[{"name":"filePath","value":"poetry.lock"}]},{"type":"library","name":"python","version":"^3.7","purl":"pkg:pypi/python","properties":[{"name":"filePath","value":"pyproject.toml"}]},{"type":"library","name":"jinja2","version":"^3.1.0","purl":"pkg:pypi/jinja2","properties":[{"name":"filePath","value":"pyproject.toml"}]},{"type":"library","name":"stringcase","version":"^1.2.0","purl":"pkg:pypi/stringcase","properties":[{"name":"filePath","value":"pyproject.toml"}]},{"type":"library","name":"typer","version":"^0.3","purl":"pkg:pypi/typer","properties":[{"name":"filePath","value":"pyproject.toml"}]},{"type":"library","name":"colorama","version":"^0.4.3","purl":"pkg:pypi/colorama","properties":[{"name":"filePath","value":"pyproject.toml"}]},{"type":"library","name":"shellingham","version":"^1.3.2","purl":"pkg:pypi/shellingham","properties":[{"name":"filePath","value":"pyproject.toml"}]},{"type":"library","name":"black","version":"\u003e=20.8b1","purl":"pkg:pypi/black","properties":[{"name":"filePath","value":"pyproject.toml"}]},{"type":"library","name":"isort","version":"^5.0.5","purl":"pkg:pypi/isort","properties":[{"name":"filePath","value":"pyproject.toml"}]},{"type":"library","name":"pyyaml","version":"^5.3.1","purl":"pkg:pypi/pyyaml","properties":[{"name":"filePath","value":"pyproject.toml"}]},{"type":"library","name":"importlib_metadata","version":"\u003e=4.4","purl":"pkg:pypi/importlib_metadata","properties":[{"name":"filePath","value":"pyproject.toml"}]},{"type":"library","name":"pydantic","version":"^1.6.1","purl":"pkg:pypi/pydantic","properties":[{"name":"filePath","value":"pyproject.toml"}]},{"type":"library","name":"attrs","version":"\u003e=20.1.0, \u003c23.0","purl":"pkg:pypi/attrs","properties":[{"name":"filePath","value":"pyproject.toml"}]},{"type":"library","name":"python-dateutil","version":"^2.8.1","purl":"pkg:pypi/python-dateutil","properties":[{"name":"filePath","value":"pyproject.toml"}]},{"type":"library","name":"httpx","version":"\u003e=0.23.0","purl":"pkg:pypi/httpx","properties":[{"name":"filePath","value":"pyproject.toml"}]},{"type":"library","name":"autoflake","version":"^1.4","purl":"pkg:pypi/autoflake","properties":[{"name":"filePath","value":"pyproject.toml"}]},{"type":"library","name":"pytest","version":"*","purl":"pkg:pypi/pytest","properties":[{"name":"filePath","value":"pyproject.toml"}]},{"type":"library","name":"pytest-mock","version":"*","purl":"pkg:pypi/pytest-mock","properties":[{"name":"filePath","value":"pyproject.toml"}]},{"type":"library","name":"mypy","version":"*","purl":"pkg:pypi/mypy","properties":[{"name":"filePath","value":"pyproject.toml"}]},{"type":"library","name":"taskipy","version":"*","purl":"pkg:pypi/taskipy","properties":[{"name":"filePath","value":"pyproject.toml"}]},{"type":"library","name":"safety","version":"*","purl":"pkg:pypi/safety","properties":[{"name":"filePath","value":"pyproject.toml"}]},{"type":"library","name":"pytest-cov","version":"*","purl":"pkg:pypi/pytest-cov","properties":[{"name":"filePath","value":"pyproject.toml"}]},{"type":"library","name":"python-multipart","version":"*","purl":"pkg:pypi/python-multipart","properties":[{"name":"filePath","value":"pyproject.toml"}]},{"type":"library","name":"flake8","version":"*","purl":"pkg:pypi/flake8","properties":[{"name":"filePath","value":"pyproject.toml"}]},{"type":"library","name":"attrs","version":"\u003e=20.1.0,\u003c22.0","purl":"pkg:pypi/attrs","properties":[{"name":"filePath","value":"setup.py"}]},{"type":"library","name":"autoflake","version":"\u003e=1.4,\u003c2.0","purl":"pkg:pypi/autoflake","properties":[{"name":"filePath","value":"setup.py"}]},{"type":"library","name":"black","version":"\u003e=20.8b1","purl":"pkg:pypi/black","properties":[{"name":"filePath","value":"setup.py"}]},{"type":"library","name":"httpx","version":"\u003e=0.23.0","purl":"pkg:pypi/httpx","properties":[{"name":"filePath","value":"setup.py"}]},{"type":"library","name":"isort","version":"\u003e=5.0.5,\u003c6.0.0","purl":"pkg:pypi/isort","properties":[{"name":"filePath","value":"setup.py"}]},{"type":"library","name":"jinja2","version":"\u003e=3.1.0,\u003c4.0.0","purl":"pkg:pypi/jinja2","properties":[{"name":"filePath","value":"setup.py"}]},{"type":"library","name":"pydantic","version":"\u003e=1.6.1,\u003c2.0.0","purl":"pkg:pypi/pydantic","properties":[{"name":"filePath","value":"setup.py"}]},{"type":"library","name":"python-dateutil","version":"\u003e=2.8.1,\u003c3.0.0","purl":"pkg:pypi/python-dateutil","properties":[{"name":"filePath","value":"setup.py"}]},{"type":"library","name":"pyyaml","version":"\u003e=5.3.1,\u003c6.0.0","purl":"pkg:pypi/pyyaml","properties":[{"name":"filePath","value":"setup.py"}]},{"type":"library","name":"shellingham","version":"\u003e=1.3.2,\u003c2.0.0","purl":"pkg:pypi/shellingham","properties":[{"name":"filePath","value":"setup.py"}]},{"type":"library","name":"stringcase","version":"\u003e=1.2.0,\u003c2.0.0","purl":"pkg:pypi/stringcase","properties":[{"name":"filePath","value":"setup.py"}]},{"type":"library","name":"typer","version":"\u003e=0.3,\u003c0.4","purl":"pkg:pypi/typer","properties":[{"name":"filePath","value":"setup.py"}]}]}