Text Field
The Text Field is one of the most commonly used fields. It saves a string to the database and provides the Admin Panel with a simple text input.

To add a Text Field, set the type
to text
in your Field Config:
Config Options
Option | Description |
---|---|
| To be used as the property name when stored and retrieved from the database. More details. |
| Text used as a field label in the Admin Panel or an object with keys for each language. |
| Enforce that each entry in the Collection has a unique value for this field. |
| Used by the default validation function to ensure values are of a minimum character length. |
| Used by the default validation function to ensure values are of a maximum character length. |
| Provide a custom validation function that will be executed on both the Admin Panel and the backend. More details. |
| Build an index for this field to produce faster queries. Set this field to |
| If this field is top-level and nested in a config supporting Authentication, include its data in the user JWT. |
| Provide Field Hooks to control logic for this field. More details. |
| Provide Field Access Control to denote what users can see and do with this field's data. More details. |
| Restrict this field's visibility from all APIs entirely. Will still be saved to the database, but will not appear in any API or the Admin Panel. |
| Provide data to be used for this field's default value. More details. |
| Enable localization for this field. Requires localization to be enabled in the Base config. |
| Require this field to have a value. |
| Admin-specific configuration. More details. |
| Extension point for adding custom data (e.g. for plugins) |
| Makes this field an ordered array of text instead of just a single text. |
| Minimum number of texts in the array, if |
| Maximum number of texts in the array, if |
| Override field type generation with providing a JSON schema |
| Provide |
* An asterisk denotes that a property is required.
Admin Options
To customize the appearance and behavior of the Text Field in the Admin Panel, you can use the admin
option:
The Text Field inherits all of the default admin options from the base Field Admin Config, plus the following additional options:
Option | Description |
---|---|
| Set this property to define a placeholder string in the text input. |
| Set this property to a string that will be used for browser autocomplete. |
| Override the default text direction of the Admin Panel for this field. Set to |
Example
Custom Components
Field
Server Component
Client Component
Label
Server Component
Client Component
Slug Field
One common use case for the Text Field is to create a "slug" for a document. A slug is a unique, indexed, URL-friendly string that identifies a particular document, often used to construct the URL of a webpage.
Payload provides a built-in Slug Field so you don't have to built one from scratch. This field automatically generates a slug based on the value of another field, such as a title or name field. It provides UI to lock and unlock the field to protect its value, as well as to re-generate the slug on-demand.
To add a Slug Field, import the slugField
into your field schema:
The slug field exposes a few top-level config options for easy customization:
Option | Description |
---|---|
| To be used as the slug field's name. Defaults to |
| A function that receives the default fields so you can override on a granular level. See example below. More details. |
| To be used as the name for the |
| The name of the field to use when generating the slug. This field must exist in the same collection. Defaults to |
| The position of the slug field. More details. |
| Require the slug field. Defaults to |
Slug Overrides
If the above options aren't sufficient for your use case, you can use the overrides
function to customize the slug field at a granular level. The overrides
function receives the default fields that make up the slug field, and you can modify them to any extent you need.