Python client for the Scalix API. Provides async access to chat, research, audio, images, text, RAG, document generation, database, storage, and account management.
Installation
pipinstallscalix
Quick Start
fromscaliximportScalixClientscalix=ScalixClient(api_key="sk_scalix_...")# Chat completion (OpenAI-compatible)result=awaitscalix.chat.complete(messages=[{"role":"user","content":"Hello!"}],model="scalix-world-ai",)# Streaming chatasyncforchunkinscalix.chat.stream(messages=[{"role":"user","content":"Tell me a story"}],model="scalix-world-ai",):print(chunk,end="")# Web searchresults=awaitscalix.research.search("quantum computing")# Deep researchdeep=awaitscalix.research.deep("compare fusion reactor designs")# Text-to-speechaudio=awaitscalix.audio.speak("Hello world",voice="af_heart")# Audio transcriptionwithopen("audio.mp3","rb")asf:transcript=awaitscalix.audio.transcribe(f)# Image generationimage=awaitscalix.images.generate("A sunset over mountains")job=awaitscalix.images.generate_async("A detailed cityscape")# Text utilitiessentiment=awaitscalix.text.sentiment("I love this product!")summary=awaitscalix.text.summarize(long_article)translated=awaitscalix.text.translate("Hello",target_language="es")# RAG — upload and query documentsdoc=awaitscalix.rag.upload(pdf_file,filename="report.pdf")hits=awaitscalix.rag.query("revenue growth")# Document generationreport=awaitscalix.docgen.create(prompt="Q1 report",format="pdf")# ScalixDBdbs=awaitscalix.database.list_databases()result=awaitscalix.database.query(db_id,"SELECT * FROM users")# Account — manage API keyskeys=awaitscalix.account.list_api_keys()new_key=awaitscalix.account.create_api_key("production-key")# Usage trackingusage=awaitscalix.account.usage(start_date="2026-04-01")
Override API base URL (default: https://api.scalix.world)
API Reference
Chat
Method
Endpoint
SDK Method
POST
/v1/chat/completions
scalix.chat.complete(messages)
POST
/v1/chat/completions
scalix.chat.stream(messages) (streaming)
GET
/v1/models
scalix.chat.models()
Research
Method
Endpoint
SDK Method
POST
/v1/research/search
scalix.research.search(query)
POST
/v1/research
scalix.research.research(query)
POST
/v1/research/deep
scalix.research.deep(query)
Audio
Method
Endpoint
SDK Method
POST
/v1/audio/transcribe
scalix.audio.transcribe(file)
POST
/v1/audio/speak/kokoro
scalix.audio.speak(text)
GET
/v1/audio/kokoro/voices
scalix.audio.voices()
GET
/v1/audio/kokoro/languages
scalix.audio.languages()
Images
Method
Endpoint
SDK Method
POST
/v1/images/generate
scalix.images.generate(prompt)
POST
/v1/images/generate/queue
scalix.images.generate_async(prompt)
GET
/v1/images/jobs/{jobId}
scalix.images.get_job(job_id)
GET
/v1/images/jobs/{jobId}/result
scalix.images.get_job_result(job_id)
GET
/v1/images/models
scalix.images.models()
Text
Method
Endpoint
SDK Method
POST
/v1/text/sentiment
scalix.text.sentiment(text)
POST
/v1/text/summarize
scalix.text.summarize(text)
POST
/v1/text/translate
scalix.text.translate(text, target_language)
RAG
Method
Endpoint
SDK Method
POST
/v1/rag/upload
scalix.rag.upload(file)
POST
/v1/rag/query
scalix.rag.query(query)
GET
/v1/rag/documents
scalix.rag.documents()
DELETE
/v1/rag/documents/{docId}
scalix.rag.delete_document(doc_id)
Document Generation
Method
Endpoint
SDK Method
POST
/v1/docgen/create
scalix.docgen.create(prompt, format)
POST
/v1/docgen/preview
scalix.docgen.preview(prompt)
GET
/v1/docgen/formats
scalix.docgen.formats()
GET
/v1/docgen/templates
scalix.docgen.templates()
GET
/v1/docgen/history
scalix.docgen.history()
POST
/v1/docgen/revise
scalix.docgen.revise(doc_id, prompt)
GET
/v1/docgen/versions/{docId}
scalix.docgen.versions(doc_id)
Storage
Method
Endpoint
SDK Method
POST
/v1/storage/upload-url
scalix.storage.get_upload_url(mime_type)
ScalixDB
Method
Endpoint
SDK Method
GET
/api/scalixdb/databases
scalix.database.list_databases()
POST
/api/scalixdb/databases
scalix.database.create_database(name)
GET
/api/scalixdb/databases/{id}
scalix.database.get_database(db_id)
DELETE
/api/scalixdb/databases/{id}
scalix.database.delete_database(db_id)
POST
/api/scalixdb/databases/{id}/query
scalix.database.query(db_id, sql)
GET
/api/scalixdb/databases/{id}/tables
scalix.database.tables(db_id)
GET
/api/scalixdb/databases/{id}/metrics
scalix.database.metrics(db_id)
Account
Method
Endpoint
SDK Method
GET
/health
scalix.account.health()
GET
/api/dashboard/api-keys
scalix.account.list_api_keys()
POST
/api/dashboard/api-keys
scalix.account.create_api_key(name)
DELETE
/api/dashboard/api-keys/{id}
scalix.account.delete_api_key(key_id)
GET
/api/billing/usage
scalix.account.usage()
Error Handling
fromscaliximportScalixClient,ScalixError,AuthenticationErrorscalix=ScalixClient(api_key="sk_scalix_...")try:result=awaitscalix.chat.complete(messages=[{"role":"user","content":"Hello"}],)exceptAuthenticationError:print("Invalid API key")exceptScalixErrorase:print(f"API error: {e}")