{"id":28062,"library":"prismatoid","title":"Prismatoid (PARI)","description":"The Platform-Agnostic Reader Interface for Speech and Messages (PARI). Version 0.14.4. Active development; monthly releases.","status":"active","version":"0.14.4","language":"python","source_language":"en","source_url":"https://github.com/pari-org/prismatoid","tags":["async","messaging","speech","api-client"],"install":[{"cmd":"pip install prismatoid","lang":"bash","label":"Install"}],"dependencies":[{"reason":"Async HTTP client for API calls","package":"httpx","optional":true},{"reason":"Data validation and settings management","package":"pydantic","optional":false}],"imports":[{"note":"Prismatoid is the main class, not a module.","wrong":"import prismatoid","symbol":"Prismatoid","correct":"from prismatoid import Prismatoid"},{"note":"Message model moved to models submodule in 0.12.","wrong":"from prismatoid import Message","symbol":"Message","correct":"from prismatoid.models import Message"}],"quickstart":{"code":"import os\nimport asyncio\nfrom prismatoid import Prismatoid\nfrom prismatoid.models import Message\n\nasync def main():\n    # Uses environment variable PRISMATOID_API_KEY if not provided\n    client = Prismatoid(api_key=os.environ.get('PRISMATOID_API_KEY', 'test-key'))\n    msg = Message(text=\"Hello, world!\")\n    response = await client.send(msg)\n    print(response)\n\nasyncio.run(main())","lang":"python","description":"Basic async usage sending a message."},"warnings":[{"fix":"Change imports to from prismatoid.models import Message, etc.","message":"In version 0.12 the models were moved from top-level to prismatoid.models. Old imports (from prismatoid import Message) will break.","severity":"breaking","affected_versions":">=0.12"},{"fix":"Add await before calls: response = await client.send(msg).","message":"Async methods (send, receive) now require awaiting. Calling them without await will raise TypeError.","severity":"breaking","affected_versions":">=0.10"},{"fix":"Set PRISMATOID_API_KEY environment variable or pass api_key='key' to Prismatoid().","message":"The API key must be set via environment variable or passed to constructor. If not set, client uses a test key that only works in local dev mode.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-05-09T00:00:00.000Z","next_check":"2026-08-07T00:00:00.000Z","problems":[{"fix":"pip install --upgrade prismatoid","cause":"Old library version (<0.10) had a different structure; or the library is not installed.","error":"ImportError: cannot import name 'Prismatoid' from 'prismatoid'"},{"fix":"Change to: response = await client.send(msg)","cause":"Forgetting await on the send call.","error":"TypeError: object Message can't be used in 'await' expression"},{"fix":"Set PRISMATOID_API_KEY environment variable or pass api_key='your-key'.","cause":"Missing API key.","error":"ValueError: No API key provided and PRISMATOID_API_KEY not set"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}