{"id":19879977,"url":"https://github.com/passbolt/lab-passbolt-py","last_synced_at":"2025-05-02T13:31:53.962Z","repository":{"id":38357576,"uuid":"478586545","full_name":"passbolt/lab-passbolt-py","owner":"passbolt","description":"Python library for Passbolt API","archived":false,"fork":false,"pushed_at":"2024-02-13T10:23:52.000Z","size":78,"stargazers_count":8,"open_issues_count":4,"forks_count":7,"subscribers_count":7,"default_branch":"main","last_synced_at":"2024-11-10T13:43:39.786Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://passbolt.com","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit-0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/passbolt.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-04-06T14:05:10.000Z","updated_at":"2024-10-28T18:54:42.000Z","dependencies_parsed_at":"2022-08-25T05:01:26.183Z","dependency_job_id":null,"html_url":"https://github.com/passbolt/lab-passbolt-py","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/passbolt%2Flab-passbolt-py","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/passbolt%2Flab-passbolt-py/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/passbolt%2Flab-passbolt-py/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/passbolt%2Flab-passbolt-py/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/passbolt","download_url":"https://codeload.github.com/passbolt/lab-passbolt-py/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224315249,"owners_count":17290992,"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":[],"created_at":"2024-11-12T17:09:53.315Z","updated_at":"2024-11-12T17:09:54.030Z","avatar_url":"https://github.com/passbolt.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"```\n👩  This project is part of the passbolt \"lab\"!\n⚗️   It is used to illustrate an article or as a conversation starter.\n🧪  Use at your own risks!\n```\n\n## Copyright \u0026 License\n\n(c) 2021 Passbolt SA\n\nPassbolt is registered trademark of Passbolt S.A.\n\nMIT No Attribution - https://opensource.org/licenses/MIT-0\n\n# py-passbolt\n\n## About\n\nPython library for Passbolt API based on [httpx](https://www.python-httpx.org/) and [PGPy](https://pgpy.readthedocs.io/en/latest/).\n\nYou can also use [python-gnupg](https://docs.red-dove.com/python-gnupg/) if needed but it is not the default.\n\n## How to install\n\n```\npython -m pip install py-passbolt\n```\n## How to use\n\n### config.json configuration file\n\nBasically, create a `config.json` file containing needed configuration. You will find samples:\n\n* For PGPy (default): [config.json.PGPy.sample](https://gitlab.com/AnatomicJC/py-passbolt/-/blob/main/config.json.PGPy.sample)\n* For python-gnupg: [config.json.gnupg.sample](https://gitlab.com/AnatomicJC/py-passbolt/-/blob/main/config.json.gnupg.sample)\n\nThen have a look at [https://gitlab.com/AnatomicJC/py-passbolt/-/blob/main/example.py](example.py) python script.\n\n### Environment variables\n\nMandatory:\n\n* PASSBOLT_BASE_URL: Your passbolt URL\n\nFor PGPy:\n\n* PASSBOLT_PRIVATE_KEY: Your passbolt private key in one-line format (See below about how to format)\n* PASSBOLT_PASSPHRASE: Your passbolt passphrase\n\nFor python-gnupg:\n\n* PASSBOLT_GPG_BINARY (Optional): path to your gpg binary, default to \"gpg\"\n* PASSBOLT_GPG_LIBRARY: Set this to gnupg, otherwise it will be the default \"PGPy\"\n* PASSBOLT_FINGERPRINT: The OpenPGP key fingerprint to use\n## How to set OpenPGP key in config.json or environment variables\n\n### Linux:\n\n```\nsed -z 's/\\n/\\\\n/g' private.asc\n```\n\n### MacOS\n\nInstall `gnu-sed` with brew:\n\n```\n$ brew install gnu-sed\n```\n\nUse gsed instead of sed:\n\n```\ngsed -z 's/\\n/\\\\n/g' private.asc\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpassbolt%2Flab-passbolt-py","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpassbolt%2Flab-passbolt-py","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpassbolt%2Flab-passbolt-py/lists"}