Squid's features
If you find yourself wondering, "does Squid have __?" then you're in the right place!
The following documentation outlines the primary features of Squid along with links to find out more about each feature. This is a great place to start if you're wondering if Squid has the features you need for your use case. We always encourage you to reach out to us on our Discord server or through email to discuss your needs with us.
Squid AI
Squid AI offers a suite of Retrieval-Augmented Generation (RAG) AI features to implement AI agents and AI workflows into your applications.
Squid AI Agent
The AI Agent integration allows you to add persistent instructions and context to create custom AI chat profiles tailored to a specific use case, allowing for feature-rich automated workflows. Learn more
Squid AI image generation
Use the Squid AI image generator to create bespoke images for your applications. Learn more
Squid AI assistant
The Squid AI assistant lets you manage AI assistance instances, conversation threads, and context files to create a unique AI experience for users. Learn more
Squid AI for your data
Squid enables you to interact with the data in a database integration using Squid AI. The client provides a prompt in sentence form. Squid AI then responds with a reply in sentence form along with the query it executed to get the result. Learn more
Squid AI website widget
Squid provides an AI-powered chat widget that can be integrated into your website, enabling users to easily understand your business value. Learn more
AI functions
When configuring your AI assistant, you might find that certain questions require specific responses that are difficult to configure through instructions. In these cases, you can incorporate this functionality through a Squid Service function with the @aiFunction
decorator. Learn more
Authentication
To implement authentication in a project that uses Squid, you must integrate with an auth provider in the Squid Console. The following is a list of available auth providers:
Auth0
Learn more about integrating with Auth0.
Firebase Authentication
Learn more about integrating with Firebase Authentication.
Descope
Learn more about integrating with Descope.
Cognito
Learn more about integrating with Cognito.
JWT HMAC auth
JWT RSA auth
Learn more about integrating using JWT RSA.
Okta
Learn more about integrating with Okta.
Database integrations
Using the Squid Client SDK, Squid provides the following capabilities:
- Fetch data from multiple data sources, including joins across collections and different databases.
- Modify data with transaction support.
- Utilize Squid's built-in NoSQL database to store and retrieve data.
When you create a new Squid application, a built-in NoSQL database is automatically included for both the dev and prod environments. In addition to the built-in database, Squid integrates with the following database sources:
BigQuery
Clickhouse
CockroachDB
MongoDB
MySQL
Oracle
PostgreSQL
Snowflake
Microsoft SQL server
Real-time event streaming with Squid Queues
Squid Queues enable you to publish messages and subscribe to topics in a client without the need for additional backend infrastructure.
You can access this functionality through 3 integration options. Select an option to learn how to configure it:
Built-in queue
When creating a Squid application, Squid automatically creates built-in queue integrations for your dev
and prod
environments.
Learn more
Apache Kafka
Confluent Cloud
Connect your existing Confluent Cloud Apache Kafka instance to Squid AI. Learn more
Squid Secrets
With Secrets, Squid provides state of the art support for managing sensitive data like API keys, passwords, certificates and more. Learn more
Storage buckets
Securely manage files in a storage bucket from any client using the Squid Client SDK. Squid offers the following storage integrations:
Built-in storage bucket
When creating a Squid application, Squid automatically creates built-in storage bucket integrations for your dev
and prod
environments. Learn more
AWS S3 storage bucket
Connect your AWS S3 storage bucket to Squid AI. Learn more
Google Cloud Storage (GCS) bucket
Connect your GCS bucket to Squid AI. Learn more
API support
Some services require APIs for data transmission. Squid supports HTTP and GraphQL API integrations for communication with external services and offers OpenAPI specification support to facilitate the creation of your own APIs.
HTTP API integration
You can connect Squid to any HTTP API and map the requests and responses, enabling you to access it using the Squid Client SDK. Learn more
GraphQL API integration
Squid can connect to a GraphQL API, allowing you to access it using the Squid Client SDK. Learn more
API generation
The Squid Backend SDK provides decorators to automatically generate an OpenAPI specification and expose your APIs for your backend project. Learn more
Webhooks
A webhook is essentially a user-defined HTTP callback that is triggered by an event, such as the creation of a new record in a database, a change in status of an issue on a bug tracker, or a new message on a chat application. Learn more
Observability
Squid integrates with your favorite observability platforms to gain insights about your applications.
Datadog
Integrate your Datadog observability pipelines with Squid in the Squid Console. Learn more
New Relic
Monitor and debug your stack by integrating New Relic with Squid in the Squid Console. Learn more
Additional backend functionality
Managing client connections
This feature allows you to monitor and manage the connectivity of clients to your Squid backend. Learn more
Executables
Squid Executables provide the client with a function that runs on the server. Executables are useful for functions that require access to secrets, execute queries not authorized for the current user, or access internal-only systems, among other things. Learn more
Setting limits
This feature allows you to define limits on the functions you've written in your backend. Learn more
Schedulers
A scheduler is a type of decorator that, when applied to a function, causes the function to be executed at regular intervals based on UTC time. The scheduling is typically specified using a cron expression in UTC. Learn more
Triggers
Triggers execute a function in response to a change in the database. Learn more