# Resources

### **What are Resources?**

Resources are a very important piece of the \<form.io> platform and are used to define data objects within a project. These Resources can be referenced within other forms or within your application to create complex nested resource relationships. Once a resource has been created, it can then be used as a RESTful database within your application where new entities can be created, read, deleted, and queried like you would any other database collection.

### **Why should I use Resources?**

Resource objects not only define the API and back-end data model but also the front-end UI, meaning they can also be utilized as a normal form. These Resource data models can be used within other forms making it simple to create a data collection and reference that data in your form. Use a Resource to reference User credentials within your application for authentication, collection of reference data to utilize in other forms or an application, dynamic select filtering, etc.

### **How do I use Resources?**

Resources are created the same way as forms by using the Drag and Drop form builder. Once a Resource Form is in place, define the Data Object by making submissions against the Resource.

<figure><img src="https://3305536326-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MPHoF2HwOA0s5HV_AIB%2Fuploads%2F34kzOs15tRk6cyU7Qcvi%2Fresource1.webp?alt=media&#x26;token=4aad1408-fd88-4821-a283-bcac3b487caf" alt=""><figcaption><p>Resource created for Regional Manager database and reference point</p></figcaption></figure>

New entities can be created, read, deleted, and queried like you would any other database collection.

<figure><img src="https://3305536326-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MPHoF2HwOA0s5HV_AIB%2Fuploads%2FVscJDi71kNPzGDPYLyc2%2Fresource2.webp?alt=media&#x26;token=8fb8fa70-3400-4b5e-a53f-d2e1dfc1f764" alt=""><figcaption><p>Create your data object by making submissions against the Resource</p></figcaption></figure>

After data has been submitted, the Resource will now be established and ready to be utilized as a RESTful database within your application or other forms.

<figure><img src="https://3305536326-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MPHoF2HwOA0s5HV_AIB%2Fuploads%2FY8AD4QPufnT0J63zNHcm%2Fresource3.webp?alt=media&#x26;token=5011f20f-a29b-4aa5-b135-13e1f5e7e877" alt=""><figcaption><p>Using a Select Resource field is one way you can reference the Resource data object</p></figcaption></figure>

​[**Click here for an in-depth explanation of how Resources and Forms work**](https://help.form.io/intro/overview#forms-and-resources)​​

### **Best Practices & FAQ**

* Create a Resource anytime a Data Object reference is needed for your applications or forms.
* Use the Data Import feature to easily establish a Resource data object
* Setup [**Cascading Select Dropdowns**](https://help.form.io/tutorials/cascading-select-dropdowns) using Resources and Select Resource fields
* Reference User Resource data for [**User Authentication**](https://help.form.io/userguide/user-authentication)**​**
* Use [**Select Resource fields**](https://help.form.io/userguide/forms/form-components#select) to reference Resource field data on your forms
* Use the Data Source component to pull in large amounts of data from your Resource to fields on your Form.
* Resources can also be used to create and house pre-defined fields called [**Existing Resource Fields**](https://help.form.io/userguide/forms/existing-resource-fields)
