CreateTransformer - AWS B2B Data Interchange

CreateTransformer

Creates a transformer. AWS B2B Data Interchange currently supports two scenarios:

  • Inbound EDI: the AWS customer receives an EDI file from their trading partner. AWS B2B Data Interchange converts this EDI file into a JSON or XML file with a service-defined structure. A mapping template provided by the customer, in JSONata or XSLT format, is optionally applied to this file to produce a JSON or XML file with the structure the customer requires.

  • Outbound EDI: the AWS customer has a JSON or XML file containing data that they wish to use in an EDI file. A mapping template, provided by the customer (in either JSONata or XSLT format) is applied to this file to generate a JSON or XML file in the service-defined structure. This file is then converted to an EDI file.

Note

The following fields are provided for backwards compatibility only: fileFormat, mappingTemplate, ediType, and sampleDocument.

  • Use the mapping data type in place of mappingTemplate and fileFormat

  • Use the sampleDocuments data type in place of sampleDocument

  • Use either the inputConversion or outputConversion in place of ediType

Request Syntax

{ "clientToken": "string", "ediType": { ... }, "fileFormat": "string", "inputConversion": { "formatOptions": { ... }, "fromFormat": "string" }, "mapping": { "template": "string", "templateLanguage": "string" }, "mappingTemplate": "string", "name": "string", "outputConversion": { "formatOptions": { ... }, "toFormat": "string" }, "sampleDocument": "string", "sampleDocuments": { "bucketName": "string", "keys": [ { "input": "string", "output": "string" } ] }, "tags": [ { "Key": "string", "Value": "string" } ] }

Request Parameters

For information about the parameters that are common to all actions, see Common Parameters.

The request accepts the following data in JSON format.

clientToken

Reserved for future use.

Type: String

Required: No

ediType

This parameter has been deprecated.

Specifies the details for the EDI standard that is being used for the transformer. Currently, only X12 is supported. X12 is a set of standards and corresponding messages that define specific business documents.

Type: EdiType object

Note: This object is a Union. Only one member of this object can be specified or returned.

Required: No

fileFormat

This parameter has been deprecated.

Specifies that the currently supported file formats for EDI transformations are JSON and XML.

Type: String

Valid Values: XML | JSON | NOT_USED

Required: No

inputConversion

Specify the InputConversion object, which contains the format options for the inbound transformation.

Type: InputConversion object

Required: No

mapping

Specify the structure that contains the mapping template and its language (either XSLT or JSONATA).

Type: Mapping object

Required: No

mappingTemplate

This parameter has been deprecated.

Specifies the mapping template for the transformer. This template is used to map the parsed EDI file using JSONata or XSLT.

Note

This parameter is available for backwards compatibility. Use the Mapping data type instead.

Type: String

Length Constraints: Minimum length of 0. Maximum length of 350000.

Required: No

name

Specifies the name of the transformer, used to identify it.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 254.

Pattern: [a-zA-Z0-9_-]{1,512}

Required: Yes

outputConversion

A structure that contains the OutputConversion object, which contains the format options for the outbound transformation.

Type: OutputConversion object

Required: No

sampleDocument

This parameter has been deprecated.

Specifies a sample EDI document that is used by a transformer as a guide for processing the EDI data.

Type: String

Length Constraints: Minimum length of 0. Maximum length of 1024.

Required: No

sampleDocuments

Specify a structure that contains the Amazon S3 bucket and an array of the corresponding keys used to identify the location for your sample documents.

Type: SampleDocuments object

Required: No

tags

Specifies the key-value pairs assigned to ARNs that you can use to group and search for resources by type. You can attach this metadata to resources (capabilities, partnerships, and so on) for any purpose.

Type: Array of Tag objects

Array Members: Minimum number of 0 items. Maximum number of 200 items.

Required: No

Response Syntax

{ "createdAt": "string", "ediType": { ... }, "fileFormat": "string", "inputConversion": { "formatOptions": { ... }, "fromFormat": "string" }, "mapping": { "template": "string", "templateLanguage": "string" }, "mappingTemplate": "string", "name": "string", "outputConversion": { "formatOptions": { ... }, "toFormat": "string" }, "sampleDocument": "string", "sampleDocuments": { "bucketName": "string", "keys": [ { "input": "string", "output": "string" } ] }, "status": "string", "transformerArn": "string", "transformerId": "string" }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

createdAt

Returns a timestamp for creation date and time of the transformer.

Type: Timestamp

ediType

This parameter has been deprecated.

Returns the details for the EDI standard that is being used for the transformer. Currently, only X12 is supported. X12 is a set of standards and corresponding messages that define specific business documents.

Type: EdiType object

Note: This object is a Union. Only one member of this object can be specified or returned.

fileFormat

This parameter has been deprecated.

Returns that the currently supported file formats for EDI transformations are JSON and XML.

Type: String

Valid Values: XML | JSON | NOT_USED

inputConversion

Returns the InputConversion object, which contains the format options for the inbound transformation.

Type: InputConversion object

mapping

Returns the structure that contains the mapping template and its language (either XSLT or JSONATA).

Type: Mapping object

mappingTemplate

This parameter has been deprecated.

Returns the mapping template for the transformer. This template is used to map the parsed EDI file using JSONata or XSLT.

Type: String

Length Constraints: Minimum length of 0. Maximum length of 350000.

name

Returns the name of the transformer, used to identify it.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 254.

Pattern: [a-zA-Z0-9_-]{1,512}

outputConversion

Returns the OutputConversion object, which contains the format options for the outbound transformation.

Type: OutputConversion object

sampleDocument

This parameter has been deprecated.

Returns a sample EDI document that is used by a transformer as a guide for processing the EDI data.

Type: String

Length Constraints: Minimum length of 0. Maximum length of 1024.

sampleDocuments

Returns a structure that contains the Amazon S3 bucket and an array of the corresponding keys used to identify the location for your sample documents.

Type: SampleDocuments object

status

Returns the state of the newly created transformer. The transformer can be either active or inactive. For the transformer to be used in a capability, its status must active.

Type: String

Valid Values: active | inactive

transformerArn

Returns an Amazon Resource Name (ARN) for a specific AWS resource, such as a capability, partnership, profile, or transformer.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 255.

transformerId

Returns the system-assigned unique identifier for the transformer.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 64.

Pattern: [a-zA-Z0-9_-]+

Errors

For information about the errors that are common to all actions, see Common Errors.

AccessDeniedException

You do not have sufficient access to perform this action.

HTTP Status Code: 400

ConflictException

A conflict exception is thrown when you attempt to delete a resource (such as a profile or a capability) that is being used by other resources.

HTTP Status Code: 400

InternalServerException

This exception is thrown when an error occurs in the AWS B2B Data Interchange service.

HTTP Status Code: 500

ResourceNotFoundException

Occurs when the requested resource does not exist, or cannot be found. In some cases, the resource exists in a region other than the region specified in the API call.

HTTP Status Code: 400

ServiceQuotaExceededException

Occurs when the calling command attempts to exceed one of the service quotas, for example trying to create a capability when you already have the maximum number of capabilities allowed.

HTTP Status Code: 400

ThrottlingException

The request was denied due to throttling: the data speed and rendering may be limited depending on various parameters and conditions.

HTTP Status Code: 400

ValidationException

Occurs when a B2BI object cannot be validated against a request from another object.

HTTP Status Code: 400

Examples

Example

The following example creates a profile.

Sample Request

{ "clientToken": "foo", "ediType": { "x12Details": { "transactionSet": "X12_110", "version": "VERSION_4010" } }, "fileFormat": "JSON", "mapping": { "templateLanguage": "JSONATA", "template": "{}" }, "name": "transformJSON", "sampleDocument": "s3://test-bucket/sampleDoc.txt", "tags": [ { "Key": "sampleKey", "Value": "sampleValue" } ] }

Sample Response

{ "createdAt": "2023-11-01T21:51:05.504Z", "ediType": { "x12Details": { "transactionSet": "X12_110", "version": "VERSION_4010" } }, "fileFormat": "JSON", "mapping": { "templateLanguage": "JSONATA", "template": "$" }, "name": "transformJSON", "sampleDocument": "s3://test-bucket/sampleDoc.txt", "status": "inactive", "transformerArn": "arn:aws:b2bi:us-west-2:123456789012:transformer/tr-1234abcd5678efghj", "transformerId": "tr-1234abcd5678efghj" }

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: