{"id":19123140,"url":"https://github.com/digitalbazaar/payswarm-python","last_synced_at":"2025-07-30T06:12:56.640Z","repository":{"id":1479763,"uuid":"1724902","full_name":"digitalbazaar/payswarm-python","owner":"digitalbazaar","description":"Python client library for PaySwarm","archived":false,"fork":false,"pushed_at":"2013-07-05T20:12:13.000Z","size":228,"stargazers_count":9,"open_issues_count":0,"forks_count":2,"subscribers_count":16,"default_branch":"master","last_synced_at":"2025-05-05T19:03:16.541Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://payswarm.com/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/digitalbazaar.png","metadata":{"files":{"readme":"README.rst","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":"2011-05-09T21:39:46.000Z","updated_at":"2020-06-27T11:32:53.000Z","dependencies_parsed_at":"2022-07-29T17:48:54.902Z","dependency_job_id":null,"html_url":"https://github.com/digitalbazaar/payswarm-python","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/digitalbazaar/payswarm-python","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digitalbazaar%2Fpayswarm-python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digitalbazaar%2Fpayswarm-python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digitalbazaar%2Fpayswarm-python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digitalbazaar%2Fpayswarm-python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/digitalbazaar","download_url":"https://codeload.github.com/digitalbazaar/payswarm-python/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digitalbazaar%2Fpayswarm-python/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267820998,"owners_count":24149296,"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","status":"online","status_checked_at":"2025-07-30T02:00:09.044Z","response_time":70,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":"2024-11-09T05:24:30.959Z","updated_at":"2025-07-30T06:12:56.583Z","avatar_url":"https://github.com/digitalbazaar.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"payswarm-python\n===============\n\nIntroduction\n------------\n\nThis is a Python_ implementation of a PaySwarm_ client. Some features of this client:\n\n- Generating and public/private key pairs.\n- Registering public keys with a PaySwarm Authority.\n- Digitally signing and verifying JSON-LD_ data such as assets and listings.\n- Registering assets for sale.\n- Registering listings.\n- Performing purchases.\n\nYou may also be interested in the similar JavaScript project. It includes a\nnode.js_ based command line client with addtional features:\n\n- https://github.com/digitalbazaar/payswarm.js\n\nRequirements\n------------\n\n- Python_ (\u003e= 2.5)\n- PyCrypto_ (\u003e= 2.6)\n- PyLD_ (\u003e= 0.1.0)\n- argparse_ (\u003e= 1.2.1)\n- urllib3_ (\u003e= 1.6)\n- ndg-httpsclient_ (\u003e= 0.3.2)\n- pyOpenSSL_ (\u003e= 0.13)\n- pyasn1_ (\u003e= 0.1.7)\n\nurllib3_ is used by default instead of standard modules due to the Python_ 2.x\nseries not supporting SNI_. The SNI_ support in urllib3_ requires pyOpenSSL_,\nndg-httpsclient_, and pyasn1_. The code will fallback to using ``urllib2`` if\nurllib3 is not available but be aware that SNI_ support will silently be absent\nwhich can cause confusing errors when fetching network resources.\n\nTest Requirements\n-----------------\n\nTests can be run with the standard ``unittest`` module or nose_. Coverage\ntesting requires nose_ and coverage_.\n\n- coverage_ (\u003e 3.6)\n- nose_ (\u003e= 1.3.0)\n\nInstallation\n------------\n\nThe easiest installation method is to use ``pip``::\n\n    pip install payswarm\n\nTo install testing requirements::\n\n    pip install -r test-requirements.txt\n\nUsage\n-----\n\nTo configure a PaySwarm client run the following command::\n\n    ./payswarm config\n\nTo register a listing::\n\n    ./payswarm register listings/test.json\n\nTo perform a purchase of the listing::\n\n    ./payswarm purchase listings/test.json\n\nOnce you purchase a listing, future purchases of that listing will not\ncharge you any money. You may re-purchase the item by re-registering the\nasset and listing, which will force a new digital signature on the items,\nthus allowing you to purchase the newly registered item.\n\nTesting\n-------\n\nTesting with nose_::\n\n    make test\n\nCoverage testing with nose_ and coverage_ with results in ./cover/::\n\n    make cover\n\nTesting with standard ``unittest`` module::\n\n    make unittest-test\n\nCleaning up coverage output::\n\n    make clean\n\n\nAuthors\n-------\n\nThis software was written by `Digital Bazaar`_ and friends. Please see the\nAUTHORS_ file for full credits.\n\nLicense\n-------\n\nPlease see the LICENSE_ file for full license details.\n\n.. _PaySwarm: http://payswarm.com/\n.. _Digital Bazaar: http://digitalbazaar.com/\n.. _JSON-LD: http://json-ld.org/\n.. _node.js: http://nodejs.org/\n.. _SNI: http://en.wikipedia.org/wiki/Server_Name_Indication\n.. _AUTHORS: AUTHORS\n.. _LICENSE: LICENSE\n\n.. _Python: http://www.python.org/\n\n.. _PyCrypto: http://www.pycrypto.org/\n.. _PyLD: https://pypi.python.org/pypi/PyLD\n.. _argparse: https://pypi.python.org/pypi/argparse\n.. _coverage: https://pypi.python.org/pypi/coverage\n.. _ndg-httpsclient: https://pypi.python.org/pypi/ndg-httpsclient\n.. _nose: https://pypi.python.org/pypi/nose/\n.. _pyOpenSSL:  https://pypi.python.org/pypi/pyOpenSSL\n.. _pyasn1: https://pypi.python.org/pypi/pyasn1\n.. _urllib3: https://pypi.python.org/pypi/urllib3\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdigitalbazaar%2Fpayswarm-python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdigitalbazaar%2Fpayswarm-python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdigitalbazaar%2Fpayswarm-python/lists"}