{"id":28781032,"url":"https://github.com/workday/prism-python","last_synced_at":"2026-03-07T21:01:52.436Z","repository":{"id":42697246,"uuid":"220556243","full_name":"Workday/prism-python","owner":"Workday","description":"Python client library for interacting with Workday’s Prism API.","archived":false,"fork":false,"pushed_at":"2025-05-21T23:34:58.000Z","size":261,"stargazers_count":17,"open_issues_count":2,"forks_count":10,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-06-17T18:52:01.711Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Workday.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":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-11-08T22:17:29.000Z","updated_at":"2025-05-21T23:35:02.000Z","dependencies_parsed_at":"2023-11-06T05:22:23.445Z","dependency_job_id":"b514a55b-2baa-4b22-a983-a0955895c3ca","html_url":"https://github.com/Workday/prism-python","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/Workday/prism-python","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Workday%2Fprism-python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Workday%2Fprism-python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Workday%2Fprism-python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Workday%2Fprism-python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Workday","download_url":"https://codeload.github.com/Workday/prism-python/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Workday%2Fprism-python/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30231489,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-07T19:01:10.287Z","status":"ssl_error","status_checked_at":"2026-03-07T18:59:58.103Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":[],"created_at":"2025-06-17T18:39:33.024Z","updated_at":"2026-03-07T21:01:52.429Z","avatar_url":"https://github.com/Workday.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"![Python package](https://github.com/Workday/prism-python/workflows/Python%20package/badge.svg)\n\n# Prism-Python\n\nPython client library and command line interface (CLI) for interacting with\nWorkday’s Prism API V3.\n\nWorkday provides the Prism Analytics REST API web service to work with\nWorkday Prism Analytics tables, data change tasks, and datasets. You can develop\na software program that uses the different REST endpoints to \nprogrammatically create Prism Analytics tables and datasets and modify \ndata in them.\n\nThe Python **client library** is a REST API wrapper managing the HTTP methods,\nURL endpoints and the data required by specific Workday Prism Analytics API\nREST operations.  Using this client library in Python projects simplifies interactions\nwith the Workday Prism Analytics REST API providing the rich functionality\nof Workday Prism Analytics to your Python project.\n\nThe **CLI** is a powerful tool for interacting with a Workday Prism Analytics \nREST API client library, allowing you to quickly and easily perform Workday \nPrism Analytics tasks from any command line.\n\n## Install\n\nTo automatically retrieve and install the latest version of this\npackage directly GitHub, use the following command:\n\n```bash\n$ pip install git+https://github.com/Workday/prism-python.git\n```\n\nIt is also possible to install a specific tagged release with:\n\n```bash\n$ pip install git+https://github.com/Workday/prism-python.git@0.3.0\n```\n\n## Requirements\n\nWorkday Prism Analytics REST APIs use OAuth authentication and the Workday \nconfigurable security model to authorize Workday Prism Analytics operations\nin end-user applications.  The Workday Prism REST APIs act on behalf of \na Workday user using the client. The user's security profile affects the \nREST API access to Workday resources.\n\nThe Prism client library, and by extension the CLI, require API Client \ncredentials setup in the target Workday tenant.  The API Client credentials \nauthorize programmatic access to the Workday tenant and provides the identity\nof the Workday user to enforce security for all operations.\n\n1. [Register a Workday Prism Analytics API Client.](https://doc.workday.com/admin-guide/en-us/workday-studio/integration-design/common-components/the-prismanalytics-subassembly/tzr1533120600898.html)\n2. [Create Refresh Token](https://doc.workday.com/reader/J1YvI9CYZUWl1U7_PSHyHA/L_RKkfJI6bKu1M2~_mfesQ)\n3. [Obtain the Workday REST API Endpoint.](https://doc.workday.com/reader/J1YvI9CYZUWl1U7_PSHyHA/L_RKkfJI6bKu1M2~_mfesQ)\n\n\n## Python Example\n\n### Create a new table with Prism API Version 3\n\n```{python}\nimport os\nimport prism\n\n# initialize the prism class with your credentials\np = prism.Prism(\n    os.getenv(\"workday_base_url\"),\n    os.getenv(\"workday_tenant_name\"),\n    os.getenv(\"prism_client_id\"),\n    os.getenv(\"prism_client_secret\"),\n    os.getenv(\"prism_refresh_token\")\n)\n\n# create a new table based on the schema.json file\ntable = prism.tables_create(\n    p,\n    table_name=\"my_new_table\",\n    file=\"/path/to/schema.json\"\n)\n\n# print JSON response body describing the new table.\nprint(table)\n```\n\n### Manage data in an existing table with Prism API Version 3\nTable Operations Available: `TruncateandInsert`, `Insert`, `Update`, `Upsert`,\n`Delete`.\n\n```{python}\nprism.upload_file(\n    p,\n    file=\"/path/to/data.csv.gz\", \n    table_id=table[\"id\"],\n    operation=\"Insert\"\n)\n```\n\n## CLI Example\n\n```bash\n# get help with the CLI\n$ prism --help\n\n# get help for the tables command\n$ prism tables --help\n\n# list Prism tables you have access to.\n$ prism tables get\n\n# create a new Prism table \n$ prism tables create my_new_table /path/to/schema.json\n\n# upload data to the new table\n$ prism tables upload 83dd72bd7b911000ca2d790e719a0000 /path/to/file1.csv.gz\n```\n\n## Bugs\nPlease report any bugs that you find [here](https://github.com/Workday/prism-python/issues).\nOr, even better, fork the repository on [GitHub](https://github.com/Workday/prism-python)\nand create a pull request (PR). We welcome all changes, big or small, and we\nwill help you make the PR if you are new to `git`.\n\n## License\nReleased under the Apache-2.0 license (see [LICENSE](https://github.com/Workday/prism-python/blob/master/LICENSE))\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fworkday%2Fprism-python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fworkday%2Fprism-python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fworkday%2Fprism-python/lists"}