| --- |
| page_title: Resources Overview - Configuration Language |
| description: >- |
| Resources describe infrastructure objects in Terraform configurations. Find |
| documentation for resource syntax, behavior, and meta-arguments. |
| --- |
| |
| # Resources |
| |
| > **Hands-on:** Try the [Terraform: Get Started](/terraform/tutorials/aws-get-started?utm_source=WEBSITE&utm_medium=WEB_IO&utm_offer=ARTICLE_PAGE&utm_content=DOCS) tutorials. |
| |
| _Resources_ are the most important element in the Terraform language. |
| Each resource block describes one or more infrastructure objects, such |
| as virtual networks, compute instances, or higher-level components such |
| as DNS records. |
| |
| - [Resource Blocks](/terraform/language/resources/syntax) documents |
| the syntax for declaring resources. |
| |
| - [Resource Behavior](/terraform/language/resources/behavior) explains in |
| more detail how Terraform handles resource declarations when applying a |
| configuration. |
| |
| - The Meta-Arguments section documents special arguments that can be used with |
| every resource type, including |
| [`depends_on`](/terraform/language/meta-arguments/depends_on), |
| [`count`](/terraform/language/meta-arguments/count), |
| [`for_each`](/terraform/language/meta-arguments/for_each), |
| [`provider`](/terraform/language/meta-arguments/resource-provider), |
| and [`lifecycle`](/terraform/language/meta-arguments/lifecycle). |
| |
| - [Provisioners](/terraform/language/resources/provisioners/syntax) |
| documents configuring post-creation actions for a resource using the |
| `provisioner` and `connection` blocks. Since provisioners are non-declarative |
| and potentially unpredictable, we strongly recommend that you treat them as a |
| last resort. |