Pixeltable Cloud is in Limited Beta. Email [email protected] if you are interested.
app.py as the Quickstart. Create an API key in the Cloud dashboard, export it, then create the hosted database, the tables, and hosted HTTP.
Get an API key
Sign in from the browser, create a key, then export it. The CLI readsPIXELTABLE_API_KEY. It does not log you in.
1
Sign in
Cloud is in Limited Beta. Email [email protected] to get an account. Once you have one, sign in at pixeltable.com/login and the dashboard opens your organization.
2
Create a key
Open API Keys in the organization sidebar, or go to
https://www.pixeltable.com/dashboard/your-org/api-keys. Click New, or Create API Key if the list is empty. Name the key. Click Create Key. Copy the value now. The dashboard shows the full key once.3
Export it
.env file on its own, so source one yourself first (set -a; source .env; set +a). Do not write api_key in config.toml. Configuration. This key authenticates Cloud CLI and hosted HTTP. Provider keys such as OPENAI_API_KEY go under Secrets in the dashboard, or pxt secret set pxt://org OPENAI_API_KEY=.... They do not go in this API key. CLI.pxt init writes pixeltable.toml. Put the hosted URL in that file, then run the three commands:
/table. Open it with t = pxt.get_table('pxt://org:mydb/docs'). A local table uses dotted namespace.table, such as pxt.get_table('my_app.docs').
pxt.Image, pxt.Video, pxt.Audio, or pxt.Document: media pipelines, RAG.
pxt db update creates the hosted database, uploads the project files, and updates its image and size. It does not insert your data and does not start app endpoints. pxt schema update creates the tables. It does not start the endpoints. pxt service update starts hosted endpoints. Do not use pxt service run for Cloud; that command only starts endpoints in your local terminal.
After the database is up, insert from the Cloud dashboard or from Python. A local file path on a Cloud table uploads the file. Run pxt schema diff app.py pxt://org:mydb to see pending schema changes.
What the database runs
A hosted database runs two things that come from your project, and they move independently.- The image holds the Python environment: your dependencies, the Python version, and any system
packages.
pxt db updaterebuilds it only when that environment changed, which is the slow step. - The project files are your
app.pyand whatever else the entry selects. They are uploaded on their own, without a rebuild.
pyproject.toml costs a build. Both are
pxt db update; it works out which happened.
[[pixeltable.database]] in pixeltable.toml declares which files are selected, what the image
holds, and the CPU, memory, disk, and worker counts. See the
cloud configuration reference.
What to run after a change
pxt db diff pxt://org:mydb prints what update would do without doing it.
Operate it
pxt db status is where the hosted endpoint comes from; do not hardcode a hostname. Deleting is
pxt db delete pxt://org:mydb, and it takes the storage with it. Full reference:
CLI.
Media on the home bucket
Every Cloud database includes a managed Media Store atpxtfs://org:mydb/home. Hosted tables and services write there automatically. No destination=, no dest env vars.
Set dest only for two cases:
- Local Pixeltable writing into that same bucket:
PIXELTABLE_API_KEYplusPIXELTABLE_INPUT_MEDIA_DEST/PIXELTABLE_OUTPUT_MEDIA_DEST(see Cloud storage). - Your own bucket: store
AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY(or GCS / Azure names) under Secrets orpxt secret, then point those dest env vars ats3://,gs://, orwasbs://. A single computed column can also setdestination=:
Local vs Cloud
Request an account
Cloud is in Limited Beta.
Book a demo
Talk through a Cloud deployment.