Vortexify

SecurityPricingDocs
Try for free

Documentation

Learn how Vortexify organizes workspace data, connectors, tables, syncs, schemas, and downstream workflows.

Core concepts

A high-level overview of how data moves through Vortexify, from external systems into workspace resources.

Overview

Vortexify is a workspace platform for connecting external data, preparing that data into usable workspace resources, and making it available for downstream workflows.

Core idea

Connectors bring data into the workspace. Tables prepare and expose that data. Workflows and downstream resources can then use the prepared workspace data.

Data flow

  1. Connect an external source using a connector.
  2. Configure streams that define which data should be synced.
  3. Run a sync manually or on a schedule.
  4. Create or update workspace tables from synced connector outputs.
  5. Inspect table preview, schema, metadata, and history.
  6. Use the resulting tables in downstream workspace workflows.
LayerPurpose
ConnectorsConnect to external systems and sync source data.
StreamsDefine which files, tables, sheets, or records to ingest.
Sync jobsMove data from the connected source into the workspace.
TablesPrepare synced or uploaded data for preview and use.
History and logsHelp users monitor processing and troubleshoot issues.

Connectors

Connectors allow you to connect external data sources to your workspace and sync data into Vortexify.

Overview

Each connector represents a configured source system, such as a database, warehouse, file storage provider, object storage bucket, file app, or ERP system. Once a connector is configured and activated, it can sync data into your workspace so the data can be used by downstream resources and workflows.

  • Ingest data from external systems.
  • Sync files, tables, sheets, or records into your workspace.
  • Schedule recurring data refreshes.
  • Monitor sync status, history, and logs.
  • Centralize external data access for workspace workflows.

Create a new connector

  1. Open the Connectors section in your workspace.
  2. Select New connector.
  3. Choose the connector type you want to configure.
  4. Enter a name for the connector.
  5. Complete the initial setup.
  6. Save the connector.

Draft status

After creation, the connector starts in Draft status until the required configuration is provided. A connector must be configured and activated before it can run sync jobs.

Connector configuration

You can update a connector’s configuration from the connector detail page. The exact setup fields depend on the connector type.

Connector setup fields

Field typeExamples
Connection detailsHostnames, ports, databases, buckets, folders, drives, or account identifiers.
AuthenticationAPI keys, OAuth credentials, usernames, passwords, private keys, or service account credentials.
Sync settingsTables, paths, streams, filters, or connector-specific sync options.
StreamsFiles, folders, tables, collections, sheets, or datasets to ingest.

OAuth connectors

Some connectors support OAuth-based authentication. For those connectors, use the OAuth connection button instead of manually entering credentials.

Update configuration

  1. Open the connector.
  2. Go to the Configuration tab.
  3. Edit the connection details, authentication fields, sync settings, or stream definitions.
  4. Select Save configuration.

Sensitive values

When configuration is saved, Vortexify validates and stores the connector settings. Sensitive values may be hidden or masked after saving.

Common configuration failures

  • Required fields are missing.
  • Credentials are invalid or expired.
  • The source system cannot be reached.
  • The selected database, bucket, folder, file, table, sheet, or collection does not exist.
  • The connector does not have permission to read the selected source.
  • A stream definition is incomplete or invalid.
  • A file matching pattern does not match any available files.

After correcting the issue

Save the configuration again to revalidate the connector.

Connector status

Connector status helps you understand whether the connector is ready to sync, currently syncing, or blocked by an error.

Draft

A connector is in Draft status when it has been created but has not yet been fully configured.

  • Configuration can be edited.
  • Required source details may still be missing.
  • Sync jobs cannot be run.
  • The connector cannot be activated until valid configuration is saved.

Pending

A connector is in Pending status after its source configuration has been saved but before the connector has been activated.

  • The source has been configured.
  • The connector is not yet fully active.
  • Sync jobs are not available until activation is complete.
  • You can review configuration before activating the connector.

Next step

Select Activate when you are ready to enable syncing.

Active

A connector is Active when it has been configured and activated successfully.

  • Manual syncs can be run.
  • Sync schedules can be configured.
  • Sync history is available.
  • Connector outputs can be viewed.
  • Logs can be reviewed for sync jobs.

Error and logs

A connector may show an error if configuration, activation, source discovery, or sync execution fails.

  • Authentication failures.
  • Source connection failures.
  • Missing permissions.
  • Invalid stream configuration.
  • Failed sync attempts.
  • Source-specific errors returned by the connected system.
  1. Open the connector.
  2. Look for the error indicator or logs action.
  3. Open the relevant log view.
  4. Review the failure message and attempt details.
  5. Update the configuration or rerun the sync as needed.

Connector streams

Streams define what data the connector should ingest. A stream may represent a table, database object, collection, file, file group, folder, sheet, or another source-specific unit of data.

File-based streams

File-based connectors require one or more stream definitions. A file-based stream identifies the files or file-like objects to sync.

  • Google Drive
  • Microsoft OneDrive
  • Microsoft SharePoint
  • Amazon S3
  • Azure Blob Storage
  • Google Sheets
Stream settingDescription
Stream nameA clear name used to identify connector outputs.
Folder, drive, bucket, or pathThe location to search within.
File patternThe file matching pattern for the stream.
File formatThe source file format, such as CSV, JSON, or Excel.
Sheet nameThe sheet to sync for spreadsheet-based sources.
Delimiter or parsing optionsSettings for parsing structured files.
Header configurationRules for interpreting file headers.
Schema inference settingsRules for detecting the output schema.
  1. Open the connector.
  2. Go to Configuration.
  3. Find the Streams section.
  4. Add a new stream.
  5. Enter a stream name.
  6. Configure the file, folder, sheet, or path settings.
  7. Save the configuration.

Glob inputs

Some file-based connectors support glob inputs. A glob is a file matching pattern that tells the connector which files to include in a stream.

Glob patternWhat it matches
*.csvAll CSV files in the selected folder.
*.jsonAll JSON files in the selected folder.
sales_*.csvCSV files that start with sales_.
2025/*.csvCSV files inside the 2025 folder.
2025/*/*.csvCSV files one folder below 2025, such as monthly folders.
**/*.csvCSV files in the selected folder and all nested subfolders.
reports/**/*.xlsxExcel files anywhere under the reports folder.
customer_{us,eu}.csvFiles named customer_us.csv or customer_eu.csv, if brace patterns are supported for the connector.

Best practice

Use specific glob patterns whenever possible. Broad patterns can increase sync time or ingest unrelated data.

Example

For example, if your source folder contains these files:

/orders/2025/01/orders.csv
/orders/2025/02/orders.csv
/orders/2025/03/orders.csv
/orders/archive/2024/orders.csv

You could use this pattern:

orders/2025/**/*.csv

Result

This matches CSV files under the orders/2025 folder, including files in nested monthly folders.

Best practices

  • Include the file extension when possible.
  • Use folder prefixes to narrow the search scope.
  • Avoid overly broad patterns unless you intentionally want all matching files.
  • Keep files in a consistent folder structure.
  • Use predictable naming conventions, such as orders_YYYY_MM.csv.
  • Create separate streams for files with different schemas.
  • Avoid mixing CSV, JSON, Excel, and other file types in the same stream unless the connector explicitly supports it.

Database streams

Database connectors use streams to identify the tables or database objects to ingest. A database stream typically represents a table, collection, or equivalent source object.

  • PostgreSQL
  • MySQL
  • Microsoft SQL Server
  • MongoDB
  • Azure Table Storage
  • BigQuery
  • Redshift
  • Snowflake
  1. Open the connector.
  2. Go to Configuration.
  3. Find the Streams section.
  4. Add a table, collection, or source object.
  5. Save the configuration.

Refresh behavior

Database streams are refreshed during sync so the workspace output reflects the latest synced version of the selected source data.

Sync jobs

Sync jobs move data from the connected source into your workspace. A connector must be Active before sync jobs can run.

Manual syncs

  1. Open an active connector.
  2. Select Sync Now.
  3. Wait for the sync job to start.
  4. Review the sync status in the connector detail page.
  5. Open logs if the sync fails.

Manual syncs

Manual syncs are useful when you want to refresh data immediately without waiting for the next scheduled run.

Sync schedules

  1. Open an active connector.
  2. Go to the Schedule tab.
  3. Select the schedule type.
  4. For cron schedules, enter a cron expression.
  5. Save the schedule.
Schedule modeDescription
ManualSyncs only run when started by a user.
CronSyncs run according to a cron expression.
0 */6 * * *

Cron limits

Cron schedules must meet the minimum interval allowed by your organization plan. If the schedule is too frequent, the connector will return a validation error.

Sync history

  1. Open the connector.
  2. Select View syncs.
  3. Review the recent sync table.
  4. Open logs for any sync job that needs investigation.
StatusMeaning
PendingThe sync job has been created but has not completed.
RunningThe sync job is currently in progress.
SucceededThe sync completed successfully.
FailedThe sync encountered an error.
CancelledThe sync was cancelled.
IncompleteThe sync did not fully complete.

Sync metrics

MetricUseful for
Bytes syncedEstimating sync size, monitoring data volume, identifying unexpectedly large or small syncs, and comparing sync activity across time periods.
Rows syncedConfirming expected data was ingested, detecting empty or partial syncs, monitoring source volume, and comparing sync results across streams.

Connector types

Relational databaseIdentifier
Microsoft SQL Servermssql
MySQLmysql
PostgreSQLpostgres
NoSQL databaseIdentifier
MongoDBmongodb_v2
Azure Table Storageazure_table
Data warehouseIdentifier
BigQuerybigquery
Redshiftredshift
Snowflakesnowflake
ERP systemIdentifier
NetSuitenetsuite
Oracleoracle
Object storageIdentifier
Amazon S3s3
Azure Blob Storageazure_blob_storage
File appIdentifier
Google Sheetsgoogle_sheets
File storageIdentifier
Microsoft SharePointmicrosoft_sharepoint
Google Drivegoogle_drive
Microsoft OneDrivemicrosoft_onedrive

Request a new connector

  • Source system name.
  • Source system category, such as database, warehouse, file storage, SaaS app, or ERP.
  • Required authentication method.
  • Example data you want to sync.
  • Whether the data is table based, file based, API based, or event based.
  • Expected sync frequency.
  • Approximate data volume.
  • Any compliance or network requirements.

Urgent connector needs

For urgent connector needs, include the business use case and target timeline in your request.

Tables

Tables are structured datasets in your workspace. They can be created from connector syncs or uploaded files.

Overview

A table can be created from data synced through a connector or from an uploaded file. Once a table is created, Vortexify prepares the data so it can be previewed, explored, filtered, sorted, and used by downstream workflows.

  • View data synced from a connector.
  • Upload a CSV file and turn it into a workspace table.
  • Inspect a dataset’s columns and types.
  • Filter and sort records.
  • Track table processing history.
  • Troubleshoot table creation, sync, or discovery issues.

Create a new table

Tables can be created in two main ways: ingesting from a connector or uploading files. The creation method determines where the data comes from and how the table is updated over time.

Creation methodBest for
Ingest from ConnectorData that lives in an external system and should stay connected to the source.
Upload FilesOne-off datasets, local CSVs, exports, and manually prepared analysis files.

Ingest from Connector

Connector-ingested tables are created from connector streams. When a connector sync runs, each configured stream can produce a table.

  1. A connector is configured with one or more streams.
  2. The connector syncs data from the source system.
  3. Vortexify creates or updates tables for the synced streams.
  4. Each table becomes available in the workspace.
  5. The table can be opened, previewed, filtered, sorted, and inspected.
  • A PostgreSQL table synced from a database connector.
  • A CSV file stream synced from cloud storage.
  • A Google Sheet synced from a file app connector.
  • A Snowflake table synced from a warehouse connector.

Upload Files

Uploaded tables are created from files added directly to the workspace. Upload-based tables are useful when you have a local CSV file or exported dataset that you want to inspect, transform, or use in Vortexify.

  1. Open the workspace location where the table should be created.
  2. Upload the file.
  3. Enter or confirm the table name.
  4. Wait for the table to initialize.
  5. Open the table after processing completes.

Before uploading

Check that the file uses a supported format, has clear column headers, has a consistent structure, and does not mix unrelated datasets.

Table page

The table page lets you inspect data, schema, metadata, and history.

  • A loading state while the table is initializing.
  • A data preview after the table is ready.
  • A schema sidebar with column names and detected types.
  • A metadata tab with table-level information.
  • A history tab with processing and sync jobs.
  • Error messages if table processing fails.

Data preview

The main table view shows a preview of the table’s records. The preview is designed for browsing and validating table contents. Very large tables may show a limited preview rather than every row.

  • View rows and columns.
  • Sort by supported columns.
  • Apply filters.
  • Clear active filters.
  • Inspect record values.
  • Confirm that the data loaded as expected.

Filters and sorting

Tables support filtering and sorting from the table view. Filters and sorting affect the preview experience. They do not modify the underlying table data.

  • Records with a specific status.
  • Rows from a particular date range.
  • Customers from a selected region.
  • Empty or non-empty values.
  • Numeric values above or below a threshold.

Schema

The schema describes the structure of a table. Each column has a name and a type. Column types help Vortexify understand how values should be displayed, filtered, sorted, and used in downstream workflows.

Column types

TypeDescriptionExamples
StringText values, labels, identifiers, names, categories, or mixed text.customer_name, email, status, account_id
NumberNumeric values for calculations, comparisons, or aggregation.amount, quantity, score, price
BooleanTrue or false values.is_active, has_paid, approved
DateCalendar dates without a required time of day.2026-05-28, 01/15/2026
DatetimeDate and time values, such as timestamps or event times.2026-05-28 14:30:00, 2026-05-28T18:30:00Z
JSON / ObjectStructured or nested values.{ "plan": "pro", "region": "us" }
UnknownValues that could not be confidently classified.Mixed, inconsistent, or ambiguous values

Type inference

When a table is created, Vortexify automatically reviews the data and infers a type for each column. Type inference works best when values in a column are consistent.

  • Values like true and false may be detected as boolean.
  • Values like 2026-05-28 may be detected as date.
  • Values like 19.99 or 2500 may be detected as number.
  • Names, IDs, categories, or mixed values may be detected as string.

Identifiers and codes

Identifiers and codes are often best understood as strings, even when they contain only numbers. ZIP codes, account IDs, invoice numbers, and product codes may contain leading zeros or formatting that should be preserved.

Metadata

The metadata tab shows table-level information, including details such as description, table type, created date, last updated date, last synced date, row count, column count, and ingest type.

Ingest typeMeaning
Connector IngestThe table was created from a connector stream.
UploadThe table was created from an uploaded file.
SnapshotThe table reflects a synced snapshot of source data.
IncrementalThe table is updated incrementally, when supported.

History

The history tab shows table-related jobs. Use history to understand when a table was created, updated, synced, or reprocessed.

  • Discovery jobs.
  • Connector sync jobs.
  • Processing jobs.
  • Failed jobs.
  • Successful jobs.

Discovery jobs

Discovery jobs prepare table data after it is uploaded or synced. A discovery job inspects the table data, infers the schema, prepares the table for display, and makes the table available in the workspace.

  • Reading table data.
  • Detecting column names.
  • Inferring column types.
  • Identifying date, number, string, and boolean fields.
  • Preparing the table for preview.
  • Making the table available in the UI.

Discovery job statuses

StatusMeaning
CreatedThe job has been created.
PendingThe job is waiting to run.
RunningThe job is currently processing.
SuccessThe job completed successfully.
FailedThe job encountered an error.

While discovery is running

The table may show an initializing or loading state. If discovery succeeds, the table becomes available for preview. If discovery fails, the table page may show an error state with logs.

Discovery job failures

  • The file is empty.
  • The file format is unsupported.
  • The CSV is malformed.
  • Column headers are missing or duplicated.
  • Rows have inconsistent numbers of columns.
  • Values cannot be parsed consistently.
  • The source stream produced no readable data.
  • The table data is unavailable or incomplete.
  1. Open the table.
  2. Go to the History tab.
  3. Select the failed job.
  4. Open the logs.
  5. Review the failure message.
  6. Fix the source file or connector configuration.
  7. Re-upload the file or rerun the connector sync.

Sync jobs for connector tables

Connector-ingested tables may also show sync jobs. A sync job pulls data from the connected source. After the sync completes, a discovery or processing job prepares the resulting table for display.

Status typeMeaning
Sync statusWhether the source data synced successfully.
Discovery statusWhether the synced data was successfully processed into a table.

Important distinction

A connector sync can succeed while table discovery fails. When troubleshooting connector-ingested tables, review both the sync history and discovery job logs.

Table states

StateMeaning
InitializingThe table is being created or prepared.
Loading dataThe table exists and the application is loading preview, schema, or metadata.
ReadyThe table is available for preview.
UpdatingThe table is available, but a newer discovery or sync job may be running.
Last sync failedThe last available table data can still be viewed, but the most recent sync or processing attempt failed.
Fatal errorThe table cannot be rendered because discovery or processing failed and no usable table version is available.

Best practices

AreaBest practices
Connector-ingested tablesKeep streams focused, use separate streams for different structures, check sync history when data looks stale, and review discovery logs when a synced table does not display correctly.
Uploaded tablesUpload clean CSV files, use clear unique column headers, avoid mixing datasets, keep date and number formats consistent, and remove summary rows or notes.
Schema qualityUse consistent values, keep IDs and codes clearly formatted, avoid mixing types in one column, and split unrelated datasets into separate tables.

Troubleshooting

IssueWhat to check
The table is stuck initializingCheck table history to see whether a job is pending or running.
The table failed to loadRefresh the page. If the issue continues, check the latest discovery job logs.
The schema looks incorrectReview the source data for inconsistent values.
The row count looks wrongCheck whether filters are active. For connector tables, check latest sync status and last synced time.
A connector table is staleOpen table history and review the latest sync job, then rerun the connector if needed.
An uploaded file did not create a usable tableConfirm the file is a valid CSV with headers and consistent rows and columns, then review discovery logs.

Apps

Apps let you build custom, interactive web applications on top of the data in your workspace.

Overview

An app can combine tables, custom backend functions, user inputs, charts, dashboards, workflows, and external actions into a single user-facing interface. Apps are designed for cases where a table or static report is not enough and you need an interactive experience for exploring, transforming, or operationalizing data.

  • Build a dashboard from workspace tables.
  • Create an internal tool for a specific workflow.
  • Let users filter, query, or explore data through a custom interface.
  • Run custom backend logic from a button, form, or scheduled task.
  • Combine multiple datasets into a single experience.
  • Display function outputs such as summaries, recommendations, forecasts, reports, or transformed data.
  • Publish a version of the app for other users.

Apps can evolve over time

Apps can be built with AI, edited manually, previewed in the browser, versioned, and deployed.

App builder

The app builder is the workspace where you design, edit, test, and publish an app.

Builder areaPurpose
AI chatPlan and build with AI.
Planning viewOrganize app inputs, functions, and structure.
PreviewRun and test the app interface.
CodeEdit the frontend app files.
VariablesManage data and function inputs.
AI ContextGuide the AI builder.
Function PlaygroundConfigure and test backend functions.
Function CodeEdit backend function logic.
Function AI ContextPlan and guide individual functions.
SettingsConfigure sharing, access, icon, and publishing settings.
VersionsSave and switch between app versions.
PublishDeploy a selected version.

Frontend and backend parts

PartDescription
Frontend InterfaceThe user-facing application that people interact with in the browser.
Custom Backend FunctionsOptional backend logic used for advanced processing, scheduled work, external API calls, secure credentials, or compute-heavy tasks.

Build with AI

The AI builder helps you create and modify apps from natural language instructions. It works best when you describe the app goal, the intended users, the data available, and the workflow the app should support.

  • Plan the structure of an app.
  • Decide which tables and functions are needed.
  • Create or update custom backend functions.
  • Build charts, dashboards, filters, and layouts.
  • Add user-facing forms.
  • Connect frontend buttons to backend functions.
  • Debug errors and interpret logs.
  • Improve the design and usability of the app.
  • Update the app based on new requirements.

Plan mode

Use Plan mode when you want AI to think through what should be built before making implementation changes. In Plan mode, AI focuses on updating the application and function specifications.

  • Designing a new app.
  • Deciding which tables to use.
  • Deciding which custom functions are needed.
  • Writing or revising app requirements.
  • Breaking a complex request into frontend and backend work.
  • Choosing required packages or libraries.
  • Defining expected function outputs.
  • Creating a build plan before making code changes.

When to use Plan mode

Use Plan mode when the request is ambiguous or architectural.

Build mode

Use Build mode when you want AI to make implementation changes. Build mode works best when the plan is already clear.

  • Creating frontend sections.
  • Editing charts, tables, filters, or layouts.
  • Writing or updating backend function logic.
  • Running tests.
  • Debugging app errors.
  • Fixing function failures.
  • Installing packages.
  • Updating function settings.
  • Connecting app UI to function outputs.

App and function specs

Apps maintain planning context for the frontend and for each custom function. These specs help AI make consistent changes over time. If the intended behavior changes, update the relevant spec before building.

SpecDescribes
App specGoal, overview, layout, design requirements, inputs, required packages, frontend sections, data behavior, function behavior, and known constraints.
Function specGoal, overview, inputs, output, required packages, runtime settings, logic description, credential requirements, scheduling behavior, and testing expectations.

AI Context

The AI Context tab stores additional guidance for the AI builder. Good AI context helps the builder make better decisions and reduces repeated instructions.

  • The purpose of the app.
  • Intended users.
  • Design preferences.
  • Business rules.
  • Definitions of important terms.
  • Data assumptions.
  • Requirements that should persist across edits.
  • Constraints the AI should follow.
This app is for sales managers. Prioritize clarity over density. Use plain-language labels. Revenue should always be shown in USD. Customer risk should be grouped into Low, Medium, and High.

Create a new app

  1. Open the Apps section in your workspace.
  2. Select New app.
  3. Enter an app name.
  4. Add any relevant tables.
  5. Use the AI builder or app editor to define the app experience.
  6. Preview the app.
  7. Save a version when the app is ready.
  8. Publish the version when it should be available to users.

Initial version

New apps start from a default template and include an initial version. You can then add data, create functions, edit the frontend, and save new versions as the app evolves.

Planning view

The planning view is the main workspace for organizing an app. From the planning view, you can add tables, create functions, open function configuration, open app code, or return to the app preview.

  • Tables connected to the app.
  • Custom functions connected to the app.
  • Relationships between inputs and outputs.
  • The app’s current structure.
  • Items that can be opened in preview, code, or context views.

App inputs

Apps can use two main input types: tables and functions. Tables provide data to the frontend interface and backend functions. Functions provide reusable backend logic that can be triggered from the app, tested in the builder, or scheduled to run automatically.

Input typePurpose
TablesProvide data to the frontend interface and backend functions.
FunctionsProvide backend logic that can be triggered, tested, or scheduled.

Variable names

Each input has a variable name. Variable names are how the app and functions refer to the table or function.

Frontend Interface

The frontend interface is the user-facing part of the app. It controls what users see and interact with in the browser, including charts, tables, forms, buttons, filters, summaries, cards, layouts, and visualizations.

  • Query table data.
  • Display table previews.
  • Filter and sort records.
  • Run custom backend functions.
  • Display function outputs.
  • Show function job history.
  • Create interactive workflows.
  • Present dashboards and reports.
  • Combine multiple data sources into one interface.

Preview

The Preview tab lets you run the app in an embedded browser view. Preview can be opened in different device modes to validate how the app behaves across screen sizes.

  • Test the app layout.
  • Confirm that charts and tables render correctly.
  • Interact with filters and forms.
  • Run buttons or workflows.
  • Check responsive layouts.
  • Refresh the app.
  • View preview logs when something fails.

Preview logs

Preview logs help troubleshoot problems that prevent the app from rendering or behaving correctly. Logs are most useful when paired with a specific failing action.

  • The app does not load.
  • A section is blank.
  • Data does not appear.
  • A button does not work.
  • A chart fails to render.
  • A package or dependency issue prevents the app from starting.

Code

The Code tab lets you edit the frontend app files. Most users should use AI to make code changes, but the code editor is available when manual edits are needed.

  • App layout.
  • Components.
  • Hooks.
  • Data loading.
  • User interactions.
  • Styling.
  • Charts and visualizations.
  • Function calls.
  • Output rendering.

Frontend structure

PartPurpose
Main appControls the top-level layout and combines all sections.
ComponentsRender visual sections such as charts, tables, cards, filters, and panels.
HooksManage data loading, state, filtering, or reusable logic.

Best practice

Keep the main app simple. Split complex visual sections into components and complex data logic into hooks.

Tables in the frontend

The frontend can query tables that are attached to the app. Use table inputs when the app needs to display rows, render charts, filter records, sort records, run lightweight calculations, or let users explore a dataset.

  • Load the first page of records.
  • Filter records by status, date, region, or category.
  • Sort by a selected column.
  • Fetch data for a chart.
  • Query aggregate values for summary cards.

Large datasets

Large datasets should be queried with limits and pagination rather than loading all rows at once.

Functions in the frontend

The frontend can run custom backend functions that are attached to the app. A function can be run from the app, and the frontend can retrieve the function output and display it.

  • Button-triggered analysis.
  • Form-based calculation.
  • Report generation.
  • Data enrichment.
  • Forecasting.
  • External API lookup.
  • Batch processing.
  • Scheduled output retrieval.

User forms

Apps can include forms for collecting user input. Form inputs may be passed into custom functions at runtime.

  • Date range.
  • Region.
  • Customer ID.
  • Threshold.
  • Category.
  • Number of results.
  • Scenario name.
  • Free-text instruction.

Variables

The Variables view shows the tables and functions available to the app. Each variable represents a resource that the app can use.

Variable typeRepresents
TableA workspace table attached to the app.
Custom functionA backend function attached to the app.

Custom Backend Functions

Custom backend functions let an app run server-side logic that is separate from the frontend interface. A function can process data, call external systems, use secure credentials, run on a schedule, or perform compute-heavy work that should not happen in the browser.

  • Process large datasets.
  • Join or transform multiple tables.
  • Run statistical analysis.
  • Run machine learning logic.
  • Call an external API.
  • Use credentials securely.
  • Generate a report or recommendation.
  • Run a scheduled job.
  • Return a structured output to the app.
  • Keep sensitive logic out of the frontend.

Do not overuse backend functions

Do not use a custom backend function for simple UI-only behavior, such as toggling a filter, changing a chart type, or formatting labels. Those can usually be handled in the frontend.

Create a custom function

  1. Open the app builder.
  2. Go to the planning view.
  3. Select Add Function.
  4. Give the function a clear name.
  5. Add a short description.
  6. Attach any input tables the function should use.
  7. Configure user inputs, secrets, output type, compute type, memory type, and schedule as needed.
  8. Write or generate the function logic.
  9. Build or refresh the function environment if required.
  10. Run a test in the Function Playground.
  11. Save a new app version when the function works as expected.

One major task per function

Use one function per major backend task. Clear function names make functions easier to understand, test, and connect to the frontend.

Function Playground

The Function Playground is where you configure and test a custom function. Use the playground before connecting a function to the app frontend.

User inputs

Input nameTypePurpose
regionStringLimit the function to one region.
min_revenueFloatSet a revenue threshold.
top_nIntegerControl how many results to return.
customer_idStringRun the function for one customer.

Secrets

Secrets are secure values used by a function at runtime. Use secrets when a function needs to connect to an external system securely.

Secret namePurpose
slack_webhook_urlSend messages to Slack.
salesforce_api_keyQuery Salesforce.
openai_api_keyCall an external model provider.
internal_service_tokenAuthenticate to an internal API.

Do not expose credentials

Do not place credentials directly in frontend code, app context, function specs, logs, or normal text fields. Use the Secrets manager in the Function Playground instead.

Output type

Output typeUse when the function returns
JSONStructured data such as dictionaries, nested results, recommendations, or grouped metrics.
StringA text result, summary, message, explanation, or generated report.
IntegerA whole number.
FloatA decimal number or score.
DataframeA table-like result that can be displayed or queried.

Return type must match

The function’s returned value must match the selected output type. If the output type and returned value do not match, the function may fail or the app may not display the output correctly.

Function environment

A function environment is the runtime used to execute the function. The Function Playground shows environment status so you know whether the function is ready to run.

Environment status

StatusMeaning
ReadyThe function environment is available and can run.
Not initializedThe function environment has not been built yet.
Build requiredThe function code or packages changed and the environment must be rebuilt.
Update requiredThe environment exists but needs an image or memory update.
BuildingThe environment is being prepared.
ErrorThe environment could not be built or initialized.

App versions

Apps support versions. A version captures the app configuration, frontend code, function configuration, function code, inputs, layout, and planning context at a point in time.

  • Save stable milestones.
  • Test changes without losing prior work.
  • Publish a specific version.
  • Roll forward to a newer version.
  • Roll back to an earlier version.
  • Keep a history of changes.

Preview and deployment

Apps can be previewed while building and deployed when ready. Preview is for development and testing. Publishing deploys a selected app version.

Publish

  1. Open the app builder.
  2. Confirm the correct version is selected.
  3. Open Publish.
  4. Deploy the selected version.
  5. Review deployment status.
  6. Open logs if deployment fails.

Deployment status

StateMeaning
Ready for deploymentThe app has not been deployed yet or is ready to deploy.
DeployingDeployment is in progress.
LiveThe app is deployed and available.
ErrorDeployment failed and logs should be reviewed.
CancelledDeployment was stopped.

Settings and sharing

The Settings action opens app-level settings. Settings may include app icon, app color, public status, sharing status, shared members, and deployment access.

App data access

Apps can use workspace tables as data inputs. Tables may come from uploaded files, connector-ingested data, or other workspace data sources.

When to use the frontend vs. a function

UseBest for
FrontendDisplaying charts, filtering small result sets, sorting records, showing summary cards, changing visual states, and rendering tables.
Custom backend functionQuerying external APIs, using credentials, processing large datasets, scheduled work, model scoring, complex reports, transformed data, and long-running logic.

Function inputs

Input typeDescriptionExample use
Table inputA table attached to the function.Analyze orders or customers.
User inputA value provided when the function runs.Date range, threshold, region.
Secret inputA secure credential configured in the function.API key, token, webhook URL.

Function outputs

A function returns a single output. The selected output type should match what the app needs.

Function schedules

Function schedules let backend logic run automatically. Use schedules for recurring work such as daily summaries, weekly reports, hourly monitoring, external API syncs, data quality checks, or recurring model scoring.

Function jobs

Each function run creates a job. Use jobs to understand what happened during a function run.

Common statusMeaning
CreatedThe job has been created.
PendingThe job is waiting to run.
RunningThe job is currently running.
SuccessThe job completed successfully.
FailedThe job failed.
StoppedThe job was stopped.

Best practices

AreaBest practices
App designStart with the user goal, keep the interface focused, put important information near the top, use clear labels, avoid too many raw fields, use filters for exploration, and use summaries for decisions.
Data inputsUse clear variable names, attach only needed tables, confirm schemas, use backend functions for large joins, and use pagination or limits for large frontend queries.
AI buildingUse Plan mode before major changes, Build mode for implementation, keep AI Context updated, ask AI to test, inspect logs, and save versions after meaningful progress.
FunctionsUse clear names, keep one function focused on one task, use secrets for credentials, test functions before publishing, match returned values to selected output types, and use schedules only for reliable functions.
VersionsSave versions at stable milestones, use meaningful version messages, preview before publishing, publish only tested versions, and roll back if needed.

Troubleshooting

IssueWhat to check
The app preview does not loadRefresh the preview and open preview logs. Check for frontend build errors, missing packages, invalid code, renamed variables, or preview environment issues.
The app shows no dataCheck that the table is attached, the variable name is correct, the table has data, filters are not excluding records, the query limit is not too low, and the table is available.
A chart or table is blankCheck that expected columns exist, data types are compatible, the query returns rows, the correct table variable is used, and the component handles empty results.
A function does not runCheck that the function environment is ready, required inputs are provided, secrets are configured, input tables are attached, output type matches, and logs show no errors.
Deployment failedOpen deployment logs. Common causes include frontend build errors, missing packages, function deployment errors, environment issues, version mismatch, or deployment configuration issues.

Requesting help with an app

  • App name.
  • What you expected to happen.
  • What actually happened.
  • Whether the issue is in preview, function testing, or deployment.
  • The relevant table or function name.
  • Any visible error message.
  • Whether the issue started after a specific change.
  • Logs, if available.

Platform

Administrative settings for managing your organization, workspaces, members, billing, usage, plans, permissions, and security.

Overview

The Platform section covers the administrative settings that control how your organization, workspaces, members, billing, usage, and security are managed.

LevelPurpose
OrganizationThe top-level account that controls billing, usage, members, plan limits, and shared administrative settings.
WorkspaceThe place where users create and manage resources such as connectors, tables, apps, files, and folders.
  • View or update organization identity.
  • Manage organization members.
  • Review billing and usage.
  • Upgrade or change plans.
  • Buy additional credits.
  • Add or adjust member seats.
  • Manage workspace identity.
  • Manage workspace access.
  • Configure workspace security.
  • Understand what features are available on your current plan.

Organizations

An organization is the top-level container for your Praxis AI account. Most users belong to one organization, but some users may have access to multiple organizations.

  • Plan and billing.
  • Organization members.
  • Organization roles.
  • Credit balance.
  • Seat capacity.
  • Subscription status.
  • Default workspace.
  • Workspace creation availability.
  • Access to plan-gated features.

Organization settings

SectionPurpose
GeneralManage organization identity and account information.
MembersManage organization users and roles.
Billing & UsageManage plans, credits, seats, usage, and billing.

Organization General

The General section shows organization identity and high-level account information.

  • Organization name.
  • Organization color.
  • Organization ID.
  • Created date.
  • Current plan.
  • Subscription status.
  • Subscription interval.
  • Renewal date.
  • Member capacity.
  • Credit balance.

Organization name

The organization name is visible to members of the organization. Use a clear name that identifies the company, team, or group using the platform.

  • Acme Analytics.
  • Finance Team.
  • Customer Operations.
  • Data Science Workspace.

Organization color

The organization color is used as a visual identifier in the interface. Choose a color that helps distinguish the organization from other organizations or workspaces.

Plan badge

The plan badge shows the organization’s current plan. The current plan determines which features, limits, roles, schedules, and collaboration options are available.

  • Starter.
  • Pro.
  • Team.
  • Business.
  • Enterprise.

Subscription status

StatusMeaning
ActiveThe subscription is active.
TrialingThe organization is currently in a trial period.
Past duePayment needs attention.
IncompleteSubscription setup is incomplete.
CanceledThe subscription has been canceled.
UnpaidPayment has not been completed.
PausedThe subscription is paused.

Billing issue

If the organization has a billing issue, some paid features may become unavailable until the issue is resolved.

Credits

Credits are used for platform usage. Some AI actions, app-building actions, or compute-backed workflows may depend on available credits.

Low credit balance

If the organization runs out of credits, usage that requires credits may stop until more credits are added.

Organization Members

The Members section is used to manage who belongs to the organization.

  • View current members.
  • Invite members by email.
  • Assign organization roles.
  • Remove members.
  • See inactive members when seat limits are reached.

Organization roles

RoleDescription
OwnerThe primary organization administrator. Owners have the highest level of control.
AdminCan manage organization settings and members, depending on permissions.
MemberStandard organization user. Access depends on workspace membership and role.

Owner restrictions

Owners cannot be removed or downgraded by normal member management actions.

Invite members

  1. Open Organization Settings.
  2. Go to Members.
  3. Enter the member’s email address.
  4. Select a role.
  5. Send the invite.

Seat capacity

The new member may be active or inactive depending on available seat capacity.

Change member roles

Organization admins can change member roles when permitted. Use role changes carefully because organization admins may be able to manage billing, members, and access settings.

Remove members

Removing a member revokes their organization access. Before removing a member, consider whether they also have access to specific workspaces or deployed apps.

Inactive members

A member may appear inactive if the organization does not have enough seats. Inactive members do not count as fully active workspace participants until seat capacity is increased or other members are removed.

Billing & Usage

The Billing & Usage section shows the organization’s current plan, usage, seats, credits, and available plan options.

  • Review the current plan.
  • Compare available plans.
  • Change plans.
  • Add seats.
  • Buy credits.
  • Open the billing portal.
  • Review renewal information.
  • Check member capacity.

Current plan

The current plan card shows your organization’s active plan and related details. Plans may include different limits for users, workspaces, apps, connectors, scheduled jobs, compute, memory, collaboration, roles, permissions, and support.

Billing interval

Billing may be monthly or yearly, depending on the selected plan. Some plans or add-ons may offer yearly pricing.

Billing portal

  • Payment method.
  • Subscription details.
  • Invoices.
  • Plan billing information.
  • Customer billing settings.

Buy credits

  1. Open Organization Settings.
  2. Go to Billing & Usage.
  3. Select Buy credits.
  4. Choose the number of bundles.
  5. Continue to checkout.

Add seats

  1. Open Organization Settings.
  2. Go to Billing & Usage.
  3. Select the member or seat management action.
  4. Choose the total number of members.
  5. Confirm the billing change.

Inactive members

If the number of organization members exceeds the available seat capacity, some members may become inactive.

Workspaces

A workspace is where users create and manage resources. Each workspace has its own members, roles, settings, resources, and security configuration.

  • Connectors.
  • Tables.
  • Apps.
  • Files.
  • Folders.
  • Other workspace resources.

When to use workspaces

Use workspaces to separate teams, projects, clients, departments, or environments.

Workspace settings

SectionPurpose
OverviewReview high-level workspace activity and status.
GeneralManage workspace identity.
PeopleManage workspace members and access roles.
SecurityManage workspace security integration.

Workspace Overview

  • Recent activity.
  • Workspace members.
  • Workspace resources.
  • Usage indicators.
  • High-level workspace status.

Workspace General

The General section controls basic workspace identity.

  • Workspace name.
  • Workspace description.
  • Workspace icon and color.
  • Workspace handle.
  • Default member limit.

Workspace name

The workspace name is visible to workspace members. Use a name that clearly identifies the team, project, or purpose.

  • Revenue Analytics.
  • Customer Operations.
  • Product Experiments.
  • Executive Reporting.

Workspace description

The description is an optional short summary of the workspace. Use it to explain what the workspace is for.

Dashboards and analysis for customer retention and expansion.

    Workspace for finance reporting, forecasting, and monthly close workflows.

Workspace icon and color

The workspace icon and color help identify the workspace visually. This setting may be shown as coming soon if it is not yet editable.

Workspace handle

The workspace handle is a unique workspace identifier. This setting may be shown as coming soon if it is not yet editable.

Workspace People

The People section controls who has access to a workspace. Workspace access is separate from organization membership.

  • View workspace members.
  • Add organization members to the workspace.
  • Change workspace roles.
  • Remove workspace members.

Workspace roles

RoleDescription
OwnerFull control of the workspace. Usually assigned to the creator or primary administrator.
AdminCan manage workspace members and settings.
EditorCan create and edit workspace resources.
ViewerCan view workspace resources but cannot make changes.

Add workspace members

  1. Open Workspace Settings.
  2. Go to People.
  3. Select an organization member.
  4. Choose the workspace role.
  5. Add the member.

Organization membership required

Only organization members can be added to a workspace.

Change workspace roles

  • Use Viewer for read-only access.
  • Use Editor for users who create and update resources.
  • Use Admin for users who manage members and workspace settings.
  • Use Owner for the main workspace owner.

Remove workspace members

Removing a workspace member revokes their access to that workspace. It does not necessarily remove them from the organization.

Workspace role restrictions by plan

  • Lower-tier plans may restrict member management.
  • Team plans may allow collaboration in the default workspace but restrict additional workspace behavior.
  • Business and Enterprise plans provide broader workspace role management.

Unavailable actions

If a role or member action is unavailable, the organization may need to upgrade plans.

Workspace Security

The Security section manages workspace security role status. This section includes Guardian, the workspace security integration used to validate and initialize workspace security roles.

StateMeaning
ActiveWorkspace security roles are initialized and available.
InactiveWorkspace security roles are not fully initialized or need attention.

Guardian integration

Guardian helps prepare the workspace for secure compute and managed platform operations.

  • Check whether workspace security roles are active.
  • Initialize security roles if they are missing.
  • Restart or refresh the security role integration.
  • Validate that the workspace is ready for secure backend jobs.

Guardian inactive

If Guardian is inactive, some compute-backed actions may fail until it is initialized.

Initialize Guardian

  1. Open Workspace Settings.
  2. Go to Security.
  3. Find the Guardian section.
  4. Select Initialize.
  5. Wait for the operation to complete.
  6. Refresh the status if needed.

Restart Guardian

If Guardian is already active, the action may show as Restart. Use restart when the workspace security role needs to be recreated, refreshed, or validated again.

Plans

Plans control which platform features are available to an organization. Plan availability and limits may change over time.

PlanBest for
StarterIndividual exploration and basic usage.
ProIndividual users who need more features, connectors, and scheduled jobs.
TeamSmall teams collaborating in a shared workspace.
BusinessLarger teams needing roles, permissions, multiple workspaces, and stronger collaboration controls.
EnterpriseAdvanced deployments, enterprise connectors, private cloud, compliance, and implementation support.

Starter plan

Starter is the entry-level plan. It is best for individual users getting started with the platform.

  • Limited member capacity.
  • Standard compute.
  • Basic app creation.
  • Limited collaboration.
  • Limited scheduling.
  • Limited connector availability.
  • Limited support.

Pro plan

Pro is designed for individual power users who need to build and run more complete workflows with connectors, apps, and schedules.

  • More app capacity.
  • Connectors.
  • Scheduled jobs.
  • Email support.
  • Higher memory options than Starter.
  • More frequent schedule intervals than Starter.

Team plan

Team is designed for small-team collaboration in a shared workspace.

  • Multiple members.
  • Collaboration features.
  • Shared workspace access.
  • Scalable member capacity.
  • Higher app limits than Pro.

Business plan

Business is designed for larger teams and more advanced workspace management.

  • Multiple workspaces.
  • Roles and permissions.
  • More included users.
  • Additional seats.
  • Live support.
  • Broader workspace member management.
  • Higher app and compute limits.
  • More frequent schedules.
  • Higher memory settings.

Enterprise plan

Enterprise is designed for advanced organizational, deployment, compliance, and support requirements.

  • Enterprise connectors.
  • Private cloud deployments.
  • Advanced compliance support.
  • On-site support.
  • Implementation services.
  • Custom limits.
  • Advanced security requirements.
  • Custom deployment and support arrangements.

Plan-based feature limits

Some features are limited by plan. If an action is unavailable, check the current plan and available seats or credits.

  • Number of apps.
  • Number of users.
  • Number of workspaces.
  • Connector availability.
  • Scheduled sync availability.
  • Function schedule availability.
  • Custom function compute type.
  • Custom function memory type.
  • Workspace role management.
  • Workspace member management.
  • Credit balance.
  • Seat capacity.

App limits

PlanApp limit
Starter5 apps.
Pro25 apps.
Team100 apps.
BusinessNo fixed standard limit.
EnterpriseCustom or no fixed standard limit.

Connector limits

Connector availability depends on plan. Starter organizations may not be able to create connectors. Scheduled connector syncs may also depend on plan.

Schedule limits

PlanSchedule behavior
StarterScheduling may be unavailable.
ProScheduling available with a minimum interval.
BusinessMore frequent scheduling available.
EnterpriseMore frequent scheduling available.

Cron validation

If a cron schedule is too frequent, the platform will return a validation error.

Compute limits

Custom backend function compute options can depend on plan. Use the smallest compute and memory setting that supports the function reliably.

Workspace limits

Workspace creation depends on plan. Lower-tier plans may be limited to the default workspace. Business and Enterprise plans are intended for organizations that need multiple workspaces.

Member and role limits

  • Adding members.
  • Adding members to non-default workspaces.
  • Assigning certain workspace roles.
  • Managing detailed workspace role changes.

Seats

Seats determine how many members can be active in an organization. The total available seats are based on included plan seats and additional purchased seats.

  • Whether members are active.
  • Whether new members can be added.
  • Whether existing inactive members can regain access.
  • Whether workspace membership is available.

Included seats

  • Starter and Pro are usually single-user plans.
  • Team includes a small number of members.
  • Business includes more members.
  • Enterprise may have custom seat terms.

Additional seats

Some plans allow additional seats to be purchased. When additional seats are added, more organization members can become active.

Seat capacity

Inactive members

If members appear inactive, check the organization’s seat capacity in Billing & Usage.

Credits

Credits are used for platform usage. A credit balance is shown in Organization settings. If the balance is low, the platform may show warnings. If the balance reaches zero, some actions may be blocked.

  • AI-assisted app building.
  • AI conversations.
  • Compute-backed workflows.
  • Other usage-based platform features.

Buy credits

  1. Open Organization Settings.
  2. Go to Billing & Usage.
  3. Select the option to buy credits.
  4. Choose the number of bundles.
  5. Proceed to checkout.

Permissions

Permissions are controlled at both the organization and workspace levels.

Organization permissions

  • Edit organization display settings.
  • Invite organization members.
  • Change organization roles.
  • Remove organization members.
  • Manage billing.
  • Add seats.
  • Buy credits.

Workspace permissions

RoleTypical access
OwnerFull workspace control.
AdminManage members and settings.
EditorCreate and edit resources.
ViewerView resources only.

Viewer access

Some actions may be disabled for viewers. Disabled actions may show a tooltip explaining that viewer access is read-only.

Default workspace

When an organization is created, a default workspace is created automatically. The default workspace is the initial place where the organization owner can create and manage resources.

Plan behavior

Depending on the plan, the default workspace may be the only available workspace or the starting point before additional workspaces are created.

Multiple workspaces

Multiple workspaces are useful for separating projects, teams, clients, or environments.

  • Separate access control.
  • Separate data resources.
  • Different teams working independently.
  • Project-level isolation.
  • Development and production separation.
  • Client-specific environments.

Plan requirement

Multiple workspaces may require a Business or Enterprise plan.

Workspace access examples

RoleUse for
ViewerExecutives reviewing dashboards, stakeholders reading reports, or users who should not edit data or apps.
EditorAnalysts, builders, data operators, or users who manage connectors, tables, or apps.
AdminTeam leads, workspace managers, technical owners, or users responsible for access control.
OwnerWorkspace creators, primary administrators, or accountable owners of workspace resources.

Best practices

AreaBest practices
OrganizationsKeep the organization name recognizable, maintain at least one active owner, review billing status regularly, keep credits above zero, monitor seat usage, remove unnecessary members, and use admin roles only for trusted users.
WorkspacesUse workspaces to separate teams or projects, give each workspace a clear name and description, add only needed members, use Viewer for read-only users, use Editor for builders, use Admin sparingly, review members periodically, and keep Guardian active.
PlansUse Starter for exploration, Pro for individual production workflows, Team for small-team collaboration, Business for multiple workspaces and role management, and Enterprise for custom security, deployment, compliance, or support needs.
Billing and usageBuy credits before the balance reaches zero, add seats before inviting additional users, review plan limits before building large workflows, upgrade when feature restrictions block expected work, and use annual billing when appropriate.

Troubleshooting

IssueWhat to check
I cannot create a connectorConnector creation may not be available on the current plan.
I cannot schedule a connector syncScheduled connector syncs may not be available on the current plan, or the cron interval may be too frequent.
I cannot create another appThe organization may have reached its app limit.
I cannot create another workspaceMultiple workspaces may require a Business or Enterprise plan.
I cannot add a workspace memberCheck whether the user is an organization member, seat capacity is available, the current plan supports workspace collaboration, and the selected role is allowed.
I cannot change a workspace roleWorkspace role management may require a Business or Enterprise plan.
A member is inactiveThe organization may not have enough seats.
A scheduled function cannot be enabledFunction schedules may not be available on the current plan, or the cron expression may be too frequent.
Heavy compute is unavailableHeavy compute may require a higher plan.
A larger memory setting is unavailableMemory settings are plan-gated.
Guardian is inactiveOpen Workspace Settings → Security and initialize or restart Guardian.
Billing status is past due or unpaidOpen Billing & Usage and use the billing portal to update payment information.

Requesting help

  • Organization name.
  • Workspace name, if relevant.
  • Current plan.
  • The action you were trying to perform.
  • The error message shown.
  • Whether the issue affects one user or multiple users.
  • Whether billing status is active.
  • Whether the affected member is active or inactive.
  • Whether the issue is related to connectors, apps, schedules, functions, or workspace access.

Plan-limit questions

For plan-limit questions, include the feature you need and the current plan shown in Billing & Usage.

Core concepts