{"id":19925634,"url":"https://github.com/paloaltonetworks/pan-cortex-data-lake-python","last_synced_at":"2025-05-05T19:55:30.994Z","repository":{"id":46569603,"uuid":"125560002","full_name":"PaloAltoNetworks/pan-cortex-data-lake-python","owner":"PaloAltoNetworks","description":"Python idiomatic SDK for Cortex™ Data Lake.","archived":false,"fork":false,"pushed_at":"2025-03-24T15:55:10.000Z","size":1337,"stargazers_count":45,"open_issues_count":4,"forks_count":21,"subscribers_count":13,"default_branch":"master","last_synced_at":"2025-05-04T02:46:02.394Z","etag":null,"topics":["api","applicationframework","cortex","data","datalake","directory","directory-sync","directory-sync-service","event","event-service","logging","logging-service","paloalto","paloaltonetworks","pan","pancloud","panw","python","rest-api","sdk"],"latest_commit_sha":null,"homepage":"https://cortex.pan.dev/docs/data_lake/develop/cdl_python_installation","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"isc","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PaloAltoNetworks.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":"SUPPORT.md","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-03-16T19:17:52.000Z","updated_at":"2025-03-30T00:44:32.000Z","dependencies_parsed_at":"2024-11-19T20:32:20.075Z","dependency_job_id":"057d5931-d9db-43be-b32f-f08438734b6d","html_url":"https://github.com/PaloAltoNetworks/pan-cortex-data-lake-python","commit_stats":null,"previous_names":["paloaltonetworks/pancloud"],"tags_count":27,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaloAltoNetworks%2Fpan-cortex-data-lake-python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaloAltoNetworks%2Fpan-cortex-data-lake-python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaloAltoNetworks%2Fpan-cortex-data-lake-python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaloAltoNetworks%2Fpan-cortex-data-lake-python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PaloAltoNetworks","download_url":"https://codeload.github.com/PaloAltoNetworks/pan-cortex-data-lake-python/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252568330,"owners_count":21769428,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","applicationframework","cortex","data","datalake","directory","directory-sync","directory-sync-service","event","event-service","logging","logging-service","paloalto","paloaltonetworks","pan","pancloud","panw","python","rest-api","sdk"],"created_at":"2024-11-12T22:23:28.416Z","updated_at":"2025-05-05T19:55:30.918Z","avatar_url":"https://github.com/PaloAltoNetworks.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"![Tests](https://github.com/PaloAltoNetworks/pan-cortex-data-lake-python/workflows/Tests/badge.svg) ![PyPI upload](https://github.com/PaloAltoNetworks/pan-cortex-data-lake-python/workflows/PyPI%20upload/badge.svg?branch=master) [![PyPI version](https://badge.fury.io/py/pan-cortex-data-lake.svg)](https://badge.fury.io/py/pan-cortex-data-lake)\n\n# Palo Alto Networks Cortex™ Data Lake SDK\n\nPython idiomatic SDK for the Cortex™ Data Lake.\n\nThe Palo Alto Networks Cortex Data Lake Python SDK was created to assist\ndevelopers with programmatically interacting with the Palo Alto Networks\nCortex™ Data Lake API.\n\nThe primary goal is to provide full, low-level API coverage for the\nfollowing Cortex™ Data Lake services:\n\n-   Query Service\n\nThe secondary goal is to provide coverage, in the form of helpers, for\ncommon tasks/operations.\n\n-   Log/event pagination\n-   OAuth 2.0 and token refreshing\n\nResources:\n\n-   Documentation: \u003chttps://cortex.pan.dev\u003e\n-   Free software: [ISC license](https://choosealicense.com/licenses/isc/)\n\n---\n\n## Features\n\n-   HTTP client wrapper for the popular Requests library with full access to its features.\n-   Language bindings for Query Service.\n-   Helper methods for performing common tasks, such as log/event pagination.\n-   Support for OAuth 2.0 grant code authorization flow.\n-   Library of example scripts illustrating how to leverage the SDK.\n-   Support for API Explorer Developer Tokens for easier access to API!\n\n## Status\n\nThe Palo Alto Networks Cortex™ Data Lake Python SDK is considered **beta** at this time.\n\n## Installation\n\nFrom PyPI:\n\n```bash\npip install pan-cortex-data-lake\n```\n\nFrom source:\n\n```bash\npip install .\n```\n\nTo run tests:\n\n```bash\npip install .[test]\n```\n\n## Obtaining and Using OAuth 2.0 Tokens\n\nIf you're an app developer, work with your Developer Relations representative to obtain your OAuth2 credentials. API Explorer may optionally be used to generate a Developer Token, which can also be used to authenticate with the API. For details on API Explorer developer tokens, please visit \u003chttps://cortex.pan.dev/docs/data_lake/learn/developer_tokens\u003e.\n\n# Example\n\n```python\nfrom pan_cortex_data_lake import Credentials, QueryService\n\n\nc = Credentials()\nqs = QueryService(credentials=c)\nquery_params = {\n    \"query\": \"SELECT * FROM `1234567890.firewall.traffic` LIMIT 1\",\n}\nq = qs.create_query(query_params=query_params)\nresults = qs.get_job_results(job_id=q.json()['jobId'])\nprint(results.json())\n```\n\n# Contributors\n\n\u003ca href=\"https://github.com/PaloAltoNetworks/pan-cortex-data-lake-python/graphs/contributors\"\u003e\n  \u003cimg src=\"https://contrib.rocks/image?repo=PaloAltoNetworks/pan-cortex-data-lake-python\" /\u003e\n\u003c/a\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpaloaltonetworks%2Fpan-cortex-data-lake-python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpaloaltonetworks%2Fpan-cortex-data-lake-python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpaloaltonetworks%2Fpan-cortex-data-lake-python/lists"}