One of the most common feature requests is finally here! We are excited to rollout support for API request history. You can now monitor the request history of your API in detailed fashion.
From the dashboard, easily view the high-level statistics of the API request history from your entire Workspace. You can toggle between your database and top API requests to see which of your API endpoints are being hit the most. To the right, visualize your API request history with a graph displaying the statistics of the past 24 hours. Select 'View Request Details' to see a detailed view and history of each API call made in your Workspace.
You can expand each individual call to review detailed information including inputs, response and request headers, and the output. You can even drill-down on a per user basis to see the activity of each user in your application. Furthermore, you can view failed API calls here in order to help debug what went wrong. Finally, you can use these details to understand Webhook payloads to make it easier to build API endpoints that receive Webhooks.
It doesn't stop at the entire Workspace level. From each API group, you can see detailed history of the entire group. And from each API endpoint, you can see the history of the individual endpoint.
Good news to all of our friendly users from Canada: Canadian server location has arrived! Our Scale plan and Enterprise options now have the added choice to select a server region in Montreal, Canada.
We redesigned our pricing and plan model in an effort to better serve and define your app building journey. The free plan is now called Build - for when you are starting out and beginning to build your ideas. The next tier is called Launch - for when you are ready to launch your application for the first time to a small group of users. The Scale plan is just the beginning of when you're ready to start scaling your application to the moon. You will be able to increase certain features and performance as your application scales to new heights. Our newest offering is Enterprise equipped to handle the special requirements of our Enterprise-level users.
Response caching enables you to significantly increase response times of API calls. External API calls can have large payloads and slow response times. See how you can leverage response caching when working with external APIs to improve performance and response times.
Functions are the heart and soul of the super-powerful function stack. This tutorial goes into a high-level overview of functions, what they are, and how to use them. This is a great tutorial if you're just starting out with Xano or want a better understanding of the fundamentals.
Watch the replay from our live webinar: Build and Launch a Two-Sided Marketplace like Airbnb. You'll see how to model and set up a database and how to build API endpoints for a two-sided marketplace. This event was hosted by NoCodeDevs!
SNIPPETS ARE AN EASY WAY TO SHARE API ENDPOINTS WITH THE XANO COMMUNITY.
Looking for an easy way to implement password reset or forget password functionality into your app? This Snippet allows you to do so with a few clicks! Make sure to watch the tutorial included.
Use the Snippet from the NoCodeDevs webinar: Build and Launch a two-sided marketplace. Pick up from where the webinar left off or use this Snippet to get an up-close look at how the two-sided marketplace was built.
[New] Date data type for fields and inputs - Now you can use a date as a data type for both database fields and API inputs. Xano initially only had support for timestamp but there are certain use cases where the time does not matter - just the date.
[New] Create File Resource Function - To upload content through the API you need to use the File Resource input first then create the image metadata. However, what happens if the image is being received in the Function Stack from an external API? Now you can use the new function Create File Resource to create a file resource from a variable from within the function stack. You will still need to create the image metadata but this unlocks more flexibility when working with images from external APIs.
[New] Include payload for Precondition output - You can now choose to include a payload with the output of a Precondition. In the event that a Precondition does not pass stops an API endpoint, there are times where you still want data from that API call.
[New] Added flexibility to IN operator - The IN operator in query expressions is now flexible for the array input to either be on the left or right of the operator - [1,2,3] in 1 vs 1 in [1,2,3].
[New] Snippet improvements - Snippets have had some improvements since the big launch last month. It is easier to select multiple API endpoints and include data. Also, you are able to include a YouTube or Loom video and additional helpful links to help other users utilize your Snippet.
[New] number_format - The number_format filter enables you to format numbers with decimal and thousand separators.
[New] diff - This array filter will return the entries from a first array that are not in a second array. Only values are used for matching in this filter
[New] diff_assoc - This array filter is returns the entries from a first array that are not in a second array. Both keys and values used for determining matches.
[New] intersect - This array filter returns the entries from a first array that are also present in a second array. Only values are used for matching.
[New] interest_assoc - This array filter returns the entries from a first array that are also present in a second array. Both keys and values are used for matching.
Don't forget to join the Xano Community to see the latest announcements, product updates, tutorials, get help on your Xano project, and so much more!
Have you ever created an API endpoint that you wish you could share with the Xano community? Now you can easily do so with Xano Snippets! Snippets allow you to easily publish and share API endpoints to other Xano users so they can re-use them on their own projects. Even if people don't have a Xano account, they are able to preview the snippet the API in a sandbox workspace!
You can browse Snippets created by the community, preview them in a sandbox workspace, or add them directly to your instance at xano.com/snippet. Want to learn more about Snippets and how they work? You can find the details here and watch the tutorial.
We've added the ability for you to search and sort your records from the spreadsheet view of database tables. This feature has been often requested and the initial version is finally here. Search allows you to input a search value, which shows records matching that value across all your fields. Sort allows you to sort your records based on a column - or multiple - in either ascending or descending order.
Last month we released Data Caching functions powered by Redis. Now, you can enable Response Caching on your API endpoints and functions for ultra-performant data retrieval. Response Caching stores the response of your query on local memory making it immediately available for data retrieval. You can read more about in our documentation and watch the tutorial on YouTube. Response caching is available on our dedicated resource plans.
Our debugger received a major upgrade! We've made it easier to see a clear breakdown of each step from inputs, to the function stack and the functions within them (including nested functions), and the response. You can easily expand a step to get a clearer picture than before of what inputs, variables, and the response resulted in.
Snippets allow you to easily share API endpoints or a collection of API endpoints with the Xano Community. In this tutorial see a quick overview of how to create a Snippet and install a Snippet to your Xano account.
Response Caching is an abstracted way to cache the response of your API endpoints and Custom Functions. It helps cover certain use cases that data caching functions can power but by stripping away some of the complexities. You will learn how to use Response Caching, its different settings, and use cases of when you might want to use the different settings.
Data Caching functions give you advanced control over caching data, doing on the fly counters, and rate limiting. In this tutorial you will see an overview of what each function is and how you can leverage them in your backend while building your business logic.
Check out this updated tutorial of how you can use Xano powered user authentication to have your users login with Bubble as your front-end. The original tutorial shows how to pass the authentication token through the URL as a parameter in Bubble. This updated version shows how you can use local storage in Bubble to pass the authentication token from page to page.
[New] Clone a workspace - You can now clone an entire workspace. From the settings page of a workspace, click the menu icon in the top right corner and select clone workspace. Cloning your workspace clones all the schema and business logic - it does not clone your database records. Note: you must be on a plan with multiple workspaces to clone a workspace.
[New] Recent update detection - Many of our users work in multiple tabs. This has caused confusion when making an update in one tab but forgetting to update another tab before starting to work in it. We've added recent update detection to prompt you to refresh a tab if there was recently an update somewhere else in the same workspace.
[New] Calculate distance function - We added a new Utility Function called Calculate Distance. It takes in the longitude and latitude of two points and finds the distance between them.
[New] Improved saving on Conditionals, binds/joins, by custom query, While Loop, Precondition - We are actively looking for ways to improve the saving experience in Xano. We've added an auto-save-like feature for the expression statement of Conditionals, binds and joins, by custom query filtering, While Loop, and Preconditions.
[New] UI for Functions, Addons, Tasks, API groups, and API endpoints - We've given a cleaner look to Functions, Addons, and Tasks in an effort to make it easier to sift through them when you have many. Additionally, we've changed the UI for API Groups and have added insightful data to API endpoints so you can see how many inputs, functions, and responses are included in each one.
[New] Random sort with distinct - Support was added for doing random sort while detecting distinct values on the return of query all records function.
[New] XML_decode - We added a filter that will decode an XML object.
[New] Math filters - Several new math filters were added expanding the ease of math functionality in Xano: acos, acosh, asin, asinh, atan, atanh, deg2rad, pow, rad2deg, exp, sin, cos, and tan. Explanations can be seen when selecting a filter.
[New] Create_object - You can now create an object based on a list of keys and a list of values.
[New] Set_conditional - Sets a value at the path within the object and returns the updated object, if the conditional expression is true.
[New] sha512 filters - New cryptography filters for sha512 encyrption were added: hmac_sha512 - Returns a SHA512 signature representation of the value using a shared secret via the HMAC method. sha512 - Returns a SHA512 signature representation of the value.
[Fix] Auto-complete settings for table references - There was a bug that prevented customization of what data should be displayed for table references.
[Fix] Indexes - An issue was fixed that prevented adding indexes to database tables.
[Fix] Delete all records - A bug was fixed where a deleted all records did not clear the cache and a browser refresh was required.
[Fix] Length filter - A bug was fixed where the length filter threw an error when used in by custom query filtering of the query all records function.
Don't forget to join the Xano Community to see the latest announcements, product updates, tutorials, get help on your Xano project, and so much more!
Versioning has been the most requested feature and version one is here. Schema versioning encompasses changes made in different components across your workspace such as the database, queries, Addons, functions, and tasks. Each individual pieces of these keeps track of the changes you make. You can select a recent change to revert back to previous versions. Read more about Schema Versioning in our documentation.
The function stack got a major upgrade. It is now possible to achieve even better performance through caching, which is done through the popular Redis engine. Caching can be thought of as a light weight database used for temporary storage for items that don't change often. This can result in much faster performance since Xano doesn't need to re-run all the business logic. We are very excited to give this functionality to our users and will be working on some new Youtube videos going into this in details. You can read more on caching in the documentation.
This tutorial is part two of building a membership site with Webflow, Memberstack, and Xano. This specific video covers how you can add favoriting and commenting to your Webflow site. It also shows you how to go from a API list view and drill down into a single-item view. This utilizes Webflow's form submission webhook and leverages Xano to separate out the comment and favoriting form requests!
Our newest video series: Minimum Viable Backend goes in depth about creating backends for real use-cases. The first video covers part 1 of creating the backend for a two-sided marketplace similar to Uber.
Learn how to customize the Magic Link with Sendgrid extension and combine it with the Twilio extension to provide your users with a passwordless authentication method powered by SMS.
This updated tutorial teaches you how what Custom Functions are and how you can leverage them in your Xano workspace.
[New] Conditional Set Filters - Allows you to perform certain conditional logic inside a filter. These filters are especially useful if you wish to update a record or an object but only want to update fields where the input is not empty or null. Watch the tutorial to learn how to use them.
[New] Customize Canonical for API Group - You can now customize the canonical ID for an API group. Open the settings of an API group to customize the name.
[New] Default Value for Booleans - Support for default values on Booleans in the database was added.
[New] CSV Encode and Decode Filters - Now you can encode and decode CSV type data with two new filters.
[New] Content-type: text/plain - Support for raw text output was added. To do so, use a Set HTTP function and define Content-type: text/plain.
[Fix] CURL Importer - Fixed for uncommon type of cURL command formats (i.e. -XPOST where it's commonly -X POST).
[Fix] IN Filter - Added support for the IN filter on conditionals so that the order of scalar and array is interchangeable for the comparison.
[Fix] - Deleted API Endpoints - A bug was fixed where a deleted API Endpoint would persist in the UI until the browser was refreshed.
We're migrating away from our clunky forum to a brand new Community. This will make it easier for you to discover new features/tutorials and get questions from fellow Xano users.
Building your backend in Xano should feel much snappier. We've made huge improvements to how quickly you can move around the app.
Tired of manually navigating back and forth between pages as you build your backend? Now you can use the search hot key (CTRL/CMD + F) to jump to any part of Xano. Enter in a specific page like "Database" or your API Endpoint name to jump right to where you want!
Magic Links allow your users to authenticate into your app without a password and without the need of 3rd party OAuth that require your users to have specific social accounts.
We've been working hard with the Outseta team 🤝 to make it easy to use Outseta + Xano together!
If you use Outseta to manage your SaaS or Membership site and Xano to power your backend, this extension joins the two worlds together so that you have everything you need to launch, scale, and grow quickly.
This tutorial is just the beginning - The Bravo Studio team and Xano are working together 🤝 to create more awesome content for you to prototype and validate your ideas faster!
From Figma or XD file to Native App! Bravo studio is the fastest tool to build better prototypes, validate ideas, and launch real products. The tutorial shows you how to use Bravo Studio as a frontend an Xano as the backend to build a Photo Sharing App (like Instagram)
Want to users of your Bubble app authenticate without a password? This video will show you how using our new Magic Link extension!
We have lots of users that use Xano and Bubble together. We've created a playlist of items that will help you be successful.
Easily visualize or generate a dashboards based on the Data you get from the Xano API.
Retool makes it easy to take external data sources and plug them in to build useful internal dashboards, charts, and visualizations.
Outseta - Enable your Outseta to easily login into your Xano application.
Magic Link - Passwordless login using Email (Sendgrid) or modify it to use SMS (Twilio).
Stripe Prices - This builds on the Stripe Products Extension which defines what you sell. Stripe Prices tracks how much and how often to charge.
Mailgun - Enable Email delivery using this popular email service provider.
Ably - Ably enables you to provide complete real-time functionality to your users. We've updated this to include three endpoints including a simple messaging endpoint, an endpoint for push notifications, and a full fledged endpoint for anything you want to do with the Ably API.
Addons (Similar to Graph QL) - Addons are one of Xano's most unique and powerful features. They allow you to extend the response of your APIs from other data sources while giving you full control over how the data is queried.
Role Based Access Control - Learn how to lock down and add an extra security layer to your API endpoints by restricting access based on a user's role.
Using Variables to Pass Data in the Function Stack - Learn how you can store and pass data from function to function with variables in the Function Stack. This way you can manipulate your data exactly how you need to.
Background Tasks - Also knows as cron jobs, allow you to schedule tasks to run one-time or on a recurring frequency.
[New] CPU Usage Monitor - Easily keep track of how much CPU your instance is using and when it might be time to upgrade to the next plan.
[New] Cryptography Filters - Allows you to convert plain text into into unintelligible encrypted text and vice-versa. These filters give you a method of storing and transmitting data in a particular form so that only those for whom it is intended can read and process it. Read the documentation
[New] Reverse Filter - Allows you to reverse the order of an array.
[New] Random Sort Order - You can now sort your queries randomly from the return settings of the Query All Records function.
[Fix] Addons - Fixed the "As Self" bug so when you display go to display the add-on result outside of an object it doesn't break.
[Fix] Background tasks - Fixed a bug where some background tasks were not executing properly.
Selector for inputs, variables, filters, subpath, etc.: The drop down selector received some major enhancements. The new design is intuitive enough to detect the data type, input, variable, etc. based on the value you enter in. Additionally, you can now write or paste JSON directly onto the input line and easily import the value in. Subpath has been improved as well with a clickable view of the data so you know exactly what you're getting. Search-ability and UI improvements to the selector have also been made. We think these improvements will save users even more time! Watch the video to see it in action.
Regional Servers: We have branched out from US based servers to additionally include servers in the U.K., Germany, Singapore, India, and Brazil. Prototype and Business plan users may choose their server location at time of upgrade. If you are already on one of these plans and wish to migrate your server location please contact support.
[New] Magic wand for adding in variable: The magic wand allows you to apply a variable to all fields as inputs. This time saver comes in handy when you have many fields that you need to update by the same variable or if you are updating a record by itself. Watch the tutorial.
[New] Clear all (database view) and reset primary key: In the settings of a database table we added an option to clear all records. Additionally, there is an option to reset the primary ID of the table to 1. (If you choose to clear all records, please be sure you want to do this because the data will be lost). Watch the video for more info.
[New] Clear All Records function: We added a new function under database requests called Clear All Records. It does just that. Select this function, choose the database table, and set the value to true. This will clear all the records in that database table from the API. (Be sure you want to do this because that data will be lost forever if you do). Read the documentation for more info.
[New] Optional debug information: Optionally choose to include the debug information when you run an API endpoint or function within Xano. Omitting the debug info may cause larger queries to run faster during testing. Including the debug info allows you to see a detailed report of how your function stack ran and determine where an error occurred if your endpoint failed. Watch how to use this feature.
[New] Custom Domains: Prototype and Business plan users may use their custom domain on their API endpoint URLs. This can be done by clicking on the settings of your instance and selecting custom domain. Previously, the Xano team set up behind the scenes but we've streamlined the process so users can set up their custom domain themselves.
[New] Filters support added to Evals: Evals are an advanced topic and completely optional. They allow you to reference the fields in other tables (or the same) of a response without needing an Addon. Now you can apply filters to Evals for more accessible data manipulation.
The Database (3 parts): This 3 part series goes over the basics of a SQL database, SQL vs. NoSQL (relational vs. non-relational), how to think about structuring your database, how to leverage relationships with Addons, joins, and more.
External APIs: Using external APIs in your application? We've added a couple new videos using real examples that will help you master integrating external APIs in your backend.
Timestamp (overview of timestamps and timestamps filters)
Introducing our new and improved tree view of the Function Stack
The tree view makes it easy to view your nested functions, drag them in and out of parent functions such as conditionals, copy a function, quick delete, and improved usability and interface.
Updated Airtable Import
Importing from Airtable just got even better! Now, if you import your data from Airtable it will update your existing imported tables.
Upload content from the URL
You can now use the URL path of a file to create file metadata and upload content through the API. Previously the input took either the file itself or a base64 encoded file.
[New] What's new: Introducing release notes. We add a ton of new features to Xano on a weekly (and some times more often) basis. You can now find out about what's new and what's been fixed by clicking the link on the left navigation bar within Xano.
[New] Convert API endpoint to function: Convert an API Endpoint to a function with a click. If you have ever created a stack of functions in your endpoint that you wanted to use somewhere else, now you can simply convert it to a function and implement it wherever you need to in your backend.
[New] Easy Authentication token retrieval: Easily retrieve an authentication token for a specified user by entering in their email or ID in the header of an authentication required API endpoint. The token will persist throughout all your other authentication required endpoints during your session to make testing your endpoints a breeze.
[New] Sticky inputs: The debugger now keeps persistent input values. This is great for testing your endpoints with Run&Debug because now you don't have to re-input all the values each time you want to run your endpoint. The values persist per web session, so when you close the tab they are cleared. You can easily reset the values by clicking reset.
[New] Data and time preferences: You can now set your date and time preferences for your instance. On your account page you can change the date format, time format, and timezone offset from the default settings.
[New] Remove array filter: This new array filter removes an element from an array based on the value and an optional path. Previously, you were required to Loop through the array first to accomplish this. Now it's as easy as applying a filter to an array.
[New] Added support for audio/mime file types for uploading through the API: We've added support for audio and mp3 files to be able to be uploaded through the API as an attachment.
[New] New version notification: When we push a new update to Xano, you will be notified with a banner at the top of your browser letting you know it's time to refresh your page to use the latest version of Xano.
[New] Slack: Whether you want a bot to post to a Slack channel or the ability to post to a Slack channel from an API endpoint, this extension gives you the capabilities to do so.
[New] Stripe Products: Stripe Products defines what you sell and enables you to model your business and product offerings in one place.
[New] Ably Core: Ably Core functionality enables you to provide complete real-time functionality to your users, like notifications, chat, and more.
[New] Events: An event management backend, for posting and managing events, and collecting RSVPs to events.
[New] Rental Marketplace: This two-sided marketplace provides features similar to Airbnb. Users can host their homes, and other users can reserve listings available on the marketplace and much more!
[New] Careers: This template is for the backend of a basic job board. It enables you to post open positions, candidates to submit applications, and you to review those applications.