> For the complete documentation index, see [llms.txt](https://docs.acecloud.ai/knowledge-base/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.acecloud.ai/knowledge-base/functions/function-user-facing-guide.md).

# Function User Facing Guide

* [Overview](#AceCloudFunctions:UserFacingCustomerPor)
* [Key concepts](#AceCloudFunctions:UserFacingCustomerPor)
* [Code or Container image?](#AceCloudFunctions:UserFacingCustomerPor)
* [Which page to use](#AceCloudFunctions:UserFacingCustomerPor)
* [Supported languages and runtimes](#AceCloudFunctions:UserFacingCustomerPor)
* [Related pages](#AceCloudFunctions:UserFacingCustomerPor)

## Overview

AceCloud Functions runs your code on demand, without servers to set up or manage. This guide covers everything you do with it in the AceCloud customer portal: creating a function, deploying code or a container image, testing it, releasing versions and splitting traffic, managing secrets and environment variables, and watching how the function behaves.

It answers "how do I do X in the portal". It does not repeat what your code must look like. For the handler contract, request bodies, headers, dependencies and logging from code, use the developer pages listed under Related pages.

## Key concepts

| **Term**             | **Meaning**                                                                                                                                                                                                                              |
| -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Function             | A piece of code (or a container image) that runs when it receives an HTTP request. Each function has its own endpoint.                                                                                                                   |
| Version              | An immutable release of a function. You can keep several versions and decide how much traffic each one receives.                                                                                                                         |
| Packaging type       | How you supply the code. **Code** (write in the browser editor or upload an archive) or **Container image** (an image you build and push to Ace Container Registry). Chosen when you create the function and locked afterwards.          |
| Draft                | The work in progress that the **Test** tab runs. For a Code function it is the saved editor draft. For a Container image function it is the digest you set with **Update draft**. A draft is not a version and receives no live traffic. |
| Traffic split        | The share of requests each version receives. The shares always add up to 100%.                                                                                                                                                           |
| Secret               | A value you store once in the project and reuse in many functions. Secrets are project level. Two types: **ENV** (key-value pairs) and **File** (an uploaded file).                                                                      |
| Environment variable | A plain, non-secret value passed to your function by name.                                                                                                                                                                               |
| Environment secret   | A key from an ENV secret, exposed to your function as an environment variable.                                                                                                                                                           |
| Secret file mount    | A File secret placed inside your function's container at a path you choose.                                                                                                                                                              |
| Scaling              | **Min scale**, **Max scale** and **Concurrency**: how many instances run, and how many requests each instance handles at once.                                                                                                           |
| Timeout              | The longest a single request may run.                                                                                                                                                                                                    |
| Log retention        | How many days the function's logs are kept.                                                                                                                                                                                              |
| Endpoint             | The HTTPS address of the function, shown on its **Overview** tab.                                                                                                                                                                        |

## Code or Container image?

|                       | **Code**                                                                                    | **Container image**                                                                                                                                                       |
| --------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Best when             | Your code is a handler plus pure language libraries, and you want the platform to build it. | You need operating system packages or native libraries, you already build images in your own pipeline, or you are moving a container-based function from another service. |
| You provide           | Source files in the in-browser editor, or a .zip or .tar.gz archive.                        | An image built from an AceCloud Functions base image and pushed to Ace Container Registry.                                                                                |
| Build                 | The platform builds it when you click **Apply new version**.                                | You build and push it yourself. The platform checks the image when you create a version.                                                                                  |
| Function tabs         | Overview, Editor, Test, Versions, Insights, Logs                                            | Overview, Images, Test, Versions, Insights, Logs                                                                                                                          |
| Locked after creation | Packaging type, function name, language                                                     | Packaging type, repository, function name, language                                                                                                                       |

## Which page to use

| **I want to...**                                | **Page**                                                                                                                                                                                                     |
| ----------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Find my way around the Functions section        | [Getting Around the Functions Console](https://myrealdata.atlassian.net/wiki/spaces/kti/pages/2057633794/AceCloud+Functions+Guide+01+Getting+Around+the+Functions+Console)                                   |
| Create a function                               | [Creating a Function](https://myrealdata.atlassian.net/wiki/spaces/kti/pages/2057175058/AceCloud+Functions+Guide+02+Creating+a+Function)                                                                     |
| Write code in the browser or upload an archive  | [Deploying Code: Editor and Archive Upload](https://myrealdata.atlassian.net/wiki/spaces/kti/pages/2056912911/AceCloud+Functions+Guide+03+Deploying+Code+Editor+and+Archive+Upload)                          |
| Build and push a container image                | [Building a Container Image for Ace Functions](https://myrealdata.atlassian.net/wiki/spaces/kti/pages/2056421403/AceCloud+Functions+Guide+04+Building+a+Container+Image+for+Ace+Functions)                   |
| Create a version from a pushed image            | [Deploying a Container Image](https://myrealdata.atlassian.net/wiki/spaces/kti/pages/2056716343/AceCloud+Functions+Guide+05+Deploying+a+Container+Image)                                                     |
| Try a function before releasing it              | [Testing a Function Before Publishing](https://myrealdata.atlassian.net/wiki/spaces/kti/pages/2055962676/AceCloud+Functions+Guide+06+Testing+a+Function+Before+Publishing)                                   |
| Release a version, split traffic or roll back   | [Managing Versions and Traffic](https://myrealdata.atlassian.net/wiki/spaces/kti/pages/2056290330/AceCloud+Functions+Guide+07+Managing+Versions+and+Traffic)                                                 |
| Change scaling, resources or other settings     | [Editing a Function's Configuration](https://myrealdata.atlassian.net/wiki/spaces/kti/pages/2057830423/AceCloud+Functions+Guide+08+Editing+a+Function+s+Configuration)                                       |
| Store a secret                                  | [Managing Secrets](https://myrealdata.atlassian.net/wiki/spaces/kti/pages/2055766059/AceCloud+Functions+Guide+09+Managing+Secrets)                                                                           |
| Pass variables, secrets or files to my function | [Using Environment Variables and Secrets in a Function](https://myrealdata.atlassian.net/wiki/spaces/kti/pages/2056978467/AceCloud+Functions+Guide+10+Using+Environment+Variables+and+Secrets+in+a+Function) |
| See traffic, errors and logs                    | [Monitoring: Endpoint, Insights and Logs](https://myrealdata.atlassian.net/wiki/spaces/kti/pages/2057830443/AceCloud+Functions+Guide+11+Monitoring+Endpoint+Insights+and+Logs)                               |
| Remove a function                               | [Deleting a Function](https://myrealdata.atlassian.net/wiki/spaces/kti/pages/2055798826/AceCloud+Functions+Guide+12+Deleting+a+Function)                                                                     |
| Look up a limit or a naming rule                | [Limits and Naming Rules](https://myrealdata.atlassian.net/wiki/spaces/kti/pages/2056978487/AceCloud+Functions+Guide+13+Limits+and+Naming+Rules)                                                             |
| Understand why a version shows Error            | [Troubleshooting Version Errors](https://myrealdata.atlassian.net/wiki/spaces/kti/pages/2056945687/AceCloud+Functions+Guide+14+Troubleshooting+Version+Errors)                                               |

## Supported languages and runtimes

| **Language** | **Versions**     |
| ------------ | ---------------- |
| Python       | 3.12, 3.13, 3.14 |
| Node.js      | 22, 24           |
| Go           | 1.25, 1.26       |

The request and response contract is the same in every language and version.

## Related pages

* [Ace Functions - Developer Reference on Runtimes](https://myrealdata.atlassian.net/wiki/x/qIAceQ): the handler contract, request bodies, headers, dependencies and logging from code.
* [Ace Functions - Developer Guide on Runtimes](https://myrealdata.atlassian.net/wiki/x/BYCyd): step-by-step walkthroughs, including Getting Started and Troubleshooting.
* [Ace Functions - Developer Guide on Customer Portal Services Integration](https://myrealdata.atlassian.net/wiki/x/CwDydg): guides that connect functions to other AceCloud services, including Using Secrets and Environment Variables from code.
