form_types
Creates, updates, deletes, gets or lists a form_types resource.
Overview
| Name | form_types |
| Type | Resource |
| Id | aws.datazone.form_types |
Fields
The following fields are returned by SELECT queries:
- get_form_type
| Name | Datatype | Description |
|---|---|---|
name | string | The name of the metadata form type. (pattern: <code>(amazon.datazone.)?(?![0-9_])\w+$|^_\w*[a-zA-Z0-9]\w*</code>) |
created_at | string (date-time) | The timestamp of when this metadata form type was created. |
created_by | string | The Amazon DataZone user who created this metadata form type. |
description | string | The description of the metadata form type. |
domain_id | string | The ID of the Amazon DataZone domain in which this metadata form type exists. (pattern: <code>dzd[-][a-zA-Z0-9-]{1,36}</code>) |
imports | array | The imports of the metadata form type. |
model | object | The model of the API. |
origin_domain_id | string | The ID of the Amazon DataZone domain in which the metadata form type was originally created. (pattern: <code>dzd[-][a-zA-Z0-9-]{1,36}</code>) |
origin_project_id | string | The ID of the project in which this metadata form type was originally created. (pattern: <code>[a-zA-Z0-9_-]{1,36}</code>) |
owning_project_id | string | The ID of the project that owns this metadata form type. (pattern: <code>[a-zA-Z0-9_-]{1,36}</code>) |
revision | string | The revision of the metadata form type. |
status | string | The status of the metadata form type. (ENABLED, DISABLED) |
Methods
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
get_form_type | select | domain_identifier, form_type_identifier, region | revision | Gets a metadata form type in Amazon DataZone. Form types define the structure and validation rules for collecting metadata about assets in Amazon DataZone. They act as templates that ensure consistent metadata capture across similar types of assets, while allowing for customization to meet specific organizational needs. Form types can include required fields, validation rules, and dependencies, helping maintain high-quality metadata that makes data assets more discoverable and usable. The form type with the specified identifier must exist in the given domain. The domain must be valid and active. User must have permission on the form type. The form type should not be deleted or in an invalid state. One use case for this API is to determine whether a form field is indexed for search. A searchable field will be annotated with @amazon.datazone#searchable. By default, searchable fields are indexed for semantic search, where related query terms will match the attribute value even if they are not stemmed or keyword matches. If a field is indexed technical identifier search, it will be annotated with @amazon.datazone#searchable(modes:["TECHNICAL"]). If a field is indexed for lexical search (supports stemmed and prefix matches but not semantic matches), it will be annotated with @amazon.datazone#searchable(modes:["LEXICAL"]). A field storing glossary term IDs (which is filterable) will be annotated with @amazon.datazone#glossaryterm("${glossaryId}"). |
create_form_type | insert | domain_identifier, region, name, model, owningProjectIdentifier | Creates a metadata form type. Prerequisites: The domain must exist and be in an ENABLED state. The owning project must exist and be accessible. The name must be unique within the domain. For custom form types, to indicate that a field should be searchable, annotate it with @amazon.datazone#searchable. By default, searchable fields are indexed for semantic search, where related query terms will match the attribute value even if they are not stemmed or keyword matches. To indicate that a field should be indexed for lexical search (which disables semantic search but supports stemmed and partial matches), annotate it with @amazon.datazone#searchable(modes:["LEXICAL"]). To indicate that a field should be indexed for technical identifier search (for more information on technical identifier search, see: https://aws.amazon.com/blogs/big-data/streamline-data-discovery-with-precise-technical-identifier-search-in-amazon-sagemaker-unified-studio/), annotate it with @amazon.datazone#searchable(modes:["TECHNICAL"]). To denote that a field will store glossary term ids (which are filterable via the Search/SearchListings APIs), annotate it with @amazon.datazone#glossaryterm("${GLOSSARY_ID}"), where ${GLOSSARY_ID} is the id of the glossary that the glossary terms stored in the field belong to. | |
delete_form_type | delete | domain_identifier, form_type_identifier, region | Deletes and metadata form type in Amazon DataZone. Prerequisites: The form type must exist in the domain. The form type must not be in use by any asset types or assets. The domain must be valid and accessible. User must have delete permissions on the form type. Any dependencies (such as linked asset types) must be removed first. |
Parameters
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
domain_identifier | string | The ID of the Amazon DataZone domain in which the metadata form type is deleted. |
form_type_identifier | string | The ID of the metadata form type that is deleted. |
region | string | AWS region (default: us-east-1) |
revision | string | The revision of this metadata form type. |
SELECT examples
- get_form_type
Gets a metadata form type in Amazon DataZone. Form types define the structure and validation rules for collecting metadata about assets in Amazon DataZone. They act as templates that ensure consistent metadata capture across similar types of assets, while allowing for customization to meet specific organizational needs. Form types can include required fields, validation rules, and dependencies, helping maintain high-quality metadata that makes data assets more discoverable and usable. The form type with the specified identifier must exist in the given domain. The domain must be valid and active. User must have permission on the form type. The form type should not be deleted or in an invalid state. One use case for this API is to determine whether a form field is indexed for search. A searchable field will be annotated with @amazon.datazone#searchable. By default, searchable fields are indexed for semantic search, where related query terms will match the attribute value even if they are not stemmed or keyword matches. If a field is indexed technical identifier search, it will be annotated with @amazon.datazone#searchable(modes:["TECHNICAL"]). If a field is indexed for lexical search (supports stemmed and prefix matches but not semantic matches), it will be annotated with @amazon.datazone#searchable(modes:["LEXICAL"]). A field storing glossary term IDs (which is filterable) will be annotated with @amazon.datazone#glossaryterm("${glossaryId}").
SELECT
name,
created_at,
created_by,
description,
domain_id,
imports,
model,
origin_domain_id,
origin_project_id,
owning_project_id,
revision,
status
FROM aws.datazone.form_types
WHERE domain_identifier = '{{ domain_identifier }}' -- required
AND form_type_identifier = '{{ form_type_identifier }}' -- required
AND region = '{{ region }}' -- required
AND revision = '{{ revision }}'
;
INSERT examples
- create_form_type
- Manifest
Creates a metadata form type. Prerequisites: The domain must exist and be in an ENABLED state. The owning project must exist and be accessible. The name must be unique within the domain. For custom form types, to indicate that a field should be searchable, annotate it with @amazon.datazone#searchable. By default, searchable fields are indexed for semantic search, where related query terms will match the attribute value even if they are not stemmed or keyword matches. To indicate that a field should be indexed for lexical search (which disables semantic search but supports stemmed and partial matches), annotate it with @amazon.datazone#searchable(modes:["LEXICAL"]). To indicate that a field should be indexed for technical identifier search (for more information on technical identifier search, see: https://aws.amazon.com/blogs/big-data/streamline-data-discovery-with-precise-technical-identifier-search-in-amazon-sagemaker-unified-studio/), annotate it with @amazon.datazone#searchable(modes:["TECHNICAL"]). To denote that a field will store glossary term ids (which are filterable via the Search/SearchListings APIs), annotate it with @amazon.datazone#glossaryterm("${GLOSSARY_ID}"), where ${GLOSSARY_ID} is the id of the glossary that the glossary terms stored in the field belong to.
INSERT INTO aws.datazone.form_types (
name,
model,
owningProjectIdentifier,
status,
description,
domain_identifier,
region
)
SELECT
'{{ name }}' /* required */,
'{{ model }}' /* required */,
'{{ owningProjectIdentifier }}' /* required */,
'{{ status }}',
'{{ description }}',
'{{ domain_identifier }}',
'{{ region }}'
RETURNING
name,
description,
domain_id,
origin_domain_id,
origin_project_id,
owning_project_id,
revision
;
# Description fields are for documentation purposes
- name: form_types
props:
- name: domain_identifier
value: "{{ domain_identifier }}"
description: Required parameter for the form_types resource.
- name: region
value: "{{ region }}"
description: Required parameter for the form_types resource.
- name: name
value: "{{ name }}"
- name: model
description: |
The model of the API.
value:
smithy: "{{ smithy }}"
- name: owningProjectIdentifier
value: "{{ owningProjectIdentifier }}"
- name: status
value: "{{ status }}"
valid_values: ['ENABLED', 'DISABLED']
- name: description
value: "{{ description }}"
DELETE examples
- delete_form_type
Deletes and metadata form type in Amazon DataZone. Prerequisites: The form type must exist in the domain. The form type must not be in use by any asset types or assets. The domain must be valid and accessible. User must have delete permissions on the form type. Any dependencies (such as linked asset types) must be removed first.
DELETE FROM aws.datazone.form_types
WHERE domain_identifier = '{{ domain_identifier }}' --required
AND form_type_identifier = '{{ form_type_identifier }}' --required
AND region = '{{ region }}' --required
;