{"spdxVersion":"SPDX-2.3","dataLicense":"CC0-1.0","SPDXID":"SPDXRef-DOCUMENT","name":"com.github.google/adk-python","documentNamespace":"https://spdx.org/spdxdocs/protobom/340aa1ba-6bcb-4cc0-bfd7-475b253aab59","comment":"Exact versions could not be resolved for some packages. For more information: https://docs.github.com/en/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph#dependencies-included.","creationInfo":{"creators":["Tool: protobom-v0.0.0-20260130170711-0b8e67cacb3b+dirty","Tool: GitHub.com-Dependency-Graph"],"created":"2026-02-06T01:22:30Z"},"packages":[{"name":"google-adk","SPDXID":"SPDXRef-pypi-google-adk-1.15.1-75c946","versionInfo":"1.15.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"Apache-2.0","copyrightText":"Copyright 2024 Google LLC, Copyright 2025 Google LLC","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/google-adk@1.15.1"}]},{"name":"rich","SPDXID":"SPDXRef-pypi-rich-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/rich"}]},{"name":"termcolor","SPDXID":"SPDXRef-pypi-termcolor-3.1.0-75c946","versionInfo":"3.1.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2008-2011 Volvox Development Team","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/termcolor@3.1.0"}]},{"name":"playwright","SPDXID":"SPDXRef-pypi-playwright-1.52.0-75c946","versionInfo":"1.52.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/playwright@1.52.0"}]},{"name":"browserbase","SPDXID":"SPDXRef-pypi-browserbase-1.3.0-75c946","versionInfo":"1.3.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/browserbase@1.3.0"}]},{"name":"youtube-search","SPDXID":"SPDXRef-pypi-youtube-search-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/youtube-search"}]},{"name":"google-api-python-client","SPDXID":"SPDXRef-pypi-google-api-python-client-75c946","versionInfo":"\u003e= 2.157.0,\u003c 3.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/google-api-python-client"}]},{"name":"anyio","SPDXID":"SPDXRef-pypi-anyio-75c946","versionInfo":"\u003e= 4.9.0,\u003c 5.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/anyio"}]},{"name":"tzlocal","SPDXID":"SPDXRef-pypi-tzlocal-75c946","versionInfo":"\u003e= 5.3,\u003c 6.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/tzlocal"}]},{"name":"google-cloud-bigtable","SPDXID":"SPDXRef-pypi-google-cloud-bigtable-75c946","versionInfo":"\u003e= 2.32.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/google-cloud-bigtable"}]},{"name":"google-cloud-aiplatform","SPDXID":"SPDXRef-pypi-google-cloud-aiplatform-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/google-cloud-aiplatform"}]},{"name":"pyarrow","SPDXID":"SPDXRef-pypi-pyarrow-75c946","versionInfo":"\u003e= 14.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/pyarrow"}]},{"name":"google-cloud-bigquery","SPDXID":"SPDXRef-pypi-google-cloud-bigquery-75c946","versionInfo":"\u003e= 2.2.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/google-cloud-bigquery"}]},{"name":"uvicorn","SPDXID":"SPDXRef-pypi-uvicorn-75c946","versionInfo":"\u003e= 0.34.0,\u003c 1.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/uvicorn"}]},{"name":"aiosqlite","SPDXID":"SPDXRef-pypi-aiosqlite-75c946","versionInfo":"\u003e= 0.21.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/aiosqlite"}]},{"name":"opentelemetry-exporter-gcp-monitoring","SPDXID":"SPDXRef-pypi-opentelemetry-exporter-gcp-monitoring-75c946","versionInfo":"\u003e= 1.9.0a0,\u003c 2.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/opentelemetry-exporter-gcp-monitoring"}]},{"name":"click","SPDXID":"SPDXRef-pypi-click-75c946","versionInfo":"\u003e= 8.1.8,\u003c 9.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/click"}]},{"name":"google-cloud-secret-manager","SPDXID":"SPDXRef-pypi-google-cloud-secret-manager-75c946","versionInfo":"\u003e= 2.22.0,\u003c 3.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/google-cloud-secret-manager"}]},{"name":"sqlalchemy-spanner","SPDXID":"SPDXRef-pypi-sqlalchemy-spanner-75c946","versionInfo":"\u003e= 1.14.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/sqlalchemy-spanner"}]},{"name":"mcp","SPDXID":"SPDXRef-pypi-mcp-75c946","versionInfo":"\u003e= 1.23.0,\u003c 2.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/mcp"}]},{"name":"google-genai","SPDXID":"SPDXRef-pypi-google-genai-75c946","versionInfo":"\u003e= 1.56.0,\u003c 2.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/google-genai"}]},{"name":"jsonschema","SPDXID":"SPDXRef-pypi-jsonschema-75c946","versionInfo":"\u003e= 4.23.0,\u003c 5.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/jsonschema"}]},{"name":"pydantic","SPDXID":"SPDXRef-pypi-pydantic-75c946","versionInfo":"\u003e= 2.0,\u003c 3.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/pydantic"}]},{"name":"python-dateutil","SPDXID":"SPDXRef-pypi-python-dateutil-75c946","versionInfo":"\u003e= 2.9.0.post0,\u003c 3.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/python-dateutil"}]},{"name":"opentelemetry-exporter-gcp-logging","SPDXID":"SPDXRef-pypi-opentelemetry-exporter-gcp-logging-75c946","versionInfo":"\u003e= 1.9.0a0,\u003c 2.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/opentelemetry-exporter-gcp-logging"}]},{"name":"fastapi","SPDXID":"SPDXRef-pypi-fastapi-75c946","versionInfo":"\u003e= 0.124.1,\u003c 1.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/fastapi"}]},{"name":"pyyaml","SPDXID":"SPDXRef-pypi-pyyaml-75c946","versionInfo":"\u003e= 6.0.2,\u003c 7.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/pyyaml"}]},{"name":"google-cloud-storage","SPDXID":"SPDXRef-pypi-google-cloud-storage-75c946","versionInfo":"\u003e= 2.18.0,\u003c 4.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/google-cloud-storage"}]},{"name":"tenacity","SPDXID":"SPDXRef-pypi-tenacity-75c946","versionInfo":"\u003e= 9.0.0,\u003c 10.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/tenacity"}]},{"name":"google-cloud-spanner","SPDXID":"SPDXRef-pypi-google-cloud-spanner-75c946","versionInfo":"\u003e= 3.56.0,\u003c 4.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/google-cloud-spanner"}]},{"name":"graphviz","SPDXID":"SPDXRef-pypi-graphviz-75c946","versionInfo":"\u003e= 0.20.2,\u003c 1.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/graphviz"}]},{"name":"starlette","SPDXID":"SPDXRef-pypi-starlette-75c946","versionInfo":"\u003e= 0.49.1,\u003c 1.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/starlette"}]},{"name":"authlib","SPDXID":"SPDXRef-pypi-authlib-75c946","versionInfo":"\u003e= 1.6.6,\u003c 2.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/authlib"}]},{"name":"google-auth","SPDXID":"SPDXRef-pypi-google-auth-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/google-auth"}]},{"name":"python-dotenv","SPDXID":"SPDXRef-pypi-python-dotenv-75c946","versionInfo":"\u003e= 1.0.0,\u003c 2.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/python-dotenv"}]},{"name":"httpx","SPDXID":"SPDXRef-pypi-httpx-75c946","versionInfo":"\u003e= 0.27.0,\u003c 1.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/httpx"}]},{"name":"sqlalchemy","SPDXID":"SPDXRef-pypi-sqlalchemy-75c946","versionInfo":"\u003e= 2.0,\u003c 3.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/sqlalchemy"}]},{"name":"google-cloud-speech","SPDXID":"SPDXRef-pypi-google-cloud-speech-75c946","versionInfo":"\u003e= 2.30.0,\u003c 3.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/google-cloud-speech"}]},{"name":"websockets","SPDXID":"SPDXRef-pypi-websockets-75c946","versionInfo":"\u003e= 15.0.1,\u003c 16.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/websockets"}]},{"name":"opentelemetry-exporter-gcp-trace","SPDXID":"SPDXRef-pypi-opentelemetry-exporter-gcp-trace-75c946","versionInfo":"\u003e= 1.9.0,\u003c 2.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/opentelemetry-exporter-gcp-trace"}]},{"name":"requests","SPDXID":"SPDXRef-pypi-requests-75c946","versionInfo":"\u003e= 2.32.4,\u003c 3.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/requests"}]},{"name":"typing-extensions","SPDXID":"SPDXRef-pypi-typing-extensions-75c946","versionInfo":"\u003e= 4.5,\u003c 5","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/typing-extensions"}]},{"name":"google-cloud-pubsub","SPDXID":"SPDXRef-pypi-google-cloud-pubsub-75c946","versionInfo":"\u003e= 2.0.0,\u003c 3.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/google-cloud-pubsub"}]},{"name":"google-cloud-bigquery-storage","SPDXID":"SPDXRef-pypi-google-cloud-bigquery-storage-75c946","versionInfo":"\u003e= 2.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/google-cloud-bigquery-storage"}]},{"name":"opentelemetry-exporter-otlp-proto-http","SPDXID":"SPDXRef-pypi-opentelemetry-exporter-otlp-proto-http-75c946","versionInfo":"\u003e= 1.36.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/opentelemetry-exporter-otlp-proto-http"}]},{"name":"opentelemetry-resourcedetector-gcp","SPDXID":"SPDXRef-pypi-opentelemetry-resourcedetector-gcp-75c946","versionInfo":"\u003e= 1.9.0a0,\u003c 2.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/opentelemetry-resourcedetector-gcp"}]},{"name":"google-cloud-discoveryengine","SPDXID":"SPDXRef-pypi-google-cloud-discoveryengine-75c946","versionInfo":"\u003e= 0.13.12,\u003c 0.14.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/google-cloud-discoveryengine"}]},{"name":"opentelemetry-api","SPDXID":"SPDXRef-pypi-opentelemetry-api-75c946","versionInfo":"\u003e= 1.36.0,\u003c 1.40.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/opentelemetry-api"}]},{"name":"opentelemetry-sdk","SPDXID":"SPDXRef-pypi-opentelemetry-sdk-75c946","versionInfo":"\u003e= 1.36.0,\u003c 1.40.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/opentelemetry-sdk"}]},{"name":"watchdog","SPDXID":"SPDXRef-pypi-watchdog-75c946","versionInfo":"\u003e= 6.0.0,\u003c 7.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/watchdog"}]},{"name":"actions/github-script","SPDXID":"SPDXRef-githubactions-actions-github-script-8..-75c946","versionInfo":"8.*.*","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:githubactions/actions/github-script@8.%2A.%2A"}]},{"name":"actions/checkout","SPDXID":"SPDXRef-githubactions-actions-checkout-4..-75c946","versionInfo":"4.*.*","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:githubactions/actions/checkout@4.%2A.%2A"}]},{"name":"actions/setup-python","SPDXID":"SPDXRef-githubactions-actions-setup-python-5..-75c946","versionInfo":"5.*.*","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:githubactions/actions/setup-python@5.%2A.%2A"}]},{"name":"astral-sh/setup-uv","SPDXID":"SPDXRef-githubactions-astral-sh-setup-uv-5..-75c946","versionInfo":"5.*.*","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:githubactions/astral-sh/setup-uv@5.%2A.%2A"}]},{"name":"astral-sh/setup-uv","SPDXID":"SPDXRef-githubactions-astral-sh-setup-uv-1..-75c946","versionInfo":"1.*.*","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:githubactions/astral-sh/setup-uv@1.%2A.%2A"}]},{"name":"flask","SPDXID":"SPDXRef-pypi-flask-3.1.1-75c946","versionInfo":"3.1.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-3-Clause","copyrightText":"(c) Copyright 2010 by http://domain.invalid/\u003e, Copyright (c) 2015 CERN., copyright 2010 Pallets, Copyright 2010 Pallets","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flask@3.1.1"}]},{"name":"python-dotenv","SPDXID":"SPDXRef-pypi-python-dotenv-1.1.1-75c946","versionInfo":"1.1.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-3-Clause","copyrightText":"Copyright (c) 2014, Saurabh Kumar","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/python-dotenv@1.1.1"}]},{"name":"requests","SPDXID":"SPDXRef-pypi-requests-2.32.4-75c946","versionInfo":"2.32.4","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"Apache-2.0","copyrightText":"copyright (c) 2012 by Kenneth Reitz, copyright (c) 2017 by Kenneth Reitz, Copyright 2019 Kenneth Reitz, Copyright Kenneth Reitz","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/requests@2.32.4"}]},{"name":"pyjwt","SPDXID":"SPDXRef-pypi-pyjwt-2.10.1-75c946","versionInfo":"2.10.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2015-2022 Jose Padilla, Copyright 2015-2022 Jose Padilla, copyright 2015-2022, Jose Padilla","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/pyjwt@2.10.1"}]},{"name":"flask-cors","SPDXID":"SPDXRef-pypi-flask-cors-6.0.1-75c946","versionInfo":"6.0.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flask-cors@6.0.1"}]},{"name":"google-adk","SPDXID":"SPDXRef-pypi-google-adk-1.12-75c946","versionInfo":"1.12","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/google-adk@1.12"}]},{"name":"webfactory/ssh-agent","SPDXID":"SPDXRef-githubactions-webfactory-ssh-agent-0.9.0-75c946","versionInfo":"0.9.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:githubactions/webfactory/ssh-agent@0.9.0"}]},{"name":"actions/checkout","SPDXID":"SPDXRef-githubactions-actions-checkout-6..-75c946","versionInfo":"6.*.*","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:githubactions/actions/checkout@6.%2A.%2A"}]},{"name":"actions/setup-python","SPDXID":"SPDXRef-githubactions-actions-setup-python-6..-75c946","versionInfo":"6.*.*","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:githubactions/actions/setup-python@6.%2A.%2A"}]},{"name":"google-github-actions/auth","SPDXID":"SPDXRef-githubactions-google-github-actions-auth-3..-75c946","versionInfo":"3.*.*","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:githubactions/google-github-actions/auth@3.%2A.%2A"}]},{"name":"astral-sh/setup-uv","SPDXID":"SPDXRef-githubactions-astral-sh-setup-uv-6..-75c946","versionInfo":"6.*.*","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:githubactions/astral-sh/setup-uv@6.%2A.%2A"}]},{"name":"com.github.google/adk-python","SPDXID":"SPDXRef-github-google-adk-python-main-fd8cbf","versionInfo":"main","downloadLocation":"git+https://github.com/google/adk-python","filesAnalyzed":false,"licenseDeclared":"Apache-2.0","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:github/google/adk-python@main"}]}],"relationships":[{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-youtube-search-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-google-auth-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-opentelemetry-exporter-otlp-proto-http-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-opentelemetry-sdk-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-githubactions-astral-sh-setup-uv-1..-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-google-adk-1.12-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-githubactions-astral-sh-setup-uv-6..-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-google-cloud-bigquery-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-jsonschema-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-google-cloud-speech-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-google-cloud-bigquery-storage-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-githubactions-actions-checkout-4..-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-google-genai-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-termcolor-3.1.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-aiosqlite-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-pyjwt-2.10.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-githubactions-actions-checkout-6..-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-google-cloud-discoveryengine-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-flask-3.1.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-python-dotenv-1.1.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-opentelemetry-exporter-gcp-monitoring-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-sqlalchemy-spanner-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-tenacity-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-google-cloud-spanner-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-typing-extensions-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-requests-2.32.4-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-google-cloud-storage-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-rich-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-websockets-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-githubactions-webfactory-ssh-agent-0.9.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-githubactions-actions-setup-python-6..-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-githubactions-google-github-actions-auth-3..-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-python-dateutil-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-graphviz-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-authlib-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-playwright-1.52.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-pyyaml-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-githubactions-astral-sh-setup-uv-5..-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-uvicorn-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-mcp-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-httpx-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-requests-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-google-cloud-bigtable-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-google-adk-1.15.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-browserbase-1.3.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-anyio-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-click-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-python-dotenv-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-opentelemetry-resourcedetector-gcp-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-githubactions-actions-github-script-8..-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-opentelemetry-exporter-gcp-logging-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-sqlalchemy-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-watchdog-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-githubactions-actions-setup-python-5..-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-flask-cors-6.0.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-google-api-python-client-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-fastapi-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-opentelemetry-exporter-gcp-trace-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-google-cloud-aiplatform-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-google-cloud-pubsub-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-starlette-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-opentelemetry-api-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-tzlocal-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-pyarrow-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-google-cloud-secret-manager-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-google-adk-python-main-fd8cbf","relatedSpdxElement":"SPDXRef-pypi-pydantic-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-DOCUMENT","relatedSpdxElement":"SPDXRef-github-google-adk-python-main-fd8cbf","relationshipType":"DESCRIBES"}]}