> ## Documentation Index
> Fetch the complete documentation index at: https://docs.specterops.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Configuring Extra Fields

Ghostwriter v4.1 introduces Extra Fields, additional user-defined fields that can be added to several objects that Ghostwriter stores for data specific to your own workflow.

### Configuring

To configure extra fields, go to Admin Panel > Admin Panel, and then "Extra Field Configurations". Then select the object type you wish to configure extra fields for.

<Frame>
  <img src="https://mintcdn.com/specteropsdocs/BBK0AWoMY3kd6fe3/ghostwriter-docs/images/configuring-global-settings/image-11.png?fit=max&auto=format&n=BBK0AWoMY3kd6fe3&q=85&s=40fba6eaf74af9c4dec58af8d04b5de2" alt="" width="448" height="403" data-path="ghostwriter-docs/images/configuring-global-settings/image-11.png" />
</Frame>

Each extra field has the following options:

* Internal Name: Name used to store the field internally, as well as in templates. Cannot contain spaces, and must be unique across all fields for an object type.

* Display Name: Name that is used in the UI for the field. Spaces are allowed here.

* Type: The data type of the field. Currently this includes:

  * **Checkbox**: Single true/false checkbox

  * **Single Line of Text**: Single line of unformatted text

  * **Formatted Text**: Multiple lines of text with formatting

  * **Integer**: Whole integer value without any decimal component

  * **Number**: Numeric value, potentially with a decimal component

<Frame>
  <img src="https://mintcdn.com/specteropsdocs/BBK0AWoMY3kd6fe3/ghostwriter-docs/images/configuring-global-settings/image-12.png?fit=max&auto=format&n=BBK0AWoMY3kd6fe3&q=85&s=3c35ca0e52f527a367cd474bc1437670" alt="" width="750" height="467" data-path="ghostwriter-docs/images/configuring-global-settings/image-12.png" />
</Frame>

After saving the field, it will appear in the object's edit forms and in their detail pages:

<Frame>
  <img src="https://mintcdn.com/specteropsdocs/BBK0AWoMY3kd6fe3/ghostwriter-docs/images/configuring-global-settings/image-13.avif?fit=max&auto=format&n=BBK0AWoMY3kd6fe3&q=85&s=bd67814798a632d6fb7eae4b6d9b6b4f" alt="" width="800" height="220" data-path="ghostwriter-docs/images/configuring-global-settings/image-13.avif" />
</Frame>

<Frame>
  <img src="https://mintcdn.com/specteropsdocs/BBK0AWoMY3kd6fe3/ghostwriter-docs/images/configuring-global-settings/image-14.avif?fit=max&auto=format&n=BBK0AWoMY3kd6fe3&q=85&s=fdb08893b44517bd19b4d07d0783e25e" alt="" width="800" height="377" data-path="ghostwriter-docs/images/configuring-global-settings/image-14.avif" />
</Frame>

### Using in Templates

In templates, an object's extra fields are stored as subattributes of the `extra_fields` attribute. For example, to display the field with the internal name `internal_contact` on a Client stored on the variable `client`, you can write `{{client.extra_fields.internal_contact}}`.

The extra field may be `None` internally if the extra field was created after the object was, and has not been set yet.
