# Config Object Entries

Config objects are similar to a config but instead of everything having to be static these classes are instances and all fields are instance fields instead of static. These are useful if you have the same data but for different parts ie. 3 items that have the same config values but need to be separated.

Config objects must be annotated with the @ConfigObject annotation to signify that the object can be used for a object entry. Unlike categories and configs ConfigObjects can only contain entries, no buttons, or categories are allowed on objects, additionally they have 1 restriction and that is that they cannot contain entries for other Config Objects.

You may also optionally implement the SerializableObject interface to serialize to a custom JsonElement instead of it automatically serializing, useful if you have extra hidden data you want to be stored.

{% hint style="info" %}
**Note**

Config objects like classes have certain restrictions they must follow. The following are restrictions that a config object must follow:

* The class must be annotated with the @ConfigObject annotation
* The class must have the public access modifier
* The class must be static if it is an inner class of another
* The class must not be an enum, interface, annotation, or a record.
* All config entry fields must be not static
* All config entry fields must follow all other stipulations given to them in the Config Entries page.
  {% endhint %}


---

# 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://config.wiki.teamresourceful.com/creating-your-first-config/config-entries/config-object-entries.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.
