---
schema_version: "1"
id: 081dd36d3c076ff9fd77d17118c85047c6770dc8a2b217540445ee5cbb789a11
title: Manage Function Metadata TOML Files
collection: developer
version: current
locale: en-us
portal_url: https://docs.salesforce.com/developer/current/en-us/salesforce-functions/functions/guide/dev-guide/toml.md
canonical_url: https://developer.salesforce.com/docs/platform/functions/guide/toml.html
source_site: developer.salesforce.com
content_type: documentation
content_hash: 368c37bf80b7c96f2e1778387743019238ecb44d38de1433219f853b2d055ebd
products:
  - Salesforce Functions
---
# 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.
The `generate:function` command 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](https://github.com/buildpacks/spec/blob/main/extensions/project-descriptor.md), 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 `[project]` becomes `[_]`, `project.licenses`becomes`_.licenses`, `metadata`becomes`_.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         | `[com.salesforce]` | The schema version for the com.salesforce section. This field is set to "0.1"                                                                                                        | "0.1"                                          |
| id                     | `[com.salesforce]` | 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            | `[com.salesforce]` | The description for the function. Optional                                                                                                                                           | "Tax calculation function for Billing project" |
| type                   | `[com.salesforce]` | The project type. For your functions this field is always "function"                                                                                                                 | "function"                                     |
| salesforce-api-version | `[com.salesforce]` | 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:

```toml
[_]
schema-version = "0.2"

[com.salesforce]
schema-version = "0.1"
id = "taxfunction"
description = "Tax calculation function for Billing project"
type = "function"
salesforce-api-version = "57.0"
```

For details on the general TOML file format, see [toml.io](https://toml.io/en/).

For an example of a function that uses custom buildpacks, see [Use Custom Buildpacks](https://developer.salesforce.com/docs/platform/functions/guide/custom-buildpacks.md).
