testConversion

This operation mimics the latter half of a typical Outbound EDI request. It takes an input JSON/XML in the B2Bi shape as input, converts it to an X12 EDI string, and return that string.

Samples

import aws.sdk.kotlin.services.b2bi.model.AdvancedOptions
import aws.sdk.kotlin.services.b2bi.model.ConversionSource
import aws.sdk.kotlin.services.b2bi.model.ConversionSourceFormat
import aws.sdk.kotlin.services.b2bi.model.ConversionTarget
import aws.sdk.kotlin.services.b2bi.model.ConversionTargetFormat
import aws.sdk.kotlin.services.b2bi.model.ConversionTargetFormatDetails
import aws.sdk.kotlin.services.b2bi.model.ElementRequirement
import aws.sdk.kotlin.services.b2bi.model.InputFileSource
import aws.sdk.kotlin.services.b2bi.model.X12AdvancedOptions
import aws.sdk.kotlin.services.b2bi.model.X12CodeListValidationRule
import aws.sdk.kotlin.services.b2bi.model.X12Details
import aws.sdk.kotlin.services.b2bi.model.X12ElementLengthValidationRule
import aws.sdk.kotlin.services.b2bi.model.X12ElementRequirementValidationRule
import aws.sdk.kotlin.services.b2bi.model.X12TransactionSet
import aws.sdk.kotlin.services.b2bi.model.X12ValidationOptions
import aws.sdk.kotlin.services.b2bi.model.X12ValidationRule
import aws.sdk.kotlin.services.b2bi.model.X12Version

fun main() { 
   //sampleStart 
   // Sample TestConversion call
val resp = b2BiClient.testConversion {
    source = ConversionSource {
        fileFormat = ConversionSourceFormat.fromValue("JSON")
        inputFile = InputFileSource.FileContent("Sample file content")
    }
    target = ConversionTarget {
        fileFormat = ConversionTargetFormat.fromValue("X12")
        formatDetails = ConversionTargetFormatDetails.X12(X12Details {
            transactionSet = X12TransactionSet.fromValue("X12_110")
            version = X12Version.fromValue("VERSION_4010")
        }
        )
        advancedOptions = AdvancedOptions {
            x12 = X12AdvancedOptions {
                validationOptions = X12ValidationOptions {
                    validationRules = listOf<X12ValidationRule>(
                        X12ValidationRule.CodeListValidationRule(X12CodeListValidationRule {
                            elementId = "1280"
                            codesToAdd = listOf<String>(
                                "X",
                                "Y",
                                "Z"
                            )
                            codesToRemove = listOf<String>(
                                "A",
                                "B",
                                "C"
                            )
                        }
                        ),
                        X12ValidationRule.ElementRequirementValidationRule(X12ElementRequirementValidationRule {
                            elementPosition = "NM1-01"
                            requirement = ElementRequirement.fromValue("OPTIONAL")
                        }
                        ),
                        X12ValidationRule.ElementLengthValidationRule(X12ElementLengthValidationRule {
                            elementId = "0803"
                            maxLength = 30
                            minLength = 5
                        }
                        )
                    )
                }
            }
        }
    }
} 
   //sampleEnd
}