# Developer

- [Property Editors](https://docs.umbraco.com/umbraco-forms/developer/property-editors.md)
- [Preparing Your Frontend](https://docs.umbraco.com/umbraco-forms/developer/prepping-frontend.md)
- [Rendering Forms](https://docs.umbraco.com/umbraco-forms/developer/rendering-forms.md): Learn the different ways of rendering a form on your website when using Umbraco Forms.
- [Rendering Forms Scripts](https://docs.umbraco.com/umbraco-forms/developer/rendering-scripts.md)
- [Themes](https://docs.umbraco.com/umbraco-forms/developer/themes.md): Documentation on how to apply custom themes to Umbraco Forms
- [Custom Markup](https://docs.umbraco.com/umbraco-forms/developer/custom-markup.md): This article teaches you how to customize how your Umbraco Forms are outputted.
- [Email Templates](https://docs.umbraco.com/umbraco-forms/developer/email-templates.md): Creating an email template for Umbraco Forms.
- [Working With Record Data](https://docs.umbraco.com/umbraco-forms/developer/working-with-data.md): Developer documentation on working with Forms record data.
- [Umbraco Forms in the Database](https://docs.umbraco.com/umbraco-forms/developer/forms-in-the-database.md)
- [Extending](https://docs.umbraco.com/umbraco-forms/developer/extending.md)
- [Adding A Type To The Provider Model](https://docs.umbraco.com/umbraco-forms/developer/extending/adding-a-type.md)
- [Setting Types](https://docs.umbraco.com/umbraco-forms/developer/extending/adding-a-type/setting-types.md)
- [Adding A Field Type To Umbraco Forms](https://docs.umbraco.com/umbraco-forms/developer/extending/adding-a-fieldtype.md)
- [Excluding a built-in field](https://docs.umbraco.com/umbraco-forms/developer/extending/adding-a-fieldtype/excluding-a-built-in-field.md)
- [Adding A Prevalue Source Type To Umbraco Forms](https://docs.umbraco.com/umbraco-forms/developer/extending/adding-a-prevaluesourcetype.md)
- [Adding a UI Builder repository as a prevalue source](https://docs.umbraco.com/umbraco-forms/developer/extending/adding-a-prevaluesourcetype/uibuilder-repository-prevalue.md)
- [Adding A Workflow Type To Umbraco Forms](https://docs.umbraco.com/umbraco-forms/developer/extending/adding-a-workflowtype.md)
- [Adding An Export Type To Umbraco Forms](https://docs.umbraco.com/umbraco-forms/developer/extending/adding-a-exporttype.md)
- [Adding a Magic String Format Function](https://docs.umbraco.com/umbraco-forms/developer/extending/adding-a-magic-string-format-function.md)
- [Adding A Server-Side Notification Handler To Umbraco Forms](https://docs.umbraco.com/umbraco-forms/developer/extending/adding-an-event-handler.md): See an example of validating a form server-side
- [Adding a Validation Pattern](https://docs.umbraco.com/umbraco-forms/developer/extending/adding-a-validation-pattern.md): Customize the regular expression based validation patterns available for text fields.
- [Customize Default Fields and Workflows For a Form](https://docs.umbraco.com/umbraco-forms/developer/extending/customize-default-workflows.md): How to amend the built-in behavior of adding fields and associating workflows with new forms
- [Configuration](https://docs.umbraco.com/umbraco-forms/developer/configuration.md): In Umbraco Forms it's possible to customize the functionality with various configuration values.
- [Forms Provider Type Details](https://docs.umbraco.com/umbraco-forms/developer/configuration/type-details.md): Provides details of the built-in provider types available with Umbraco Forms
- [Webhooks](https://docs.umbraco.com/umbraco-forms/developer/webhooks.md)
- [Security](https://docs.umbraco.com/umbraco-forms/developer/security.md): How to secure access to Umbraco Forms data and functionality.
- [Magic Strings](https://docs.umbraco.com/umbraco-forms/developer/magic-strings.md)
- [Health Checks](https://docs.umbraco.com/umbraco-forms/developer/healthchecks.md)
- [Apply keys and indexes](https://docs.umbraco.com/umbraco-forms/developer/healthchecks/apply-keys.md)
- [Apply keys and indexes for forms in the database](https://docs.umbraco.com/umbraco-forms/developer/healthchecks/forms-in-the-database-apply-keys.md)
- [Localization](https://docs.umbraco.com/umbraco-forms/developer/localization.md)
- [Headless/AJAX Forms](https://docs.umbraco.com/umbraco-forms/developer/ajaxforms.md)
- [Block List Labels](https://docs.umbraco.com/umbraco-forms/developer/blocklistlabels.md)
- [Field Types](https://docs.umbraco.com/umbraco-forms/developer/field-types.md)
- [Storing Prevalue Text Files With IPreValueTextFileStorage](https://docs.umbraco.com/umbraco-forms/developer/iprevaluetextfilestorage.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.umbraco.com/umbraco-forms/developer.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
