# Extensions
URL: https://docs.awellhealth.com/docs/extensions

> For the complete documentation index, see [llms.txt](https://docs.awellhealth.com/llms.txt).



An extension gives a care flow a new ability: book an appointment, send an SMS, write a note back to an
electronic health record. Without one, a care flow can only work with what's already inside Awell.

## Using an extension [#using-an-extension]

* [What are Awell Extensions?](/docs/extensions/what-are-awell-extensions). The concept, public versus
  private.
* [What are custom actions?](/docs/extensions/what-are-custom-actions). What installing an extension
  adds to the action list.

Using a custom action once it's installed is a care-flow author's job, so it lives in Design care
flows: [Add a custom action to a step](/docs/design-care-flows/add-a-custom-action-to-a-step).

Installing an extension is covered in
[Integrate with extensions](/docs/connect-systems/integrate-with-extensions). Browse what exists in the
[Marketplace](/docs/marketplace).

## Building an extension [#building-an-extension]

* [Build your own extension](/docs/extensions/get-started). Why, and what needs installing.
* [Create an extension](/docs/extensions/create-an-extension). Folder structure and properties.
* [Extension settings](/docs/extensions/extension-settings). What the installer fills in.
* [Store secrets](/docs/extensions/store-secrets). Where API keys go, and where they must not.
* [Create an action](/docs/extensions/create-an-action). Defining a custom action.
* [Action fields](/docs/extensions/action-fields). How an author configures an action in Studio.
* [The onEvent function](/docs/extensions/on-event). Where an action's logic lives.
* [Test your extension](/docs/extensions/test-your-extension)
* [Deploy your extension](/docs/extensions/deploy-your-extension)
* [Versioning](/docs/extensions/versioning)
* [Contributing guidelines](/docs/extensions/contributing-guidelines). For public extensions.

## Who this is for [#who-this-is-for]

Using an extension is a care flow author's job: pick it and configure it in Studio. Building one is an
engineer's job and needs TypeScript.
