diff --git a/docs/data-sources/accounts.md b/docs/data-sources/accounts.md
new file mode 100644
index 00000000..5a718eab
--- /dev/null
+++ b/docs/data-sources/accounts.md
@@ -0,0 +1,87 @@
+---
+# generated by https://github.com/hashicorp/terraform-plugin-docs
+page_title: "boundary_accounts Data Source - terraform-provider-boundary"
+subcategory: ""
+description: |-
+ Lists accounts
+---
+
+# boundary_accounts (Data Source)
+
+Lists accounts
+
+## Example Usage
+
+```terraform
+# Retrieve Accounts
+data "boundary_accounts" "example" {
+ auth_method_id = "id"
+}
+
+# Retrieve Accounts with "test" in the name
+data "boundary_accounts" "example" {
+ filter = "\"test\" in \"/item/name\""
+ auth_method_id = "id"
+}
+```
+
+
+## Schema
+
+### Optional
+
+- `auth_method_id` (String) The ID of the auth method whose accounts should be listed.
+- `filter` (String) You can specify that the filter should only return items that match.
+Refer to [filter expressions](https://developer.hashicorp.com/boundary/docs/concepts/filtering) for more information.
+- `list_token` (String) An opaque token that Boundary uses to continue an existing iteration or
+request updated items. If you do not specify a token, pagination
+starts from the beginning. To learn more about list pagination
+in Boundary, refer to [list pagination](https://developer.hashicorp.com/boundary/docs/api-clients/api/pagination).
+- `page_size` (Number) The maximum size of a page in this iteration.
+If you do not set a page size, Boundary uses the configured default page size.
+If the page_size is greater than the default page size configured,
+Boundary truncates the page size to this number.
+
+### Read-Only
+
+- `est_item_count` (Number) An estimate at the total items available. This may change during pagination.
+- `id` (String) The ID of this resource.
+- `items` (List of Object) The list of accounts. (see [below for nested schema](#nestedatt--items))
+- `removed_ids` (List of String) A list of item IDs that have been removed since they were returned
+as part of a pagination. They should be dropped from any client cache.
+This may contain items that are not known to the cache, if they were
+created and deleted between listings.
+- `response_type` (String) The type of response, either "delta" or "complete".
+Delta signifies that this is part of a paginated result
+or an update to a previously completed pagination.
+Complete signifies that it is the last page.
+- `sort_by` (String) The name of the field which the items are sorted by.
+- `sort_dir` (String) The direction of the sort, either "asc" or "desc".
+
+
+### Nested Schema for `items`
+
+Read-Only:
+
+- `auth_method_id` (String)
+- `authorized_actions` (List of String)
+- `created_time` (String)
+- `description` (String)
+- `id` (String)
+- `managed_group_ids` (List of String)
+- `name` (String)
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--scope))
+- `type` (String)
+- `updated_time` (String)
+- `version` (Number)
+
+
+### Nested Schema for `items.scope`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
diff --git a/docs/data-sources/aliases.md b/docs/data-sources/aliases.md
new file mode 100644
index 00000000..e9261aef
--- /dev/null
+++ b/docs/data-sources/aliases.md
@@ -0,0 +1,89 @@
+---
+# generated by https://github.com/hashicorp/terraform-plugin-docs
+page_title: "boundary_aliases Data Source - terraform-provider-boundary"
+subcategory: ""
+description: |-
+ Lists aliases
+---
+
+# boundary_aliases (Data Source)
+
+Lists aliases
+
+## Example Usage
+
+```terraform
+# Retrieve Aliases
+data "boundary_aliases" "example" {
+ scope_id = "id"
+}
+
+# Retrieve Aliases with "test" in the name
+data "boundary_aliases" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
+```
+
+
+## Schema
+
+### Optional
+
+- `filter` (String) You can specify that the filter should only return items that match.
+Refer to [filter expressions](https://developer.hashicorp.com/boundary/docs/concepts/filtering) for more information.
+- `list_token` (String) An opaque token that Boundary uses to continue an existing iteration or
+request updated items. If you do not specify a token, pagination
+starts from the beginning. To learn more about list pagination
+in Boundary, refer to [list pagination](https://developer.hashicorp.com/boundary/docs/api-clients/api/pagination).
+- `page_size` (Number) The maximum size of a page in this iteration.
+If you do not set a page size, Boundary uses the configured default page size.
+If the page_size is greater than the default page size configured,
+Boundary truncates the page size to this number.
+- `recursive` (Boolean) Whether to recursively list aliases in the provided scope's child scopes.
+- `scope_id` (String) The ID of the scope in which to list aliases
+
+### Read-Only
+
+- `est_item_count` (Number) An estimate at the total items available. This may change during pagination.
+- `id` (String) The ID of this resource.
+- `items` (List of Object) The list of aliases. (see [below for nested schema](#nestedatt--items))
+- `removed_ids` (List of String) A list of item IDs that have been removed since they were returned
+as part of a pagination. They should be dropped from any client cache.
+This may contain items that are not known to the cache, if they were
+created and deleted between listings.
+- `response_type` (String) The type of response, either "delta" or "complete".
+Delta signifies that this is part of a paginated result
+or an update to a previously completed pagination.
+Complete signifies that it is the last page.
+- `sort_by` (String) The name of the field which the items are sorted by.
+- `sort_dir` (String) The direction of the sort, either "asc" or "desc".
+
+
+### Nested Schema for `items`
+
+Read-Only:
+
+- `authorized_actions` (List of String)
+- `created_time` (String)
+- `description` (String)
+- `destination_id` (String)
+- `id` (String)
+- `name` (String)
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--scope))
+- `scope_id` (String)
+- `type` (String)
+- `updated_time` (String)
+- `value` (String)
+- `version` (Number)
+
+
+### Nested Schema for `items.scope`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
diff --git a/docs/data-sources/auth_methods.md b/docs/data-sources/auth_methods.md
new file mode 100644
index 00000000..c6ddb7bc
--- /dev/null
+++ b/docs/data-sources/auth_methods.md
@@ -0,0 +1,88 @@
+---
+# generated by https://github.com/hashicorp/terraform-plugin-docs
+page_title: "boundary_auth_methods Data Source - terraform-provider-boundary"
+subcategory: ""
+description: |-
+ Lists auth-methods
+---
+
+# boundary_auth_methods (Data Source)
+
+Lists auth-methods
+
+## Example Usage
+
+```terraform
+# Retrieve AuthMethods
+data "boundary_auth_methods" "example" {
+ scope_id = "id"
+}
+
+# Retrieve AuthMethods with "test" in the name
+data "boundary_auth_methods" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
+```
+
+
+## Schema
+
+### Optional
+
+- `filter` (String) You can specify that the filter should only return items that match.
+Refer to [filter expressions](https://developer.hashicorp.com/boundary/docs/concepts/filtering) for more information.
+- `list_token` (String) An opaque token that Boundary uses to continue an existing iteration or
+request updated items. If you do not specify a token, pagination
+starts from the beginning. To learn more about list pagination
+in Boundary, refer to [list pagination](https://developer.hashicorp.com/boundary/docs/api-clients/api/pagination).
+- `page_size` (Number) The maximum size of a page in this iteration.
+If you do not set a page size, Boundary uses the configured default page size.
+If the page_size is greater than the default page size configured,
+Boundary truncates the page size to this number.
+- `recursive` (Boolean) Whether to recursively list auth methods in the provided scope's child scopes.
+- `scope_id` (String) The scope ID in which to list auth methods.
+
+### Read-Only
+
+- `est_item_count` (Number) An estimate at the total items available. This may change during pagination.
+- `id` (String) The ID of this resource.
+- `items` (List of Object) The items returned in this page. (see [below for nested schema](#nestedatt--items))
+- `removed_ids` (List of String) A list of item IDs that have been removed since they were returned
+as part of a pagination. They should be dropped from any client cache.
+This may contain items that are not known to the cache, if they were
+created and deleted between listings.
+- `response_type` (String) The type of response, either "delta" or "complete".
+Delta signifies that this is part of a paginated result
+or an update to a previously completed pagination.
+Complete signifies that it is the last page.
+- `sort_by` (String) The name of the field which the items are sorted by.
+- `sort_dir` (String) The direction of the sort, either "asc" or "desc".
+
+
+### Nested Schema for `items`
+
+Read-Only:
+
+- `authorized_actions` (List of String)
+- `created_time` (String)
+- `description` (String)
+- `id` (String)
+- `is_primary` (Boolean)
+- `name` (String)
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--scope))
+- `scope_id` (String)
+- `type` (String)
+- `updated_time` (String)
+- `version` (Number)
+
+
+### Nested Schema for `items.scope`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
diff --git a/docs/data-sources/auth_tokens.md b/docs/data-sources/auth_tokens.md
new file mode 100644
index 00000000..4cb425e0
--- /dev/null
+++ b/docs/data-sources/auth_tokens.md
@@ -0,0 +1,89 @@
+---
+# generated by https://github.com/hashicorp/terraform-plugin-docs
+page_title: "boundary_auth_tokens Data Source - terraform-provider-boundary"
+subcategory: ""
+description: |-
+ Lists auth-tokens
+---
+
+# boundary_auth_tokens (Data Source)
+
+Lists auth-tokens
+
+## Example Usage
+
+```terraform
+# Retrieve AuthTokens
+data "boundary_auth_tokens" "example" {
+ scope_id = "id"
+}
+
+# Retrieve AuthTokens with "test" in the name
+data "boundary_auth_tokens" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
+```
+
+
+## Schema
+
+### Optional
+
+- `filter` (String) You can specify that the filter should only return items that match.
+Refer to [filter expressions](https://developer.hashicorp.com/boundary/docs/concepts/filtering) for more information.
+- `list_token` (String) An opaque token that Boundary uses to continue an existing iteration or
+request updated items. If you do not specify a token, pagination
+starts from the beginning. To learn more about list pagination
+in Boundary, refer to [list pagination](https://developer.hashicorp.com/boundary/docs/api-clients/api/pagination).
+- `page_size` (Number) The maximum size of a page in this iteration.
+If you do not set a page size, Boundary uses the configured default page size.
+If the page_size is greater than the default page size configured,
+Boundary truncates the page size to this number.
+- `recursive` (Boolean)
+- `scope_id` (String)
+
+### Read-Only
+
+- `est_item_count` (Number) An estimate at the total items available. This may change during pagination.
+- `id` (String) The ID of this resource.
+- `items` (List of Object) (see [below for nested schema](#nestedatt--items))
+- `removed_ids` (List of String) A list of item IDs that have been removed since they were returned
+as part of a pagination. They should be dropped from any client cache.
+This may contain items that are not known to the cache, if they were
+created and deleted between listings.
+- `response_type` (String) The type of response, either "delta" or "complete".
+Delta signifies that this is part of a paginated result
+or an update to a previously completed pagination.
+Complete signifies that it is the last page.
+- `sort_by` (String) The name of the field which the items are sorted by.
+- `sort_dir` (String) The direction of the sort, either "asc" or "desc".
+
+
+### Nested Schema for `items`
+
+Read-Only:
+
+- `account_id` (String)
+- `approximate_last_used_time` (String)
+- `auth_method_id` (String)
+- `authorized_actions` (List of String)
+- `created_time` (String)
+- `expiration_time` (String)
+- `id` (String)
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--scope))
+- `scope_id` (String)
+- `token` (String)
+- `updated_time` (String)
+- `user_id` (String)
+
+
+### Nested Schema for `items.scope`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
diff --git a/docs/data-sources/credential_libraries.md b/docs/data-sources/credential_libraries.md
new file mode 100644
index 00000000..84034228
--- /dev/null
+++ b/docs/data-sources/credential_libraries.md
@@ -0,0 +1,87 @@
+---
+# generated by https://github.com/hashicorp/terraform-plugin-docs
+page_title: "boundary_credential_libraries Data Source - terraform-provider-boundary"
+subcategory: ""
+description: |-
+ Lists credential-libraries
+---
+
+# boundary_credential_libraries (Data Source)
+
+Lists credential-libraries
+
+## Example Usage
+
+```terraform
+# Retrieve CredentialLibraries
+data "boundary_credential_libraries" "example" {
+ credential_store_id = "id"
+}
+
+# Retrieve CredentialLibraries with "test" in the name
+data "boundary_credential_libraries" "example" {
+ filter = "\"test\" in \"/item/name\""
+ credential_store_id = "id"
+}
+```
+
+
+## Schema
+
+### Optional
+
+- `credential_store_id` (String)
+- `filter` (String) You can specify that the filter should only return items that match.
+Refer to [filter expressions](https://developer.hashicorp.com/boundary/docs/concepts/filtering) for more information.
+- `list_token` (String) An opaque token that Boundary uses to continue an existing iteration or
+request updated items. If you do not specify a token, pagination
+starts from the beginning. To learn more about list pagination
+in Boundary, refer to [list pagination](https://developer.hashicorp.com/boundary/docs/api-clients/api/pagination).
+- `page_size` (Number) The maximum size of a page in this iteration.
+If you do not set a page size, Boundary uses the configured default page size.
+If the page_size is greater than the default page size configured,
+Boundary truncates the page size to this number.
+
+### Read-Only
+
+- `est_item_count` (Number) An estimate at the total items available. This may change during pagination.
+- `id` (String) The ID of this resource.
+- `items` (List of Object) The items returned in this page. (see [below for nested schema](#nestedatt--items))
+- `removed_ids` (List of String) A list of item IDs that have been removed since they were returned
+as part of a pagination. They should be dropped from any client cache.
+This may contain items that are not known to the cache, if they were
+created and deleted between listings.
+- `response_type` (String) The type of response, either "delta" or "complete".
+Delta signifies that this is part of a paginated result
+or an update to a previously completed pagination.
+Complete signifies that it is the last page.
+- `sort_by` (String) The name of the field which the items are sorted by.
+- `sort_dir` (String) The direction of the sort, either "asc" or "desc".
+
+
+### Nested Schema for `items`
+
+Read-Only:
+
+- `authorized_actions` (List of String)
+- `created_time` (String)
+- `credential_store_id` (String)
+- `credential_type` (String)
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--scope))
+- `type` (String)
+- `updated_time` (String)
+- `version` (Number)
+
+
+### Nested Schema for `items.scope`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
diff --git a/docs/data-sources/credential_stores.md b/docs/data-sources/credential_stores.md
new file mode 100644
index 00000000..c1408491
--- /dev/null
+++ b/docs/data-sources/credential_stores.md
@@ -0,0 +1,87 @@
+---
+# generated by https://github.com/hashicorp/terraform-plugin-docs
+page_title: "boundary_credential_stores Data Source - terraform-provider-boundary"
+subcategory: ""
+description: |-
+ Lists credential-stores
+---
+
+# boundary_credential_stores (Data Source)
+
+Lists credential-stores
+
+## Example Usage
+
+```terraform
+# Retrieve CredentialStores
+data "boundary_credential_stores" "example" {
+ scope_id = "id"
+}
+
+# Retrieve CredentialStores with "test" in the name
+data "boundary_credential_stores" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
+```
+
+
+## Schema
+
+### Optional
+
+- `filter` (String) You can specify that the filter should only return items that match.
+Refer to [filter expressions](https://developer.hashicorp.com/boundary/docs/concepts/filtering) for more information.
+- `list_token` (String) An opaque token that Boundary uses to continue an existing iteration or
+request updated items. If you do not specify a token, pagination
+starts from the beginning. To learn more about list pagination
+in Boundary, refer to [list pagination](https://developer.hashicorp.com/boundary/docs/api-clients/api/pagination).
+- `page_size` (Number) The maximum size of a page in this iteration.
+If you do not set a page size, Boundary uses the configured default page size.
+If the page_size is greater than the default page size configured,
+Boundary truncates the page size to this number.
+- `recursive` (Boolean)
+- `scope_id` (String)
+
+### Read-Only
+
+- `est_item_count` (Number) An estimate at the total items available. This may change during pagination.
+- `id` (String) The ID of this resource.
+- `items` (List of Object) The items returned in this page. (see [below for nested schema](#nestedatt--items))
+- `removed_ids` (List of String) A list of item IDs that have been removed since they were returned
+as part of a pagination. They should be dropped from any client cache.
+This may contain items that are not known to the cache, if they were
+created and deleted between listings.
+- `response_type` (String) The type of response, either "delta" or "complete".
+Delta signifies that this is part of a paginated result
+or an update to a previously completed pagination.
+Complete signifies that it is the last page.
+- `sort_by` (String) The name of the field which the items are sorted by.
+- `sort_dir` (String) The direction of the sort, either "asc" or "desc".
+
+
+### Nested Schema for `items`
+
+Read-Only:
+
+- `authorized_actions` (List of String)
+- `created_time` (String)
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--scope))
+- `scope_id` (String)
+- `type` (String)
+- `updated_time` (String)
+- `version` (Number)
+
+
+### Nested Schema for `items.scope`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
diff --git a/docs/data-sources/credentials.md b/docs/data-sources/credentials.md
new file mode 100644
index 00000000..e8fae101
--- /dev/null
+++ b/docs/data-sources/credentials.md
@@ -0,0 +1,86 @@
+---
+# generated by https://github.com/hashicorp/terraform-plugin-docs
+page_title: "boundary_credentials Data Source - terraform-provider-boundary"
+subcategory: ""
+description: |-
+ Lists credentials
+---
+
+# boundary_credentials (Data Source)
+
+Lists credentials
+
+## Example Usage
+
+```terraform
+# Retrieve Credentials
+data "boundary_credentials" "example" {
+ credential_store_id = "id"
+}
+
+# Retrieve Credentials with "test" in the name
+data "boundary_credentials" "example" {
+ filter = "\"test\" in \"/item/name\""
+ credential_store_id = "id"
+}
+```
+
+
+## Schema
+
+### Optional
+
+- `credential_store_id` (String)
+- `filter` (String) You can specify that the filter should only return items that match.
+Refer to [filter expressions](https://developer.hashicorp.com/boundary/docs/concepts/filtering) for more information.
+- `list_token` (String) An opaque token that Boundary uses to continue an existing iteration or
+request updated items. If you do not specify a token, pagination
+starts from the beginning. To learn more about list pagination
+in Boundary, refer to [list pagination](https://developer.hashicorp.com/boundary/docs/api-clients/api/pagination).
+- `page_size` (Number) The maximum size of a page in this iteration.
+If you do not set a page size, Boundary uses the configured default page size.
+If the page_size is greater than the default page size configured,
+Boundary truncates the page size to this number.
+
+### Read-Only
+
+- `est_item_count` (Number) An estimate at the total items available. This may change during pagination.
+- `id` (String) The ID of this resource.
+- `items` (List of Object) The items returned in this page. (see [below for nested schema](#nestedatt--items))
+- `removed_ids` (List of String) A list of item IDs that have been removed since they were returned
+as part of a pagination. They should be dropped from any client cache.
+This may contain items that are not known to the cache, if they were
+created and deleted between listings.
+- `response_type` (String) The type of response, either "delta" or "complete".
+Delta signifies that this is part of a paginated result
+or an update to a previously completed pagination.
+Complete signifies that it is the last page.
+- `sort_by` (String) The name of the field which the items are sorted by.
+- `sort_dir` (String) The direction of the sort, either "asc" or "desc".
+
+
+### Nested Schema for `items`
+
+Read-Only:
+
+- `authorized_actions` (List of String)
+- `created_time` (String)
+- `credential_store_id` (String)
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--scope))
+- `type` (String)
+- `updated_time` (String)
+- `version` (Number)
+
+
+### Nested Schema for `items.scope`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
diff --git a/docs/data-sources/groups.md b/docs/data-sources/groups.md
new file mode 100644
index 00000000..8160a5ab
--- /dev/null
+++ b/docs/data-sources/groups.md
@@ -0,0 +1,97 @@
+---
+# generated by https://github.com/hashicorp/terraform-plugin-docs
+page_title: "boundary_groups Data Source - terraform-provider-boundary"
+subcategory: ""
+description: |-
+ Lists groups
+---
+
+# boundary_groups (Data Source)
+
+Lists groups
+
+## Example Usage
+
+```terraform
+# Retrieve Groups
+data "boundary_groups" "example" {
+ scope_id = "id"
+}
+
+# Retrieve Groups with "test" in the name
+data "boundary_groups" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
+```
+
+
+## Schema
+
+### Optional
+
+- `filter` (String) You can specify that the filter should only return items that match.
+Refer to [filter expressions](https://developer.hashicorp.com/boundary/docs/concepts/filtering) for more information.
+- `list_token` (String) An opaque token that Boundary uses to continue an existing iteration or
+request updated items. If you do not specify a token, pagination
+starts from the beginning. To learn more about list pagination
+in Boundary, refer to [list pagination](https://developer.hashicorp.com/boundary/docs/api-clients/api/pagination).
+- `page_size` (Number) The maximum size of a page in this iteration.
+If unset, the default page size configured will be used.
+If the page_size is greater than the default page configured,
+the page size will be truncated to this number.
+- `recursive` (Boolean)
+- `scope_id` (String)
+
+### Read-Only
+
+- `est_item_count` (Number) An estimate at the total items available. This may change during pagination.
+- `id` (String) The ID of this resource.
+- `items` (List of Object) (see [below for nested schema](#nestedatt--items))
+- `removed_ids` (List of String) A list of item IDs that have been removed since they were returned
+as part of a pagination. They should be dropped from any client cache.
+This may contain items that are not known to the cache, if they were
+created and deleted between listings.
+- `response_type` (String) The type of response, either "delta" or "complete".
+Delta signifies that this is part of a paginated result
+or an update to a previously completed pagination.
+Complete signifies that it is the last page.
+- `sort_by` (String) The name of the field which the items are sorted by.
+- `sort_dir` (String) The direction of the sort, either "asc" or "desc".
+
+
+### Nested Schema for `items`
+
+Read-Only:
+
+- `authorized_actions` (List of String)
+- `created_time` (String)
+- `description` (String)
+- `id` (String)
+- `member_ids` (List of String)
+- `members` (List of Object) (see [below for nested schema](#nestedobjatt--items--members))
+- `name` (String)
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--scope))
+- `scope_id` (String)
+- `updated_time` (String)
+- `version` (Number)
+
+
+### Nested Schema for `items.members`
+
+Read-Only:
+
+- `id` (String)
+- `scope_id` (String)
+
+
+
+### Nested Schema for `items.scope`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
diff --git a/docs/data-sources/host_catalogs.md b/docs/data-sources/host_catalogs.md
new file mode 100644
index 00000000..4ac965f7
--- /dev/null
+++ b/docs/data-sources/host_catalogs.md
@@ -0,0 +1,100 @@
+---
+# generated by https://github.com/hashicorp/terraform-plugin-docs
+page_title: "boundary_host_catalogs Data Source - terraform-provider-boundary"
+subcategory: ""
+description: |-
+ Lists host-catalogs
+---
+
+# boundary_host_catalogs (Data Source)
+
+Lists host-catalogs
+
+## Example Usage
+
+```terraform
+# Retrieve HostCatalogs
+data "boundary_host_catalogs" "example" {
+ scope_id = "id"
+}
+
+# Retrieve HostCatalogs with "test" in the name
+data "boundary_host_catalogs" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
+```
+
+
+## Schema
+
+### Optional
+
+- `filter` (String) You can specify that the filter should only return items that match.
+Refer to [filter expressions](https://developer.hashicorp.com/boundary/docs/concepts/filtering) for more information.
+- `list_token` (String) An opaque token that Boundary uses to continue an existing iteration or
+request updated items. If you do not specify a token, pagination
+starts from the beginning. To learn more about list pagination
+in Boundary, refer to [list pagination](https://developer.hashicorp.com/boundary/docs/api-clients/api/pagination).
+- `page_size` (Number) The maximum size of a page in this iteration.
+If unset, the default page size configured will be used.
+If the page_size is greater than the default page configured,
+the page size will be truncated to this number.
+- `recursive` (Boolean)
+- `scope_id` (String)
+
+### Read-Only
+
+- `est_item_count` (Number) An estimate at the total items available. This may change during pagination.
+- `id` (String) The ID of this resource.
+- `items` (List of Object) (see [below for nested schema](#nestedatt--items))
+- `removed_ids` (List of String) A list of item IDs that have been removed since they were returned
+as part of a pagination. They should be dropped from any client cache.
+This may contain items that are not known to the cache, if they were
+created and deleted between listings.
+- `response_type` (String) The type of response, either "delta" or "complete".
+Delta signifies that this is part of a paginated result
+or an update to a previously completed pagination.
+Complete signifies that it is the last page.
+- `sort_by` (String) The name of the field which the items are sorted by.
+- `sort_dir` (String) The direction of the sort, either "asc" or "desc".
+
+
+### Nested Schema for `items`
+
+Read-Only:
+
+- `authorized_actions` (List of String)
+- `created_time` (String)
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `plugin` (List of Object) (see [below for nested schema](#nestedobjatt--items--plugin))
+- `plugin_id` (String)
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--scope))
+- `scope_id` (String)
+- `secrets_hmac` (String)
+- `type` (String)
+- `updated_time` (String)
+- `version` (Number)
+
+
+### Nested Schema for `items.plugin`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+
+
+
+### Nested Schema for `items.scope`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
diff --git a/docs/data-sources/host_sets.md b/docs/data-sources/host_sets.md
new file mode 100644
index 00000000..b282d4e9
--- /dev/null
+++ b/docs/data-sources/host_sets.md
@@ -0,0 +1,100 @@
+---
+# generated by https://github.com/hashicorp/terraform-plugin-docs
+page_title: "boundary_host_sets Data Source - terraform-provider-boundary"
+subcategory: ""
+description: |-
+ Lists host-sets
+---
+
+# boundary_host_sets (Data Source)
+
+Lists host-sets
+
+## Example Usage
+
+```terraform
+# Retrieve HostSets
+data "boundary_host_sets" "example" {
+ host_catalog_id = "id"
+}
+
+# Retrieve HostSets with "test" in the name
+data "boundary_host_sets" "example" {
+ filter = "\"test\" in \"/item/name\""
+ host_catalog_id = "id"
+}
+```
+
+
+## Schema
+
+### Optional
+
+- `filter` (String) You can specify that the filter should only return items that match.
+Refer to [filter expressions](https://developer.hashicorp.com/boundary/docs/concepts/filtering) for more information.
+- `host_catalog_id` (String)
+- `list_token` (String) An opaque token that Boundary uses to continue an existing iteration or
+request updated items. If you do not specify a token, pagination
+starts from the beginning. To learn more about list pagination
+in Boundary, refer to [list pagination](https://developer.hashicorp.com/boundary/docs/api-clients/api/pagination).
+- `page_size` (Number) The maximum size of a page in this iteration.
+If unset, the default page size configured will be used.
+If the page_size is greater than the default page configured,
+the page size will be truncated to this number..
+
+### Read-Only
+
+- `est_item_count` (Number) An estimate at the total items available. This may change during pagination.
+- `id` (String) The ID of this resource.
+- `items` (List of Object) (see [below for nested schema](#nestedatt--items))
+- `removed_ids` (List of String) A list of item IDs that have been removed since they were returned
+as part of a pagination. They should be dropped from any client cache.
+This may contain items that are not known to the cache, if they were
+created and deleted between listings.
+- `response_type` (String) The type of response, either "delta" or "complete".
+Delta signifies that this is part of a paginated result
+or an update to a previously completed pagination.
+Complete signifies that it is the last page.
+- `sort_by` (String) The name of the field which the items are sorted by.
+- `sort_dir` (String) The direction of the sort, either "asc" or "desc".
+
+
+### Nested Schema for `items`
+
+Read-Only:
+
+- `authorized_actions` (List of String)
+- `created_time` (String)
+- `description` (String)
+- `host_catalog_id` (String)
+- `host_ids` (List of String)
+- `id` (String)
+- `name` (String)
+- `plugin` (List of Object) (see [below for nested schema](#nestedobjatt--items--plugin))
+- `preferred_endpoints` (List of String)
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--scope))
+- `sync_interval_seconds` (Number)
+- `type` (String)
+- `updated_time` (String)
+- `version` (Number)
+
+
+### Nested Schema for `items.plugin`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+
+
+
+### Nested Schema for `items.scope`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
diff --git a/docs/data-sources/hosts.md b/docs/data-sources/hosts.md
new file mode 100644
index 00000000..03ba2aa1
--- /dev/null
+++ b/docs/data-sources/hosts.md
@@ -0,0 +1,102 @@
+---
+# generated by https://github.com/hashicorp/terraform-plugin-docs
+page_title: "boundary_hosts Data Source - terraform-provider-boundary"
+subcategory: ""
+description: |-
+ Lists hosts
+---
+
+# boundary_hosts (Data Source)
+
+Lists hosts
+
+## Example Usage
+
+```terraform
+# Retrieve Hosts
+data "boundary_hosts" "example" {
+ host_catalog_id = "id"
+}
+
+# Retrieve Hosts with "test" in the name
+data "boundary_hosts" "example" {
+ filter = "\"test\" in \"/item/name\""
+ host_catalog_id = "id"
+}
+```
+
+
+## Schema
+
+### Optional
+
+- `filter` (String) You can specify that the filter should only return items that match.
+Refer to [filter expressions](https://developer.hashicorp.com/boundary/docs/concepts/filtering) for more information.
+- `host_catalog_id` (String)
+- `list_token` (String) An opaque token that Boundary uses to continue an existing iteration or
+request updated items. If you do not specify a token, pagination
+starts from the beginning. To learn more about list pagination
+in Boundary, refer to [list pagination](https://developer.hashicorp.com/boundary/docs/api-clients/api/pagination).
+- `page_size` (Number) The maximum size of a page in this iteration.
+If unset, the default page size configured will be used.
+If the page_size is greater than the default page configured,
+the page size will be truncated to this number.
+
+### Read-Only
+
+- `est_item_count` (Number) An estimate at the total items available. This may change during pagination.
+- `id` (String) The ID of this resource.
+- `items` (List of Object) (see [below for nested schema](#nestedatt--items))
+- `removed_ids` (List of String) A list of item IDs that have been removed since they were returned
+as part of a pagination. They should be dropped from any client cache.
+This may contain items that are not known to the cache, if they were
+created and deleted between listings.
+- `response_type` (String) The type of response, either "delta" or "complete".
+Delta signifies that this is part of a paginated result
+or an update to a previously completed pagination.
+Complete signifies that it is the last page.
+- `sort_by` (String) The name of the field which the items are sorted by.
+- `sort_dir` (String) The direction of the sort, either "asc" or "desc".
+
+
+### Nested Schema for `items`
+
+Read-Only:
+
+- `authorized_actions` (List of String)
+- `created_time` (String)
+- `description` (String)
+- `dns_names` (List of String)
+- `external_id` (String)
+- `external_name` (String)
+- `host_catalog_id` (String)
+- `host_set_ids` (List of String)
+- `id` (String)
+- `ip_addresses` (List of String)
+- `name` (String)
+- `plugin` (List of Object) (see [below for nested schema](#nestedobjatt--items--plugin))
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--scope))
+- `type` (String)
+- `updated_time` (String)
+- `version` (Number)
+
+
+### Nested Schema for `items.plugin`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+
+
+
+### Nested Schema for `items.scope`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
diff --git a/docs/data-sources/managed_groups.md b/docs/data-sources/managed_groups.md
new file mode 100644
index 00000000..3a977404
--- /dev/null
+++ b/docs/data-sources/managed_groups.md
@@ -0,0 +1,87 @@
+---
+# generated by https://github.com/hashicorp/terraform-plugin-docs
+page_title: "boundary_managed_groups Data Source - terraform-provider-boundary"
+subcategory: ""
+description: |-
+ Lists managed-groups
+---
+
+# boundary_managed_groups (Data Source)
+
+Lists managed-groups
+
+## Example Usage
+
+```terraform
+# Retrieve ManagedGroups
+data "boundary_managed_groups" "example" {
+ auth_method_id = "id"
+}
+
+# Retrieve ManagedGroups with "test" in the name
+data "boundary_managed_groups" "example" {
+ filter = "\"test\" in \"/item/name\""
+ auth_method_id = "id"
+}
+```
+
+
+## Schema
+
+### Optional
+
+- `auth_method_id` (String)
+- `filter` (String) You can specify that the filter should only return items that match.
+Refer to [filter expressions](https://developer.hashicorp.com/boundary/docs/concepts/filtering) for more information.
+- `list_token` (String) An opaque token that Boundary uses to continue an existing iteration or
+request updated items. If you do not specify a token, pagination
+starts from the beginning. To learn more about list pagination
+in Boundary, refer to [list pagination](https://developer.hashicorp.com/boundary/docs/api-clients/api/pagination).
+- `page_size` (Number) The maximum size of a page in this iteration.
+If unset, the default page size configured will be used.
+If the page_size is greater than the default page configured,
+the page size will be truncated to this number..
+
+### Read-Only
+
+- `est_item_count` (Number) An estimate at the total items available. This may change during pagination.
+- `id` (String) The ID of this resource.
+- `items` (List of Object) (see [below for nested schema](#nestedatt--items))
+- `removed_ids` (List of String) A list of item IDs that have been removed since they were returned
+as part of a pagination. They should be dropped from any client cache.
+This may contain items that are not known to the cache, if they were
+created and deleted between listings.
+- `response_type` (String) The type of response, either "delta" or "complete".
+Delta signifies that this is part of a paginated result
+or an update to a previously completed pagination.
+Complete signifies that it is the last page.
+- `sort_by` (String) The name of the field which the items are sorted by.
+- `sort_dir` (String) The direction of the sort, either "asc" or "desc".
+
+
+### Nested Schema for `items`
+
+Read-Only:
+
+- `auth_method_id` (String)
+- `authorized_actions` (List of String)
+- `created_time` (String)
+- `description` (String)
+- `id` (String)
+- `member_ids` (List of String)
+- `name` (String)
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--scope))
+- `type` (String)
+- `updated_time` (String)
+- `version` (Number)
+
+
+### Nested Schema for `items.scope`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
diff --git a/docs/data-sources/policies.md b/docs/data-sources/policies.md
new file mode 100644
index 00000000..13046c40
--- /dev/null
+++ b/docs/data-sources/policies.md
@@ -0,0 +1,86 @@
+---
+# generated by https://github.com/hashicorp/terraform-plugin-docs
+page_title: "boundary_policies Data Source - terraform-provider-boundary"
+subcategory: ""
+description: |-
+ Lists policies
+---
+
+# boundary_policies (Data Source)
+
+Lists policies
+
+## Example Usage
+
+```terraform
+# Retrieve Policies
+data "boundary_policies" "example" {
+ scope_id = "id"
+}
+
+# Retrieve Policies with "test" in the name
+data "boundary_policies" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
+```
+
+
+## Schema
+
+### Optional
+
+- `filter` (String)
+- `list_token` (String) An opaque token that Boundary uses to continue an existing iteration or
+request updated items. If you do not specify a token, pagination
+starts from the beginning. To learn more about list pagination
+in Boundary, refer to [list pagination](https://developer.hashicorp.com/boundary/docs/api-clients/api/pagination).
+- `page_size` (Number) The maximum size of a page in this iteration.
+If unset, the default page size configured will be used.
+If the page_size is greater than the default page configured,
+the page size will be truncated to this number..
+- `recursive` (Boolean)
+- `scope_id` (String)
+
+### Read-Only
+
+- `est_item_count` (Number) An estimate at the total items available. This may change during pagination.
+- `id` (String) The ID of this resource.
+- `items` (List of Object) (see [below for nested schema](#nestedatt--items))
+- `removed_ids` (List of String) A list of item IDs that have been removed since they were returned
+as part of a pagination. They should be dropped from any client cache.
+This may contain items that are not known to the cache, if they were
+created and deleted between listings.
+- `response_type` (String) The type of response, either "delta" or "complete".
+Delta signifies that this is part of a paginated result
+or an update to a previously completed pagination.
+Complete signifies that it is the last page.
+- `sort_by` (String) The name of the field which the items are sorted by.
+- `sort_dir` (String) The direction of the sort, either "asc" or "desc".
+
+
+### Nested Schema for `items`
+
+Read-Only:
+
+- `authorized_actions` (List of String)
+- `created_time` (String)
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--scope))
+- `scope_id` (String)
+- `type` (String)
+- `updated_time` (String)
+- `version` (Number)
+
+
+### Nested Schema for `items.scope`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
diff --git a/docs/data-sources/roles.md b/docs/data-sources/roles.md
new file mode 100644
index 00000000..38ed7a95
--- /dev/null
+++ b/docs/data-sources/roles.md
@@ -0,0 +1,123 @@
+---
+# generated by https://github.com/hashicorp/terraform-plugin-docs
+page_title: "boundary_roles Data Source - terraform-provider-boundary"
+subcategory: ""
+description: |-
+ Lists roles
+---
+
+# boundary_roles (Data Source)
+
+Lists roles
+
+## Example Usage
+
+```terraform
+# Retrieve Roles
+data "boundary_roles" "example" {
+ scope_id = "id"
+}
+
+# Retrieve Roles with "test" in the name
+data "boundary_roles" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
+```
+
+
+## Schema
+
+### Optional
+
+- `filter` (String) You can specify that the filter should only return items that match.
+Refer to [filter expressions](https://developer.hashicorp.com/boundary/docs/concepts/filtering) for more information.
+- `list_token` (String) An opaque token that Boundary uses to continue an existing iteration or
+request updated items. If you do not specify a token, pagination
+starts from the beginning. To learn more about list pagination
+in Boundary, refer to [list pagination](https://developer.hashicorp.com/boundary/docs/api-clients/api/pagination).
+- `page_size` (Number) The maximum size of a page in this iteration.
+If unset, the default page size configured will be used.
+If the page_size is greater than the default page configured,
+the page size will be truncated to this number..
+- `recursive` (Boolean)
+- `scope_id` (String)
+
+### Read-Only
+
+- `est_item_count` (Number) An estimate at the total items available. This may change during pagination.
+- `id` (String) The ID of this resource.
+- `items` (List of Object) (see [below for nested schema](#nestedatt--items))
+- `removed_ids` (List of String) A list of item IDs that have been removed since they were returned
+as part of a pagination. They should be dropped from any client cache.
+This may contain items that are not known to the cache, if they were
+created and deleted between listings.
+- `response_type` (String) The type of response, either "delta" or "complete".
+Delta signifies that this is part of a paginated result
+or an update to a previously completed pagination.
+Complete signifies that it is the last page.
+- `sort_by` (String) The name of the field which the items are sorted by.
+- `sort_dir` (String) The direction of the sort, either "asc" or "desc".
+
+
+### Nested Schema for `items`
+
+Read-Only:
+
+- `authorized_actions` (List of String)
+- `created_time` (String)
+- `description` (String)
+- `grant_scope_id` (String)
+- `grant_scope_ids` (List of String)
+- `grant_strings` (List of String)
+- `grants` (List of Object) (see [below for nested schema](#nestedobjatt--items--grants))
+- `id` (String)
+- `name` (String)
+- `principal_ids` (List of String)
+- `principals` (List of Object) (see [below for nested schema](#nestedobjatt--items--principals))
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--scope))
+- `scope_id` (String)
+- `updated_time` (String)
+- `version` (Number)
+
+
+### Nested Schema for `items.grants`
+
+Read-Only:
+
+- `canonical` (String)
+- `json` (List of Object) (see [below for nested schema](#nestedobjatt--items--grants--json))
+- `raw` (String)
+
+
+### Nested Schema for `items.grants.json`
+
+Read-Only:
+
+- `actions` (List of String)
+- `id` (String)
+- `ids` (List of String)
+- `type` (String)
+
+
+
+
+### Nested Schema for `items.principals`
+
+Read-Only:
+
+- `id` (String)
+- `scope_id` (String)
+- `type` (String)
+
+
+
+### Nested Schema for `items.scope`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
diff --git a/docs/data-sources/scopes.md b/docs/data-sources/scopes.md
new file mode 100644
index 00000000..d0d16248
--- /dev/null
+++ b/docs/data-sources/scopes.md
@@ -0,0 +1,88 @@
+---
+# generated by https://github.com/hashicorp/terraform-plugin-docs
+page_title: "boundary_scopes Data Source - terraform-provider-boundary"
+subcategory: ""
+description: |-
+ Lists scopes
+---
+
+# boundary_scopes (Data Source)
+
+Lists scopes
+
+## Example Usage
+
+```terraform
+# Retrieve Scopes
+data "boundary_scopes" "example" {
+ scope_id = "id"
+}
+
+# Retrieve Scopes with "test" in the name
+data "boundary_scopes" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
+```
+
+
+## Schema
+
+### Optional
+
+- `filter` (String) You can specify that the filter should only return items that match.
+Refer to [filter expressions](https://developer.hashicorp.com/boundary/docs/concepts/filtering) for more information.
+- `list_token` (String) An opaque token used to continue an existing iteration or
+request updated items. If paginating, use this token in the
+next list request.
+- `page_size` (Number) The maximum size of a page in this iteration.
+If you do not set a page size, Boundary uses the configured default page size.
+If the page_size is greater than the default page size configured,
+Boundary truncates the page size to this number.
+- `recursive` (Boolean)
+- `scope_id` (String)
+
+### Read-Only
+
+- `est_item_count` (Number) An estimate at the total items available. This may change during pagination.
+- `id` (String) The ID of this resource.
+- `items` (List of Object) The items returned in this page. (see [below for nested schema](#nestedatt--items))
+- `removed_ids` (List of String) A list of item IDs that have been removed since they were returned
+as part of an pagination. They should be dropped from any client cache.
+This may contain items that are not known to the cache, if they were
+created and deleted between listings.
+- `response_type` (String) The type of response, either "delta" or "complete".
+Delta signifies that this is part of a paginated result
+or an update to a previously completed pagination.
+Complete signifies that it is the last page.
+- `sort_by` (String) The name of the field which the items are sorted by.
+- `sort_dir` (String) The direction of the sort, either "asc" or "desc".
+
+
+### Nested Schema for `items`
+
+Read-Only:
+
+- `authorized_actions` (List of String)
+- `created_time` (String)
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `primary_auth_method_id` (String)
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--scope))
+- `scope_id` (String)
+- `storage_policy_id` (String)
+- `type` (String)
+- `updated_time` (String)
+- `version` (Number)
+
+
+### Nested Schema for `items.scope`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
diff --git a/docs/data-sources/session_recordings.md b/docs/data-sources/session_recordings.md
new file mode 100644
index 00000000..fbdc1dfd
--- /dev/null
+++ b/docs/data-sources/session_recordings.md
@@ -0,0 +1,279 @@
+---
+# generated by https://github.com/hashicorp/terraform-plugin-docs
+page_title: "boundary_session_recordings Data Source - terraform-provider-boundary"
+subcategory: ""
+description: |-
+ Lists session-recordings
+---
+
+# boundary_session_recordings (Data Source)
+
+Lists session-recordings
+
+## Example Usage
+
+```terraform
+# Retrieve SessionRecordings with "test" in the name
+data "boundary_session_recordings" "example" {
+ filter = "\"test\" in \"/item/name\""
+}
+```
+
+
+## Schema
+
+### Optional
+
+- `list_token` (String) An opaque token that Boundary uses to continue an existing iteration or
+request updated items. If you do not specify a token, pagination
+starts from the beginning. To learn more about list pagination
+in Boundary, refer to [list pagination](https://developer.hashicorp.com/boundary/docs/api-clients/api/pagination).
+- `page_size` (Number) The maximum size of a page in this iteration.
+If you do not set a page size, Boundary uses the configured default page size.
+If the page_size is greater than the default page size configured,
+Boundary truncates the page size to this number.
+- `recursive` (Boolean) Whether to recurse into child scopes when listing.
+If set and scope_id is empty, shows session recordings in
+all scopes the caller has access to.
+- `scope_id` (String) The scope in which to list session recordings.
+Must be set unless recursive is set.
+
+### Read-Only
+
+- `est_item_count` (Number) An estimate at the total items available. This may change during pagination.
+- `id` (String) The ID of this resource.
+- `items` (List of Object) The items returned in this page. (see [below for nested schema](#nestedatt--items))
+- `removed_ids` (List of String) A list of item IDs that have been removed since they were returned
+as part of a pagination. They should be dropped from any client cache.
+This may contain items that are not known to the cache, if they were
+created and deleted between listings.
+- `response_type` (String) The type of response, either "delta" or "complete".
+Delta signifies that this is part of a paginated result
+or an update to a previously completed pagination.
+Complete signifies that it is the last page.
+- `sort_by` (String) The name of the field which the items are sorted by.
+- `sort_dir` (String) The direction of the sort, either "asc" or "desc".
+
+
+### Nested Schema for `items`
+
+Read-Only:
+
+- `authorized_actions` (List of String)
+- `bytes_down` (String)
+- `bytes_up` (String)
+- `connection_recordings` (List of Object) (see [below for nested schema](#nestedobjatt--items--connection_recordings))
+- `create_time_values` (List of Object) (see [below for nested schema](#nestedobjatt--items--create_time_values))
+- `created_time` (String)
+- `delete_after` (String)
+- `duration` (String)
+- `end_time` (String)
+- `endpoint` (String)
+- `error_details` (String)
+- `id` (String)
+- `mime_types` (List of String)
+- `retain_until` (String)
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--scope))
+- `session_id` (String)
+- `start_time` (String)
+- `state` (String)
+- `storage_bucket_id` (String)
+- `type` (String)
+- `updated_time` (String)
+
+
+### Nested Schema for `items.connection_recordings`
+
+Read-Only:
+
+- `bytes_down` (String)
+- `bytes_up` (String)
+- `channel_recordings` (List of Object) (see [below for nested schema](#nestedobjatt--items--connection_recordings--channel_recordings))
+- `created_time` (String)
+- `duration` (String)
+- `end_time` (String)
+- `id` (String)
+- `mime_types` (List of String)
+- `start_time` (String)
+- `updated_time` (String)
+
+
+### Nested Schema for `items.connection_recordings.channel_recordings`
+
+Read-Only:
+
+- `bytes_down` (String)
+- `bytes_up` (String)
+- `created_time` (String)
+- `duration` (String)
+- `end_time` (String)
+- `id` (String)
+- `mime_types` (List of String)
+- `start_time` (String)
+- `updated_time` (String)
+
+
+
+
+### Nested Schema for `items.create_time_values`
+
+Read-Only:
+
+- `credential_libraries` (List of Object) (see [below for nested schema](#nestedobjatt--items--create_time_values--credential_libraries))
+- `credentials` (List of Object) (see [below for nested schema](#nestedobjatt--items--create_time_values--credentials))
+- `host` (List of Object) (see [below for nested schema](#nestedobjatt--items--create_time_values--host))
+- `target` (List of Object) (see [below for nested schema](#nestedobjatt--items--create_time_values--target))
+- `user` (List of Object) (see [below for nested schema](#nestedobjatt--items--create_time_values--user))
+
+
+### Nested Schema for `items.create_time_values.credential_libraries`
+
+Read-Only:
+
+- `credential_store` (List of Object) (see [below for nested schema](#nestedobjatt--items--create_time_values--credential_libraries--credential_store))
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `purposes` (List of String)
+- `type` (String)
+
+
+### Nested Schema for `items.create_time_values.credential_libraries.type`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `scope_id` (String)
+- `type` (String)
+
+
+
+
+### Nested Schema for `items.create_time_values.credentials`
+
+Read-Only:
+
+- `credential_store` (List of Object) (see [below for nested schema](#nestedobjatt--items--create_time_values--credentials--credential_store))
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `purposes` (List of String)
+- `type` (String)
+
+
+### Nested Schema for `items.create_time_values.credentials.type`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `scope_id` (String)
+- `type` (String)
+
+
+
+
+### Nested Schema for `items.create_time_values.host`
+
+Read-Only:
+
+- `description` (String)
+- `external_id` (String)
+- `external_name` (String)
+- `host_catalog` (List of Object) (see [below for nested schema](#nestedobjatt--items--create_time_values--host--host_catalog))
+- `id` (String)
+- `name` (String)
+- `type` (String)
+
+
+### Nested Schema for `items.create_time_values.host.type`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `plugin_id` (String)
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--create_time_values--host--type--scope))
+- `type` (String)
+
+
+### Nested Schema for `items.create_time_values.host.type.scope`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
+
+
+
+
+
+### Nested Schema for `items.create_time_values.target`
+
+Read-Only:
+
+- `description` (String)
+- `egress_worker_filter` (String)
+- `id` (String)
+- `ingress_worker_filter` (String)
+- `name` (String)
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--create_time_values--target--scope))
+- `session_connection_limit` (Number)
+- `session_max_seconds` (Number)
+- `type` (String)
+- `worker_filter` (String)
+
+
+### Nested Schema for `items.create_time_values.target.worker_filter`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
+
+
+
+
+### Nested Schema for `items.create_time_values.user`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--create_time_values--user--scope))
+
+
+### Nested Schema for `items.create_time_values.user.scope`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
+
+
+
+
+
+### Nested Schema for `items.scope`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
diff --git a/docs/data-sources/sessions.md b/docs/data-sources/sessions.md
new file mode 100644
index 00000000..4e5f8a09
--- /dev/null
+++ b/docs/data-sources/sessions.md
@@ -0,0 +1,123 @@
+---
+# generated by https://github.com/hashicorp/terraform-plugin-docs
+page_title: "boundary_sessions Data Source - terraform-provider-boundary"
+subcategory: ""
+description: |-
+ Lists sessions
+---
+
+# boundary_sessions (Data Source)
+
+Lists sessions
+
+## Example Usage
+
+```terraform
+# Retrieve Sessions
+data "boundary_sessions" "example" {
+ scope_id = "id"
+}
+
+# Retrieve Sessions with "test" in the name
+data "boundary_sessions" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
+```
+
+
+## Schema
+
+### Optional
+
+- `filter` (String) You can specify that the filter should only return items that match.
+Refer to [filter expressions](https://developer.hashicorp.com/boundary/docs/concepts/filtering) for more information.
+- `include_terminated` (Boolean) Experimental. By default only non-terminated (i.e. pending, active, canceling) are returned.
+Set this option to include terminated sessions as well.
+- `list_token` (String) An opaque token that Boundary uses to continue an existing iteration or
+request updated items. If you do not specify a token, pagination
+starts from the beginning. To learn more about list pagination
+in Boundary, refer to [list pagination](https://developer.hashicorp.com/boundary/docs/api-clients/api/pagination).
+- `page_size` (Number) The maximum size of a page in this iteration.
+If unset, the default page size configured will be used.
+If the page_size is greater than the default page configured,
+the page size will be truncated to this number..
+- `recursive` (Boolean)
+- `scope_id` (String)
+
+### Read-Only
+
+- `est_item_count` (Number) An estimate at the total items available. This may change during pagination.
+- `id` (String) The ID of this resource.
+- `items` (List of Object) (see [below for nested schema](#nestedatt--items))
+- `removed_ids` (List of String) A list of item IDs that have been removed since they were returned
+as part of a pagination. They should be dropped from any client cache.
+This may contain items that are not known to the cache, if they were
+created and deleted between listings.
+- `response_type` (String) The type of response, either "delta" or "complete".
+Delta signifies that this is part of a paginated result
+or an update to a previously completed pagination.
+Complete signifies that it is the last page.
+- `sort_by` (String) The name of the field which the items are sorted by.
+- `sort_dir` (String) The direction of the sort, either "asc" or "desc".
+
+
+### Nested Schema for `items`
+
+Read-Only:
+
+- `auth_token_id` (String)
+- `authorized_actions` (List of String)
+- `certificate` (String)
+- `connections` (List of Object) (see [below for nested schema](#nestedobjatt--items--connections))
+- `created_time` (String)
+- `endpoint` (String)
+- `expiration_time` (String)
+- `host_id` (String)
+- `host_set_id` (String)
+- `id` (String)
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--scope))
+- `scope_id` (String)
+- `states` (List of Object) (see [below for nested schema](#nestedobjatt--items--states))
+- `status` (String)
+- `target_id` (String)
+- `termination_reason` (String)
+- `type` (String)
+- `updated_time` (String)
+- `user_id` (String)
+- `version` (Number)
+
+
+### Nested Schema for `items.connections`
+
+Read-Only:
+
+- `bytes_down` (String)
+- `bytes_up` (String)
+- `client_tcp_address` (String)
+- `client_tcp_port` (Number)
+- `closed_reason` (String)
+- `endpoint_tcp_address` (String)
+- `endpoint_tcp_port` (Number)
+
+
+
+### Nested Schema for `items.scope`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
+
+
+
+### Nested Schema for `items.states`
+
+Read-Only:
+
+- `end_time` (String)
+- `start_time` (String)
+- `status` (String)
diff --git a/docs/data-sources/storage_buckets.md b/docs/data-sources/storage_buckets.md
new file mode 100644
index 00000000..e9ccac58
--- /dev/null
+++ b/docs/data-sources/storage_buckets.md
@@ -0,0 +1,103 @@
+---
+# generated by https://github.com/hashicorp/terraform-plugin-docs
+page_title: "boundary_storage_buckets Data Source - terraform-provider-boundary"
+subcategory: ""
+description: |-
+ Lists storage-buckets
+---
+
+# boundary_storage_buckets (Data Source)
+
+Lists storage-buckets
+
+## Example Usage
+
+```terraform
+# Retrieve StorageBuckets
+data "boundary_storage_buckets" "example" {
+ scope_id = "id"
+}
+
+# Retrieve StorageBuckets with "test" in the name
+data "boundary_storage_buckets" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
+```
+
+
+## Schema
+
+### Optional
+
+- `filter` (String) You can specify that the filter should only return items that match.
+Refer to [filter expressions](https://developer.hashicorp.com/boundary/docs/concepts/filtering) for more information.
+- `list_token` (String) An opaque token that Boundary uses to continue an existing iteration or
+request updated items. If you do not specify a token, pagination
+starts from the beginning. To learn more about list pagination
+in Boundary, refer to [list pagination](https://developer.hashicorp.com/boundary/docs/api-clients/api/pagination).
+- `page_size` (Number) The maximum size of a page in this iteration.
+If you do not set a page size, Boundary uses the configured default page size.
+If the page_size is greater than the default page size configured,
+Boundary truncates the page size to this number.
+- `recursive` (Boolean)
+- `scope_id` (String)
+
+### Read-Only
+
+- `est_item_count` (Number) An estimate at the total items available. This may change during pagination.
+- `id` (String) The ID of this resource.
+- `items` (List of Object) (see [below for nested schema](#nestedatt--items))
+- `removed_ids` (List of String) A list of item IDs that have been removed since they were returned
+as part of a pagination. They should be dropped from any client cache.
+This may contain items that are not known to the cache, if they were
+created and deleted between listings.
+- `response_type` (String) The type of response, either "delta" or "complete".
+Delta signifies that this is part of a paginated result
+or an update to a previously completed pagination.
+Complete signifies that it is the last page.
+- `sort_by` (String) The name of the field which the items are sorted by.
+- `sort_dir` (String) The direction of the sort, either "asc" or "desc".
+
+
+### Nested Schema for `items`
+
+Read-Only:
+
+- `authorized_actions` (List of String)
+- `bucket_name` (String)
+- `bucket_prefix` (String)
+- `created_time` (String)
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `plugin` (List of Object) (see [below for nested schema](#nestedobjatt--items--plugin))
+- `plugin_id` (String)
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--scope))
+- `scope_id` (String)
+- `secrets_hmac` (String)
+- `type` (String)
+- `updated_time` (String)
+- `version` (Number)
+- `worker_filter` (String)
+
+
+### Nested Schema for `items.plugin`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+
+
+
+### Nested Schema for `items.scope`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
diff --git a/docs/data-sources/targets.md b/docs/data-sources/targets.md
new file mode 100644
index 00000000..62659b00
--- /dev/null
+++ b/docs/data-sources/targets.md
@@ -0,0 +1,188 @@
+---
+# generated by https://github.com/hashicorp/terraform-plugin-docs
+page_title: "boundary_targets Data Source - terraform-provider-boundary"
+subcategory: ""
+description: |-
+ Lists targets
+---
+
+# boundary_targets (Data Source)
+
+Lists targets
+
+## Example Usage
+
+```terraform
+# Retrieve Targets
+data "boundary_targets" "example" {
+ scope_id = "id"
+}
+
+# Retrieve Targets with "test" in the name
+data "boundary_targets" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
+```
+
+
+## Schema
+
+### Optional
+
+- `filter` (String) You can specify that the filter should only return items that match.
+Refer to [filter expressions](https://developer.hashicorp.com/boundary/docs/concepts/filtering) for more information.
+- `list_token` (String) An opaque token that Boundary uses to continue an existing iteration or
+request updated items. If you do not specify a token, pagination
+starts from the beginning. To learn more about list pagination
+in Boundary, refer to [list pagination](https://developer.hashicorp.com/boundary/docs/api-clients/api/pagination).
+- `page_size` (Number) The maximum size of a page in this iteration.
+If unset, the default page size configured will be used.
+If the page_size is greater than the default page configured,
+the page size will be truncated to this number..
+- `recursive` (Boolean)
+- `scope_id` (String)
+
+### Read-Only
+
+- `est_item_count` (Number) An estimate at the total items available. This may change during pagination.
+- `id` (String) The ID of this resource.
+- `items` (List of Object) (see [below for nested schema](#nestedatt--items))
+- `removed_ids` (List of String) A list of item IDs that have been removed since they were returned
+as part of a pagination. They should be dropped from any client cache.
+This may contain items that are not known to the cache, if they were
+created and deleted between listings.
+- `response_type` (String) The type of response, either "delta" or "complete".
+Delta signifies that this is part of a paginated result
+or an update to a previously completed pagination.
+Complete signifies that it is the last page.
+- `sort_by` (String) The name of the field which the items are sorted by.
+- `sort_dir` (String) The direction of the sort, either "asc" or "desc".
+
+
+### Nested Schema for `items`
+
+Read-Only:
+
+- `address` (String)
+- `aliases` (List of Object) (see [below for nested schema](#nestedobjatt--items--aliases))
+- `authorized_actions` (List of String)
+- `brokered_credential_source_ids` (List of String)
+- `brokered_credential_sources` (List of Object) (see [below for nested schema](#nestedobjatt--items--brokered_credential_sources))
+- `created_time` (String)
+- `description` (String)
+- `egress_worker_filter` (String)
+- `host_source_ids` (List of String)
+- `host_sources` (List of Object) (see [below for nested schema](#nestedobjatt--items--host_sources))
+- `id` (String)
+- `ingress_worker_filter` (String)
+- `injected_application_credential_source_ids` (List of String)
+- `injected_application_credential_sources` (List of Object) (see [below for nested schema](#nestedobjatt--items--injected_application_credential_sources))
+- `name` (String)
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--scope))
+- `scope_id` (String)
+- `session_connection_limit` (Number)
+- `session_max_seconds` (Number)
+- `type` (String)
+- `updated_time` (String)
+- `version` (Number)
+- `with_aliases` (List of Object) (see [below for nested schema](#nestedobjatt--items--with_aliases))
+- `worker_filter` (String)
+
+
+### Nested Schema for `items.aliases`
+
+Read-Only:
+
+- `attributes` (List of Object) (see [below for nested schema](#nestedobjatt--items--aliases--attributes))
+- `id` (String)
+- `scope_id` (String)
+- `value` (String)
+
+
+### Nested Schema for `items.aliases.attributes`
+
+Read-Only:
+
+- `authorize_session_arguments` (List of Object) (see [below for nested schema](#nestedobjatt--items--aliases--attributes--authorize_session_arguments))
+
+
+### Nested Schema for `items.aliases.attributes.authorize_session_arguments`
+
+Read-Only:
+
+- `host_id` (String)
+
+
+
+
+
+### Nested Schema for `items.brokered_credential_sources`
+
+Read-Only:
+
+- `credential_store_id` (String)
+- `credential_type` (String)
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `type` (String)
+
+
+
+### Nested Schema for `items.host_sources`
+
+Read-Only:
+
+- `host_catalog_id` (String)
+- `id` (String)
+
+
+
+### Nested Schema for `items.injected_application_credential_sources`
+
+Read-Only:
+
+- `credential_store_id` (String)
+- `credential_type` (String)
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `type` (String)
+
+
+
+### Nested Schema for `items.scope`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
+
+
+
+### Nested Schema for `items.with_aliases`
+
+Read-Only:
+
+- `attributes` (List of Object) (see [below for nested schema](#nestedobjatt--items--with_aliases--attributes))
+- `id` (String)
+- `scope_id` (String)
+- `value` (String)
+
+
+### Nested Schema for `items.with_aliases.attributes`
+
+Read-Only:
+
+- `authorize_session_arguments` (List of Object) (see [below for nested schema](#nestedobjatt--items--with_aliases--attributes--authorize_session_arguments))
+
+
+### Nested Schema for `items.with_aliases.attributes.authorize_session_arguments`
+
+Read-Only:
+
+- `host_id` (String)
diff --git a/docs/data-sources/users.md b/docs/data-sources/users.md
new file mode 100644
index 00000000..ef954d46
--- /dev/null
+++ b/docs/data-sources/users.md
@@ -0,0 +1,100 @@
+---
+# generated by https://github.com/hashicorp/terraform-plugin-docs
+page_title: "boundary_users Data Source - terraform-provider-boundary"
+subcategory: ""
+description: |-
+ Lists users
+---
+
+# boundary_users (Data Source)
+
+Lists users
+
+## Example Usage
+
+```terraform
+# Retrieve Users
+data "boundary_users" "example" {
+ scope_id = "id"
+}
+
+# Retrieve Users with "test" in the name
+data "boundary_users" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
+```
+
+
+## Schema
+
+### Optional
+
+- `filter` (String)
+- `list_token` (String) An opaque token that Boundary uses to continue an existing iteration or
+request updated items. If you do not specify a token, pagination
+starts from the beginning. To learn more about list pagination
+in Boundary, refer to [list pagination](https://developer.hashicorp.com/boundary/docs/api-clients/api/pagination).
+- `page_size` (Number) The maximum size of a page in this iteration.
+If unset, the default page size configured will be used.
+If the page_size is greater than the default page configured,
+the page size will be truncated to this number..
+- `recursive` (Boolean)
+- `scope_id` (String)
+
+### Read-Only
+
+- `est_item_count` (Number) An estimate at the total items available. This may change during pagination.
+- `id` (String) The ID of this resource.
+- `items` (List of Object) (see [below for nested schema](#nestedatt--items))
+- `removed_ids` (List of String) A list of item IDs that have been removed since they were returned
+as part of a pagination. They should be dropped from any client cache.
+This may contain items that are not known to the cache, if they were
+created and deleted between listings.
+- `response_type` (String) The type of response, either "delta" or "complete".
+Delta signifies that this is part of a paginated result
+or an update to a previously completed pagination.
+Complete signifies that it is the last page.
+- `sort_by` (String) The name of the field which the items are sorted by.
+- `sort_dir` (String) The direction of the sort, either "asc" or "desc".
+
+
+### Nested Schema for `items`
+
+Read-Only:
+
+- `account_ids` (List of String)
+- `accounts` (List of Object) (see [below for nested schema](#nestedobjatt--items--accounts))
+- `authorized_actions` (List of String)
+- `created_time` (String)
+- `description` (String)
+- `email` (String)
+- `full_name` (String)
+- `id` (String)
+- `login_name` (String)
+- `name` (String)
+- `primary_account_id` (String)
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--scope))
+- `scope_id` (String)
+- `updated_time` (String)
+- `version` (Number)
+
+
+### Nested Schema for `items.accounts`
+
+Read-Only:
+
+- `id` (String)
+- `scope_id` (String)
+
+
+
+### Nested Schema for `items.scope`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
diff --git a/docs/data-sources/workers.md b/docs/data-sources/workers.md
new file mode 100644
index 00000000..af8b38f5
--- /dev/null
+++ b/docs/data-sources/workers.md
@@ -0,0 +1,75 @@
+---
+# generated by https://github.com/hashicorp/terraform-plugin-docs
+page_title: "boundary_workers Data Source - terraform-provider-boundary"
+subcategory: ""
+description: |-
+ Lists workers
+---
+
+# boundary_workers (Data Source)
+
+Lists workers
+
+## Example Usage
+
+```terraform
+# Retrieve Workers
+data "boundary_workers" "example" {
+ scope_id = "id"
+}
+
+# Retrieve Workers with "test" in the name
+data "boundary_workers" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
+```
+
+
+## Schema
+
+### Optional
+
+- `filter` (String)
+- `recursive` (Boolean)
+- `scope_id` (String)
+
+### Read-Only
+
+- `id` (String) The ID of this resource.
+- `items` (List of Object) (see [below for nested schema](#nestedatt--items))
+
+
+### Nested Schema for `items`
+
+Read-Only:
+
+- `active_connection_count` (Number)
+- `address` (String)
+- `authorized_actions` (List of String)
+- `controller_generated_activation_token` (String)
+- `created_time` (String)
+- `description` (String)
+- `directly_connected_downstream_workers` (List of String)
+- `id` (String)
+- `last_status_time` (String)
+- `local_storage_state` (String)
+- `name` (String)
+- `release_version` (String)
+- `scope` (List of Object) (see [below for nested schema](#nestedobjatt--items--scope))
+- `scope_id` (String)
+- `type` (String)
+- `updated_time` (String)
+- `version` (Number)
+- `worker_generated_auth_token` (String)
+
+
+### Nested Schema for `items.scope`
+
+Read-Only:
+
+- `description` (String)
+- `id` (String)
+- `name` (String)
+- `parent_scope_id` (String)
+- `type` (String)
diff --git a/examples/data-sources/boundary_accounts/data-source.tf b/examples/data-sources/boundary_accounts/data-source.tf
new file mode 100644
index 00000000..0330425c
--- /dev/null
+++ b/examples/data-sources/boundary_accounts/data-source.tf
@@ -0,0 +1,10 @@
+# Retrieve Accounts
+data "boundary_accounts" "example" {
+ auth_method_id = "id"
+}
+
+# Retrieve Accounts with "test" in the name
+data "boundary_accounts" "example" {
+ filter = "\"test\" in \"/item/name\""
+ auth_method_id = "id"
+}
diff --git a/examples/data-sources/boundary_aliases/data-source.tf b/examples/data-sources/boundary_aliases/data-source.tf
new file mode 100644
index 00000000..60bfe8a0
--- /dev/null
+++ b/examples/data-sources/boundary_aliases/data-source.tf
@@ -0,0 +1,10 @@
+# Retrieve Aliases
+data "boundary_aliases" "example" {
+ scope_id = "id"
+}
+
+# Retrieve Aliases with "test" in the name
+data "boundary_aliases" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
diff --git a/examples/data-sources/boundary_auth_methods/data-source.tf b/examples/data-sources/boundary_auth_methods/data-source.tf
new file mode 100644
index 00000000..9a33abed
--- /dev/null
+++ b/examples/data-sources/boundary_auth_methods/data-source.tf
@@ -0,0 +1,10 @@
+# Retrieve AuthMethods
+data "boundary_auth_methods" "example" {
+ scope_id = "id"
+}
+
+# Retrieve AuthMethods with "test" in the name
+data "boundary_auth_methods" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
diff --git a/examples/data-sources/boundary_auth_tokens/data-source.tf b/examples/data-sources/boundary_auth_tokens/data-source.tf
new file mode 100644
index 00000000..5bda9dd3
--- /dev/null
+++ b/examples/data-sources/boundary_auth_tokens/data-source.tf
@@ -0,0 +1,10 @@
+# Retrieve AuthTokens
+data "boundary_auth_tokens" "example" {
+ scope_id = "id"
+}
+
+# Retrieve AuthTokens with "test" in the name
+data "boundary_auth_tokens" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
diff --git a/examples/data-sources/boundary_credential_libraries/data-source.tf b/examples/data-sources/boundary_credential_libraries/data-source.tf
new file mode 100644
index 00000000..f65b27e0
--- /dev/null
+++ b/examples/data-sources/boundary_credential_libraries/data-source.tf
@@ -0,0 +1,10 @@
+# Retrieve CredentialLibraries
+data "boundary_credential_libraries" "example" {
+ credential_store_id = "id"
+}
+
+# Retrieve CredentialLibraries with "test" in the name
+data "boundary_credential_libraries" "example" {
+ filter = "\"test\" in \"/item/name\""
+ credential_store_id = "id"
+}
diff --git a/examples/data-sources/boundary_credential_stores/data-source.tf b/examples/data-sources/boundary_credential_stores/data-source.tf
new file mode 100644
index 00000000..35857ed2
--- /dev/null
+++ b/examples/data-sources/boundary_credential_stores/data-source.tf
@@ -0,0 +1,10 @@
+# Retrieve CredentialStores
+data "boundary_credential_stores" "example" {
+ scope_id = "id"
+}
+
+# Retrieve CredentialStores with "test" in the name
+data "boundary_credential_stores" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
diff --git a/examples/data-sources/boundary_credentials/data-source.tf b/examples/data-sources/boundary_credentials/data-source.tf
new file mode 100644
index 00000000..a349bbfc
--- /dev/null
+++ b/examples/data-sources/boundary_credentials/data-source.tf
@@ -0,0 +1,10 @@
+# Retrieve Credentials
+data "boundary_credentials" "example" {
+ credential_store_id = "id"
+}
+
+# Retrieve Credentials with "test" in the name
+data "boundary_credentials" "example" {
+ filter = "\"test\" in \"/item/name\""
+ credential_store_id = "id"
+}
diff --git a/examples/data-sources/boundary_groups/data-source.tf b/examples/data-sources/boundary_groups/data-source.tf
new file mode 100644
index 00000000..4e19dd9f
--- /dev/null
+++ b/examples/data-sources/boundary_groups/data-source.tf
@@ -0,0 +1,10 @@
+# Retrieve Groups
+data "boundary_groups" "example" {
+ scope_id = "id"
+}
+
+# Retrieve Groups with "test" in the name
+data "boundary_groups" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
diff --git a/examples/data-sources/boundary_host_catalogs/data-source.tf b/examples/data-sources/boundary_host_catalogs/data-source.tf
new file mode 100644
index 00000000..5a313493
--- /dev/null
+++ b/examples/data-sources/boundary_host_catalogs/data-source.tf
@@ -0,0 +1,10 @@
+# Retrieve HostCatalogs
+data "boundary_host_catalogs" "example" {
+ scope_id = "id"
+}
+
+# Retrieve HostCatalogs with "test" in the name
+data "boundary_host_catalogs" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
diff --git a/examples/data-sources/boundary_host_sets/data-source.tf b/examples/data-sources/boundary_host_sets/data-source.tf
new file mode 100644
index 00000000..96d717f8
--- /dev/null
+++ b/examples/data-sources/boundary_host_sets/data-source.tf
@@ -0,0 +1,10 @@
+# Retrieve HostSets
+data "boundary_host_sets" "example" {
+ host_catalog_id = "id"
+}
+
+# Retrieve HostSets with "test" in the name
+data "boundary_host_sets" "example" {
+ filter = "\"test\" in \"/item/name\""
+ host_catalog_id = "id"
+}
diff --git a/examples/data-sources/boundary_hosts/data-source.tf b/examples/data-sources/boundary_hosts/data-source.tf
new file mode 100644
index 00000000..5289b39b
--- /dev/null
+++ b/examples/data-sources/boundary_hosts/data-source.tf
@@ -0,0 +1,10 @@
+# Retrieve Hosts
+data "boundary_hosts" "example" {
+ host_catalog_id = "id"
+}
+
+# Retrieve Hosts with "test" in the name
+data "boundary_hosts" "example" {
+ filter = "\"test\" in \"/item/name\""
+ host_catalog_id = "id"
+}
diff --git a/examples/data-sources/boundary_managed_groups/data-source.tf b/examples/data-sources/boundary_managed_groups/data-source.tf
new file mode 100644
index 00000000..a901ab05
--- /dev/null
+++ b/examples/data-sources/boundary_managed_groups/data-source.tf
@@ -0,0 +1,10 @@
+# Retrieve ManagedGroups
+data "boundary_managed_groups" "example" {
+ auth_method_id = "id"
+}
+
+# Retrieve ManagedGroups with "test" in the name
+data "boundary_managed_groups" "example" {
+ filter = "\"test\" in \"/item/name\""
+ auth_method_id = "id"
+}
diff --git a/examples/data-sources/boundary_policies/data-source.tf b/examples/data-sources/boundary_policies/data-source.tf
new file mode 100644
index 00000000..ae1a64b8
--- /dev/null
+++ b/examples/data-sources/boundary_policies/data-source.tf
@@ -0,0 +1,10 @@
+# Retrieve Policies
+data "boundary_policies" "example" {
+ scope_id = "id"
+}
+
+# Retrieve Policies with "test" in the name
+data "boundary_policies" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
diff --git a/examples/data-sources/boundary_roles/data-source.tf b/examples/data-sources/boundary_roles/data-source.tf
new file mode 100644
index 00000000..c4c21b45
--- /dev/null
+++ b/examples/data-sources/boundary_roles/data-source.tf
@@ -0,0 +1,10 @@
+# Retrieve Roles
+data "boundary_roles" "example" {
+ scope_id = "id"
+}
+
+# Retrieve Roles with "test" in the name
+data "boundary_roles" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
diff --git a/examples/data-sources/boundary_scopes/data-source.tf b/examples/data-sources/boundary_scopes/data-source.tf
new file mode 100644
index 00000000..4ca6cab5
--- /dev/null
+++ b/examples/data-sources/boundary_scopes/data-source.tf
@@ -0,0 +1,10 @@
+# Retrieve Scopes
+data "boundary_scopes" "example" {
+ scope_id = "id"
+}
+
+# Retrieve Scopes with "test" in the name
+data "boundary_scopes" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
diff --git a/examples/data-sources/boundary_session_recordings/data-source.tf b/examples/data-sources/boundary_session_recordings/data-source.tf
new file mode 100644
index 00000000..cbf6d706
--- /dev/null
+++ b/examples/data-sources/boundary_session_recordings/data-source.tf
@@ -0,0 +1,4 @@
+# Retrieve SessionRecordings with "test" in the name
+data "boundary_session_recordings" "example" {
+ filter = "\"test\" in \"/item/name\""
+}
diff --git a/examples/data-sources/boundary_sessions/data-source.tf b/examples/data-sources/boundary_sessions/data-source.tf
new file mode 100644
index 00000000..c22d34ca
--- /dev/null
+++ b/examples/data-sources/boundary_sessions/data-source.tf
@@ -0,0 +1,10 @@
+# Retrieve Sessions
+data "boundary_sessions" "example" {
+ scope_id = "id"
+}
+
+# Retrieve Sessions with "test" in the name
+data "boundary_sessions" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
diff --git a/examples/data-sources/boundary_storage_buckets/data-source.tf b/examples/data-sources/boundary_storage_buckets/data-source.tf
new file mode 100644
index 00000000..93486ef5
--- /dev/null
+++ b/examples/data-sources/boundary_storage_buckets/data-source.tf
@@ -0,0 +1,10 @@
+# Retrieve StorageBuckets
+data "boundary_storage_buckets" "example" {
+ scope_id = "id"
+}
+
+# Retrieve StorageBuckets with "test" in the name
+data "boundary_storage_buckets" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
diff --git a/examples/data-sources/boundary_targets/data-source.tf b/examples/data-sources/boundary_targets/data-source.tf
new file mode 100644
index 00000000..2ca10a4d
--- /dev/null
+++ b/examples/data-sources/boundary_targets/data-source.tf
@@ -0,0 +1,10 @@
+# Retrieve Targets
+data "boundary_targets" "example" {
+ scope_id = "id"
+}
+
+# Retrieve Targets with "test" in the name
+data "boundary_targets" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
diff --git a/examples/data-sources/boundary_users/data-source.tf b/examples/data-sources/boundary_users/data-source.tf
new file mode 100644
index 00000000..6d07531f
--- /dev/null
+++ b/examples/data-sources/boundary_users/data-source.tf
@@ -0,0 +1,10 @@
+# Retrieve Users
+data "boundary_users" "example" {
+ scope_id = "id"
+}
+
+# Retrieve Users with "test" in the name
+data "boundary_users" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}
diff --git a/examples/data-sources/boundary_workers/data-source.tf b/examples/data-sources/boundary_workers/data-source.tf
new file mode 100644
index 00000000..7935948c
--- /dev/null
+++ b/examples/data-sources/boundary_workers/data-source.tf
@@ -0,0 +1,10 @@
+# Retrieve Workers
+data "boundary_workers" "example" {
+ scope_id = "id"
+}
+
+# Retrieve Workers with "test" in the name
+data "boundary_workers" "example" {
+ filter = "\"test\" in \"/item/name\""
+ scope_id = "id"
+}