2023/06/12 - AWS Amplify UI Builder - 3 new api methods
Changes AWS Amplify UIBuilder is launching Codegen UI, a new feature that enables you to generate your amplify uibuilder components and forms.
Returns an existing code generation job.
See also: AWS API Documentation
Request Syntax
client.get_codegen_job(
appId='string',
environmentName='string',
id='string'
)
string
[REQUIRED]
The unique ID of the Amplify app associated with the code generation job.
string
[REQUIRED]
The name of the backend environment that is a part of the Amplify app associated with the code generation job.
string
[REQUIRED]
The unique ID of the code generation job.
dict
Response Syntax
{
'job': {
'id': 'string',
'appId': 'string',
'environmentName': 'string',
'renderConfig': {
'react': {
'module': 'es2020'|'esnext',
'target': 'es2015'|'es2020',
'script': 'jsx'|'tsx'|'js',
'renderTypeDeclarations': True|False,
'inlineSourceMap': True|False
}
},
'genericDataSchema': {
'dataSourceType': 'DataStore',
'models': {
'string': {
'fields': {
'string': {
'dataType': 'ID'|'String'|'Int'|'Float'|'AWSDate'|'AWSTime'|'AWSDateTime'|'AWSTimestamp'|'AWSEmail'|'AWSURL'|'AWSIPAddress'|'Boolean'|'AWSJSON'|'AWSPhone'|'Enum'|'Model'|'NonModel',
'dataTypeValue': 'string',
'required': True|False,
'readOnly': True|False,
'isArray': True|False,
'relationship': {
'type': 'HAS_MANY'|'HAS_ONE'|'BELONGS_TO',
'relatedModelName': 'string',
'relatedModelFields': [
'string',
],
'canUnlinkAssociatedModel': True|False,
'relatedJoinFieldName': 'string',
'relatedJoinTableName': 'string',
'belongsToFieldOnRelatedModel': 'string',
'associatedFields': [
'string',
],
'isHasManyIndex': True|False
}
}
},
'isJoinTable': True|False,
'primaryKeys': [
'string',
]
}
},
'enums': {
'string': {
'values': [
'string',
]
}
},
'nonModels': {
'string': {
'fields': {
'string': {
'dataType': 'ID'|'String'|'Int'|'Float'|'AWSDate'|'AWSTime'|'AWSDateTime'|'AWSTimestamp'|'AWSEmail'|'AWSURL'|'AWSIPAddress'|'Boolean'|'AWSJSON'|'AWSPhone'|'Enum'|'Model'|'NonModel',
'dataTypeValue': 'string',
'required': True|False,
'readOnly': True|False,
'isArray': True|False,
'relationship': {
'type': 'HAS_MANY'|'HAS_ONE'|'BELONGS_TO',
'relatedModelName': 'string',
'relatedModelFields': [
'string',
],
'canUnlinkAssociatedModel': True|False,
'relatedJoinFieldName': 'string',
'relatedJoinTableName': 'string',
'belongsToFieldOnRelatedModel': 'string',
'associatedFields': [
'string',
],
'isHasManyIndex': True|False
}
}
}
}
}
},
'autoGenerateForms': True|False,
'features': {
'isRelationshipSupported': True|False,
'isNonModelSupported': True|False
},
'status': 'in_progress'|'failed'|'succeeded',
'statusMessage': 'string',
'asset': {
'downloadUrl': 'string'
},
'tags': {
'string': 'string'
},
'createdAt': datetime(2015, 1, 1),
'modifiedAt': datetime(2015, 1, 1)
}
}
Response Structure
(dict) --
job (dict) --
The configuration settings for the code generation job.
id (string) --
The unique ID for the code generation job.
appId (string) --
The ID of the Amplify app associated with the code generation job.
environmentName (string) --
The name of the backend environment associated with the code generation job.
renderConfig (dict) --
Describes the configuration information for rendering the UI component associated the code generation job.
react (dict) --
The name of the ReactStartCodegenJobData object.
module (string) --
The JavaScript module type.
target (string) --
The ECMAScript specification to use.
script (string) --
The file type to use for a JavaScript project.
renderTypeDeclarations (boolean) --
Specifies whether the code generation job should render type declaration files.
inlineSourceMap (boolean) --
Specifies whether the code generation job should render inline source maps.
genericDataSchema (dict) --
Describes the data schema for a code generation job.
dataSourceType (string) --
The type of the data source for the schema. Currently, the only valid value is an Amplify DataStore .
models (dict) --
The name of a CodegenGenericDataModel .
(string) --
(dict) --
Describes a model in a generic data schema.
fields (dict) --
The fields in the generic data model.
(string) --
(dict) --
Describes a field in a generic data schema.
dataType (string) --
The data type for the generic data field.
dataTypeValue (string) --
The value of the data type for the generic data field.
required (boolean) --
Specifies whether the generic data field is required.
readOnly (boolean) --
Specifies whether the generic data field is read-only.
isArray (boolean) --
Specifies whether the generic data field is an array.
relationship (dict) --
The relationship of the generic data schema.
type (string) --
The data relationship type.
relatedModelName (string) --
The name of the related model in the data relationship.
relatedModelFields (list) --
The related model fields in the data relationship.
(string) --
canUnlinkAssociatedModel (boolean) --
Specifies whether the relationship can unlink the associated model.
relatedJoinFieldName (string) --
The name of the related join field in the data relationship.
relatedJoinTableName (string) --
The name of the related join table in the data relationship.
belongsToFieldOnRelatedModel (string) --
The value of the belongsTo field on the related data model.
associatedFields (list) --
The associated fields of the data relationship.
(string) --
isHasManyIndex (boolean) --
Specifies whether the @index directive is supported for a hasMany data relationship.
isJoinTable (boolean) --
Specifies whether the generic data model is a join table.
primaryKeys (list) --
The primary keys of the generic data model.
(string) --
enums (dict) --
The name of a CodegenGenericDataEnum .
(string) --
(dict) --
Describes the enums in a generic data schema.
values (list) --
The list of enum values in the generic data schema.
(string) --
nonModels (dict) --
The name of a CodegenGenericDataNonModel .
(string) --
(dict) --
Describes a non-model in a generic data schema.
fields (dict) --
The fields in a generic data schema non model.
(string) --
(dict) --
Describes a field in a generic data schema.
dataType (string) --
The data type for the generic data field.
dataTypeValue (string) --
The value of the data type for the generic data field.
required (boolean) --
Specifies whether the generic data field is required.
readOnly (boolean) --
Specifies whether the generic data field is read-only.
isArray (boolean) --
Specifies whether the generic data field is an array.
relationship (dict) --
The relationship of the generic data schema.
type (string) --
The data relationship type.
relatedModelName (string) --
The name of the related model in the data relationship.
relatedModelFields (list) --
The related model fields in the data relationship.
(string) --
canUnlinkAssociatedModel (boolean) --
Specifies whether the relationship can unlink the associated model.
relatedJoinFieldName (string) --
The name of the related join field in the data relationship.
relatedJoinTableName (string) --
The name of the related join table in the data relationship.
belongsToFieldOnRelatedModel (string) --
The value of the belongsTo field on the related data model.
associatedFields (list) --
The associated fields of the data relationship.
(string) --
isHasManyIndex (boolean) --
Specifies whether the @index directive is supported for a hasMany data relationship.
autoGenerateForms (boolean) --
Specifies whether to autogenerate forms in the code generation job.
features (dict) --
Describes the feature flags that you can specify for a code generation job.
isRelationshipSupported (boolean) --
Specifes whether a code generation job supports data relationships.
isNonModelSupported (boolean) --
Specifies whether a code generation job supports non models.
status (string) --
The status of the code generation job.
statusMessage (string) --
The customized status message for the code generation job.
asset (dict) --
The CodegenJobAsset to use for the code generation job.
downloadUrl (string) --
The URL to use to access the asset.
tags (dict) --
One or more key-value pairs to use when tagging the code generation job.
(string) --
(string) --
createdAt (datetime) --
The time that the code generation job was created.
modifiedAt (datetime) --
The time that the code generation job was modified.
Starts a code generation job for for a specified Amplify app and backend environment.
See also: AWS API Documentation
Request Syntax
client.start_codegen_job(
appId='string',
environmentName='string',
clientToken='string',
codegenJobToCreate={
'renderConfig': {
'react': {
'module': 'es2020'|'esnext',
'target': 'es2015'|'es2020',
'script': 'jsx'|'tsx'|'js',
'renderTypeDeclarations': True|False,
'inlineSourceMap': True|False
}
},
'genericDataSchema': {
'dataSourceType': 'DataStore',
'models': {
'string': {
'fields': {
'string': {
'dataType': 'ID'|'String'|'Int'|'Float'|'AWSDate'|'AWSTime'|'AWSDateTime'|'AWSTimestamp'|'AWSEmail'|'AWSURL'|'AWSIPAddress'|'Boolean'|'AWSJSON'|'AWSPhone'|'Enum'|'Model'|'NonModel',
'dataTypeValue': 'string',
'required': True|False,
'readOnly': True|False,
'isArray': True|False,
'relationship': {
'type': 'HAS_MANY'|'HAS_ONE'|'BELONGS_TO',
'relatedModelName': 'string',
'relatedModelFields': [
'string',
],
'canUnlinkAssociatedModel': True|False,
'relatedJoinFieldName': 'string',
'relatedJoinTableName': 'string',
'belongsToFieldOnRelatedModel': 'string',
'associatedFields': [
'string',
],
'isHasManyIndex': True|False
}
}
},
'isJoinTable': True|False,
'primaryKeys': [
'string',
]
}
},
'enums': {
'string': {
'values': [
'string',
]
}
},
'nonModels': {
'string': {
'fields': {
'string': {
'dataType': 'ID'|'String'|'Int'|'Float'|'AWSDate'|'AWSTime'|'AWSDateTime'|'AWSTimestamp'|'AWSEmail'|'AWSURL'|'AWSIPAddress'|'Boolean'|'AWSJSON'|'AWSPhone'|'Enum'|'Model'|'NonModel',
'dataTypeValue': 'string',
'required': True|False,
'readOnly': True|False,
'isArray': True|False,
'relationship': {
'type': 'HAS_MANY'|'HAS_ONE'|'BELONGS_TO',
'relatedModelName': 'string',
'relatedModelFields': [
'string',
],
'canUnlinkAssociatedModel': True|False,
'relatedJoinFieldName': 'string',
'relatedJoinTableName': 'string',
'belongsToFieldOnRelatedModel': 'string',
'associatedFields': [
'string',
],
'isHasManyIndex': True|False
}
}
}
}
}
},
'autoGenerateForms': True|False,
'features': {
'isRelationshipSupported': True|False,
'isNonModelSupported': True|False
},
'tags': {
'string': 'string'
}
}
)
string
[REQUIRED]
The unique ID for the Amplify app.
string
[REQUIRED]
The name of the backend environment that is a part of the Amplify app.
string
The idempotency token used to ensure that the code generation job request completes only once.
This field is autopopulated if not provided.
dict
[REQUIRED]
The code generation job resource configuration.
renderConfig (dict) -- [REQUIRED]
The code generation configuration for the codegen job.
react (dict) --
The name of the ReactStartCodegenJobData object.
module (string) --
The JavaScript module type.
target (string) --
The ECMAScript specification to use.
script (string) --
The file type to use for a JavaScript project.
renderTypeDeclarations (boolean) --
Specifies whether the code generation job should render type declaration files.
inlineSourceMap (boolean) --
Specifies whether the code generation job should render inline source maps.
genericDataSchema (dict) --
The data schema to use for a code generation job.
dataSourceType (string) -- [REQUIRED]
The type of the data source for the schema. Currently, the only valid value is an Amplify DataStore .
models (dict) -- [REQUIRED]
The name of a CodegenGenericDataModel .
(string) --
(dict) --
Describes a model in a generic data schema.
fields (dict) -- [REQUIRED]
The fields in the generic data model.
(string) --
(dict) --
Describes a field in a generic data schema.
dataType (string) -- [REQUIRED]
The data type for the generic data field.
dataTypeValue (string) -- [REQUIRED]
The value of the data type for the generic data field.
required (boolean) -- [REQUIRED]
Specifies whether the generic data field is required.
readOnly (boolean) -- [REQUIRED]
Specifies whether the generic data field is read-only.
isArray (boolean) -- [REQUIRED]
Specifies whether the generic data field is an array.
relationship (dict) --
The relationship of the generic data schema.
type (string) -- [REQUIRED]
The data relationship type.
relatedModelName (string) -- [REQUIRED]
The name of the related model in the data relationship.
relatedModelFields (list) --
The related model fields in the data relationship.
(string) --
canUnlinkAssociatedModel (boolean) --
Specifies whether the relationship can unlink the associated model.
relatedJoinFieldName (string) --
The name of the related join field in the data relationship.
relatedJoinTableName (string) --
The name of the related join table in the data relationship.
belongsToFieldOnRelatedModel (string) --
The value of the belongsTo field on the related data model.
associatedFields (list) --
The associated fields of the data relationship.
(string) --
isHasManyIndex (boolean) --
Specifies whether the @index directive is supported for a hasMany data relationship.
isJoinTable (boolean) --
Specifies whether the generic data model is a join table.
primaryKeys (list) -- [REQUIRED]
The primary keys of the generic data model.
(string) --
enums (dict) -- [REQUIRED]
The name of a CodegenGenericDataEnum .
(string) --
(dict) --
Describes the enums in a generic data schema.
values (list) -- [REQUIRED]
The list of enum values in the generic data schema.
(string) --
nonModels (dict) -- [REQUIRED]
The name of a CodegenGenericDataNonModel .
(string) --
(dict) --
Describes a non-model in a generic data schema.
fields (dict) -- [REQUIRED]
The fields in a generic data schema non model.
(string) --
(dict) --
Describes a field in a generic data schema.
dataType (string) -- [REQUIRED]
The data type for the generic data field.
dataTypeValue (string) -- [REQUIRED]
The value of the data type for the generic data field.
required (boolean) -- [REQUIRED]
Specifies whether the generic data field is required.
readOnly (boolean) -- [REQUIRED]
Specifies whether the generic data field is read-only.
isArray (boolean) -- [REQUIRED]
Specifies whether the generic data field is an array.
relationship (dict) --
The relationship of the generic data schema.
type (string) -- [REQUIRED]
The data relationship type.
relatedModelName (string) -- [REQUIRED]
The name of the related model in the data relationship.
relatedModelFields (list) --
The related model fields in the data relationship.
(string) --
canUnlinkAssociatedModel (boolean) --
Specifies whether the relationship can unlink the associated model.
relatedJoinFieldName (string) --
The name of the related join field in the data relationship.
relatedJoinTableName (string) --
The name of the related join table in the data relationship.
belongsToFieldOnRelatedModel (string) --
The value of the belongsTo field on the related data model.
associatedFields (list) --
The associated fields of the data relationship.
(string) --
isHasManyIndex (boolean) --
Specifies whether the @index directive is supported for a hasMany data relationship.
autoGenerateForms (boolean) --
Specifies whether to autogenerate forms in the code generation job.
features (dict) --
The feature flags for a code generation job.
isRelationshipSupported (boolean) --
Specifes whether a code generation job supports data relationships.
isNonModelSupported (boolean) --
Specifies whether a code generation job supports non models.
tags (dict) --
One or more key-value pairs to use when tagging the code generation job data.
(string) --
(string) --
dict
Response Syntax
{
'entity': {
'id': 'string',
'appId': 'string',
'environmentName': 'string',
'renderConfig': {
'react': {
'module': 'es2020'|'esnext',
'target': 'es2015'|'es2020',
'script': 'jsx'|'tsx'|'js',
'renderTypeDeclarations': True|False,
'inlineSourceMap': True|False
}
},
'genericDataSchema': {
'dataSourceType': 'DataStore',
'models': {
'string': {
'fields': {
'string': {
'dataType': 'ID'|'String'|'Int'|'Float'|'AWSDate'|'AWSTime'|'AWSDateTime'|'AWSTimestamp'|'AWSEmail'|'AWSURL'|'AWSIPAddress'|'Boolean'|'AWSJSON'|'AWSPhone'|'Enum'|'Model'|'NonModel',
'dataTypeValue': 'string',
'required': True|False,
'readOnly': True|False,
'isArray': True|False,
'relationship': {
'type': 'HAS_MANY'|'HAS_ONE'|'BELONGS_TO',
'relatedModelName': 'string',
'relatedModelFields': [
'string',
],
'canUnlinkAssociatedModel': True|False,
'relatedJoinFieldName': 'string',
'relatedJoinTableName': 'string',
'belongsToFieldOnRelatedModel': 'string',
'associatedFields': [
'string',
],
'isHasManyIndex': True|False
}
}
},
'isJoinTable': True|False,
'primaryKeys': [
'string',
]
}
},
'enums': {
'string': {
'values': [
'string',
]
}
},
'nonModels': {
'string': {
'fields': {
'string': {
'dataType': 'ID'|'String'|'Int'|'Float'|'AWSDate'|'AWSTime'|'AWSDateTime'|'AWSTimestamp'|'AWSEmail'|'AWSURL'|'AWSIPAddress'|'Boolean'|'AWSJSON'|'AWSPhone'|'Enum'|'Model'|'NonModel',
'dataTypeValue': 'string',
'required': True|False,
'readOnly': True|False,
'isArray': True|False,
'relationship': {
'type': 'HAS_MANY'|'HAS_ONE'|'BELONGS_TO',
'relatedModelName': 'string',
'relatedModelFields': [
'string',
],
'canUnlinkAssociatedModel': True|False,
'relatedJoinFieldName': 'string',
'relatedJoinTableName': 'string',
'belongsToFieldOnRelatedModel': 'string',
'associatedFields': [
'string',
],
'isHasManyIndex': True|False
}
}
}
}
}
},
'autoGenerateForms': True|False,
'features': {
'isRelationshipSupported': True|False,
'isNonModelSupported': True|False
},
'status': 'in_progress'|'failed'|'succeeded',
'statusMessage': 'string',
'asset': {
'downloadUrl': 'string'
},
'tags': {
'string': 'string'
},
'createdAt': datetime(2015, 1, 1),
'modifiedAt': datetime(2015, 1, 1)
}
}
Response Structure
(dict) --
entity (dict) --
The code generation job for a UI component that is associated with an Amplify app.
id (string) --
The unique ID for the code generation job.
appId (string) --
The ID of the Amplify app associated with the code generation job.
environmentName (string) --
The name of the backend environment associated with the code generation job.
renderConfig (dict) --
Describes the configuration information for rendering the UI component associated the code generation job.
react (dict) --
The name of the ReactStartCodegenJobData object.
module (string) --
The JavaScript module type.
target (string) --
The ECMAScript specification to use.
script (string) --
The file type to use for a JavaScript project.
renderTypeDeclarations (boolean) --
Specifies whether the code generation job should render type declaration files.
inlineSourceMap (boolean) --
Specifies whether the code generation job should render inline source maps.
genericDataSchema (dict) --
Describes the data schema for a code generation job.
dataSourceType (string) --
The type of the data source for the schema. Currently, the only valid value is an Amplify DataStore .
models (dict) --
The name of a CodegenGenericDataModel .
(string) --
(dict) --
Describes a model in a generic data schema.
fields (dict) --
The fields in the generic data model.
(string) --
(dict) --
Describes a field in a generic data schema.
dataType (string) --
The data type for the generic data field.
dataTypeValue (string) --
The value of the data type for the generic data field.
required (boolean) --
Specifies whether the generic data field is required.
readOnly (boolean) --
Specifies whether the generic data field is read-only.
isArray (boolean) --
Specifies whether the generic data field is an array.
relationship (dict) --
The relationship of the generic data schema.
type (string) --
The data relationship type.
relatedModelName (string) --
The name of the related model in the data relationship.
relatedModelFields (list) --
The related model fields in the data relationship.
(string) --
canUnlinkAssociatedModel (boolean) --
Specifies whether the relationship can unlink the associated model.
relatedJoinFieldName (string) --
The name of the related join field in the data relationship.
relatedJoinTableName (string) --
The name of the related join table in the data relationship.
belongsToFieldOnRelatedModel (string) --
The value of the belongsTo field on the related data model.
associatedFields (list) --
The associated fields of the data relationship.
(string) --
isHasManyIndex (boolean) --
Specifies whether the @index directive is supported for a hasMany data relationship.
isJoinTable (boolean) --
Specifies whether the generic data model is a join table.
primaryKeys (list) --
The primary keys of the generic data model.
(string) --
enums (dict) --
The name of a CodegenGenericDataEnum .
(string) --
(dict) --
Describes the enums in a generic data schema.
values (list) --
The list of enum values in the generic data schema.
(string) --
nonModels (dict) --
The name of a CodegenGenericDataNonModel .
(string) --
(dict) --
Describes a non-model in a generic data schema.
fields (dict) --
The fields in a generic data schema non model.
(string) --
(dict) --
Describes a field in a generic data schema.
dataType (string) --
The data type for the generic data field.
dataTypeValue (string) --
The value of the data type for the generic data field.
required (boolean) --
Specifies whether the generic data field is required.
readOnly (boolean) --
Specifies whether the generic data field is read-only.
isArray (boolean) --
Specifies whether the generic data field is an array.
relationship (dict) --
The relationship of the generic data schema.
type (string) --
The data relationship type.
relatedModelName (string) --
The name of the related model in the data relationship.
relatedModelFields (list) --
The related model fields in the data relationship.
(string) --
canUnlinkAssociatedModel (boolean) --
Specifies whether the relationship can unlink the associated model.
relatedJoinFieldName (string) --
The name of the related join field in the data relationship.
relatedJoinTableName (string) --
The name of the related join table in the data relationship.
belongsToFieldOnRelatedModel (string) --
The value of the belongsTo field on the related data model.
associatedFields (list) --
The associated fields of the data relationship.
(string) --
isHasManyIndex (boolean) --
Specifies whether the @index directive is supported for a hasMany data relationship.
autoGenerateForms (boolean) --
Specifies whether to autogenerate forms in the code generation job.
features (dict) --
Describes the feature flags that you can specify for a code generation job.
isRelationshipSupported (boolean) --
Specifes whether a code generation job supports data relationships.
isNonModelSupported (boolean) --
Specifies whether a code generation job supports non models.
status (string) --
The status of the code generation job.
statusMessage (string) --
The customized status message for the code generation job.
asset (dict) --
The CodegenJobAsset to use for the code generation job.
downloadUrl (string) --
The URL to use to access the asset.
tags (dict) --
One or more key-value pairs to use when tagging the code generation job.
(string) --
(string) --
createdAt (datetime) --
The time that the code generation job was created.
modifiedAt (datetime) --
The time that the code generation job was modified.
Retrieves a list of code generation jobs for a specified Amplify app and backend environment.
See also: AWS API Documentation
Request Syntax
client.list_codegen_jobs(
appId='string',
environmentName='string',
nextToken='string',
maxResults=123
)
string
[REQUIRED]
The unique ID for the Amplify app.
string
[REQUIRED]
The name of the backend environment that is a part of the Amplify app.
string
The token to request the next page of results.
integer
The maximum number of jobs to retrieve.
dict
Response Syntax
{
'entities': [
{
'appId': 'string',
'environmentName': 'string',
'id': 'string',
'createdAt': datetime(2015, 1, 1),
'modifiedAt': datetime(2015, 1, 1)
},
],
'nextToken': 'string'
}
Response Structure
(dict) --
entities (list) --
The list of code generation jobs for the Amplify app.
(dict) --
A summary of the basic information about the code generation job.
appId (string) --
The unique ID of the Amplify app associated with the code generation job.
environmentName (string) --
The name of the backend environment associated with the code generation job.
id (string) --
The unique ID for the code generation job summary.
createdAt (datetime) --
The time that the code generation job summary was created.
modifiedAt (datetime) --
The time that the code generation job summary was modified.
nextToken (string) --
The pagination token that's included if more results are available.