Manage Function Metadata TOML Files
Each function must provide a
project.toml TOML file that contains metadata for your function, such as a description for the function. This file is in your
<project root>/functions/<function name> directory.
generate:function command (or
SFDX: Create Function from VS Code) automatically creates a template
project.toml file in the appropriate directory with some basic information.
The schema for the fields in
project.toml follows the schema for the Cloud Native Buildpacks project descriptor, but extended with a Salesforce-specific section and fields. Sections from the Cloud Native Buildpacks project descriptor are namespaced using "_" in place of "project", so
_.metadata, and so on.
For Salesforce Functions, the following tables and fields are relevant:
|TOML field||TOML section||Field value||Example value|
|schema-version||The project descriptor schema version. For your functions this field is set to "0.2"||"0.2"|
|schema-version||The schema version for the com.salesforce section. This field is set to "0.1"||"0.1"|
|id||The ID for the function. Must be all lowercase or numeric characters, start with a letter, and have a maximum length of 30 characters||"myfunctionid"|
|description||The description for the function. Optional||"Tax calculation function for Billing project"|
|type||The project type. For your functions this field is always "function"||"function"|
|salesforce-api-version||The Salesforce API version for the function. When you create your function this field is set to the latest Salesforce API version by default. Versions 53.0 and later are supported.||"57.0"|
The following is an example
project.toml for a function:
For details on the general TOML file format, see toml.io.
For an example of a function that uses custom buildpacks, see Use Custom Buildpacks.